8072950: api/xinclude/Harold/harold-97.html\#harold-97, api/xinclude/Harold/harold-67.html\#harold-67 fails on solaris with build port-stage-aarch64
authorerikj
Tue, 17 Feb 2015 16:53:41 +0100
changeset 28900 dd0303e8c9ce
parent 28899 ceb890ca5f39
child 28909 58d622f06630
8072950: api/xinclude/Harold/harold-97.html\#harold-97, api/xinclude/Harold/harold-67.html\#harold-67 fails on solaris with build port-stage-aarch64 Reviewed-by: tbell
make/common/JavaCompilation.gmk
--- a/make/common/JavaCompilation.gmk	Mon Feb 16 12:25:56 2015 +0100
+++ b/make/common/JavaCompilation.gmk	Tue Feb 17 16:53:41 2015 +0100
@@ -362,6 +362,10 @@
 # This is the new clean standard. Though it is to be superseded by
 # a standard annotation processor from with sjavac.
 #
+# An empty echo ensures that the input to sed always ends with a newline.
+# Certain implementations (e.g. Solaris) will skip the last line without
+# it.
+#
 # The sed expression does this:
 # 1. Add a backslash before any :, = or ! that do not have a backslash already.
 # 2. Apply the file unicode2x.sed which does a whole bunch of \u00XX to \xXX
@@ -384,7 +388,7 @@
   # Now we can setup the depency that will trigger the copying.
   $$($1_BIN)$$($2_TARGET) : $2
 	$(MKDIR) -p $$(@D)
-	export LC_ALL=C ; $(CAT) $$< \
+	export LC_ALL=C ; ( $(CAT) $$< && $(ECHO) "" ) \
 	    | $(SED) -e 's/\([^\\]\):/\1\\:/g' -e 's/\([^\\]\)=/\1\\=/g' \
 	        -e 's/\([^\\]\)!/\1\\!/g' -e 's/#.*/#/g' \
 	    | $(SED) -f "$(SRC_ROOT)/make/common/support/unicode2x.sed" \