Thu, 04 Apr 2013 09:24:21 +0200
8006828: "SKIP_BOOT_CYCLE=false" must work in new building infrastructure
Reviewed-by: tbell, alanb
1.1 --- a/common/autoconf/bootcycle-spec.gmk.in Tue Apr 02 15:29:18 2013 -0700 1.2 +++ b/common/autoconf/bootcycle-spec.gmk.in Thu Apr 04 09:24:21 2013 +0200 1.3 @@ -29,9 +29,16 @@ 1.4 include @SPEC@ 1.5 1.6 # Check that the user did not try to specify a different java to use for compiling. 1.7 -ifneq ($(firstword $(SJAVAC_SERVER_JAVA)),$(firstword $(JAVA))) 1.8 - $(error Bootcycle builds are not possible if --with-sjavac-server-java is specified) 1.9 +# On windows we need to account for fixpath being first word. 1.10 +ifeq ($(firstword $(JAVA)),$(FIXPATH)) 1.11 + JAVA_EXEC_POS=2 1.12 +else 1.13 + JAVA_EXEC_POS=1 1.14 endif 1.15 +ifneq ($(word $(JAVA_EXEC_POS),$(SJAVAC_SERVER_JAVA)),$(word $(JAVA_EXEC_POS),$(JAVA))) 1.16 + $(error Bootcycle builds are not possible if --with-sjavac-server-java is specified) 1.17 +endif 1.18 + 1.19 1.20 # Override specific values to do a boot cycle build 1.21 1.22 @@ -39,5 +46,8 @@ 1.23 BUILD_OUTPUT:=@BUILD_OUTPUT@/bootcycle-build 1.24 1.25 # Use a different Boot JDK 1.26 +OLD_BOOT_JDK:=$(BOOT_JDK) 1.27 BOOT_JDK:=@BUILD_OUTPUT@/images/j2sdk-image 1.28 BOOT_RTJAR:=@BUILD_OUTPUT@/images/j2sdk-image/jre/lib/rt.jar 1.29 + 1.30 +SJAVAC_SERVER_JAVA:=$(subst $(OLD_BOOT_JDK),$(BOOT_JDK),$(SJAVAC_SERVER_JAVA))
2.1 --- a/common/autoconf/spec.gmk.in Tue Apr 02 15:29:18 2013 -0700 2.2 +++ b/common/autoconf/spec.gmk.in Thu Apr 04 09:24:21 2013 +0200 2.3 @@ -225,6 +225,7 @@ 2.4 # directory. 2.5 2.6 BUILD_OUTPUT:=@BUILD_OUTPUT@ 2.7 +# Colon left out to be able to override IMAGES_OUTPUTDIR for bootcycle-images 2.8 LANGTOOLS_OUTPUTDIR=$(BUILD_OUTPUT)/langtools 2.9 CORBA_OUTPUTDIR=$(BUILD_OUTPUT)/corba 2.10 JAXP_OUTPUTDIR=$(BUILD_OUTPUT)/jaxp 2.11 @@ -643,16 +644,17 @@ 2.12 JRE_IMAGE_SUBDIR:=j2re-image 2.13 JDK_OVERLAY_IMAGE_SUBDIR:=j2sdk-overlay-image 2.14 JRE_OVERLAY_IMAGE_SUBDIR:=j2re-overlay-image 2.15 -JDK_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_IMAGE_SUBDIR) 2.16 -JRE_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_IMAGE_SUBDIR) 2.17 -JDK_OVERLAY_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_OVERLAY_IMAGE_SUBDIR) 2.18 -JRE_OVERLAY_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_OVERLAY_IMAGE_SUBDIR) 2.19 +# Colon left out to be able to override output dir for bootcycle-images 2.20 +JDK_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_IMAGE_SUBDIR) 2.21 +JRE_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_IMAGE_SUBDIR) 2.22 +JDK_OVERLAY_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_OVERLAY_IMAGE_SUBDIR) 2.23 +JRE_OVERLAY_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_OVERLAY_IMAGE_SUBDIR) 2.24 2.25 # Macosx bundles directory definitions 2.26 -JDK_BUNDLE_SUBDIR:=j2sdk-bundle/jdk$(JDK_VERSION).jdk/Contents 2.27 -JRE_BUNDLE_SUBDIR:=j2re-bundle/jre$(JDK_VERSION).jre/Contents 2.28 -JDK_BUNDLE_DIR:=$(IMAGES_OUTPUTDIR)/$(JDK_BUNDLE_SUBDIR) 2.29 -JRE_BUNDLE_DIR:=$(IMAGES_OUTPUTDIR)/$(JRE_BUNDLE_SUBDIR) 2.30 +JDK_BUNDLE_SUBDIR=j2sdk-bundle/jdk$(JDK_VERSION).jdk/Contents 2.31 +JRE_BUNDLE_SUBDIR=j2re-bundle/jre$(JDK_VERSION).jre/Contents 2.32 +JDK_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JDK_BUNDLE_SUBDIR) 2.33 +JRE_BUNDLE_DIR=$(IMAGES_OUTPUTDIR)/$(JRE_BUNDLE_SUBDIR) 2.34 2.35 # Include the custom-spec.gmk file if it exists 2.36 -include $(dir @SPEC@)/custom-spec.gmk
3.1 --- a/common/makefiles/Jprt.gmk Tue Apr 02 15:29:18 2013 -0700 3.2 +++ b/common/makefiles/Jprt.gmk Thu Apr 04 09:24:21 2013 +0200 3.3 @@ -64,6 +64,10 @@ 3.4 # Build with the configure bridge. After running configure, restart make 3.5 # to parse the new spec file. 3.6 BRIDGE_TARGETS := all 3.7 +# Add bootcycle-images target if legacy variable is set. 3.8 +ifeq ($(SKIP_BOOT_CYCLE),false) 3.9 + BRIDGE_TARGETS += bootcycle-images 3.10 +endif 3.11 bridgeBuild: bridge2configure 3.12 @cd $(root_dir) && $(MAKE) -f NewMakefile.gmk $(BRIDGE_TARGETS) 3.13
4.1 --- a/common/makefiles/Main.gmk Tue Apr 02 15:29:18 2013 -0700 4.2 +++ b/common/makefiles/Main.gmk Thu Apr 04 09:24:21 2013 +0200 4.3 @@ -175,9 +175,8 @@ 4.4 @($(CD) $(JDK_TOPDIR)/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) $(MAKE_ARGS) -f BuildJdk.gmk sign-jars) 4.5 @$(call TargetExit) 4.6 4.7 -bootcycle-images: 4.8 - @$(ECHO) Boot cycle build step 1: Building the JDK image normally 4.9 - @($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(SPEC) images) 4.10 +bootcycle-images: images bootcycle-images-only 4.11 +bootcycle-images-only: start-make 4.12 @$(ECHO) Boot cycle build step 2: Building a new JDK image using previously built image 4.13 @($(CD) $(SRC_ROOT)/common/makefiles && $(BUILD_LOG_WRAPPER) $(MAKE) SPEC=$(dir $(SPEC))bootcycle-spec.gmk images) 4.14