diff options
Diffstat (limited to 'gnu/packages/patches')
-rw-r--r-- | gnu/packages/patches/tla2tools-build-xml.patch | 109 |
1 files changed, 109 insertions, 0 deletions
diff --git a/gnu/packages/patches/tla2tools-build-xml.patch b/gnu/packages/patches/tla2tools-build-xml.patch new file mode 100644 index 0000000000..0bba82072a --- /dev/null +++ b/gnu/packages/patches/tla2tools-build-xml.patch @@ -0,0 +1,109 @@ +tla2tools comes packaged with three separate javax.mail JARs, which it +expects to be available to include in the JAR produced by the `dist' target. +However, the `java-javax-mail' packaged with Guix contains all of these +dependencies in a single JAR, so the other two are unneeded. This patch +removes references to them. + +The JAR also was expected to contain classes that are built as part of the +test suite. That does not seem useful, nor is it available during the +`compile' phase, so that portion is removed. + +There are a number of Git attributes that are set in the final manifest. +The branch name is kept, but the others are removed. The build user is set +statically to "guix". + +Finally, since we already have a patch, two targets `jar' and `check' are +added to satisfy `ant-build-system' and keep the package definition more +lean. + +diff --git a/tlatools/org.lamport.tlatools/customBuild.xml b/tlatools/org.lamport.tlatools/customBuild.xml +index f0ba77cb7..748e60d95 100644 +--- a/tlatools/org.lamport.tlatools/customBuild.xml ++++ b/tlatools/org.lamport.tlatools/customBuild.xml +@@ -36,6 +36,17 @@ + <istrue value="${maven.test.halt}"/> + </condition> + ++ <!-- `jar' and `check' added for Guix --> ++ <target name="jar"> ++ <antcall target="compile" inheritall="true" inheritrefs="true" /> ++ <antcall target="compile-aj" inheritall="true" inheritrefs="true" /> ++ <antcall target="dist" inheritall="true" inheritrefs="true" /> ++ </target> ++ <target name="check"> ++ <antcall target="compile-test" inheritall="true" inheritrefs="true" /> ++ <antcall target="test" inheritall="true" inheritrefs="true" /> ++ </target> ++ + <!-- https://github.com/alx3apps/jgit-buildnumber --> + <target name="git-revision"> + <taskdef name="jgit-buildnumber" classname="ru.concerteza.util.buildnumber.JGitBuildNumberAntTask"> +@@ -217,17 +228,7 @@ + <exclude name="javax/mail/search/**"/> + </patternset> + </unzip> +- <unzip src="lib/javax.mail/smtp-1.6.3.jar" dest="${class.dir}"> +- <patternset> +- <include name="**/*.class"/> +- </patternset> +- </unzip> +- <unzip src="lib/javax.mail/javax.activation_1.1.0.v201211130549.jar" dest="${class.dir}"> +- <patternset> +- <include name="**/*.class"/> +- <exclude name="org/**"/> +- </patternset> +- </unzip> ++ <mkdir dir="${class.dir}/META-INF" /> + <touch file="${class.dir}/META-INF/javamail.default.address.map"/> + <unzip src="lib/jline/jline-terminal-3.14.1.jar" dest="${class.dir}"> + <patternset> +@@ -259,17 +260,7 @@ + <exclude name="javax/mail/search/**"/> + </patternset> + </unzip> +- <unzip src="lib/javax.mail/smtp-1.6.3.jar" dest="target/classes"> +- <patternset> +- <include name="**/*.class"/> +- </patternset> +- </unzip> +- <unzip src="lib/javax.mail/javax.activation_1.1.0.v201211130549.jar" dest="target/classes"> +- <patternset> +- <include name="**/*.class"/> +- <exclude name="org/**"/> +- </patternset> +- </unzip> ++ <mkdir dir="target/classes/META-INF" /> + <touch file="target/classes/META-INF/javamail.default.address.map"/> + + <unzip src="lib/jline/jline-terminal-3.14.1.jar" dest="target/classes"> +@@ -373,14 +364,8 @@ + src/tla2sany/parser/Token.09-09-07, + src/tla2sany/parser/TokenMgrError.09-09-07"/> + <fileset dir="${doc.dir}" includes="License.txt"/> +- <fileset dir="${test.class.dir}"> +- <include name="**/tlc2/tool/CommonTestCase*.class" /> +- <include name="**/tlc2/tool/liveness/ModelCheckerTestCase*.class" /> +- <include name="**/tlc2/TestMPRecorder*.class" /> +- <include name="**/util/IsolatedTestCaseRunner*.class" /> +- </fileset> + <manifest> +- <attribute name="Built-By" value="${user.name}" /> ++ <attribute name="Built-By" value="guix" /> + <attribute name="Build-Tag" value="${env.BUILD_TAG}" /> + <attribute name="Build-Rev" value="${Build-Rev}" /> + <attribute name="Implementation-Title" value="TLA+ Tools" /> +@@ -389,14 +374,8 @@ + <!-- The jar files contains many main classes (SANY, TEX, pcal, ...) --> + <!-- but lets consider TLC the one users primarily use. --> + <attribute name="Main-class" value="tlc2.TLC" /> +- <attribute name="Class-Path" value="CommunityModules-deps.jar CommunityModules.jar" /> + <!-- Git revision --> +- <attribute name="X-Git-Branch" value="${git.branch}" /> + <attribute name="X-Git-Tag" value="${git.tag}" /> +- <attribute name="X-Git-Revision" value="${git.revision}" /> +- <attribute name="X-Git-ShortRevision" value="${git.shortRevision}" /> +- <attribute name="X-Git-BuildNumber" value="${git.branch}_${git.tag}_${git.shortRevision}" /> +- <attribute name="X-Git-Commits-Count" value="${git.commitsCount}" /> + <!-- App-Name and Permissions is required by Java Webstart used by distributed TLC --> + <!-- Depending on security level, the user will see a warning otherwise. --> + <!-- http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/security/manifest.html --> |