# HG changeset patch # User Danesh Dadachanji # Date 1331319462 18000 # Node ID 9b3c0feaa29dfbf1f5777868993ce4fc58e39881 # Parent 5ede8a5762d4c0c35ab1ec6bdf0744943a65e41f Backport for PR732: Use xsltproc for bootstrap xslt in place of Xerces/Xalan diff -r 5ede8a5762d4 -r 9b3c0feaa29d ChangeLog --- a/ChangeLog Wed Feb 15 09:40:29 2012 +0000 +++ b/ChangeLog Fri Mar 09 13:57:42 2012 -0500 @@ -1,3 +1,28 @@ +2012-03-09 Danesh Dadachanji + + * Makefile.am: + (ENDORSED_DIR): Removed. + (ICEDTEA_ECJ_PATCHES): Add xsltproc.patch. + (ICEDTEA_ENV_ECJ): Set XSLT. Don't + set ICEDTEA_ENDORSED_DIR or ENDORSED. + (bootstrap-directory-stage1): Don't link + xalan2, xerces2 or xalan2 serialiser. + * acinclude.m4: + (FIND_XALAN2_JAR): Removed. + (FIND_XALAN2_SERIALIZER_JAR): Removed. + (FIND_XERCES2_JAR): Removed. + * configure.ac: + Replace calls to FIND_XALAN2_JAR, + FIND_XALAN2_SERIALIZER_JAR and + FIND_XERCES2_JAR with call to + FIND_TOOL for xsltproc. + * patches/ecj/xsltproc.patch: + Patch jvmti.make in HotSpot to use + xsltproc instead of Java's XSLT + when bootstrapping. + * NEWS: Updated. + + 2012-02-15 Andrew John Hughes * NEWS: Add 1.9.14. diff -r 5ede8a5762d4 -r 9b3c0feaa29d Makefile.am --- a/Makefile.am Wed Feb 15 09:40:29 2012 +0000 +++ b/Makefile.am Fri Mar 09 13:57:42 2012 -0500 @@ -35,7 +35,6 @@ ICEDTEA_CLS_DIR_ECJ = $(ECJ_BUILD_OUTPUT_DIR)/classes BOOT_DIR = $(abs_top_builddir)/bootstrap/jdk1.6.0 RUNTIME = $(BOOT_DIR)/jre/lib/rt.jar -ENDORSED_DIR = $(BOOT_DIR)/lib/endorsed ECJ_BOOT_DIR = $(abs_top_builddir)/bootstrap/ecj ICEDTEA_BOOT_DIR = $(abs_top_builddir)/bootstrap/icedtea SERVER_DIR = hotspot/import/jre/lib/$(INSTALL_ARCH_DIR)/server @@ -474,7 +473,8 @@ patches/ecj/icedtea-jaxp-dependency.patch \ patches/ecj/bootver.patch \ patches/ecj/getannotation-cast.patch \ - patches/ecj/override.patch + patches/ecj/override.patch \ + patches/ecj/xsltproc.patch if DTDTYPE_QNAME ICEDTEA_ECJ_PATCHES += \ @@ -530,8 +530,6 @@ ALT_BOOTDIR="$(BOOT_DIR)" \ BUILD_ARCH_DIR="$(BUILD_ARCH_DIR)" \ ICEDTEA_CLS_DIR="$(ICEDTEA_CLS_DIR)" \ - ICEDTEA_ENDORSED_DIR="$(ENDORSED_DIR)" \ - ENDORSED="-Djava.endorsed.dirs=$(ENDORSED_DIR)" \ CLASSPATH="" \ LD_LIBRARY_PATH="" \ ZERO_BUILD="$(ICEDTEA_ZERO_BUILD)" \ @@ -612,7 +610,8 @@ JAR_KNOWS_J_OPTIONS="$(JAR_KNOWS_J_OPTIONS)" \ JAR_ACCEPTS_STDIN_LIST="$(JAR_ACCEPTS_STDIN_LIST)" \ DISABLE_NIMBUS="true" \ - NO_DOCS="true" + NO_DOCS="true" \ + XSLT="$(XSLTPROC)" # Source files # FIXME (distclean): Add generated file list @@ -1272,11 +1271,6 @@ ln -sf $(JAR) $(ECJ_BOOT_DIR)/bin/jar ln -sf $(abs_top_builddir)/javac $(ECJ_BOOT_DIR)/bin/javac ln -sf $(abs_top_builddir)/javap $(ECJ_BOOT_DIR)/bin/javap - mkdir -p $(ECJ_BOOT_DIR)/lib/endorsed && \ - ln -sf $(XALAN2_JAR) $(ECJ_BOOT_DIR)/lib/endorsed/xalan-j2.jar && \ - ln -sf $(XALAN2_SERIALIZER_JAR) \ - $(ECJ_BOOT_DIR)/lib/endorsed/xalan-j2-serializer.jar && \ - ln -sf $(XERCES2_JAR) $(ECJ_BOOT_DIR)/lib/endorsed/xerces-j2.jar mkdir -p $(ECJ_BOOT_DIR)/jre/lib && \ cp $(SYSTEM_JDK_DIR)/jre/lib/rt.jar $(ECJ_BOOT_DIR)/jre/lib/rt.jar && \ ln -sf $(SYSTEM_JDK_DIR)/jre/lib/$(JRE_ARCH_DIR) \ diff -r 5ede8a5762d4 -r 9b3c0feaa29d NEWS --- a/NEWS Wed Feb 15 09:40:29 2012 +0000 +++ b/NEWS Fri Mar 09 13:57:42 2012 -0500 @@ -10,6 +10,9 @@ New in release 1.9.14 (2012-XX-XX): +* Bug Fixes + - PR732: Use xsltproc for bootstrap xslt in place of Xerces/Xalan + New in release 1.9.13 (2012-02-14): * Security fixes diff -r 5ede8a5762d4 -r 9b3c0feaa29d acinclude.m4 --- a/acinclude.m4 Wed Feb 15 09:40:29 2012 +0000 +++ b/acinclude.m4 Fri Mar 09 13:57:42 2012 -0500 @@ -568,101 +568,6 @@ AC_SUBST(ALT_JAR_CMD) ]) -AC_DEFUN([FIND_XALAN2_JAR], -[ - AC_MSG_CHECKING([for a xalan2 jar]) - AC_ARG_WITH([xalan2-jar], - [AS_HELP_STRING(--with-xalan2-jar,specify location of the xalan2 jar)], - [ - if test -f "${withval}" ; then - XALAN2_JAR="${withval}" - fi - ], - [ - XALAN2_JAR= - ]) - if test -z "${XALAN2_JAR}"; then - if test -e "/usr/share/java/xalan-j2.jar"; then - XALAN2_JAR=/usr/share/java/xalan-j2.jar - elif test -e "/usr/share/java/xalan2.jar"; then - XALAN2_JAR=/usr/share/java/xalan2.jar - elif test -e "/usr/share/xalan/lib/xalan.jar"; then - XALAN2_JAR=/usr/share/xalan/lib/xalan.jar - else - AC_MSG_RESULT(no) - fi - fi - if test -z "${XALAN2_JAR}"; then - AC_MSG_ERROR("A xalan2 jar was not found.") - fi - AC_MSG_RESULT(${XALAN2_JAR}) - AC_SUBST(XALAN2_JAR) -]) - -AC_DEFUN([FIND_XALAN2_SERIALIZER_JAR], -[ - AC_MSG_CHECKING([for a xalan2 serializer jar]) - AC_ARG_WITH([xalan2-serializer-jar], - [AS_HELP_STRING(--with-xalan2-serializer-jar,specify location of the xalan2-serializer jar)], - [ - if test -f "${withval}" ; then - XALAN2_SERIALIZER_JAR="${withval}" - fi - ], - [ - XALAN2_SERIALIZER_JAR= - ]) - if test -z "${XALAN2_SERIALIZER_JAR}"; then - if test -e "/usr/share/java/xalan-j2-serializer.jar"; then - XALAN2_SERIALIZER_JAR=/usr/share/java/xalan-j2-serializer.jar - elif test -e "/usr/share/xalan-serializer/lib/serializer.jar"; then - XALAN2_SERIALIZER_JAR=/usr/share/xalan-serializer/lib/serializer.jar - elif test -e "/usr/share/java/serializer.jar"; then - XALAN2_SERIALIZER_JAR=/usr/share/java/serializer.jar - else - AC_MSG_RESULT(no) - fi - fi - if test -z "${XALAN2_SERIALIZER_JAR}"; then - AC_MSG_ERROR("A xalan2-serializer jar was not found.") - fi - AC_MSG_RESULT(${XALAN2_SERIALIZER_JAR}) - AC_SUBST(XALAN2_SERIALIZER_JAR) -]) - -AC_DEFUN([FIND_XERCES2_JAR], -[ - AC_MSG_CHECKING([for a xerces2 jar]) - AC_ARG_WITH([xerces2-jar], - [AS_HELP_STRING(--with-xerces2-jar,specify location of the xerces2 jar)], - [ - if test -f "${withval}" ; then - XERCES2_JAR="${withval}" - fi - ], - [ - XERCES2_JAR= - ]) - if test -z "${XERCES2_JAR}"; then - if test -e "/usr/share/java/xerces-j2.jar"; then - XERCES2_JAR=/usr/share/java/xerces-j2.jar - elif test -e "/usr/share/java/xerces2.jar"; then - XERCES2_JAR=/usr/share/java/xerces2.jar - elif test -e "/usr/share/xerces-2/lib/xercesImpl.jar"; then - XERCES2_JAR=/usr/share/xerces-2/lib/xercesImpl.jar - elif test -e "/usr/share/java/xercesImpl.jar"; then - XERCES2_JAR=/usr/share/java/xercesImpl.jar - else - AC_MSG_RESULT(no) - fi - fi - if test -z "${XERCES2_JAR}"; then - AC_MSG_ERROR("A xerces2 jar was not found.") - fi - AC_MSG_RESULT(${XERCES2_JAR}) - AC_SUBST(XERCES2_JAR) -]) - AC_DEFUN([FIND_RHINO_JAR], [ AC_MSG_CHECKING([whether to include Javascript support via Rhino]) diff -r 5ede8a5762d4 -r 9b3c0feaa29d configure.ac --- a/configure.ac Wed Feb 15 09:40:29 2012 +0000 +++ b/configure.ac Fri Mar 09 13:57:42 2012 -0500 @@ -164,9 +164,7 @@ FIND_JAR FIND_RMIC FIND_ECJ_JAR - FIND_XALAN2_JAR - FIND_XALAN2_SERIALIZER_JAR - FIND_XERCES2_JAR + FIND_TOOL([XSLTPROC], [xsltproc]) AC_CONFIG_FILES([javac], [chmod +x javac]) AC_CONFIG_FILES([javap], [chmod +x javap]) fi diff -r 5ede8a5762d4 -r 9b3c0feaa29d patches/ecj/xsltproc.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/patches/ecj/xsltproc.patch Fri Mar 09 13:57:42 2012 -0500 @@ -0,0 +1,54 @@ +diff -r 591c7dc0b2ee make/linux/makefiles/jvmti.make +--- openjdk-ecj.orig/hotspot/make/linux/makefiles/jvmti.make Thu May 19 13:27:44 2011 +0200 ++++ openjdk-ecj/hotspot/make/linux/makefiles/jvmti.make Wed May 25 20:01:25 2011 +0100 +@@ -59,8 +59,6 @@ + + JvmtiGeneratedFiles = $(JvmtiGeneratedNames:%=$(JvmtiOutDir)/%) + +-XSLT = $(QUIETLY) $(REMOTE) $(RUN.JAVA) $(ENDORSED) -classpath $(JvmtiOutDir) jvmtiGen +- + .PHONY: all jvmtidocs clean cleanall + + # ######################################################################### +@@ -77,34 +75,34 @@ + + $(JvmtiOutDir)/jvmtiEnter.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnter.cpp -PARAM interface jvmti ++ $(XSLT) -o $(JvmtiOutDir)/jvmtiEnter.cpp --stringparam interface jvmti $(JvmtiSrcDir)/jvmtiEnter.xsl $(JvmtiSrcDir)/jvmti.xml + + $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp: $(JvmtiGenClass) $(InterpreterSrcDir)/bytecodeInterpreter.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl + @echo Generating $@ +- $(XSLT) -IN $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml -XSL $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl -OUT $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp ++ $(XSLT) -o $(JvmtiOutDir)/bytecodeInterpreterWithChecks.cpp $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xsl $(InterpreterSrcDir)/bytecodeInterpreterWithChecks.xml + + $(JvmtiOutDir)/jvmtiEnterTrace.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnter.xsl + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnter.xsl -OUT $(JvmtiOutDir)/jvmtiEnterTrace.cpp -PARAM interface jvmti -PARAM trace Trace ++ $(XSLT) -o $(JvmtiOutDir)/jvmtiEnterTrace.cpp --stringparam interface jvmti --stringparam trace Trace $(JvmtiSrcDir)/jvmtiEnter.xsl $(JvmtiSrcDir)/jvmti.xml + + $(JvmtiOutDir)/jvmtiEnvRecommended.cpp: $(both) $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiEnvFillClass) + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiEnv.xsl -OUT $(JvmtiOutDir)/jvmtiEnvStub.cpp ++ $(XSLT) -o $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiSrcDir)/jvmtiEnv.xsl $(JvmtiSrcDir)/jvmti.xml + $(QUIETLY) $(REMOTE) $(RUN.JAVA) -classpath $(JvmtiOutDir) jvmtiEnvFill $(JvmtiSrcDir)/jvmtiEnv.cpp $(JvmtiOutDir)/jvmtiEnvStub.cpp $(JvmtiOutDir)/jvmtiEnvRecommended.cpp + + $(JvmtiOutDir)/jvmtiEnv.hpp: $(both) $(JvmtiSrcDir)/jvmtiHpp.xsl + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiHpp.xsl -OUT $(JvmtiOutDir)/jvmtiEnv.hpp ++ $(XSLT) -o $(JvmtiOutDir)/jvmtiEnv.hpp $(JvmtiSrcDir)/jvmtiHpp.xsl $(JvmtiSrcDir)/jvmti.xml + + $(JvmtiOutDir)/jvmti.h: $(both) $(JvmtiSrcDir)/jvmtiH.xsl + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmtiH.xsl -OUT $(JvmtiOutDir)/jvmti.h ++ $(XSLT) -o $(JvmtiOutDir)/jvmti.h $(JvmtiSrcDir)/jvmtiH.xsl $(JvmtiSrcDir)/jvmti.xml + + jvmtidocs: $(JvmtiOutDir)/jvmti.html + + $(JvmtiOutDir)/jvmti.html: $(both) $(JvmtiSrcDir)/jvmti.xsl + @echo Generating $@ +- $(XSLT) -IN $(JvmtiSrcDir)/jvmti.xml -XSL $(JvmtiSrcDir)/jvmti.xsl -OUT $(JvmtiOutDir)/jvmti.html ++ $(XSLT) -o $(JvmtiOutDir)/jvmti.html $(JvmtiSrcDir)/jvmti.xsl $(JvmtiSrcDir)/jvmti.xml + + # ######################################################################### +