jdk/makefiles/Images.gmk
changeset 13164 72c5d01a857d
parent 12892 3ef14bab6254
child 13497 2c09fb7cdf7f
equal deleted inserted replaced
13082:9b19b2302c28 13164:72c5d01a857d
    32 
    32 
    33 include Tools.gmk
    33 include Tools.gmk
    34 
    34 
    35 images: jre-image jdk-image
    35 images: jre-image jdk-image
    36 
    36 
    37 ifeq ($(HOST_OS),solaris)
    37 ifeq ($(OPENJDK_TARGET_OS),solaris)
    38 define install-file
    38 define install-file
    39 	$(MKDIR) -p $(@D)
    39 	$(MKDIR) -p $(@D)
    40 	$(CP) -r -P '$<' '$(@D)'
    40 	$(CP) -f -r -P '$<' '$(@D)'
       
    41 endef
       
    42 else ifeq ($(OPENJDK_TARGET_OS),macosx)
       
    43 define install-file
       
    44 	$(MKDIR) -p $(@D)
       
    45 	$(CP) -fpRP '$<' '$@'
    41 endef
    46 endef
    42 else
    47 else
    43 define install-file
    48 define install-file
    44 	$(MKDIR) -p $(@D)
    49 	$(MKDIR) -p $(@D)
    45 	$(CP) -P '$<' '$@'
    50 	$(CP) -fP '$<' '$@'
    46 endef
    51 endef
    47 endif
    52 endif
    48 
    53 
    49 ################################################################################
    54 ################################################################################
    50 #
    55 #
    65 
    70 
    66 $(JDK_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/%
    71 $(JDK_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/%
    67 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
    72 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
    68 	$(install-file)
    73 	$(install-file)
    69 
    74 
    70 NOT_JRE_BIN_FILES = \
    75 NOT_JRE_BIN_FILES := \
    71 	appletviewer$(EXE_SUFFIX) \
    76 	appletviewer$(EXE_SUFFIX) \
    72 	extcheck$(EXE_SUFFIX) \
    77 	extcheck$(EXE_SUFFIX) \
    73 	idlj$(EXE_SUFFIX) \
    78 	idlj$(EXE_SUFFIX) \
    74 	jar$(EXE_SUFFIX) \
    79 	jar$(EXE_SUFFIX) \
    75 	jarsigner$(EXE_SUFFIX) \
    80 	jarsigner$(EXE_SUFFIX) \
   105 	$(LIB_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \
   110 	$(LIB_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \
   106 	$(MSVCRNN_DLL)
   111 	$(MSVCRNN_DLL)
   107 
   112 
   108 # Find all files in bin dir
   113 # Find all files in bin dir
   109 ALL_BIN_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f)
   114 ALL_BIN_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f)
   110 ifeq ($(HOST_OS),windows)
   115 
       
   116 # For unknown reason the debuginfo files for binaries are not put into images
       
   117 # e.g filter them out
       
   118 ALL_BIN_LIST := $(filter-out %.debuginfo %.diz, $(ALL_BIN_LIST))
       
   119 
       
   120 ifeq ($(OPENJDK_TARGET_OS),windows)
   111     JDK_BIN_LIST := $(filter $(addprefix %,$(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST))
   121     JDK_BIN_LIST := $(filter $(addprefix %,$(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST))
   112 else
   122 else
   113     JDK_BIN_LIST := $(ALL_BIN_LIST)
   123     JDK_BIN_LIST := $(ALL_BIN_LIST)
   114 endif
   124 endif
   115 JRE_BIN_LIST := $(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES)), $(ALL_BIN_LIST))
   125 JRE_BIN_LIST := $(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES)), $(ALL_BIN_LIST))
   145 	orb.idl \
   155 	orb.idl \
   146 	ir.idl \
   156 	ir.idl \
   147 	ct.sym
   157 	ct.sym
   148 
   158 
   149 JDK_LIB_FILES := $(NOT_JRE_LIB_FILES)
   159 JDK_LIB_FILES := $(NOT_JRE_LIB_FILES)
   150 ifeq ($(HOST_OS), linux)
   160 ifeq ($(OPENJDK_TARGET_OS), linux)
   151     JDK_LIB_FILES += jexec
   161     JDK_LIB_FILES += jexec
   152 endif
   162 endif
   153 
   163 
   154 ALL_LIB_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/lib \( -type f -o -type l \) ! -name "_the*")
   164 ALL_LIB_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/lib \( -type f -o -type l \) ! -name "_the*")
   155 JRE_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),$(ALL_LIB_LIST))
   165 JRE_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),$(ALL_LIB_LIST))
   234 	serialver.1        \
   244 	serialver.1        \
   235         wsgen.1            \
   245         wsgen.1            \
   236         wsimport.1         \
   246         wsimport.1         \
   237         xjc.1
   247         xjc.1
   238 
   248 
   239 ifeq ($(HOST_OS), linux)
   249 ifeq ($(OPENJDK_TARGET_OS), linux)
   240     MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc
   250     MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc
   241     MAN1_SUBDIR:=man
   251     MAN1_SUBDIR:=man
   242 endif
   252 endif
   243 ifeq ($(HOST_OS), solaris)
   253 ifeq ($(OPENJDK_TARGET_OS), solaris)
   244     MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc
   254     MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc
   245     MAN1_SUBDIR:=sun/man/man1
   255     MAN1_SUBDIR:=sun/man/man1
   246 endif
   256 endif
       
   257 ifeq ($(OPENJDK_TARGET_OS), macosx)
       
   258     MAN_SRC_DIR:=$(JDK_TOPDIR)/src/bsd/doc
       
   259     MAN1_SUBDIR:=man
       
   260     JDK_MAN_PAGES := $(filter-out jcmd.1, $(JDK_MAN_PAGES))
       
   261     JDK_MAN_PAGES := $(filter-out jvisualvm.1, $(JDK_MAN_PAGES))
       
   262 endif
       
   263 
   247 
   264 
   248 $(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
   265 $(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
   249 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   266 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   250 	$(install-file)
   267 	$(install-file)
   251 
   268 
   284 
   301 
   285 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   302 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   286 	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   303 	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   287 	$(call install-ja-manpage,PCK)
   304 	$(call install-ja-manpage,PCK)
   288 
   305 
   289 ifeq ($(HOST_OS), solaris)
   306 ifeq ($(OPENJDK_TARGET_OS), solaris)
   290     $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   307     $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   291 	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   308 	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   292 	$(install-file)
   309 	$(install-file)
   293 
   310 
   294     $(JDK_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   311     $(JDK_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
   300 $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja/man1/jcmd.1:
   317 $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/jcmd.1 $(JDK_IMAGE_DIR)/man/ja/man1/jcmd.1:
   301 	$(ECHO) Creating dummy $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   318 	$(ECHO) Creating dummy $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   302 	$(MKDIR) -p $(@D)
   319 	$(MKDIR) -p $(@D)
   303 	$(TOUCH) $@
   320 	$(TOUCH) $@
   304 
   321 
   305 ifeq ($(HOST_OS), linux)
   322 ifeq ($(OPENJDK_TARGET_OS), linux)
   306     $(JRE_IMAGE_DIR)/man/ja:
   323     $(JRE_IMAGE_DIR)/man/ja:
   307 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   324 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   308 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
   325 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
   309 
   326 
   310     $(JDK_IMAGE_DIR)/man/ja:
   327     $(JDK_IMAGE_DIR)/man/ja:
   311 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   328 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   312 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
   329 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
   313 endif
   330 endif
   314 
   331 
   315 ifeq ($(HOST_OS), linux)
   332 ifeq ($(OPENJDK_TARGET_OS), macosx)
       
   333     $(JRE_IMAGE_DIR)/man/ja:
       
   334 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
       
   335 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
       
   336 
       
   337     $(JDK_IMAGE_DIR)/man/ja:
       
   338 	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
       
   339 	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
       
   340 endif
       
   341 
       
   342 ifeq ($(OPENJDK_TARGET_OS), linux)
   316     JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
   343     JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
   317 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
   344 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
   318 			 $(JRE_IMAGE_DIR)/man/ja
   345 			 $(JRE_IMAGE_DIR)/man/ja
   319 
   346 
   320     JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
   347     JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
   321 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
   348 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
   322 			 $(JDK_IMAGE_DIR)/man/ja
   349 			 $(JDK_IMAGE_DIR)/man/ja
   323 endif
   350 endif
   324 
   351 
   325 ifeq ($(HOST_OS), solaris)
   352 ifeq ($(OPENJDK_TARGET_OS), solaris)
   326     JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
   353     JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
   327 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \
   354 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \
   328 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
   355 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
   329 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JRE_MAN_PAGES))
   356 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JRE_MAN_PAGES))
   330 
   357 
   331     JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
   358     JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
   332 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja/man1/,$(JDK_MAN_PAGES)) \
   359 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja/man1/,$(JDK_MAN_PAGES)) \
   333 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
   360 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
   334 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES))
   361 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES))
       
   362 endif
       
   363 
       
   364 ifeq ($(OPENJDK_TARGET_OS), macosx)
       
   365     JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
       
   366 			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
       
   367 			 $(JRE_IMAGE_DIR)/man/ja
       
   368 
       
   369     JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
       
   370 			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
       
   371 			 $(JDK_IMAGE_DIR)/man/ja
   335 endif
   372 endif
   336 
   373 
   337 ################################################################################
   374 ################################################################################
   338 # /demo dir
   375 # /demo dir
   339 
   376 
   381 	$(TOUCH) $@
   418 	$(TOUCH) $@
   382 
   419 
   383     $(JDK_IMAGE_DIR)/db/README-JDK.html: $(JDK_TOPDIR)/src/closed/share/db/README-JDK.html
   420     $(JDK_IMAGE_DIR)/db/README-JDK.html: $(JDK_TOPDIR)/src/closed/share/db/README-JDK.html
   384 	$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
   421 	$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
   385 	$(install-file)
   422 	$(install-file)
       
   423 	$(CHMOD) 644 $(@)
   386 
   424 
   387     JDK_DB_TARGETS := $(patsubst $(JDK_TOPDIR)/src/closed/share/db/%,$(IMAGES_OUTPUTDIR)/_unzip/%.unzipped,\
   425     JDK_DB_TARGETS := $(patsubst $(JDK_TOPDIR)/src/closed/share/db/%,$(IMAGES_OUTPUTDIR)/_unzip/%.unzipped,\
   388 			$(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/db -name "*.zip" ! -name "*demo*")) \
   426 			$(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/db -name "*.zip" ! -name "*demo*")) \
   389 		      $(JDK_IMAGE_DIR)/db/README-JDK.html
   427 		      $(JDK_IMAGE_DIR)/db/README-JDK.html
   390 
   428 
   409     JRE_DOC_LOCATION := $(JDK_TOPDIR)
   447     JRE_DOC_LOCATION := $(JDK_TOPDIR)
   410     JDK_DOC_LOCATION := $(JDK_TOPDIR)
   448     JDK_DOC_LOCATION := $(JDK_TOPDIR)
   411 else
   449 else
   412     JRE_DOC_FILES := COPYRIGHT Welcome.html LICENSE THIRDPARTYLICENSEREADME.txt
   450     JRE_DOC_FILES := COPYRIGHT Welcome.html LICENSE THIRDPARTYLICENSEREADME.txt
   413     JDK_DOC_FILES := COPYRIGHT README.html  LICENSE THIRDPARTYLICENSEREADME.txt
   451     JDK_DOC_FILES := COPYRIGHT README.html  LICENSE THIRDPARTYLICENSEREADME.txt
   414     ifeq ($(HOST_OS), windows)
   452     ifeq ($(OPENJDK_TARGET_OS), windows)
   415         JRE_DOC_FILES += README.txt
   453         JRE_DOC_FILES += README.txt
   416     else
   454     else
   417         JRE_DOC_FILES += README
   455         JRE_DOC_FILES += README
   418     endif
   456     endif
   419     ifndef NO_DEMOS
   457     ifndef NO_DEMOS
   430 JDK_DOC_TARGETS := $(addprefix $(JDK_IMAGE_DIR)/,$(JDK_DOC_FILES))
   468 JDK_DOC_TARGETS := $(addprefix $(JDK_IMAGE_DIR)/,$(JDK_DOC_FILES))
   431 
   469 
   432 $(JRE_IMAGE_DIR)/%: $(JRE_DOC_LOCATION)/%
   470 $(JRE_IMAGE_DIR)/%: $(JRE_DOC_LOCATION)/%
   433 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   471 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   434 	$(install-file)
   472 	$(install-file)
       
   473 	$(CHMOD) 444 $(@)
   435 
   474 
   436 $(JDK_IMAGE_DIR)/jre/%: $(JRE_DOC_LOCATION)/%
   475 $(JDK_IMAGE_DIR)/jre/%: $(JRE_DOC_LOCATION)/%
   437 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   476 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   438 	$(install-file)
   477 	$(install-file)
       
   478 	$(CHMOD) 444 $(@)
   439 
   479 
   440 $(JRE_IMAGE_DIR)/README.txt: $(JRE_DOC_LOCATION)/README
   480 $(JRE_IMAGE_DIR)/README.txt: $(JRE_DOC_LOCATION)/README
   441 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   481 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   442 	$(MKDIR) -p $(@D)
   482 	$(MKDIR) -p $(@D)
   443 	$(CP) $< $@
   483 	$(CP) $< $@
       
   484 	$(CHMOD) 444 $(@)
   444 
   485 
   445 $(JDK_IMAGE_DIR)/jre/README.txt: $(JRE_DOC_LOCATION)/README
   486 $(JDK_IMAGE_DIR)/jre/README.txt: $(JRE_DOC_LOCATION)/README
   446 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   487 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   447 	$(MKDIR) -p $(@D)
   488 	$(MKDIR) -p $(@D)
   448 	$(CP) $< $@
   489 	$(CP) $< $@
       
   490 	$(CHMOD) 444 $(@)
   449 
   491 
   450 $(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/%
   492 $(JDK_IMAGE_DIR)/%: $(JDK_DOC_LOCATION)/%
   451 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   493 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   452 	$(install-file)
   494 	$(install-file)
       
   495 	$(CHMOD) 444 $(@)
   453 
   496 
   454 $(JDK_IMAGE_DIR)/demo/%: $(JDK_DOC_LOCATION)/%
   497 $(JDK_IMAGE_DIR)/demo/%: $(JDK_DOC_LOCATION)/%
   455 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   498 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   456 	$(install-file)
   499 	$(install-file)
       
   500 	$(CHMOD) 444 $(@)
   457 
   501 
   458 $(JDK_IMAGE_DIR)/sample/%: $(JDK_DOC_LOCATION)/%
   502 $(JDK_IMAGE_DIR)/sample/%: $(JDK_DOC_LOCATION)/%
   459 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   503 	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
   460 	$(install-file)
   504 	$(install-file)
       
   505 	$(CHMOD) 444 $(@)
   461 
   506 
   462 JRE_INFO_FILE := $(JRE_IMAGE_DIR)/release
   507 JRE_INFO_FILE := $(JRE_IMAGE_DIR)/release
   463 JDK_INFO_FILE := $(JDK_IMAGE_DIR)/release
   508 JDK_INFO_FILE := $(JDK_IMAGE_DIR)/release
   464 
   509 
   465 # Common way to emit a line into the release or info file
   510 # Common way to emit a line into the release or info file
   498 
   543 
   499 ################################################################################
   544 ################################################################################
   500 # Post processing (strip etc)
   545 # Post processing (strip etc)
   501 
   546 
   502 ifneq ($(POST_STRIP_CMD),)
   547 ifneq ($(POST_STRIP_CMD),)
   503     ifeq ($(HOST_OS), windows)
   548     ifeq ($(OPENJDK_TARGET_OS), windows)
   504         EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*.exe \
   549         EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*.exe \
   505 		-o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)")
   550 		-o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)")
   506     else
   551     else
   507         # Find all executables in JDK_OUTPUTDIR since they exist when this makefile is parsed
   552         # Find all executables in JDK_OUTPUTDIR since they exist when this makefile is parsed
   508         EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/lib -type f -name \*$(SHARED_LIBRARY_SUFFIX) && \
   553         EXEC_LIST:=$(shell $(FIND) $(JDK_OUTPUTDIR)/lib -type f -name \*$(SHARED_LIBRARY_SUFFIX) && \
   509 		$(FILE) `$(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*$(EXE_SUFFIX)` \
   554 		$(FILE) `$(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*$(EXE_SUFFIX)` \
   510 		| $(EGREP) 'ELF' | $(CUT) -d':' -f1)
   555 		| $(EGREP) 'ELF' | $(CUT) -d':' -f1)
   511     endif
   556     endif
   512     # Filter out non JRE files and convert to unique touch files to depend on
   557     # Filter out non JRE files and convert to unique touch files to depend on
   513     JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip/%.stripped,\
   558     JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%,$(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped,\
   514 			$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST)))
   559 			$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST)))
   515 
   560 
       
   561     JDK_JRE_EXEC_TOUCH_LIST:=$(patsubst $(JDK_OUTPUTDIR)/%, \
       
   562                         $(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped, \
       
   563 			$(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES) $(NOT_JRE_LIB_FILES)), $(EXEC_LIST)))
       
   564 
       
   565     JDK_BIN_EXEC_TOUCH_LIST := $(patsubst $(JDK_OUTPUTDIR)/%, \
       
   566                           $(IMAGES_OUTPUTDIR)/_strip_jdk/%.stripped, \
       
   567                           $(filter-out $(JDK_OUTPUTDIR)/lib/%, $(EXEC_LIST)))
       
   568 
   516     # Setup a rule for stripping files based on touch files
   569     # Setup a rule for stripping files based on touch files
   517     $(IMAGES_OUTPUTDIR)/_strip/%.stripped: $(JRE_IMAGE_DIR)/%
   570     $(IMAGES_OUTPUTDIR)/_strip_jre/%.stripped: $(JRE_IMAGE_DIR)/%
   518 	$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
   571 	$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
   519 	$(CHMOD) u+w $<
   572 	$(CHMOD) u+w $<
   520 	$(POST_STRIP_CMD) $<
   573 	$(POST_STRIP_CMD) $<
   521 	$(CHMOD) go-w $<
   574 	$(CHMOD) go-w $<
   522 	$(MKDIR) -p $(@D)
   575 	$(MKDIR) -p $(@D)
   523 	$(TOUCH) $@
   576 	$(TOUCH) $@
       
   577 
       
   578     $(IMAGES_OUTPUTDIR)/_strip_jdk/bin/%.stripped: $(JDK_IMAGE_DIR)/bin/%
       
   579 	$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
       
   580 	$(CHMOD) u+w $<
       
   581 	$(POST_STRIP_CMD) $<
       
   582 	$(CHMOD) go-w $<
       
   583 	$(MKDIR) -p $(@D)
       
   584 	$(TOUCH) $@
       
   585 
       
   586     # Setup a rule for stripping files based on touch files
       
   587     $(IMAGES_OUTPUTDIR)/_strip_jdk/jre/%.stripped: $(JDK_IMAGE_DIR)/jre/%
       
   588 	$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
       
   589 	$(CHMOD) u+w $<
       
   590 	$(POST_STRIP_CMD) $<
       
   591 	$(CHMOD) go-w $<
       
   592 	$(MKDIR) -p $(@D)
       
   593 	$(TOUCH) $@
       
   594 
   524 endif
   595 endif
   525 
   596 
   526 ################################################################################
   597 ################################################################################
   527 # Main targets
   598 # Main targets
   528 
   599 
   536 	$(JDK_DEMO_TARGETS) \
   607 	$(JDK_DEMO_TARGETS) \
   537 	$(JDK_IMAGE_DIR)/jre/lib/meta-index $(JDK_IMAGE_DIR)/jre/lib/ext/meta-index \
   608 	$(JDK_IMAGE_DIR)/jre/lib/meta-index $(JDK_IMAGE_DIR)/jre/lib/ext/meta-index \
   538 	$(JDK_MAN_PAGE_LIST) $(JDK_SAMPLE_TARGETS) \
   609 	$(JDK_MAN_PAGE_LIST) $(JDK_SAMPLE_TARGETS) \
   539 	$(JDK_DB_TARGETS) $(JDK_INCLUDE_TARGETS) \
   610 	$(JDK_DB_TARGETS) $(JDK_INCLUDE_TARGETS) \
   540 	$(JDKJRE_DOC_TARGETS) $(JDK_DOC_TARGETS) \
   611 	$(JDKJRE_DOC_TARGETS) $(JDK_DOC_TARGETS) \
   541 	$(JDK_INFO_FILE) $(JDK_IMAGE_DIR)/src.zip
   612 	$(JDK_INFO_FILE) $(JDK_JRE_EXEC_TOUCH_LIST) $(JDK_BIN_EXEC_TOUCH_LIST) \
       
   613         $(JDK_IMAGE_DIR)/src.zip
   542 
   614 
   543 ################################################################################
   615 ################################################################################
   544 
   616 
   545 .PHONY: default images jre-image jdk-image
   617 .PHONY: default images jre-image jdk-image