jaxp/makefiles/BuildJaxp.gmk

Print this page

        

@@ -1,7 +1,7 @@
 #
-# Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 #
 # This code is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License version 2 only, as
 # published by the Free Software Foundation.  Oracle designates this

@@ -45,15 +45,27 @@
      SERVER_JVM:=$(SJAVAC_SERVER_JAVA)))
 
 $(eval $(call SetupJavaCompilation,BUILD_JAXP,\
                 SETUP:=GENERATE_NEWBYTECODE_DEBUG,\
                 SRC:=$(JAXP_TOPDIR)/src,\
-                CLEAN:=.properties,\
                 BIN:=$(JAXP_OUTPUTDIR)/classes,\
                 SRCZIP:=$(JAXP_OUTPUTDIR)/dist/lib/src.zip))
 
-$(eval $(call SetupArchive,ARCHIVE_JAXP,$(BUILD_JAXP),\
+# Imitate the property cleaning mechanism in the old build. This will likely be replaced 
+# by the unified functionality in JavaCompilation.gmk, but keep it the same as old build
+# for now, even though it actually breaks properties containing # in the value.
+# Using nawk to avoid solaris sed.
+$(JAXP_OUTPUTDIR)/classes/%.properties: $(JAXP_TOPDIR)/src/%.properties
+        $(MKDIR) -p $(@D)
+        $(RM) $@ $@.tmp
+        $(CAT) $< | $(NAWK) '{ sub(/#.*$$/,"#"); print }' > $@.tmp
+        $(MV) $@.tmp $@
+
+SRC_PROP_FILES := $(shell $(FIND) $(JAXP_TOPDIR)/src -name "*.properties")
+TARGET_PROP_FILES := $(patsubst $(JAXP_TOPDIR)/src/%,$(JAXP_OUTPUTDIR)/classes/%,$(SRC_PROP_FILES))
+
+$(eval $(call SetupArchive,ARCHIVE_JAXP,$(BUILD_JAXP) $(TARGET_PROP_FILES),\
                 SRCS:=$(JAXP_OUTPUTDIR)/classes,\
                 SUFFIXES:=.class .properties,\
                 JAR:=$(JAXP_OUTPUTDIR)/dist/lib/classes.jar))
 
 all: $(JAXP_OUTPUTDIR)/dist/lib/classes.jar $(JAXP_OUTPUTDIR)/dist/lib/src.zip