RFR: JDK-8041265: jdk/bin/rmic -iiop failed on macosx-x86_64 with "Class sun.rmi.rmic.iiop.BatchEnvironmen not found"
Erik Joelsson
erik.joelsson at oracle.com
Mon Apr 28 11:57:17 UTC 2014
Please review this small patch which is correcting the "clean"
properties feature in the SetupJavaCompilation macro. On Macosx, sed
does not understand '\t' which we use to match tab characters. The
consequence of this is that the character 't' gets removed at beginning
and end of lines when cleaned on Macosx. The solution is to explicitly
add a tab character instead.
Tested that it fixes the problem on Macosx and that nothing changes on
other platforms.
Bug: https://bugs.openjdk.java.net/browse/JDK-8041265
Patch inline:
diff -r ab55a18a95e1 make/common/JavaCompilation.gmk
--- a/make/common/JavaCompilation.gmk
+++ b/make/common/JavaCompilation.gmk
@@ -351,7 +351,8 @@
# 3. Delete all lines starting with #.
# 4. Delete empty lines.
# 5. Append lines ending with \ with the next line.
-# 6. Remove leading and trailing white space.
+# 6. Remove leading and trailing white space. Note that tabs must be
explicit
+# as sed on macosx does not understand '\t'.
# 7. Replace the first \= with just =.
# 8. Finally it's all sorted to create a stable output.
#
@@ -370,7 +371,7 @@
| $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \
| $(SED) -e '/^#/d' -e '/^$$$$/d' \
-e :a -e '/\\$$$$/N; s/\\\n//; ta' \
- -e 's/^[ \t]*//;s/[ \t]*$$$$//' \
+ -e 's/^[ ]*//;s/[ ]*$$$$//' \
-e 's/\\=/=/' | LC_ALL=C $(SORT) > $$@
$(CHMOD) -f ug+w $$@
More information about the build-dev
mailing list