jdk/makefiles/Images.gmk
changeset 15681 8ca785029fe2
parent 15140 87c70ee15c73
child 15693 ba31a578f948
equal deleted inserted replaced
15680:d379c4f7bb47 15681:8ca785029fe2
    38                $(JDK_OUTPUTDIR)/include \
    38                $(JDK_OUTPUTDIR)/include \
    39                $(JDK_OUTPUTDIR)/sample \
    39                $(JDK_OUTPUTDIR)/sample \
    40                $(JDK_OUTPUTDIR)/demo)))
    40                $(JDK_OUTPUTDIR)/demo)))
    41 
    41 
    42 include Tools.gmk
    42 include Tools.gmk
       
    43 
       
    44 include Profiles.gmk
    43 
    45 
    44 # Note: This double-colon rule is intentional, to support
    46 # Note: This double-colon rule is intentional, to support
    45 # custom make file integration.
    47 # custom make file integration.
    46 images:: jre-image jdk-image
    48 images:: jre-image jdk-image
    47 
    49 
    82 # JRE and JDK build rules
    84 # JRE and JDK build rules
    83 #
    85 #
    84 ################################################################################
    86 ################################################################################
    85 #
    87 #
    86 # Variable prefixes explained:
    88 # Variable prefixes explained:
    87 # JRE_ refers to files in the j2re-image.
    89 # JRE_ refers to files in the j2re-*-image.
    88 # JDK_ refers to files in the j2sdk-image outside of the jre subdir.
    90 # JDK_ refers to files in the j2sdk-image outside of the jre subdir.
    89 # JDKJRE_ refers to files in the j2sdk-image inside the jre subdir.
    91 # JDKJRE_ refers to files in the j2sdk-image inside the jre subdir.
    90 #
    92 #
    91 
    93 
    92 ################################################################################
    94 ################################################################################
    93 # /bin dir
    95 # /bin dir
    94 
    96 
    95 NOT_JRE_BIN_FILES := \
    97 ifeq ($(PROFILE),)
       
    98     NOT_JRE_BIN_FILES := \
    96 	appletviewer$(EXE_SUFFIX) \
    99 	appletviewer$(EXE_SUFFIX) \
    97 	extcheck$(EXE_SUFFIX) \
   100 	extcheck$(EXE_SUFFIX) \
    98 	idlj$(EXE_SUFFIX) \
   101 	idlj$(EXE_SUFFIX) \
    99 	jar$(EXE_SUFFIX) \
   102 	jar$(EXE_SUFFIX) \
   100 	jarsigner$(EXE_SUFFIX) \
   103 	jarsigner$(EXE_SUFFIX) \
   123 	wsgen$(EXE_SUFFIX) \
   126 	wsgen$(EXE_SUFFIX) \
   124 	wsimport$(EXE_SUFFIX) \
   127 	wsimport$(EXE_SUFFIX) \
   125         schemagen$(EXE_SUFFIX) \
   128         schemagen$(EXE_SUFFIX) \
   126 	jsadebugd$(EXE_SUFFIX) \
   129 	jsadebugd$(EXE_SUFFIX) \
   127 	jhat$(EXE_SUFFIX)
   130 	jhat$(EXE_SUFFIX)
       
   131 endif
   128 
   132 
   129 WINDOWS_JDK_BIN_FILES = \
   133 WINDOWS_JDK_BIN_FILES = \
   130 	$(EXE_SUFFIX) \
   134 	$(EXE_SUFFIX) \
   131 	$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \
   135 	$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \
   132 	$(notdir $(MSVCR_DLL))
   136 	$(notdir $(MSVCR_DLL))
   194     JDKJRE_LIB_FILES := \
   198     JDKJRE_LIB_FILES := \
   195 	$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) \
   199 	$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) \
   196 	$(SALIB_NAME)
   200 	$(SALIB_NAME)
   197 endif
   201 endif
   198 
   202 
   199 NOT_JRE_LIB_FILES := \
   203 ifeq ($(PROFILE),)
       
   204     NOT_JRE_LIB_FILES := \
   200 	tools.jar \
   205 	tools.jar \
   201 	jconsole.jar \
   206 	jconsole.jar \
   202 	sa-jdi.jar \
   207 	sa-jdi.jar \
   203 	dt.jar \
   208 	dt.jar \
   204 	orb.idl \
   209 	orb.idl \
   205 	ir.idl \
   210 	ir.idl \
   206 	ct.sym
   211 	ct.sym
   207 
   212 
   208 ifeq ($(OPENJDK_TARGET_OS), windows)
   213     ifeq ($(OPENJDK_TARGET_OS), windows)
   209     NOT_JRE_LIB_FILES += jawt.lib jvm.lib
   214       NOT_JRE_LIB_FILES += jawt.lib jvm.lib
       
   215     endif
   210 endif
   216 endif
   211 
   217 
   212 JDK_LIB_FILES := $(NOT_JRE_LIB_FILES)
   218 JDK_LIB_FILES := $(NOT_JRE_LIB_FILES)
   213 ifeq ($(OPENJDK_TARGET_OS), linux)
   219 ifeq ($(OPENJDK_TARGET_OS), linux)
   214     JDK_LIB_FILES += jexec
   220     JDK_LIB_FILES += jexec
   605   fi)
   611   fi)
   606 
   612 
   607 $(JRE_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
   613 $(JRE_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
   608 	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   614 	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   609 	$(call create-info-file)
   615 	$(call create-info-file)
       
   616 ifneq ($(PROFILE),)
       
   617 	$(call info-file-item, "JAVA_PROFILE", "$(call profile_name, $(call profile_number, $(PROFILE)))")
       
   618 endif
   610 
   619 
   611 $(JDK_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
   620 $(JDK_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
   612 	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   621 	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   613 	$(call create-info-file)
   622 	$(call create-info-file)
   614 
   623 
   646     # Filter out the overlay specific bin files
   655     # Filter out the overlay specific bin files
   647     EXEC_LIST:=$(filter-out $(OVERLAY_FILTER),$(EXEC_LIST_BIN)) $(EXEC_LIST_LIB)
   656     EXEC_LIST:=$(filter-out $(OVERLAY_FILTER),$(EXEC_LIST_BIN)) $(EXEC_LIST_LIB)
   648     EXEC_LIST_OVERLAY:=$(filter $(OVERLAY_FILTER),$(EXEC_LIST_BIN)) $(EXEC_LIST_LIB)
   657     EXEC_LIST_OVERLAY:=$(filter $(OVERLAY_FILTER),$(EXEC_LIST_BIN)) $(EXEC_LIST_LIB)
   649 
   658 
   650     # Filter out non JRE files and convert to unique touch files to depend on
   659     # Filter out non JRE files and convert to unique touch files to depend on
   651     JRE_STRIP_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped,\
   660     JRE_STRIP_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip_jre$(PROFILE)/%.stripped,\
   652 			$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),\
   661 			$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),\
   653 				 $(EXEC_LIST)))
   662 				 $(EXEC_LIST)))
   654 
   663 
   655     JDKJRE_STRIP_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%, \
   664     JDKJRE_STRIP_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%, \
   656                         $(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped, \
   665                         $(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped, \
   686 	$(MKDIR) -p $(@D)
   695 	$(MKDIR) -p $(@D)
   687 	$(TOUCH) $@
   696 	$(TOUCH) $@
   688     endef
   697     endef
   689 
   698 
   690     # Setup a rule for stripping files based on touch files
   699     # Setup a rule for stripping files based on touch files
   691     $(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped: $(JRE_IMAGE_DIR)/%
   700     $(IMAGES_OUTPUTDIR)/_strip_jre$(PROFILE)/%.stripped: $(JRE_IMAGE_DIR)/%
   692 	$(call strip-file)
   701 	$(call strip-file)
   693 
   702 
   694     $(IMAGES_OUTPUTDIR)/_strip_jdk/%.stripped: $(JDK_IMAGE_DIR)/%
   703     $(IMAGES_OUTPUTDIR)/_strip_jdk/%.stripped: $(JDK_IMAGE_DIR)/%
   695 	$(call strip-file)
   704 	$(call strip-file)
   696 
   705 
   726 jdk-overlay-image: $(JDK_OVERLAY_BIN_TARGETS) $(JDKJRE_OVERLAY_BIN_TARGETS) \
   735 jdk-overlay-image: $(JDK_OVERLAY_BIN_TARGETS) $(JDKJRE_OVERLAY_BIN_TARGETS) \
   727 	$(JDK_OVERLAY_LIB_TARGETS) $(JDKJRE_OVERLAY_LIB_TARGETS) \
   736 	$(JDK_OVERLAY_LIB_TARGETS) $(JDKJRE_OVERLAY_LIB_TARGETS) \
   728 	$(JDK_OVERLAY_DEMO_TARGETS) $(JDK_OVERLAY_INFO_FILE) \
   737 	$(JDK_OVERLAY_DEMO_TARGETS) $(JDK_OVERLAY_INFO_FILE) \
   729 	$(JDKJRE_OVERLAY_STRIP_LIST) $(JDK_OVERLAY_BIN_STRIP_LIST) 
   738 	$(JDKJRE_OVERLAY_STRIP_LIST) $(JDK_OVERLAY_BIN_STRIP_LIST) 
   730 
   739 
       
   740 ifneq ($(PROFILE),)
       
   741 # Files in lib$(PROFILE) are excluded from the generic copying routines so
       
   742 # we have to add them back in here
       
   743 $(foreach f,$(CUSTOM_PROFILE_JARS),\
       
   744     $(eval $(call AddFileToCopy,$(IMAGES_OUTPUTDIR)/lib$(PROFILE),$(JRE_IMAGE_DIR)/lib,$f,JRE_LIB_TARGETS)))
       
   745 
       
   746 profile-image: $(JRE_BIN_TARGETS) $(JRE_LIB_TARGETS) \
       
   747 	$(JRE_IMAGE_DIR)/lib/meta-index $(JRE_IMAGE_DIR)/lib/ext/meta-index \
       
   748 	$(JRE_INFO_FILE) $(JRE_STRIP_LIST)
       
   749 
       
   750 .PHONY: profile-image
       
   751 
       
   752 endif # Profile
       
   753 
   731 ################################################################################
   754 ################################################################################
   732 
   755 
   733 .PHONY: default images jre-image jdk-image
   756 .PHONY: default images jre-image jdk-image