author | wenzelm |
Fri, 25 Jul 2014 16:58:28 +0200 | |
changeset 57685 | 34ec8a580917 |
parent 57652 | e7fe592ee089 |
child 57692 | 65dc798bb1fb |
permissions | -rwxr-xr-x |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
1 |
#!/usr/bin/env bash |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
2 |
# |
49004 | 3 |
# Author: Makarius |
4 |
# |
|
5 |
# DESCRIPTION: make Isabelle distribution from repository |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
6 |
|
49004 | 7 |
## global parameters |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
8 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
9 |
umask 022 |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
10 |
|
49004 | 11 |
HG="${HG:-hg}" |
12 |
||
13 |
DISTPREFIX="${DISTPREFIX:-$HOME/tmp/isadist}" |
|
14 |
||
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
15 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
16 |
## diagnostics |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
17 |
|
30885 | 18 |
PRG="$(basename "$0")" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
19 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
20 |
function usage() |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
21 |
{ |
49004 | 22 |
echo |
23 |
echo "Usage: isabelle $PRG [OPTIONS] [VERSION]" |
|
24 |
echo |
|
25 |
echo " Options are:" |
|
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
26 |
echo " -O official release (not release-candidate)" |
49004 | 27 |
echo " -d DIR global directory prefix (default: \"$DISTPREFIX\")" |
28 |
echo " -j INT maximum number of parallel jobs (default 1)" |
|
29 |
echo " -r RELEASE proper release with name" |
|
30 |
echo |
|
31 |
echo " Make Isabelle distribution from the local repository clone." |
|
32 |
echo |
|
33 |
echo " VERSION identifies the snapshot, using usual Mercurial terminology;" |
|
34 |
echo " the default is RELEASE if given, otherwise \"tip\"." |
|
35 |
echo |
|
50789 | 36 |
echo " Add-on components are that of the running Isabelle version!" |
49004 | 37 |
echo |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
38 |
exit 1 |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
39 |
} |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
40 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
41 |
function fail() |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
42 |
{ |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
43 |
echo "$1" >&2 |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
44 |
exit 2 |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
45 |
} |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
46 |
|
49004 | 47 |
function check_number() |
48 |
{ |
|
49 |
[ -n "$1" -a -z "$(echo "$1" | tr -d '[0-9]')" ] || fail "Bad number: \"$1\"" |
|
50 |
} |
|
51 |
||
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
52 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
53 |
## process command line |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
54 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
55 |
# options |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
56 |
|
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
57 |
OFFICIAL_RELEASE="false" |
49004 | 58 |
JOBS="" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
59 |
RELEASE="" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
60 |
|
57685 | 61 |
while getopts "Od:j:r:" OPT |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
62 |
do |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
63 |
case "$OPT" in |
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
64 |
O) |
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
65 |
OFFICIAL_RELEASE="true" |
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
66 |
;; |
49004 | 67 |
d) |
68 |
DISTPREFIX="$OPTARG" |
|
69 |
;; |
|
43357
07889e32bc58
makedist -j: build Isabelle/jEdit via given jedit_build component;
wenzelm
parents:
41984
diff
changeset
|
70 |
j) |
49004 | 71 |
check_number "$OPTARG" |
72 |
JOBS="-j $OPTARG" |
|
43357
07889e32bc58
makedist -j: build Isabelle/jEdit via given jedit_build component;
wenzelm
parents:
41984
diff
changeset
|
73 |
;; |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
74 |
r) |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
75 |
RELEASE="$OPTARG" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
76 |
;; |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
77 |
\?) |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
78 |
usage |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
79 |
;; |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
80 |
esac |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
81 |
done |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
82 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
83 |
shift $(($OPTIND - 1)) |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
84 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
85 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
86 |
# args |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
87 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
88 |
VERSION="" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
89 |
[ "$#" -gt 0 ] && { VERSION="$1"; shift; } |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
90 |
[ -z "$VERSION" ] && VERSION="$RELEASE" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
91 |
[ -z "$VERSION" ] && VERSION="tip" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
92 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
93 |
[ "$#" -gt 0 ] && usage |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
94 |
|
49004 | 95 |
IDENT=$("$HG" --repository "$ISABELLE_HOME" id -r "$VERSION" -i) |
96 |
[ -z "$IDENT" ] && fail "Bad repository version: \"$VERSION\"" |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
97 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
98 |
|
49004 | 99 |
## main |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
100 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
101 |
# dist name |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
102 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
103 |
DATE=$(env LC_ALL=C date "+%d-%b-%Y") |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
104 |
DISTDATE=$(env LC_ALL=C date "+%B %Y") |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
105 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
106 |
if [ -z "$RELEASE" ]; then |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
107 |
DISTNAME="Isabelle_$DATE" |
40573 | 108 |
DISTVERSION="Isabelle repository snapshot $IDENT $DATE" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
109 |
else |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
110 |
DISTNAME="$RELEASE" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
111 |
DISTVERSION="$DISTNAME: $DISTDATE" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
112 |
fi |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
113 |
|
51073 | 114 |
DISTPREFIX="$(cd "$DISTPREFIX"; pwd)" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
115 |
DISTBASE="$DISTPREFIX/dist-$DISTNAME" |
49004 | 116 |
mkdir -p "$DISTBASE" || fail "Unable to create distribution base dir \"$DISTBASE\"" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
117 |
|
49004 | 118 |
DIR="$DISTBASE/$DISTNAME" |
119 |
[ -e "$DIR" ] && fail "Directory \"$DIR\" already exists" |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
120 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
121 |
|
49004 | 122 |
# retrieve repository archive |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
123 |
|
49004 | 124 |
echo "### Retrieving Mercurial repository $VERSION" |
47010 | 125 |
|
49004 | 126 |
"$HG" --repository "$ISABELLE_HOME" archive --type files -r "$IDENT" "$DIR" || \ |
127 |
fail "Failed to retrieve $VERSION" |
|
43357
07889e32bc58
makedist -j: build Isabelle/jEdit via given jedit_build component;
wenzelm
parents:
41984
diff
changeset
|
128 |
|
49004 | 129 |
rm -f "$DIR/.hg_archival.txt" |
130 |
rm -f "$DIR/.hgtags" |
|
131 |
rm -f "$DIR/.hgignore" |
|
132 |
rm -f "$DIR/README_REPOSITORY" |
|
133 |
||
43357
07889e32bc58
makedist -j: build Isabelle/jEdit via given jedit_build component;
wenzelm
parents:
41984
diff
changeset
|
134 |
|
49004 | 135 |
# partial context switch to new version |
48606
4b6c90e121b1
makedist -D retains doc-src component with its "doc" sessions (relevant for testing);
wenzelm
parents:
48190
diff
changeset
|
136 |
|
49004 | 137 |
cd "$DIR" |
138 |
||
139 |
unset ISABELLE_SETTINGS_PRESENT |
|
140 |
unset ISABELLE_SITE_SETTINGS_PRESENT |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
141 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
142 |
if [ -z "$RELEASE" ]; then |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
143 |
{ |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
144 |
echo |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
145 |
echo "IMPORTANT NOTE" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
146 |
echo "==============" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
147 |
echo |
53436 | 148 |
echo "This is a snapshot of Isabelle/${IDENT} from the repository." |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
149 |
echo |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
150 |
} >ANNOUNCE |
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
151 |
fi |
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
152 |
|
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
153 |
if [ -n "$RELEASE" -a "$OFFICIAL_RELEASE" = true ]; then |
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
154 |
IS_OFFICIAL="true" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
155 |
else |
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
156 |
IS_OFFICIAL="false" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
157 |
fi |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
158 |
|
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
159 |
perl -pi \ |
57652 | 160 |
-e "s,val is_identified = false,val is_identified = true,g;" \ |
161 |
-e "s,val is_official = false,val is_official = ${IS_OFFICIAL},g;" \ |
|
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
162 |
src/Pure/ROOT.ML src/Pure/ROOT.scala |
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
163 |
|
41511 | 164 |
perl -pi -e "s,ISABELLE_ID=\"\",ISABELLE_ID=\"$IDENT\",g" lib/scripts/getsettings |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
165 |
perl -pi -e "s,ISABELLE_IDENTIFIER=\"\",ISABELLE_IDENTIFIER=\"$DISTNAME\",g" lib/scripts/getsettings |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
166 |
perl -pi -e "s,{ISABELLE},$DISTNAME,g" lib/html/library_index_header.template |
57649
a43898f76ae9
further distinction of Isabelle distribution: alert for identified release candidates;
wenzelm
parents:
53913
diff
changeset
|
167 |
perl -pi -e "s,unidentified repository version,$DISTVERSION,g" src/Pure/ROOT.ML src/Pure/ROOT.scala lib/Tools/version |
32361
141e5151b918
clarified situation about unidentified repository versions -- in a distributed setting there is not "the" repository;
wenzelm
parents:
31842
diff
changeset
|
168 |
perl -pi -e "s,some unidentified repository version of Isabelle,$DISTVERSION,g" README |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
169 |
|
49004 | 170 |
mkdir -p contrib |
171 |
cat >contrib/README <<EOF |
|
172 |
This directory contains add-on components that contribute to the main |
|
173 |
Isabelle distribution. Separate licensing conditions apply, see each |
|
174 |
directory individually. |
|
175 |
EOF |
|
176 |
||
177 |
||
178 |
# prepare dist for release |
|
179 |
||
180 |
echo "### Preparing distribution $DISTNAME" |
|
181 |
||
182 |
find . "(" -name \*.thy -o -name \*.ML -o -name \*.scala ")" -perm +111 -print | xargs chmod -f -x |
|
183 |
find . -print | xargs chmod -f u+rw |
|
184 |
||
53579 | 185 |
export CLASSPATH="$ISABELLE_CLASSPATH" |
186 |
||
49004 | 187 |
./bin/isabelle env ISABELLE_SCALA_BUILD_OPTIONS="$ISABELLE_SCALA_BUILD_OPTIONS -optimise" \ |
188 |
./Admin/build all || fail "Failed to build distribution" |
|
189 |
||
50797 | 190 |
./bin/isabelle env ISABELLE_SCALA_BUILD_OPTIONS="$ISABELLE_SCALA_BUILD_OPTIONS -optimise" \ |
191 |
./bin/isabelle jedit -b || fail "Failed to build Isabelle/jEdit" |
|
49004 | 192 |
|
50797 | 193 |
cp -a src src.orig |
194 |
env ISABELLE_IDENTIFIER="${DISTNAME}-build" \ |
|
53208
bec95e287d26
prefer build_doc -s to avoid heaps left behind in $ISABELLE_HOME_USER (especially relevant to isatest);
wenzelm
parents:
51073
diff
changeset
|
195 |
./bin/isabelle build_doc $JOBS -s -a || fail "Failed to build documentation" |
50797 | 196 |
rm -rf src |
197 |
mv src.orig src |
|
49004 | 198 |
|
53208
bec95e287d26
prefer build_doc -s to avoid heaps left behind in $ISABELLE_HOME_USER (especially relevant to isatest);
wenzelm
parents:
51073
diff
changeset
|
199 |
rm -rf Admin browser_info heaps |
49004 | 200 |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
201 |
|
37341 | 202 |
# create archive |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
203 |
|
49004 | 204 |
echo "### Creating archive" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
205 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
206 |
cd "$DISTBASE" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
207 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
208 |
echo "$DISTBASE/$DISTNAME.tar.gz" > ../ISABELLE_DIST |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
209 |
echo "$IDENT" >../ISABELLE_IDENT |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
210 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
211 |
chown -R "$LOGNAME" "$DISTNAME" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
212 |
chmod -R u+w "$DISTNAME" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
213 |
chmod -R g=o "$DISTNAME" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
214 |
|
49007 | 215 |
echo "$DISTBASE/$DISTNAME.tar.gz" |
53913
5ff12177a067
prefer GNU tar for Isabelle to avoid odd extended header keywords produced by Apple's bsdtar (see also 8f6046b7f850);
wenzelm
parents:
53579
diff
changeset
|
216 |
tar -c -z -f "$DISTNAME.tar.gz" "$DISTNAME" |
50899
506ff6abfde0
grand-unified Admin/Release/build script (excluding .app and .exe);
wenzelm
parents:
50863
diff
changeset
|
217 |
[ "$?" = 0 ] || exit "$?" |
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
218 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
219 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
220 |
# cleanup dist |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
221 |
|
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
222 |
mv "$DISTNAME" "${DISTNAME}-old" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
223 |
mkdir "$DISTNAME" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
224 |
|
37368 | 225 |
mv "${DISTNAME}-old/README" "${DISTNAME}-old/NEWS" "${DISTNAME}-old/ANNOUNCE" \ |
226 |
"${DISTNAME}-old/COPYRIGHT" "${DISTNAME}-old/CONTRIBUTORS" "$DISTNAME" |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
227 |
mkdir "$DISTNAME/doc" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
228 |
mv "${DISTNAME}-old/doc/"*.pdf "${DISTNAME}-old/doc/Contents" "$DISTNAME/doc" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
229 |
|
41984
e5dba3d75e9e
recover Isabelle symlink for public distribution, notably website;
wenzelm
parents:
41665
diff
changeset
|
230 |
rm -f Isabelle && ln -sf "$DISTNAME" Isabelle |
e5dba3d75e9e
recover Isabelle symlink for public distribution, notably website;
wenzelm
parents:
41665
diff
changeset
|
231 |
|
28932
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
232 |
rm -rf "${DISTNAME}-old" |
ccaa3355f7d3
makedist -- make Isabelle source distribution (Mercurial version);
wenzelm
parents:
diff
changeset
|
233 |