From 48c8622010bd0cfc7bc82578772993178308a0b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= Date: Sun, 4 Mar 2018 14:16:37 +0100 Subject: [PATCH] gnu: antlr3-3.3: Fix java8 issue. * gnu/packages/java.scm (antlr3-3.3)[source]: Add patch. * gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Danny Milosavljevic --- gnu/local.mk | 1 + gnu/packages/java.scm | 4 ++- .../antlr3-3_3-fix-java8-compilation.patch | 35 +++++++++++++++++++ 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch diff --git a/gnu/local.mk b/gnu/local.mk index dffecfc7e9..2ef9b68590 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -554,6 +554,7 @@ dist_patch_DATA = \ %D%/packages/patches/ansible-wrap-program-hack.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \ + %D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \ %D%/packages/patches/ao-cad-aarch64-support.patch \ %D%/packages/patches/apr-skip-getservbyname-test.patch \ %D%/packages/patches/aspell-default-dict-dir.patch \ diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index cda7f0e01f..21e241d0fe 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6023,7 +6023,9 @@ (define antlr3-3.3 version ".tar.gz")) (sha256 (base32 - "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m")))) + "0qgg5vgsm4l1d6dj9pfbaa25dpv2ry2gny8ajy4vvgvfklw97b3m")) + (patches + (search-patches "antlr3-3_3-fix-java8-compilation.patch")))) (arguments `(#:jar-name (string-append ,name "-" ,version ".jar") #:source-dir (string-join '("tool/src/main/java" diff --git a/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch b/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch new file mode 100644 index 0000000000..a7d6be9b6b --- /dev/null +++ b/gnu/packages/patches/antlr3-3_3-fix-java8-compilation.patch @@ -0,0 +1,35 @@ +Based on the upstream fix for the java8 compilation issue. +Simplified patch. +Upstream version of patch does not work with this source tree. + +The issue is that in java8 it is an error to pass null to +removeAll. Results in null pointer exception. java7 +behaviour was to return the list unmodified. + +From 43867d50c05d1c06ab7220eb974a8874ae10c308 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= +Date: Fri, 5 Jan 2018 19:08:24 +0100 +Subject: [PATCH] Fix java8 complilation error. + +--- + tool/src/main/java/org/antlr/tool/CompositeGrammar.java | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java +index f34ea73..63740a6 100644 +--- a/tool/src/main/java/org/antlr/tool/CompositeGrammar.java ++++ b/tool/src/main/java/org/antlr/tool/CompositeGrammar.java +@@ -226,7 +226,9 @@ public class CompositeGrammar { + public List getIndirectDelegates(Grammar g) { + List direct = getDirectDelegates(g); + List delegates = getDelegates(g); +- delegates.removeAll(direct); ++ if(direct != null) { ++ delegates.removeAll(direct); ++ } + return delegates; + } + +-- +2.15.1 +