98 endef 99 100 # Create a variable dependency file common for all release info files. 101 INFO_FILE_VARDEPS := $(call DependOnVariable, create-info-file) 102 103 ALL_SOURCE_TIPS = $(shell \ 104 if [ -f $(SUPPORT_OUTPUTDIR)/source_tips ] ; then \ 105 $(CAT) $(SUPPORT_OUTPUTDIR)/source_tips ; \ 106 fi) 107 108 $(BASE_RELEASE_FILE): $(INFO_FILE_VARDEPS) $(SUPPORT_OUTPUTDIR)/source_tips 109 $(info-file) 110 111 ################################################################################ 112 113 JMODS := $(wildcard $(IMAGES_OUTPUTDIR)/jmods/*.jmod) 114 115 # Use this file inside the image as target for make rule 116 JIMAGE_TARGET_FILE := bin/java$(EXE_SUFFIX) 117 118 JLINK_ORDER_RESOURCES := \ 119 *module-info.class* \ 120 @$(SUPPORT_OUTPUTDIR)/classlist/classlist,/java.base/java/* \ 121 /java.base/jdk/* \ 122 /java.base/sun/* \ 123 /java.base/com/* \ 124 /jdk.localedata/* \ 125 # 126 127 JLINK_TOOL := $(JLINK) --modulepath $(IMAGES_OUTPUTDIR)/jmods \ 128 --endian $(OPENJDK_BUILD_CPU_ENDIAN) \ 129 --order-resources=$(call CommaList, $(JLINK_ORDER_RESOURCES)) \ 130 --release-info $(BASE_RELEASE_FILE) 131 132 ifeq ($(JLINK_KEEP_PACKAGED_MODULES), true) 133 JLINK_EXTRA_OPTS := --keep-packaged-modules $(JDK_IMAGE_DIR)/jmods 134 endif 135 136 $(JDK_IMAGE_DIR)/$(JIMAGE_TARGET_FILE): $(JMODS) \ 137 $(call DependOnVariable, JDK_MODULES_LIST) $(BASE_RELEASE_FILE) 138 $(ECHO) Creating jdk jimage 139 $(RM) -r $(JDK_IMAGE_DIR) 140 $(JLINK_TOOL) --output $(JDK_IMAGE_DIR) \ 141 --addmods $(JDK_MODULES_LIST) $(JLINK_EXTRA_OPTS) 142 $(TOUCH) $@ 143 144 $(JRE_IMAGE_DIR)/$(JIMAGE_TARGET_FILE): $(JMODS) \ 145 $(call DependOnVariable, JRE_MODULES_LIST) $(BASE_RELEASE_FILE) 146 $(ECHO) Creating jre jimage 147 $(RM) -r $(JRE_IMAGE_DIR) 148 $(JLINK_TOOL) --output $(JRE_IMAGE_DIR) \ 149 --addmods $(JRE_MODULES_LIST) 150 $(TOUCH) $@ 352 $(process-doc-file) 353 354 $(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/% 355 $(process-doc-file) 356 357 JRE_TARGETS += $(JRE_DOC_TARGETS) 358 JDK_TARGETS += $(JDK_DOC_TARGETS) 359 360 ################################################################################ 361 # src.zip 362 363 $(JDK_IMAGE_DIR)/src.zip: $(SUPPORT_OUTPUTDIR)/src.zip 364 $(call LogInfo, Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)) 365 $(install-file) 366 367 JDK_TARGETS += $(JDK_IMAGE_DIR)/src.zip 368 369 ################################################################################ 370 # classlist 371 372 $(eval $(call SetupCopyFiles, JDK_COPY_CLASSLIST, \ 373 FILES := $(SUPPORT_OUTPUTDIR)/classlist/classlist, \ 374 DEST := $(JDK_IMAGE_DIR)/lib, \ 375 )) 376 377 JDK_TARGETS += $(JDK_COPY_CLASSLIST) 378 379 $(eval $(call SetupCopyFiles, JRE_COPY_CLASSLIST, \ 380 FILES := $(SUPPORT_OUTPUTDIR)/classlist/classlist, \ 381 DEST := $(JRE_IMAGE_DIR)/lib, \ 382 )) 383 384 JRE_TARGETS += $(JRE_COPY_CLASSLIST) 385 386 ################################################################################ 387 # /demo dir 388 ifneq ($(findstring images, $(MAKECMDGOALS)), ) 389 $(eval $(call SetupCopyFiles, JDK_COPY_DEMOS, \ 390 SRC := $(SUPPORT_OUTPUTDIR)/demos/image, \ 391 DEST := $(JDK_IMAGE_DIR)/demo, \ 392 FILES := $(if $(wildcard $(SUPPORT_OUTPUTDIR)/demos/image), \ 393 $(call DoubleDollar, $(call DoubleDollar, \ 394 $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/demos/image \ 395 -type f -a ! \( -name "_the*" -o -name "javac_state" \) )))), \ 396 )) 397 398 JDK_TARGETS += $(JDK_COPY_DEMOS) 399 endif 400 401 ################################################################################ 402 # /sample dir 403 404 $(eval $(call SetupCopyFiles,COPY_SAMPLES, \ | 98 endef 99 100 # Create a variable dependency file common for all release info files. 101 INFO_FILE_VARDEPS := $(call DependOnVariable, create-info-file) 102 103 ALL_SOURCE_TIPS = $(shell \ 104 if [ -f $(SUPPORT_OUTPUTDIR)/source_tips ] ; then \ 105 $(CAT) $(SUPPORT_OUTPUTDIR)/source_tips ; \ 106 fi) 107 108 $(BASE_RELEASE_FILE): $(INFO_FILE_VARDEPS) $(SUPPORT_OUTPUTDIR)/source_tips 109 $(info-file) 110 111 ################################################################################ 112 113 JMODS := $(wildcard $(IMAGES_OUTPUTDIR)/jmods/*.jmod) 114 115 # Use this file inside the image as target for make rule 116 JIMAGE_TARGET_FILE := bin/java$(EXE_SUFFIX) 117 118 JLINK_ORDER_RESOURCES := *module-info.class* 119 ifeq ($(ENABLE_GENERATE_CLASSLIST), true) 120 JLINK_ORDER_RESOURCES += @$(SUPPORT_OUTPUTDIR)/classlist/classlist 121 endif 122 JLINK_ORDER_RESOURCES += \ 123 /java.base/java/* \ 124 /java.base/jdk/* \ 125 /java.base/sun/* \ 126 /java.base/com/* \ 127 /jdk.localedata/* \ 128 # 129 130 JLINK_TOOL := $(JLINK) --modulepath $(IMAGES_OUTPUTDIR)/jmods \ 131 --endian $(OPENJDK_BUILD_CPU_ENDIAN) \ 132 --release-info $(BASE_RELEASE_FILE) \ 133 --order-resources=$(call CommaList, $(JLINK_ORDER_RESOURCES)) \ 134 # 135 136 ifeq ($(JLINK_KEEP_PACKAGED_MODULES), true) 137 JLINK_EXTRA_OPTS := --keep-packaged-modules $(JDK_IMAGE_DIR)/jmods 138 endif 139 140 $(JDK_IMAGE_DIR)/$(JIMAGE_TARGET_FILE): $(JMODS) \ 141 $(call DependOnVariable, JDK_MODULES_LIST) $(BASE_RELEASE_FILE) 142 $(ECHO) Creating jdk jimage 143 $(RM) -r $(JDK_IMAGE_DIR) 144 $(JLINK_TOOL) --output $(JDK_IMAGE_DIR) \ 145 --addmods $(JDK_MODULES_LIST) $(JLINK_EXTRA_OPTS) 146 $(TOUCH) $@ 147 148 $(JRE_IMAGE_DIR)/$(JIMAGE_TARGET_FILE): $(JMODS) \ 149 $(call DependOnVariable, JRE_MODULES_LIST) $(BASE_RELEASE_FILE) 150 $(ECHO) Creating jre jimage 151 $(RM) -r $(JRE_IMAGE_DIR) 152 $(JLINK_TOOL) --output $(JRE_IMAGE_DIR) \ 153 --addmods $(JRE_MODULES_LIST) 154 $(TOUCH) $@ 356 $(process-doc-file) 357 358 $(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/% 359 $(process-doc-file) 360 361 JRE_TARGETS += $(JRE_DOC_TARGETS) 362 JDK_TARGETS += $(JDK_DOC_TARGETS) 363 364 ################################################################################ 365 # src.zip 366 367 $(JDK_IMAGE_DIR)/src.zip: $(SUPPORT_OUTPUTDIR)/src.zip 368 $(call LogInfo, Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)) 369 $(install-file) 370 371 JDK_TARGETS += $(JDK_IMAGE_DIR)/src.zip 372 373 ################################################################################ 374 # classlist 375 376 ifeq ($(ENABLE_GENERATE_CLASSLIST), true) 377 $(eval $(call SetupCopyFiles, JDK_COPY_CLASSLIST, \ 378 FILES := $(SUPPORT_OUTPUTDIR)/classlist/classlist, \ 379 DEST := $(JDK_IMAGE_DIR)/lib, \ 380 )) 381 382 JDK_TARGETS += $(JDK_COPY_CLASSLIST) 383 384 $(eval $(call SetupCopyFiles, JRE_COPY_CLASSLIST, \ 385 FILES := $(SUPPORT_OUTPUTDIR)/classlist/classlist, \ 386 DEST := $(JRE_IMAGE_DIR)/lib, \ 387 )) 388 389 JRE_TARGETS += $(JRE_COPY_CLASSLIST) 390 endif 391 392 ################################################################################ 393 # /demo dir 394 ifneq ($(findstring images, $(MAKECMDGOALS)), ) 395 $(eval $(call SetupCopyFiles, JDK_COPY_DEMOS, \ 396 SRC := $(SUPPORT_OUTPUTDIR)/demos/image, \ 397 DEST := $(JDK_IMAGE_DIR)/demo, \ 398 FILES := $(if $(wildcard $(SUPPORT_OUTPUTDIR)/demos/image), \ 399 $(call DoubleDollar, $(call DoubleDollar, \ 400 $(shell $(FIND) $(SUPPORT_OUTPUTDIR)/demos/image \ 401 -type f -a ! \( -name "_the*" -o -name "javac_state" \) )))), \ 402 )) 403 404 JDK_TARGETS += $(JDK_COPY_DEMOS) 405 endif 406 407 ################################################################################ 408 # /sample dir 409 410 $(eval $(call SetupCopyFiles,COPY_SAMPLES, \ |