1 |
commit: 08c4c3f235caed7161be8696b7019064e20a4378 |
2 |
Author: Mark Wright <gienah <AT> gentoo <DOT> org> |
3 |
AuthorDate: Mon Jan 2 22:47:13 2017 +0000 |
4 |
Commit: Mark Wright <gienah <AT> gentoo <DOT> org> |
5 |
CommitDate: Mon Jan 2 22:47:13 2017 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=08c4c3f2 |
7 |
|
8 |
sci-mathematics/isabelle: Bump to 2016.1. Thanks to David E. Narv?ez for |
9 |
providing the isabelle 2016 patches and the 2016 ebuild. Thanks to |
10 |
mgorny for reporting the get_libdir called in global scope QA bug. |
11 |
|
12 |
Gentoo-bugs: 602958, 593380 |
13 |
|
14 |
Package-Manager: portage-2.3.3 |
15 |
|
16 |
sci-mathematics/isabelle/Manifest | 7 + |
17 |
.../isabelle/files/isabelle-2016-classpath.patch | 32 ++ |
18 |
.../files/isabelle-2016-jfreechart-classpath.patch | 16 + |
19 |
.../isabelle/files/isabelle-2016-libsha1.patch | 13 + |
20 |
...abelle-2016.1-bash_process-1.2.1-settings.patch | 7 + |
21 |
...-2016.1-disable-jedit-build-after-install.patch | 128 ++++++++ |
22 |
.../isabelle-2016.1-jortho-1.0-2-classpath.patch | 8 + |
23 |
.../isabelle/files/isabelle-2016.1-libsha1.patch | 11 + |
24 |
...sabelle-2016.1-smt_read_only_certificates.patch | 33 +++ |
25 |
.../files/isabelle-2016.1-smt_timeout.patch | 22 ++ |
26 |
sci-mathematics/isabelle/isabelle-2016.1.ebuild | 329 +++++++++++++++++++++ |
27 |
11 files changed, 606 insertions(+) |
28 |
|
29 |
diff --git a/sci-mathematics/isabelle/Manifest b/sci-mathematics/isabelle/Manifest |
30 |
index 8e612b8..613468c 100644 |
31 |
--- a/sci-mathematics/isabelle/Manifest |
32 |
+++ b/sci-mathematics/isabelle/Manifest |
33 |
@@ -1,7 +1,14 @@ |
34 |
DIST Isabelle2015.tar.gz 36529154 SHA256 08723d3be6f91c57a7a69a8624c54cc1e0cd31506988bf29ed365a5aa5a5156f SHA512 052bb80316a9345368a295a7c5f3869b58d71a6879548fc6240a04fd2cf8c11406274ead8a1ed098563ef9b7573a826656da543e745044fc1d275322af5cc212 WHIRLPOOL 0be4759a1064f4759c2f227b037c448093ff36b47e16002fbb7e99d2843583e01314c4ea5c7a8cbf4d1304f8f72a383052911e483d51e4af2e68c4c36dea5121 |
35 |
+DIST Isabelle2016-1.tar.gz 39567637 SHA256 79831f83df4f0275fbd64caf3cd3e170354809478139907f6e25ebc8fc4a083f SHA512 c7da7900033a8c816f002b8899e398da7819dc457b3b1176dc9a19adffeb42d5524f2d14581a391487da1f36ffeabd0867bacab6462f3decfc0f7a9caf81a2d2 WHIRLPOOL 98d8cd767e04a7c46d19c91886fd7a98ca935625454b57df4f968f874340aaa5a6184004c6879ebc1c35f971b4e5ff1a52f06e33e1d14e377dbce346e201d655 |
36 |
+DIST bash_process-isabelle-component-1.2.1.tar.gz 33182 SHA256 50ba6bed5a8fbcf26b9e9b090af783e1288daa9b6d2e67ec65e7de8621049bf4 SHA512 d9817191af5660e38f1647401803115a93f0052291bfbbcb1cd9b41a4bab89b3ebdde22b40744a04ad3268aed8ca037ae59981c513f71b3ff6d89855d29e14c3 WHIRLPOOL f8392e4df237e758568b3edd25b83b44b916a81f9a18f6d6dd931a084de9a915930ae9e65e39b7b39b80ab9f738fd112113c4c3496ef3433fd17efff2f51068a |
37 |
DIST csdp-isabelle-component-6.x.tar.gz 493 SHA256 65dde42fa476095052ca3820df4c0e45089653d4467a53de711c8e13670a1b19 SHA512 9be28ecbf61d0f6ad23e28d44bd7ceb8f06ab22f3a05a7c823a9c5bf52ddcf5e5c300c41e14451d6b8e6a4c32b1bbd17769c731cd890fab335a866cd5e735290 WHIRLPOOL c930c531637172e4c75ec44d68f71e69e748a8b976fa3651ef4015fb6a90e30b568bd092632dc16c6389aac09bc13f3249af6c3ac261f09ad2dc5ad915282f99 |
38 |
DIST exec_process-isabelle-component-1.0.3.tar.gz 814 SHA256 ee3b7b299852bcfd0bf7ffce6c8cd2279f2d71247c4a7b0042971b31c2b2a89d SHA512 7880b7f9843ff5806ab37d938a817a5b33e973772d9a6c6cf76bf04076fb532309bd22dfaa203be7c72c07f5a638f0f97e730c414ed164024fd31f1f09fc7c09 WHIRLPOOL 9d9beb7a41baac8b591ceee31bb7b69e1dd07fce66757511649977f6a85d85eef525ba0be13b0873c1aef47de0eace8bf88283b4a136397000e61cfc81da8d4d |
39 |
+DIST isabelle_fonts-isabelle-component-20160830.tar.gz 249427 SHA256 1e99293f2f77f906f32c3974becd7c4a9d474050d3ab78222e3e5f40fe3d8fce SHA512 a185f79990478861832e9400ea37ffd02f582d3f916d26d901b8b0ec923027c412538bafe4a763a132adb9277a4b00a7a510762928ec49433ef550ae3fe59dbc WHIRLPOOL c15a6df44fce1d5577a7642d7b659b4b202bfd148db35c2429ec8e6c2680e7f1302b6249792150f0563a4e9cd9c92325bedc33194c0c7cf5008f2a3f4677ef02 |
40 |
DIST jedit_build-isabelle-component-20150228.tar.gz 10674317 SHA256 2bee3c5242a3ce4150656f106e658096e82b6bd966e04d590e20023a956be29b SHA512 ba2d0804f21cee596fc3528a592941efc393e98b890efe054aed18fc0d31edfe459047b58ed79b42892e219b4c35a4fb5c8cca0f402b96d641ff8ce62e321339 WHIRLPOOL b2971bdef70e32d858385cb58603d6a5a7e357dbbc9810569093a31332a7838387f43a76a65048a12f259f08de86f200e962ccf2deb2bd3cd4e83dc4c1e41d8b |
41 |
+DIST jedit_build-isabelle-component-20161024.tar.gz 10819946 SHA256 5b3cc4d2916a77ceef1b7aea80c3ade715795d2c2359f4f8f73b32e334c3f22e SHA512 0563b696307dd33b244e4ecc62664056a2b003c3291a5e3d7dd4f1c936dac2c3257ff90273cb2c8dc3bf9dea40fae745fabb57fc5f4ed420d0c8fd7d2b917433 WHIRLPOOL 46edf80819abef2c900a2d0dfb20530685678c25780a56946f8fa4af66abb047cfdcab17a7bb9700e60028e5465d93c227d7515084f6020546c781419d91cc03 |
42 |
DIST jfreechart-isabelle-component-1.0.14-1.tar.gz 3444825 SHA256 b0eb7365c4c5877379889100f081a4afc4117afc0d332941c3dd01bef2c4aee9 SHA512 ee1d84a45e43029d5e3acee823176196da19789322e8d3c2c81d5504930ad81d50e16e5da87655e4151034901daefb4ce6b82334839e39134b3a7ce32203aa67 WHIRLPOOL e6f9caadb802ecb5b784e86e96c008e9271aa0b1c940152fb0b0358280d9c1e274bb0dee1507f8ff0fe7f43f863db538d631c76e146d1f66ab6e8a8fb27eb42d |
43 |
+DIST jortho-isabelle-component-1.0-2.tar.gz 1723761 SHA256 cf004d735252dcdc00ff6d3c9b5cc400f56bc8b7eb49ed9a3227f12779639bad SHA512 8bef5e025d13b76c86a727bf93887b846cc906b2ce00299c38f69ccf33fb9dc7411e55b6fd1c56ed993c180d83a7e9ed90122f7feb6ae4fb70df93802ac21211 WHIRLPOOL 2a9aae3dcc62c52c194f17d0b5e59d710bd8efdb9e75ed6dd9fa68746a9bbc5178a218e405d7a23bf15d3957c3e1a8543ccdeb04f8556b05b8802aed47d8e537 |
44 |
DIST polyml-isabelle-component-5.5.2-3.tar.gz 691 SHA256 1ba253974193efc70711b7fe32cc831d8bcc13107b0b130ddf6087bb6ff6d3e7 SHA512 45d68fa7a07ae9fc39cb21fa4c4c43a34576377fb828c8652002c56cc9ec7b3c7b5fcefb7604fc4bc90ce4868dd2fca41ddf37ce285da4902664ab21e4657b3f WHIRLPOOL 3a85c59b1bb928c5ea91f8150c6ded5309fae96bd7558b56e6c3d8f04c418b03b57fb49565af5ed919179fd9e30c957575ca7b65d938ce69c5d3131d8c55ab1e |
45 |
+DIST polyml-isabelle-component-5.6-1.tar.gz 822 SHA256 158d597bb103b173ce95b40f4a5ed3bf45fce9a7185be4240e0fb69dbb74431d SHA512 403239aa48aab8c39e12cd5f82cb5e3ba7c31f9325d88f5137d3ec509bb25ab4eb8b1103a66b8ea5ad45c7c968ef092749c486217528a5db4223819106c00a59 WHIRLPOOL 6a1f766c71543748cdeab6bc1e3e1e7b8ab81b49976bebf0ec72086be8f161cd23b913d28cf0f0386b8f33a7b9637427a2c57f1bd7adf58c8c0f58054f84a9db |
46 |
+DIST ssh-java-isabelle-component-20161009.tar.gz 412919 SHA256 60d9448e664a357816e64e4d21ce0db9fb27354e8c64e1199c4be839b084145e SHA512 685a9b8791046c1bc21aa77614fb1b304e7438715377e179954ebfd1603434ff66fe23e90de928a5af6f51a48ae6ea6f05f9ff8941d98f7c3a43fdda02d3b519 WHIRLPOOL 3c5c666f86e08c81d75b13442a98b6eaa51418a8a55310e87c53e68480e31ec6050c1e2b3876a0a3e06c58e5e8c9735150408e8fd120a8d83b9827b9b84b2c7c |
47 |
DIST xz-java-isabelle-component-1.5.tar.gz 315 SHA256 e7fdd433608561c87558d4d0ee39166e8396ce11242e85391417ec7fd3ce7b8e SHA512 6dfec49e12c4cafbb6b6386dd54477e86b6bb419a77c52d9606a0305aeea9cd11f087ed6bba77352c7bf9ec656052ef617e845f472e57b5cdfbccf22b2eeb4fa WHIRLPOOL 9c1fc16db0adc88557b81608902d9d69007dc90d5849f4f7501101930842ce81ded76af0e76e38df8bd0b07d137e53bafaa338bf6c7ae338e97af2a1433d5c1d |
48 |
|
49 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016-classpath.patch b/sci-mathematics/isabelle/files/isabelle-2016-classpath.patch |
50 |
new file mode 100644 |
51 |
index 00000000..032b18b |
52 |
--- /dev/null |
53 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016-classpath.patch |
54 |
@@ -0,0 +1,32 @@ |
55 |
+Index: Isabelle2016/lib/Tools/java |
56 |
+=================================================================== |
57 |
+--- Isabelle2016.orig/lib/Tools/java |
58 |
++++ Isabelle2016/lib/Tools/java |
59 |
+@@ -10,5 +10,5 @@ declare -a JAVA_ARGS; eval "JAVA_ARGS=($ |
60 |
+ unset CLASSPATH |
61 |
+ |
62 |
+ isabelle_java java "${JAVA_ARGS[@]}" \ |
63 |
+- -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@" |
64 |
++ -classpath "$(platform_path "$ISABELLE_CLASSPATH:$(java-config -p scala-2.11)")" "$@" |
65 |
+ |
66 |
+Index: Isabelle2016/lib/Tools/scala |
67 |
+=================================================================== |
68 |
+--- Isabelle2016.orig/lib/Tools/scala |
69 |
++++ Isabelle2016/lib/Tools/scala |
70 |
+@@ -14,4 +14,4 @@ do |
71 |
+ done |
72 |
+ |
73 |
+ isabelle_scala scala "${SCALA_ARGS[@]}" \ |
74 |
+- -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@" |
75 |
++ -classpath "$(platform_path "$ISABELLE_CLASSPATH:$(java-config -p scala-2.11)")" "$@" |
76 |
+Index: Isabelle2016/lib/Tools/scalac |
77 |
+=================================================================== |
78 |
+--- Isabelle2016.orig/lib/Tools/scalac |
79 |
++++ Isabelle2016/lib/Tools/scalac |
80 |
+@@ -7,5 +7,5 @@ |
81 |
+ isabelle_admin_build jars || exit $? |
82 |
+ |
83 |
+ isabelle_scala scalac -Dfile.encoding=UTF-8 \ |
84 |
+- -classpath "$(platform_path "$ISABELLE_CLASSPATH")" "$@" |
85 |
++ -classpath "$(platform_path "$ISABELLE_CLASSPATH:$(java-config -p scala-2.11)")" "$@" |
86 |
+ |
87 |
|
88 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016-jfreechart-classpath.patch b/sci-mathematics/isabelle/files/isabelle-2016-jfreechart-classpath.patch |
89 |
new file mode 100644 |
90 |
index 00000000..9a88ebe |
91 |
--- /dev/null |
92 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016-jfreechart-classpath.patch |
93 |
@@ -0,0 +1,16 @@ |
94 |
+--- Isabelle2016-orig/contrib/jfreechart-1.0.14-1/etc/settings 2013-09-12 07:46:57.000000000 +1000 |
95 |
++++ Isabelle2016/contrib/jfreechart-1.0.14-1/etc/settings 2016-07-07 17:22:55.716464804 +1000 |
96 |
+@@ -1,9 +1,8 @@ |
97 |
+ # -*- shell-script -*- :mode=shellscript: |
98 |
+ |
99 |
+ JFREECHART_HOME="$COMPONENT" |
100 |
+-JFREECHART_JAR_NAMES="iText-2.1.5.jar jcommon-1.0.18.jar jfreechart-1.0.14.jar" |
101 |
+- |
102 |
+-classpath "$JFREECHART_HOME/lib/iText-2.1.5.jar" |
103 |
+-classpath "$JFREECHART_HOME/lib/jcommon-1.0.18.jar" |
104 |
+-classpath "$JFREECHART_HOME/lib/jfreechart-1.0.14.jar" |
105 |
++JFREECHART_JAR_NAMES="$(java-config --classpath itext | sed -e 's@:@ @g' -e 's@/[^ ]*/@@g') $(java-config --classpath jcommon-1.0 | sed -e 's@:@ @g' -e 's@/[^ ]*/@@g') $(java-config --classpath jfreechart-1.0 | sed -e 's@:@ @g' -e 's@/[^ ]*/@@g')" |
106 |
+ |
107 |
++classpath "$(java-config --classpath itext)" |
108 |
++classpath "$(java-config --classpath jcommon-1.0)" |
109 |
++classpath "$(java-config --classpath jfreechart-1.0)" |
110 |
|
111 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016-libsha1.patch b/sci-mathematics/isabelle/files/isabelle-2016-libsha1.patch |
112 |
new file mode 100644 |
113 |
index 00000000..04dc405 |
114 |
--- /dev/null |
115 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016-libsha1.patch |
116 |
@@ -0,0 +1,13 @@ |
117 |
+Index: work/Isabelle2016/src/Pure/General/sha1_polyml.ML |
118 |
+=================================================================== |
119 |
+--- work.orig/Isabelle2016/src/Pure/General/sha1_polyml.ML |
120 |
++++ work/Isabelle2016/src/Pure/General/sha1_polyml.ML |
121 |
+@@ -18,7 +18,7 @@ fun hex_string arr i = |
122 |
+ in (op ^) (apply2 hex_digit (Integer.div_mod (Char.ord c) 16)) end |
123 |
+ |
124 |
+ val lib_path = |
125 |
+- ("$ML_HOME/" ^ (if ML_System.platform_is_windows then "sha1.dll" else "libsha1.so")) |
126 |
++ ("$SHA1_HOME/" ^ (if ML_System.platform_is_windows then "sha1.dll" else "libsha1.so")) |
127 |
+ |> Path.explode; |
128 |
+ |
129 |
+ val STRING_INPUT_BYTES = |
130 |
|
131 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-bash_process-1.2.1-settings.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-bash_process-1.2.1-settings.patch |
132 |
new file mode 100644 |
133 |
index 00000000..38d0471 |
134 |
--- /dev/null |
135 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-bash_process-1.2.1-settings.patch |
136 |
@@ -0,0 +1,7 @@ |
137 |
+--- Isabelle2016-1-orig/contrib/bash_process-1.2.1/etc/settings 2016-02-14 09:48:03.000000000 +1100 |
138 |
++++ Isabelle2016-1/contrib/bash_process-1.2.1/etc/settings 2017-01-02 13:44:49.355549312 +1100 |
139 |
+@@ -1,3 +1,3 @@ |
140 |
+ # -*- shell-script -*- :mode=shellscript: |
141 |
+ |
142 |
+-ISABELLE_BASH_PROCESS="$COMPONENT/${ISABELLE_PLATFORM64:-$ISABELLE_PLATFORM32}/bash_process" |
143 |
++ISABELLE_BASH_PROCESS="$COMPONENT/bash_process" |
144 |
|
145 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-disable-jedit-build-after-install.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-disable-jedit-build-after-install.patch |
146 |
new file mode 100644 |
147 |
index 00000000..6bac5cc |
148 |
--- /dev/null |
149 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-disable-jedit-build-after-install.patch |
150 |
@@ -0,0 +1,128 @@ |
151 |
+--- Isabelle2016-1-orig/src/Tools/jEdit/lib/Tools/jedit 2016-12-13 01:03:49.000000000 +1100 |
152 |
++++ Isabelle2016-1/src/Tools/jEdit/lib/Tools/jedit 2017-01-01 17:24:50.107722845 +1100 |
153 |
+@@ -239,125 +239,6 @@ |
154 |
+ "$ISABELLE_JEDIT_BUILD_HOME/contrib/jsr305-2.0.0.jar" |
155 |
+ ) |
156 |
+ |
157 |
+- |
158 |
+-# target |
159 |
+- |
160 |
+-TARGET="dist/jars/Isabelle-jEdit.jar" |
161 |
+- |
162 |
+-declare -a UPDATED=() |
163 |
+- |
164 |
+-if [ "$BUILD_JARS" = jars_fresh ]; then |
165 |
+- OUTDATED=true |
166 |
+-else |
167 |
+- OUTDATED=false |
168 |
+- if [ ! -e "$TARGET" ]; then |
169 |
+- OUTDATED=true |
170 |
+- else |
171 |
+- if [ -n "$ISABELLE_JEDIT_BUILD_HOME" ]; then |
172 |
+- declare -a DEPS=( |
173 |
+- "$JEDIT_JAR" "${JEDIT_JARS[@]}" "$PURE_JAR" |
174 |
+- "${SOURCES[@]}" "${RESOURCES[@]}" |
175 |
+- ) |
176 |
+- elif [ -e "$ISABELLE_HOME/Admin/build" ]; then |
177 |
+- declare -a DEPS=("$PURE_JAR" "${SOURCES[@]}" "${RESOURCES[@]}") |
178 |
+- else |
179 |
+- declare -a DEPS=() |
180 |
+- fi |
181 |
+- for DEP in "${DEPS[@]}" |
182 |
+- do |
183 |
+- [ ! -e "$DEP" ] && fail "Missing file: $DEP" |
184 |
+- [ "$DEP" -nt "$TARGET" ] && { |
185 |
+- OUTDATED=true |
186 |
+- UPDATED["${#UPDATED[@]}"]="$DEP" |
187 |
+- } |
188 |
+- done |
189 |
+- fi |
190 |
+-fi |
191 |
+- |
192 |
+- |
193 |
+-# build |
194 |
+- |
195 |
+-if [ "$OUTDATED" = true ] |
196 |
+-then |
197 |
+- echo "### Building Isabelle/jEdit ..." |
198 |
+- |
199 |
+- [ "${#UPDATED[@]}" -gt 0 ] && { |
200 |
+- echo "Changed files:" |
201 |
+- for FILE in "${UPDATED[@]}" |
202 |
+- do |
203 |
+- echo " $FILE" |
204 |
+- done |
205 |
+- } |
206 |
+- |
207 |
+- [ -z "$ISABELLE_JEDIT_BUILD_HOME" ] && \ |
208 |
+- fail "Unknown ISABELLE_JEDIT_BUILD_HOME -- missing auxiliary component" |
209 |
+- |
210 |
+- rm -rf dist || failed |
211 |
+- mkdir -p dist dist/classes || failed |
212 |
+- |
213 |
+- cp -p -R -f "$ISABELLE_JEDIT_BUILD_HOME/contrib/$ISABELLE_JEDIT_BUILD_VERSION/." dist/. |
214 |
+- cp -p -R -f "${RESOURCES[@]}" dist/classes/. |
215 |
+- cp src/jEdit.props dist/properties/. |
216 |
+- cp -p -R -f src/modes/. dist/modes/. |
217 |
+- |
218 |
+- perl -i -e 'while (<>) { |
219 |
+- if (m/FILE="ml.xml"/ or m/FILE_NAME_GLOB="...sml,ml."/) { } |
220 |
+- elsif (m/NAME="javacc"/) { |
221 |
+- print qq!<MODE NAME="isabelle" FILE="isabelle.xml" FILE_NAME_GLOB="{*.thy,ROOT0.ML,ROOT.ML}"/>\n\n!; |
222 |
+- print qq!<MODE NAME="isabelle-ml" FILE="isabelle-ml.xml" FILE_NAME_GLOB="*.ML"/>\n\n!; |
223 |
+- print qq!<MODE NAME="isabelle-news" FILE="isabelle-news.xml"/>\n\n!; |
224 |
+- print qq!<MODE NAME="isabelle-options" FILE="isabelle-options.xml"/>\n\n!; |
225 |
+- print qq!<MODE NAME="isabelle-root" FILE="isabelle-root.xml" FILE_NAME_GLOB="ROOT"/>\n\n!; |
226 |
+- print; |
227 |
+- } |
228 |
+- elsif (m/NAME="sqr"/) { |
229 |
+- print qq!<MODE NAME="sml" FILE="sml.xml" FILE_NAME_GLOB="*.{sml,sig}"/>\n\n!; |
230 |
+- print; |
231 |
+- } |
232 |
+- else { print; } |
233 |
+- }' dist/modes/catalog |
234 |
+- |
235 |
+- cd dist |
236 |
+- isabelle_jdk jar xf jedit.jar |
237 |
+- cp "$ISABELLE_HOME/lib/logo/isabelle_transparent-32.gif" \ |
238 |
+- "org/gjt/sp/jedit/icons/themes/classic/32x32/apps/isabelle.gif" || failed |
239 |
+- cp "$ISABELLE_HOME/lib/logo/isabelle_transparent-32.gif" \ |
240 |
+- "org/gjt/sp/jedit/icons/themes/tango/32x32/apps/isabelle.gif" || failed |
241 |
+- isabelle_jdk jar cfe jedit.jar org.gjt.sp.jedit.jEdit org || failed |
242 |
+- rm -rf META-INF org |
243 |
+- cd .. |
244 |
+- |
245 |
+- cp -p -R -f "${JEDIT_JARS[@]}" dist/jars/. || failed |
246 |
+- ( |
247 |
+- #FIXME workarounds for scalac 2.11.0 |
248 |
+- export CYGWIN="nodosfilewarning" |
249 |
+- function stty() { :; } |
250 |
+- export -f stty |
251 |
+- |
252 |
+- for JAR in "$JEDIT_JAR" "${JEDIT_JARS[@]}" "$PURE_JAR" |
253 |
+- do |
254 |
+- classpath "$JAR" |
255 |
+- done |
256 |
+- export CLASSPATH="$(platform_path "$ISABELLE_CLASSPATH")" |
257 |
+- exec "$SCALA_HOME/bin/scalac" $ISABELLE_SCALA_BUILD_OPTIONS -d dist/classes "${SOURCES[@]}" |
258 |
+- ) || fail "Failed to compile sources" |
259 |
+- |
260 |
+- cd dist/classes |
261 |
+- isabelle_jdk jar cf "../jars/Isabelle-jEdit.jar" * || failed |
262 |
+- cd ../.. |
263 |
+- rm -rf dist/classes |
264 |
+- |
265 |
+- cp "$ISABELLE_JEDIT_BUILD_HOME/doc/jedit5.3.0manual-a4.pdf" dist/doc/jedit-manual.pdf |
266 |
+- cp dist/doc/CHANGES.txt dist/doc/jedit-changes |
267 |
+- cat > dist/doc/Contents <<EOF |
268 |
+-Original jEdit Documentation |
269 |
+- jedit-manual jEdit 5.3 User's Guide |
270 |
+- jedit-changes jEdit 5.3 Version History |
271 |
+- |
272 |
+-EOF |
273 |
+- |
274 |
+-fi |
275 |
+- |
276 |
+ popd >/dev/null |
277 |
+ |
278 |
+ |
279 |
|
280 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-jortho-1.0-2-classpath.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-jortho-1.0-2-classpath.patch |
281 |
new file mode 100644 |
282 |
index 00000000..a34cae3 |
283 |
--- /dev/null |
284 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-jortho-1.0-2-classpath.patch |
285 |
@@ -0,0 +1,8 @@ |
286 |
+--- Isabelle2016-1-orig/contrib/jortho-1.0-2/etc/settings 2014-04-16 06:03:34.000000000 +1000 |
287 |
++++ Isabelle2016-1/contrib/jortho-1.0-2/etc/settings 2017-01-02 00:13:01.619790577 +1100 |
288 |
+@@ -3,4 +3,4 @@ |
289 |
+ JORTHO_HOME="$COMPONENT" |
290 |
+ JORTHO_DICTIONARIES="$JORTHO_HOME/dictionaries/en.gz:$JORTHO_HOME/dictionaries/en_US.gz:$JORTHO_HOME/dictionaries/en_GB-ise.gz:$JORTHO_HOME/dictionaries/en_GB-ize.gz:$JORTHO_HOME/dictionaries/en_CA.gz" |
291 |
+ |
292 |
+-classpath "$JORTHO_HOME/jortho.jar" |
293 |
++classpath "$(java-config -p jortho)" |
294 |
|
295 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-libsha1.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-libsha1.patch |
296 |
new file mode 100644 |
297 |
index 00000000..f19436a |
298 |
--- /dev/null |
299 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-libsha1.patch |
300 |
@@ -0,0 +1,11 @@ |
301 |
+--- Isabelle2016-1-orig/src/Pure/General/sha1.ML 2016-12-13 01:03:45.000000000 +1100 |
302 |
++++ Isabelle2016-1/src/Pure/General/sha1.ML 2016-12-28 20:50:36.814706587 +1100 |
303 |
+@@ -146,7 +146,7 @@ |
304 |
+ (* C library and memory *) |
305 |
+ |
306 |
+ val library_path = |
307 |
+- Path.explode ("$ML_HOME/" ^ (if ML_System.platform_is_windows then "sha1.dll" else "libsha1.so")); |
308 |
++ Path.explode ("$SHA1_HOME/" ^ (if ML_System.platform_is_windows then "sha1.dll" else "libsha1.so")); |
309 |
+ |
310 |
+ fun with_memory n = |
311 |
+ Thread_Attributes.uninterruptible (fn restore_attributes => fn f => |
312 |
|
313 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-smt_read_only_certificates.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-smt_read_only_certificates.patch |
314 |
new file mode 100644 |
315 |
index 00000000..d766a95 |
316 |
--- /dev/null |
317 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-smt_read_only_certificates.patch |
318 |
@@ -0,0 +1,33 @@ |
319 |
+--- Isabelle2016-1-orig/src/HOL/SMT_Examples/Boogie.thy 2016-12-13 01:03:38.000000000 +1100 |
320 |
++++ Isabelle2016-1/src/HOL/SMT_Examples/Boogie.thy 2016-12-30 23:46:11.947737290 +1100 |
321 |
+@@ -52,7 +52,7 @@ |
322 |
+ section \<open>Verification condition proofs\<close> |
323 |
+ |
324 |
+ declare [[smt_oracle = false]] |
325 |
+-declare [[smt_read_only_certificates = true]] |
326 |
++declare [[smt_read_only_certificates = false]] |
327 |
+ |
328 |
+ |
329 |
+ declare [[smt_certificates = "Boogie_Max.certs"]] |
330 |
+--- Isabelle2016-1-orig/src/HOL/SMT_Examples/SMT_Examples.thy 2016-12-13 01:03:38.000000000 +1100 |
331 |
++++ Isabelle2016-1/src/HOL/SMT_Examples/SMT_Examples.thy 2016-12-30 23:46:11.953737338 +1100 |
332 |
+@@ -9,7 +9,7 @@ |
333 |
+ begin |
334 |
+ |
335 |
+ declare [[smt_certificates = "SMT_Examples.certs"]] |
336 |
+-declare [[smt_read_only_certificates = true]] |
337 |
++declare [[smt_read_only_certificates = false]] |
338 |
+ |
339 |
+ |
340 |
+ section \<open>Propositional and first-order logic\<close> |
341 |
+--- Isabelle2016-1-orig/src/HOL/SMT_Examples/SMT_Word_Examples.thy 2016-12-13 01:03:38.000000000 +1100 |
342 |
++++ Isabelle2016-1/src/HOL/SMT_Examples/SMT_Word_Examples.thy 2016-12-30 23:46:11.967737450 +1100 |
343 |
+@@ -11,7 +11,7 @@ |
344 |
+ declare [[smt_oracle = true]] |
345 |
+ declare [[z3_extensions = true]] |
346 |
+ declare [[smt_certificates = "SMT_Word_Examples.certs"]] |
347 |
+-declare [[smt_read_only_certificates = true]] |
348 |
++declare [[smt_read_only_certificates = false]] |
349 |
+ |
350 |
+ text \<open> |
351 |
+ Currently, there is no proof reconstruction for words. |
352 |
|
353 |
diff --git a/sci-mathematics/isabelle/files/isabelle-2016.1-smt_timeout.patch b/sci-mathematics/isabelle/files/isabelle-2016.1-smt_timeout.patch |
354 |
new file mode 100644 |
355 |
index 00000000..249c94b |
356 |
--- /dev/null |
357 |
+++ b/sci-mathematics/isabelle/files/isabelle-2016.1-smt_timeout.patch |
358 |
@@ -0,0 +1,22 @@ |
359 |
+--- Isabelle2016-1-orig/src/HOL/SMT.thy 2016-12-13 01:03:38.000000000 +1100 |
360 |
++++ Isabelle2016-1/src/HOL/SMT.thy 2016-12-30 14:11:09.379863215 +1100 |
361 |
+@@ -201,7 +201,7 @@ |
362 |
+ (given in seconds) to restrict their runtime. |
363 |
+ \<close> |
364 |
+ |
365 |
+-declare [[smt_timeout = 20]] |
366 |
++declare [[smt_timeout = 300]] |
367 |
+ |
368 |
+ text \<open> |
369 |
+ SMT solvers apply randomized heuristics. In case a problem is not |
370 |
+--- Isabelle2016-1-orig/src/HOL/Tools/SMT/smt_config.ML 2016-12-13 01:03:42.000000000 +1100 |
371 |
++++ Isabelle2016-1/src/HOL/Tools/SMT/smt_config.ML 2016-12-30 14:11:27.186904132 +1100 |
372 |
+@@ -170,7 +170,7 @@ |
373 |
+ (* options *) |
374 |
+ |
375 |
+ val oracle = Attrib.setup_config_bool @{binding smt_oracle} (K true) |
376 |
+-val timeout = Attrib.setup_config_real @{binding smt_timeout} (K 30.0) |
377 |
++val timeout = Attrib.setup_config_real @{binding smt_timeout} (K 300.0) |
378 |
+ val reconstruction_step_timeout = Attrib.setup_config_real @{binding smt_reconstruction_step_timeout} (K 10.0) |
379 |
+ val random_seed = Attrib.setup_config_int @{binding smt_random_seed} (K 1) |
380 |
+ val read_only_certificates = Attrib.setup_config_bool @{binding smt_read_only_certificates} (K false) |
381 |
|
382 |
diff --git a/sci-mathematics/isabelle/isabelle-2016.1.ebuild b/sci-mathematics/isabelle/isabelle-2016.1.ebuild |
383 |
new file mode 100644 |
384 |
index 00000000..8d18ecb |
385 |
--- /dev/null |
386 |
+++ b/sci-mathematics/isabelle/isabelle-2016.1.ebuild |
387 |
@@ -0,0 +1,329 @@ |
388 |
+# Copyright 1999-2017 Gentoo Foundation |
389 |
+# Distributed under the terms of the GNU General Public License v2 |
390 |
+# $Id$ |
391 |
+ |
392 |
+EAPI="6" |
393 |
+ |
394 |
+inherit eutils check-reqs java-pkg-2 versionator |
395 |
+ |
396 |
+MY_PN="Isabelle" |
397 |
+MY_PV=$(replace_all_version_separators '-') |
398 |
+MY_P="${MY_PN}${MY_PV}" |
399 |
+ |
400 |
+BP_PV="1.2.1" |
401 |
+BP_PN="bash_process" |
402 |
+BP_P="${BP_PN}-${BP_PV}" |
403 |
+BP_IC_PN="${BP_PN}-isabelle-component" |
404 |
+BP_IC_P="${BP_IC_PN}-${BP_PV}" |
405 |
+ |
406 |
+# csdp is used in the compile of HOL_ex in |
407 |
+# Library/Sum_of_Squares/sos_wrapper.ML where it execs $ISABELLE_CSDP |
408 |
+CSDP_PV="6.x" |
409 |
+CSDP_PN="csdp" |
410 |
+CSDP_P="${CSDP_PN}-${CSDP_PV}" |
411 |
+CSDP_IC_PN="${CSDP_PN}-isabelle-component" |
412 |
+CSDP_IC_P="${CSDP_IC_PN}-${CSDP_PV}" |
413 |
+ |
414 |
+ISABELLE_FONTS_PV="20160830" |
415 |
+ISABELLE_FONTS_PN="isabelle_fonts" |
416 |
+ISABELLE_FONTS_P="${ISABELLE_FONTS_PN}-${ISABELLE_FONTS_PV}" |
417 |
+ISABELLE_FONTS_IC_PN="${ISABELLE_FONTS_PN}-isabelle-component" |
418 |
+ISABELLE_FONTS_IC_P="${ISABELLE_FONTS_IC_PN}-${ISABELLE_FONTS_PV}" |
419 |
+ |
420 |
+JEDIT_PV="20161024" |
421 |
+JEDIT_PN="jedit_build" |
422 |
+JEDIT_P="${JEDIT_PN}-${JEDIT_PV}" |
423 |
+JEDIT_IC_PN="${JEDIT_PN}-isabelle-component" |
424 |
+JEDIT_IC_P="${JEDIT_IC_PN}-${JEDIT_PV}" |
425 |
+ |
426 |
+JORTHO_PV="1.0-2" |
427 |
+JORTHO_PN="jortho" |
428 |
+JORTHO_P="${JORTHO_PN}-${JORTHO_PV}" |
429 |
+JORTHO_IC_PN="${JORTHO_PN}-isabelle-component" |
430 |
+JORTHO_IC_P="${JORTHO_IC_PN}-${JORTHO_PV}" |
431 |
+ |
432 |
+JFREECHART_PV="1.0.14-1" |
433 |
+JFREECHART_PN="jfreechart" |
434 |
+JFREECHART_P="${JFREECHART_PN}-${JFREECHART_PV}" |
435 |
+JFREECHART_IC_PN="${JFREECHART_PN}-isabelle-component" |
436 |
+JFREECHART_IC_P="${JFREECHART_IC_PN}-${JFREECHART_PV}" |
437 |
+ |
438 |
+POLYML_PV="5.6-1" |
439 |
+POLYML_PN="polyml" |
440 |
+POLYML_P="${POLYML_PN}-${POLYML_PV}" |
441 |
+POLYML_IC_PN="${POLYML_PN}-isabelle-component" |
442 |
+POLYML_IC_P="${POLYML_IC_PN}-${POLYML_PV}" |
443 |
+ |
444 |
+SSH_JAVA_PV="20161009" |
445 |
+SSH_JAVA_PN="ssh-java" |
446 |
+SSH_JAVA_P="${SSH_JAVA_PN}-${SSH_JAVA_PV}" |
447 |
+SSH_JAVA_IC_PN="${SSH_JAVA_PN}-isabelle-component" |
448 |
+SSH_JAVA_IC_P="${SSH_JAVA_IC_PN}-${SSH_JAVA_PV}" |
449 |
+ |
450 |
+XZ_JAVA_PV="1.5" |
451 |
+XZ_JAVA_PN="xz-java" |
452 |
+XZ_JAVA_P="${XZ_JAVA_PN}-${XZ_JAVA_PV}" |
453 |
+XZ_JAVA_IC_PN="${XZ_JAVA_PN}-isabelle-component" |
454 |
+XZ_JAVA_IC_P="${XZ_JAVA_IC_PN}-${XZ_JAVA_PV}" |
455 |
+ |
456 |
+SS="2.11" |
457 |
+ |
458 |
+DESCRIPTION="Isabelle is a generic proof assistant" |
459 |
+HOMEPAGE="http://www.cl.cam.ac.uk/research/hvg/Isabelle/index.html" |
460 |
+SRC_URI="http://isabelle.in.tum.de/website-${MY_P}/dist/${MY_P}.tar.gz |
461 |
+ http://isabelle.in.tum.de/dist/contrib/${BP_P}.tar.gz -> ${BP_IC_P}.tar.gz |
462 |
+ http://dev.gentoo.org/~gienah/snapshots/${CSDP_IC_P}.tar.gz |
463 |
+ http://isabelle.in.tum.de/dist/contrib/${ISABELLE_FONTS_P}.tar.gz -> ${ISABELLE_FONTS_IC_P}.tar.gz |
464 |
+ http://isabelle.in.tum.de/components/${JORTHO_P}.tar.gz -> ${JORTHO_IC_P}.tar.gz |
465 |
+ http://isabelle.in.tum.de/components/${JEDIT_P}.tar.gz -> ${JEDIT_IC_P}.tar.gz |
466 |
+ http://isabelle.in.tum.de/dist/contrib/${JFREECHART_P}.tar.gz -> ${JFREECHART_IC_P}.tar.gz |
467 |
+ http://dev.gentoo.org/~gienah/snapshots/${POLYML_IC_P}.tar.gz |
468 |
+ http://isabelle.in.tum.de/dist/contrib/${SSH_JAVA_P}.tar.gz -> ${SSH_JAVA_IC_P}.tar.gz |
469 |
+ http://dev.gentoo.org/~gienah/snapshots/${XZ_JAVA_IC_P}.tar.gz" |
470 |
+ |
471 |
+LICENSE="BSD" |
472 |
+SLOT="0/${PV}" |
473 |
+KEYWORDS="~amd64 ~x86" |
474 |
+IUSE="doc graphbrowsing ledit readline" |
475 |
+ |
476 |
+#upstream says |
477 |
+#bash 2.x/3.x, Poly/ML 5.x, Perl 5.x, |
478 |
+#for document preparation: complete LaTeX |
479 |
+DEPEND=">=app-shells/bash-3.0:* |
480 |
+ >=dev-java/jcommon-1.0.18:1.0 |
481 |
+ dev-java/jortho:0 |
482 |
+ >=dev-java/jfreechart-1.0.14:1.0 |
483 |
+ >=dev-java/itext-2.1.5:0 |
484 |
+ dev-java/xz-java:0 |
485 |
+ >=dev-lang/ghc-7.6.3 |
486 |
+ >=dev-lang/polyml-5.6:=[-portable] |
487 |
+ >=dev-lang/perl-5.8.8-r2 |
488 |
+ >=dev-lang/swi-prolog-6.6.6 |
489 |
+ sci-libs/coinor-csdp |
490 |
+ =sci-mathematics/z3-4.4*[isabelle] |
491 |
+ >=virtual/jdk-1.8 |
492 |
+ doc? ( |
493 |
+ virtual/latex-base |
494 |
+ dev-tex/rail |
495 |
+ ) |
496 |
+ >=dev-lang/scala-2.11.8:${SS} |
497 |
+ ledit? ( |
498 |
+ app-misc/ledit |
499 |
+ ) |
500 |
+ readline? ( |
501 |
+ app-misc/rlwrap |
502 |
+ )" |
503 |
+ |
504 |
+RDEPEND="dev-perl/libwww-perl |
505 |
+ sci-mathematics/sha1-polyml |
506 |
+ >=virtual/jre-1.8 |
507 |
+ ${DEPEND}" |
508 |
+ |
509 |
+S="${WORKDIR}"/Isabelle${MY_PV} |
510 |
+TARGETDIR="/usr/share/Isabelle" |
511 |
+ |
512 |
+# Notes on QA warnings: * Class files not found via DEPEND in package.env |
513 |
+# Stuff with $ in the name appear to be spurious: |
514 |
+# isabelle/Markup_Tree$$anonfun$results$1$1.class |
515 |
+# scala/tools/nsc/backend/jvm/GenJVM$BytecodeGenerator$$anonfun$computeLocalVarsIndex$1.class |
516 |
+# It wants javafx, I am unsure how to fix this. I test isabelle with the Sun JDK: |
517 |
+# javafx/application/Platform.class javafx |
518 |
+# Presumably the user can provide the jEdit plugins if they are necessary: |
519 |
+# marker/MarkerSetsPlugin.class http://plugins.jedit.org/plugins/?MarkerSets |
520 |
+# projectviewer/gui/OptionPaneBase.class http://plugins.jedit.org/plugins/?ProjectViewer |
521 |
+ |
522 |
+JAVA_GENTOO_CLASSPATH="itext,jcommon-1.0,jortho,jfreechart-1.0,scala-${SS},xz-java" |
523 |
+ |
524 |
+CHECKREQS_MEMORY="8192M" |
525 |
+CHECKREQS_DISK_BUILD="17G" |
526 |
+CHECKREQS_DISK_USR="8G" |
527 |
+ |
528 |
+src_unpack() { |
529 |
+ unpack "${MY_P}.tar.gz" |
530 |
+ cd "${S}/contrib" || die |
531 |
+ unpack ${BP_IC_P}.tar.gz |
532 |
+ unpack ${CSDP_IC_P}.tar.gz |
533 |
+ unpack ${ISABELLE_FONTS_IC_P}.tar.gz |
534 |
+ unpack ${JEDIT_IC_P}.tar.gz |
535 |
+ unpack ${JORTHO_IC_P}.tar.gz |
536 |
+ unpack ${JFREECHART_IC_P}.tar.gz |
537 |
+ unpack ${POLYML_IC_P}.tar.gz |
538 |
+ unpack ${SSH_JAVA_IC_P}.tar.gz |
539 |
+ unpack ${XZ_JAVA_IC_P}.tar.gz |
540 |
+} |
541 |
+ |
542 |
+pkg_setup() { |
543 |
+ java-pkg-2_pkg_setup |
544 |
+ check-reqs_pkg_setup |
545 |
+} |
546 |
+ |
547 |
+src_prepare() { |
548 |
+ java-pkg-2_src_prepare |
549 |
+ java-pkg_getjars ${JAVA_GENTOO_CLASSPATH} |
550 |
+ rm -rf "${S}/contrib/${BP_P}/{x86-cygwin,x86-darwin,x86_64-darwin,x86-linux,x86_64-linux}" \ |
551 |
+ || die "Could not remove bash_process binaries" |
552 |
+ rm -f "${S}/contrib/${JORTHI_P}/${JORTHO_PN}.jar" \ |
553 |
+ || die "Could not remove contrib/${JORTHI_P}/${JORTHO_PN}.jar" |
554 |
+ eapply "${FILESDIR}/${PN}-2016-classpath.patch" |
555 |
+ eapply "${FILESDIR}/${PN}-2016-jfreechart-classpath.patch" |
556 |
+ eapply "${FILESDIR}/${PN}-2016.1-bash_process-1.2.1-settings.patch" |
557 |
+ eapply "${FILESDIR}/${PN}-2012-graphbrowser.patch" |
558 |
+ eapply "${FILESDIR}/${PN}-2016.1-libsha1.patch" |
559 |
+ eapply "${FILESDIR}/${PN}-2016.1-smt_timeout.patch" |
560 |
+ eapply "${FILESDIR}/${PN}-2016.1-smt_read_only_certificates.patch" |
561 |
+ eapply "${FILESDIR}/${PN}-2016.1-disable-jedit-build-after-install.patch" |
562 |
+ eapply "${FILESDIR}/${PN}-2016.1-jortho-1.0-2-classpath.patch" |
563 |
+ local polymlver=$(poly -v | cut -d' ' -f2) |
564 |
+ local polymlarch=$(poly -v | cut -d' ' -f9 | cut -d'-' -f1) |
565 |
+ cat <<- EOF >> "${S}/etc/settings" |
566 |
+ # Poly/ML Gentoo (${polymlarch,,}) |
567 |
+ ML_PLATFORM=${polymlarch,,}-linux |
568 |
+ ML_HOME="${ROOT}usr/bin" |
569 |
+ ML_SYSTEM=polyml-${polymlver} |
570 |
+ ML_OPTIONS="-H 1000" |
571 |
+ ML_SOURCES="${ROOT}usr/src/debug/dev-lang/polyml-${polymlver}" |
572 |
+ |
573 |
+ ISABELLE_GHC="${ROOT}usr/bin/ghc" |
574 |
+ ISABELLE_OCAML="${ROOT}usr/bin/ocaml" |
575 |
+ ISABELLE_SWIPL="${ROOT}usr/bin/swipl" |
576 |
+ ISABELLE_JDK_HOME="\$(java-config --jdk-home)" |
577 |
+ ISABELLE_BUILD_JAVA_OPTIONS="-Djava.awt.headless=true" |
578 |
+ SCALA_HOME="${ROOT}usr/share/scala-${SS}" |
579 |
+ SHA1_HOME="${ROOT}usr/$(get_libdir)/sha1-polyml" |
580 |
+ EOF |
581 |
+ local Z3_P="$(best_version sci-mathematics/z3 | sed 's:sci-mathematics/::')" |
582 |
+ cat <<- EOF >> "${S}/etc/components" |
583 |
+ #bundled components |
584 |
+ contrib/${BP_P} |
585 |
+ contrib/${CSDP_P} |
586 |
+ contrib/${ISABELLE_FONTS_P} |
587 |
+ contrib/${JEDIT_P} |
588 |
+ contrib/${JORTHO_P} |
589 |
+ contrib/${JFREECHART_P} |
590 |
+ contrib/${POLYML_P} |
591 |
+ contrib/${SSH_JAVA_P} |
592 |
+ contrib/${XZ_JAVA_P} |
593 |
+ contrib/${Z3_P} |
594 |
+ EOF |
595 |
+ local Z3_RC="${ROOT}usr/share/Isabelle/contrib/${Z3_P}" |
596 |
+ [ -d "${Z3_RC}" ] \ |
597 |
+ || die "z3 isabelle component directory ${Z3_RC} does not exist" |
598 |
+ ln -s "${Z3_RC}" \ |
599 |
+ "${S}/contrib/${Z3_P}" \ |
600 |
+ || die "Failed to create z3 isabelle component symbolic link" |
601 |
+ if use ledit && ! use readline; then |
602 |
+ eapply "${FILESDIR}/${PN}-2012-reverse-line-editor-order.patch" |
603 |
+ fi |
604 |
+ rm -f "${S}/contrib/${JFREECHART_P}/lib"/*.jar \ |
605 |
+ || die "Could not rm bundled jar files supplied by Gentoo" |
606 |
+} |
607 |
+ |
608 |
+src_compile() { |
609 |
+ unset DISPLAY |
610 |
+ einfo "Building Isabelle. This may take some time." |
611 |
+ pushd contrib/${BP_P} || die "Could not cd to contrib/${BP_P}" |
612 |
+ $(tc-getCC) ${CFLAGS} ${LDFLAGS} -o ${BP_PN} ${BP_PN}.c \ |
613 |
+ || die "Could not build ${BP_PN}" |
614 |
+ popd || die |
615 |
+ if use graphbrowsing |
616 |
+ then |
617 |
+ rm -f "${S}/lib/browser/GraphBrowser.jar" \ |
618 |
+ || die "failed cleaning graph browser directory" |
619 |
+ pushd "${S}/lib/browser" \ |
620 |
+ || die "Could not change directory to lib/browser" |
621 |
+ ./build || die "failed building the graph browser" |
622 |
+ popd |
623 |
+ fi |
624 |
+ ./bin/isabelle jedit -b -f || die "pide build failed" |
625 |
+ pushd "${S}"/src/Pure || die "Could not change directory to src/Pure" |
626 |
+ ../../bin/isabelle env ./build-jars -f || die "build-jars failed" |
627 |
+ popd || die |
628 |
+ ./bin/isabelle build -a -b -s -v || die "isabelle build failed" |
629 |
+} |
630 |
+ |
631 |
+src_install() { |
632 |
+ local Z3_P="$(best_version sci-mathematics/z3 | sed 's:sci-mathematics/::')" |
633 |
+ rm "${S}/contrib/${Z3_P}" \ |
634 |
+ || die "Failed to remove z3 isabelle component symbolic link" |
635 |
+ |
636 |
+ insinto ${TARGETDIR} |
637 |
+ doins -r src |
638 |
+ doins -r lib |
639 |
+ doins -r contrib |
640 |
+ doins ROOTS |
641 |
+ |
642 |
+ docompress -x /usr/share/doc/${PF} |
643 |
+ dodoc -r doc |
644 |
+ if use doc; then |
645 |
+ dosym /usr/share/doc/${PF}/doc "${TARGETDIR}/doc" |
646 |
+ # The build of sci-mathematics/haskabelle with use doc requires |
647 |
+ # sci-mathematics/isabelle[doc?]. The haskabelle doc build requires |
648 |
+ # the src/Doc directory stuff in the isabelle package. |
649 |
+ doins -r src/Doc |
650 |
+ for i in $(find ./src/Doc -type f -executable -print) |
651 |
+ do |
652 |
+ exeinto $(dirname "${TARGETDIR}/${i}") |
653 |
+ doexe ${i} |
654 |
+ done |
655 |
+ fi |
656 |
+ |
657 |
+ for i in $(find \ |
658 |
+ ./{bin,lib,"contrib/${BP_P}/${BP_PN}",src/HOL,src/Pure,src/Tools} \ |
659 |
+ -type f -executable -print) |
660 |
+ do |
661 |
+ exeinto $(dirname "${TARGETDIR}/${i}") |
662 |
+ doexe ${i} |
663 |
+ done |
664 |
+ |
665 |
+ insinto /etc/isabelle |
666 |
+ doins -r etc/* |
667 |
+ dosym /etc/isabelle "${TARGETDIR}/etc" |
668 |
+ |
669 |
+ local LIBDIR="/usr/"$(get_libdir)"/Isabelle"${MY_PV} |
670 |
+ dosym "${LIBDIR}/heaps" "${TARGETDIR}/heaps" |
671 |
+ insinto ${LIBDIR} |
672 |
+ doins -r heaps |
673 |
+ |
674 |
+ ./bin/isabelle install -d ${TARGETDIR} "${ED}usr/bin" \ |
675 |
+ || die "isabelle install failed" |
676 |
+ newicon lib/icons/"${PN}.xpm" "${PN}.xpm" |
677 |
+ newicon lib/icons/"${PN}-mini.xpm" "${PN}-mini.xpm" |
678 |
+ |
679 |
+ java-pkg_regjar \ |
680 |
+ $(find . -type f -name \*.jar -print | sed -e "s@^\.@${ED}${TARGETDIR}@g") |
681 |
+ |
682 |
+ local DOCS=( "ANNOUNCE" "CONTRIBUTORS" "COPYRIGHT" "NEWS" "README" ) |
683 |
+ einstalldocs |
684 |
+} |
685 |
+ |
686 |
+pkg_postinst() { |
687 |
+ # If any of the directories in /etc/isabelle/components do not exist, then |
688 |
+ # even isabelle getenv ISABELLE_HOME fails. Hence it is necessary to |
689 |
+ # to delete any non-existing directories. If an old Isabelle version was |
690 |
+ # installed with component ebuilds like sci-mathematics/e, then the |
691 |
+ # Isabelle version is upgraded, then the contrib directories will not |
692 |
+ # exist initially, it is necessary to delete them from /etc/isabelle/components. |
693 |
+ # Then these components are rebuilt (creating these directories) using the |
694 |
+ # EAPI=5 subslot depends. |
695 |
+ for i in $(egrep '^[^#].*$' "${ROOT}etc/isabelle/components") |
696 |
+ do |
697 |
+ if [ ! -d ${TARGETDIR}/${i} ]; then |
698 |
+ sed -e "\@${i}@d" -i "${ROOT}etc/isabelle/components" |
699 |
+ fi |
700 |
+ done |
701 |
+ if use ledit && use readline; then |
702 |
+ elog "Both readline and ledit use flags specified. The default setting" |
703 |
+ elog "if both are installed is to use readline (rlwrap), this can be" |
704 |
+ elog "modfied by editing the ISABELLE_LINE_EDITOR setting in" |
705 |
+ elog "${ROOT}/etc/isabelle/settings" |
706 |
+ fi |
707 |
+ elog "Please ensure you have a pdf viewer installed, for example:" |
708 |
+ elog "As root: emerge app-text/zathura-pdf-poppler" |
709 |
+ elog "Please configure your preferred pdf viewer, something like:" |
710 |
+ elog "As normal user: xdg-mime default zathura.desktop application/pdf" |
711 |
+ elog "Or alternatively by editing the PDF_VIEWER variable in the system" |
712 |
+ elog "settings file ${ROOT}etc/isabelle/settings and/or the user" |
713 |
+ elog "settings file \$HOME/.isabelle/${MY_P}/etc/settings" |
714 |
+ elog "For nitpick it is necessary to install:" |
715 |
+ elog "emerge sci-mathematics/kodkodi" |
716 |
+} |