| author | wenzelm | 
| Sat, 25 Oct 2014 21:16:32 +0200 | |
| changeset 58783 | c6348a062131 | 
| parent 57618 | d762318438c3 | 
| child 58791 | 00916b0dd596 | 
| permissions | -rwxr-xr-x | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
1  | 
#!/usr/bin/env bash  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
2  | 
#  | 
| 27629 | 3  | 
# Administrative build for Isabelle source distribution.  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
4  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
5  | 
## directory layout  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
6  | 
|
| 
34282
 
549969a7f582
simplified build/bootstrap of Isabelle/Scala components -- avoid make;
 
wenzelm 
parents: 
31831 
diff
changeset
 | 
7  | 
if [ -z "$ISABELLE_HOME" ]; then  | 
| 
 
549969a7f582
simplified build/bootstrap of Isabelle/Scala components -- avoid make;
 
wenzelm 
parents: 
31831 
diff
changeset
 | 
8  | 
ISABELLE_HOME="$(cd "$(dirname "$0")"; cd "$(pwd -P)"; cd ..; pwd)"  | 
| 
 
549969a7f582
simplified build/bootstrap of Isabelle/Scala components -- avoid make;
 
wenzelm 
parents: 
31831 
diff
changeset
 | 
9  | 
ISABELLE_TOOL="$ISABELLE_HOME/bin/isabelle"  | 
| 
 
549969a7f582
simplified build/bootstrap of Isabelle/Scala components -- avoid make;
 
wenzelm 
parents: 
31831 
diff
changeset
 | 
10  | 
fi  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
11  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
12  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
13  | 
## diagnostics  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
14  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
15  | 
PRG="$(basename "$0")"  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
16  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
17  | 
function usage()  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
18  | 
{
 | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
19  | 
cat <<EOF  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
20  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
21  | 
Usage: $PRG [MODULES]  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
22  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
23  | 
Produce Isabelle distribution modules from current repository sources.  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
24  | 
The MODULES list may contain any of the following:  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
25  | 
|
| 
48691
 
335d60e1e328
discontinued presumably obsolete attempts at doc-src testing (cf. 3b02b0ef8d48, 89cc3dfb383b);
 
wenzelm 
parents: 
48498 
diff
changeset
 | 
26  | 
all all modules below  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
27  | 
browser graph browser (requires jdk)  | 
| 
49173
 
fa01a202399c
eliminated potentially confusing terminology of Scala "layer";
 
wenzelm 
parents: 
48972 
diff
changeset
 | 
28  | 
jars Isabelle/Scala (requires \$ISABELLE_JDK_HOME and \$SCALA_HOME)  | 
| 
47408
 
63c05991882e
slightly faster default compilation of Isabelle/Scala;
 
wenzelm 
parents: 
47115 
diff
changeset
 | 
29  | 
jars_test test separate build of jars  | 
| 43280 | 30  | 
jars_fresh fresh build of jars  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
31  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
32  | 
EOF  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
33  | 
exit 1  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
34  | 
}  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
35  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
36  | 
function fail()  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
37  | 
{
 | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
38  | 
echo "$1" >&2  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
39  | 
exit 2  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
40  | 
}  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
41  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
42  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
43  | 
## process command line  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
44  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
45  | 
[ "$#" -eq 0 ] && usage  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
46  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
47  | 
MODULES="$@"; shift "$#"  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
48  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
49  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
50  | 
## modules  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
51  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
52  | 
function build_all ()  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
53  | 
{
 | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
54  | 
build_browser  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
55  | 
build_jars  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
56  | 
}  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
57  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
58  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
59  | 
function build_browser ()  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
60  | 
{
 | 
| 
34283
 
7911e83d06c0
simplified build/bootstrap of graph browser -- avoid make;
 
wenzelm 
parents: 
34282 
diff
changeset
 | 
61  | 
pushd "$ISABELLE_HOME/lib/browser" >/dev/null  | 
| 34297 | 62  | 
"$ISABELLE_TOOL" env ./build || exit $?  | 
| 
34283
 
7911e83d06c0
simplified build/bootstrap of graph browser -- avoid make;
 
wenzelm 
parents: 
34282 
diff
changeset
 | 
63  | 
popd >/dev/null  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
64  | 
}  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
65  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
66  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
67  | 
function build_jars ()  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
68  | 
{
 | 
| 28956 | 69  | 
pushd "$ISABELLE_HOME/src/Pure" >/dev/null  | 
| 43280 | 70  | 
"$ISABELLE_TOOL" env ./build-jars "$@" || exit $?  | 
| 27904 | 71  | 
popd >/dev/null  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
72  | 
}  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
73  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
74  | 
|
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
75  | 
## main  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
76  | 
|
| 57618 | 77  | 
#FIXME workarounds for scalac 2.11.0  | 
78  | 
export CYGWIN="nodosfilewarning"  | 
|
| 53450 | 79  | 
function stty() { :; }
 | 
80  | 
export -f stty  | 
|
81  | 
||
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
82  | 
for MODULE in $MODULES  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
83  | 
do  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
84  | 
case $MODULE in  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
85  | 
all) build_all;;  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
86  | 
browser) build_browser;;  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
87  | 
jars) build_jars;;  | 
| 43280 | 88  | 
jars_fresh) build_jars -f;;  | 
| 
47408
 
63c05991882e
slightly faster default compilation of Isabelle/Scala;
 
wenzelm 
parents: 
47115 
diff
changeset
 | 
89  | 
jars_test) build_jars -t;;  | 
| 
27628
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
90  | 
*) fail "Bad module $MODULE"  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
91  | 
esac  | 
| 
 
901656b3205d
Administrative build -- finish Isabelle source distribution.
 
wenzelm 
parents:  
diff
changeset
 | 
92  | 
done  |