jdk/makefiles/Images.gmk
changeset 14231 a0c23c1c010f
parent 13702 efd6a05935b2
child 14596 a1f29d55b5ee
--- a/jdk/makefiles/Images.gmk	Wed Jul 05 18:26:51 2017 +0200
+++ b/jdk/makefiles/Images.gmk	Fri Oct 26 14:23:29 2012 -0700
@@ -42,35 +42,31 @@
 -include $(CUSTOM_MAKE_DIR)/Images.gmk
 
 
-ifeq ($(OPENJDK_TARGET_OS),solaris)
-# On Solaris, if the target is a symlink and exists, cp won't overwrite.
-define install-file
-	$(MKDIR) -p $(@D)
-	$(RM) '$@'
-	$(CP) -f -r -P '$<' '$(@D)'
-endef
-else ifeq ($(OPENJDK_TARGET_OS),macosx)
-define install-file
-	$(MKDIR) -p $(@D)
-	$(CP) -fpRP '$<' '$@'
-endef
-else
-define install-file
-	$(MKDIR) -p $(@D)
-	$(CP) -fP '$<' '$@'
-endef
-endif
-
 # Processing license files from source area to image area
 # These will be modified to have the platform specific EOL chars.
 define process-doc-file
-	$(ECHO) Processing $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Processing $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	$(RM) $@
 	$(SED) 's/$$//g' $< > $@
 	$(CHMOD) 444 $@
 endef
 
+define AddFileToCopy
+  # Param 1 - src root dir
+  # Param 2 - dest root dir
+  # Param 3 - src file
+  # Param 4 - variable to add targets to
+
+  # Remove src dir root from src file
+  $2_$3_FILE := $$(patsubst $1/%,%,$3)
+
+  $2/$$($2_$3_FILE): $3
+	$(ECHO) $(LOG_INFO) Copying $$(patsubst $(OUTPUT_ROOT)/%,%,$$@)
+	$$(install-file)
+
+  $4 += $2/$$($2_$3_FILE)
+endef
 
 JDK_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2sdk-image
 JRE_IMAGE_DIR:=$(IMAGES_OUTPUTDIR)/j2re-image
@@ -93,31 +89,6 @@
 ################################################################################
 # /bin dir
 
-$(JRE_IMAGE_DIR)/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_IMAGE_DIR)/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-# Overaly image targets
-$(JRE_OVERLAY_IMAGE_DIR)/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_OVERLAY_IMAGE_DIR)/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_OVERLAY_IMAGE_DIR)/jre/bin/%: $(JDK_OUTPUTDIR)/bin/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
 NOT_JRE_BIN_FILES := \
 	appletviewer$(EXE_SUFFIX) \
 	extcheck$(EXE_SUFFIX) \
@@ -154,7 +125,7 @@
 WINDOWS_JDK_BIN_FILES = \
 	$(EXE_SUFFIX) \
 	$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX) \
-	$(notdir $(MSVCRNN_DLL))
+	$(notdir $(MSVCR_DLL))
 
 WINDOWS_JDKJRE_BIN_FILES := \
 	$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) \
@@ -163,6 +134,9 @@
 # Find all files in bin dir
 ALL_BIN_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f)
 
+# Prevent sjavac from entering the images.
+ALL_BIN_LIST := $(filter-out %/sjavac,$(ALL_BIN_LIST))
+
 # For unknown reason the debuginfo files for executables are not put into images
 # e.g filter them out
 ifneq ($(OPENJDK_TARGET_OS),windows)
@@ -176,60 +150,42 @@
     ALL_BIN_LIST := $(filter-out $(ALL_BIN_DEBUG_FILTER),$(ALL_BIN_LIST))
 endif
 
+JDKJRE_BIN_LIST := $(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES)), $(ALL_BIN_LIST))
+JRE_BIN_LIST := $(filter-out $(addprefix %,$(WINDOWS_JDKJRE_BIN_FILES)), $(JDKJRE_BIN_LIST))
+
 ifeq ($(OPENJDK_TARGET_OS),windows)
     JDK_BIN_LIST := $(filter $(addprefix %,$(WINDOWS_JDK_BIN_FILES)), $(ALL_BIN_LIST))
+    # On windows x86, the server jvm is filtered out from the j2re image. This could possibly 
+    # be handled by profiles in the future. If no client jvm is built, leave server in.
+    ifeq ($(OPENJDK_TARGET_CPU),x86)
+        ifeq ($(JVM_VARIANT_CLIENT),true)
+            JRE_BIN_LIST := $(filter-out $(JDK_OUTPUTDIR)/bin/server/%,$(JRE_BIN_LIST))
+	endif
+    endif
 else
     JDK_BIN_LIST := $(ALL_BIN_LIST)
 endif
-JDKJRE_BIN_LIST := $(filter-out $(addprefix %,$(NOT_JRE_BIN_FILES)), $(ALL_BIN_LIST))
-JRE_BIN_LIST := $(filter-out $(addprefix %,$(WINDOWS_JDKJRE_BIN_FILES)), $(JDKJRE_BIN_LIST))
 
 ifneq ($(OPENJDK_TARGET_CPU_ISADIR),)
     OVERLAY_FILTER := $(JDK_OUTPUTDIR)/bin$(OPENJDK_TARGET_CPU_ISADIR)%
 endif
 
-JRE_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JRE_IMAGE_DIR)/%, \
-			$(filter-out $(OVERLAY_FILTER),$(JRE_BIN_LIST)))
-JDK_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_IMAGE_DIR)/%, \
-			$(filter-out $(OVERLAY_FILTER),$(JDK_BIN_LIST)))
-JDKJRE_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_IMAGE_DIR)/jre/%, \
-			$(filter-out $(OVERLAY_FILTER),$(JDKJRE_BIN_LIST)))
+$(foreach f,$(filter-out $(OVERLAY_FILTER),$(JRE_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JRE_IMAGE_DIR),$f,JRE_BIN_TARGETS)))
+$(foreach f,$(filter-out $(OVERLAY_FILTER),$(JDK_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR),$f,JDK_BIN_TARGETS)))
+$(foreach f,$(filter-out $(OVERLAY_FILTER),$(JDKJRE_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR)/jre,$f,JDKJRE_BIN_TARGETS)))
 
-JRE_OVERLAY_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JRE_OVERLAY_IMAGE_DIR)/%, \
-				$(filter $(OVERLAY_FILTER),$(JRE_BIN_LIST)))
-JDK_OVERLAY_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_OVERLAY_IMAGE_DIR)/%, \
-				$(filter $(OVERLAY_FILTER),$(JDK_BIN_LIST)))
-JDKJRE_OVERLAY_BIN_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_OVERLAY_IMAGE_DIR)/jre/%, \
-				$(filter $(OVERLAY_FILTER),$(JDKJRE_BIN_LIST)))
+$(foreach f,$(filter $(OVERLAY_FILTER),$(JRE_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JRE_OVERLAY_IMAGE_DIR),$f,JRE_BIN_TARGETS)))
+$(foreach f,$(filter $(OVERLAY_FILTER),$(JDK_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR),$f,JDK_BIN_TARGETS)))
+$(foreach f,$(filter $(OVERLAY_FILTER),$(JDKJRE_BIN_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR)/jre,$f,JDKJRE_BIN_TARGETS)))
 
 ################################################################################
 # /lib dir
-
-$(JRE_IMAGE_DIR)/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_IMAGE_DIR)/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_IMAGE_DIR)/jre/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-# Overlay image targets
-$(JRE_OVERLAY_IMAGE_DIR)/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_OVERLAY_IMAGE_DIR)/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
-$(JDK_OVERLAY_IMAGE_DIR)/jre/lib/%: $(JDK_OUTPUTDIR)/lib/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-
 ifneq ($(OPENJDK_TARGET_OS), macosx)
     JDKJRE_LIB_FILES := \
 	$(LIBRARY_PREFIX)attach$(SHARED_LIBRARY_SUFFIX) \
@@ -254,52 +210,80 @@
     JDK_LIB_FILES += jexec
 endif
 
-ALL_LIB_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/lib \( -type f -o -type l \) -a ! \( -name "_the*" -o -name "javac_state " \) )
-JRE_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),$(ALL_LIB_LIST))
-JDKJRE_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES)),$(ALL_LIB_LIST))
-JDK_LIB_LIST := $(filter $(addprefix %,$(JDK_LIB_FILES)),$(ALL_LIB_LIST))
+# Find all files to copy from $(JDK_OUTPUTDIR)/lib
+ALL_JDKOUT_LIB_LIST := $(shell $(FIND) $(JDK_OUTPUTDIR)/lib \( -type f -o -type l \) -a ! \
+                       \( -name "_the*" -o -name "javac_state " \) )
+# Find all files to copy from $(IMAGES_OUTPUTDIR)/lib
+# This might not exist if building overlay-images
+ifneq ($(wildcard $(IMAGES_OUTPUTDIR)/lib),)
+    ALL_IMAGES_LIB_LIST := $(shell $(FIND) $(IMAGES_OUTPUTDIR)/lib \( -type f -o -type l \) -a ! \
+                       \( -name "_the*" -o -name "javac_state " \) )
+endif
+
+# Filter files to copy for each destination
+JRE_JDKOUT_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),\
+                       $(ALL_JDKOUT_LIB_LIST))
+JDKJRE_JDKOUT_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES)),$(ALL_JDKOUT_LIB_LIST))
+JDK_JDKOUT_LIB_LIST := $(filter $(addprefix %,$(JDK_LIB_FILES)),$(ALL_JDKOUT_LIB_LIST))
+
+JRE_IMAGES_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES) $(JDKJRE_LIB_FILES)),\
+                       $(ALL_IMAGES_LIB_LIST))
+JDKJRE_IMAGES_LIB_LIST := $(filter-out $(addprefix %,$(NOT_JRE_LIB_FILES)),$(ALL_IMAGES_LIB_LIST))
+JDK_IMAGES_LIB_LIST := $(filter $(addprefix %,$(JDK_LIB_FILES)),$(ALL_IMAGES_LIB_LIST))
 
-JRE_LIB_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JRE_IMAGE_DIR)/%,$(JRE_LIB_LIST))
-JDK_LIB_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_IMAGE_DIR)/%,$(JDK_LIB_LIST))
-JDKJRE_LIB_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/%,$(JDK_IMAGE_DIR)/jre/%,$(JDKJRE_LIB_LIST))
+# Iterate over files to copy to create rules for each one
+$(foreach f,$(JRE_JDKOUT_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JRE_IMAGE_DIR),$f,JRE_LIB_TARGETS)))
+$(foreach f,$(JDK_JDKOUT_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR),$f,JDK_LIB_TARGETS)))
+$(foreach f,$(JDKJRE_JDKOUT_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR)/jre,$f,JDKJRE_LIB_TARGETS)))
 
-JRE_OVERLAY_LIB_TARGETS := $(subst $(JRE_IMAGE_DIR),$(JRE_OVERLAY_IMAGE_DIR),\
-				$(filter $(JRE_IMAGE_DIR)/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JRE_LIB_TARGETS)))
-JDK_OVERLAY_LIB_TARGETS := $(subst $(JDK_IMAGE_DIR),$(JDK_OVERLAY_IMAGE_DIR),\
-				$(filter $(JDK_IMAGE_DIR)/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JDK_LIB_TARGETS)))
-JDKJRE_OVERLAY_LIB_TARGETS := $(subst $(JDK_IMAGE_DIR),$(JDK_OVERLAY_IMAGE_DIR),\
-				$(filter $(JDK_IMAGE_DIR)/jre/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JDKJRE_LIB_TARGETS)))
+$(foreach f,$(JRE_IMAGES_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(IMAGES_OUTPUTDIR),$(JRE_IMAGE_DIR),$f,JRE_LIB_TARGETS)))
+$(foreach f,$(JDK_IMAGES_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(IMAGES_OUTPUTDIR),$(JDK_IMAGE_DIR),$f,JDK_LIB_TARGETS)))
+$(foreach f,$(JDKJRE_IMAGES_LIB_LIST),\
+    $(eval $(call AddFileToCopy,$(IMAGES_OUTPUTDIR),$(JDK_IMAGE_DIR)/jre,$f,JDKJRE_LIB_TARGETS)))
+
+$(foreach f,$(filter $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JRE_JDKOUT_LIB_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JRE_OVERLAY_IMAGE_DIR),$f,JRE_OVERLAY_LIB_TARGETS)))
+$(foreach f,$(filter $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JDK_JDKOUT_LIB_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR),$f,JDK_OVERLAY_LIB_TARGETS)))
+$(foreach f,$(filter $(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_ISADIR)/%,$(JDKJRE_JDKOUT_LIB_LIST)),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR)/jre,$f,JDKJRE_OVERLAY_LIB_TARGETS)))
 
 # CTE plugin security change require new empty directory lib/applet
 $(JRE_IMAGE_DIR)/lib/applet: 
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $@
 
 $(JDK_IMAGE_DIR)/jre/lib/applet: 
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $@
 
 # In the old build, JObjC.jar is not part of the meta-index
 $(JRE_IMAGE_DIR)/lib/meta-index: $(JRE_LIB_TARGETS)
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(CD) $(@D) && $(TOOL_BUILDMETAINDEX) -o meta-index `$(LS) *.jar | $(SED) 's/JObjC\.jar//g'`
 
 $(JDK_IMAGE_DIR)/jre/lib/meta-index: $(JDKJRE_LIB_TARGETS)
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(CD) $(@D) && $(TOOL_BUILDMETAINDEX) -o meta-index `$(LS) *.jar | $(SED) 's/JObjC\.jar//g'`
 
 $(JRE_IMAGE_DIR)/lib/ext/meta-index: $(JRE_LIB_TARGETS)
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(CD) $(@D) && $(TOOL_BUILDMETAINDEX) -o meta-index *.jar
 
 $(JDK_IMAGE_DIR)/jre/lib/ext/meta-index: $(JDKJRE_LIB_TARGETS)
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(CD) $(@D) && $(TOOL_BUILDMETAINDEX) -o meta-index *.jar
 
 ################################################################################
 # /man dir
-
-JRE_MAN_PAGES := \
+# Avoid evaluating this whole section on windows for speed and stability
+ifneq ($(OPENJDK_TARGET_OS),windows)
+    JRE_MAN_PAGES := \
 	java.1		\
 	keytool.1	\
 	orbd.1          \
@@ -311,11 +295,11 @@
 	tnameserv.1     \
 	unpack200.1
 
-ifndef OPENJDK
-  JRE_MAN_PAGES += javaws.1
-endif
+    ifndef OPENJDK
+        JRE_MAN_PAGES += javaws.1
+    endif
 
-JDK_MAN_PAGES =            \
+    JDK_MAN_PAGES =        \
 	$(JRE_MAN_PAGES)   \
 	appletviewer.1     \
 	extcheck.1         \
@@ -346,186 +330,176 @@
         wsimport.1         \
         xjc.1
 
-ifndef OPENJDK
-  JDK_MAN_PAGES += jvisualvm.1
-endif
+    ifndef OPENJDK
+        JDK_MAN_PAGES += jvisualvm.1
+    endif
 
-ifeq ($(OPENJDK_TARGET_OS), linux)
-    MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc
-    MAN1_SUBDIR:=man
-endif
-ifeq ($(OPENJDK_TARGET_OS), solaris)
-    MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc
-    MAN1_SUBDIR:=sun/man/man1
-endif
-ifeq ($(OPENJDK_TARGET_OS), macosx)
-    MAN_SRC_DIR:=$(JDK_TOPDIR)/src/bsd/doc
-    MAN1_SUBDIR:=man
-    JDK_MAN_PAGES := $(filter-out jcmd.1, $(JDK_MAN_PAGES))
-    JDK_MAN_PAGES := $(filter-out jvisualvm.1, $(JDK_MAN_PAGES))
-endif
+    ifeq ($(OPENJDK_TARGET_OS), linux)
+        MAN_SRC_DIR:=$(JDK_TOPDIR)/src/linux/doc
+        MAN1_SUBDIR:=man
+    endif
+    ifeq ($(OPENJDK_TARGET_OS), solaris)
+        MAN_SRC_DIR:=$(JDK_TOPDIR)/src/solaris/doc
+        MAN1_SUBDIR:=sun/man/man1
+    endif
+    ifeq ($(OPENJDK_TARGET_OS), macosx)
+        MAN_SRC_DIR:=$(JDK_TOPDIR)/src/bsd/doc
+        MAN1_SUBDIR:=man
+        JDK_MAN_PAGES := $(filter-out jcmd.1, $(JDK_MAN_PAGES))
+        JDK_MAN_PAGES := $(filter-out jvisualvm.1, $(JDK_MAN_PAGES))
+    endif
 
 
-$(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JRE_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
-$(JDK_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JDK_IMAGE_DIR)/man/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/%
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
-$(JRE_IMAGE_DIR)/man/man1/%: $(JDK_OUTPUTDIR)/impdoc/$(MAN1_SUBDIR)/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JRE_IMAGE_DIR)/man/man1/%: $(JDK_OUTPUTDIR)/impdoc/$(MAN1_SUBDIR)/%
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
-$(JDK_IMAGE_DIR)/man/man1/%: $(JDK_OUTPUTDIR)/impdoc/$(MAN1_SUBDIR)/%
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JDK_IMAGE_DIR)/man/man1/%: $(JDK_OUTPUTDIR)/impdoc/$(MAN1_SUBDIR)/%
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
-define install-ja-manpage
+    define install-ja-manpage
 	$(MKDIR) -p $(@D)
 	$(CAT) $< \
 		| $(NATIVE2ASCII) -encoding eucJP \
 		| $(SED) 's/@@VERSION@@/$(THIS_JDK_VERSION)/g' \
 		| $(NATIVE2ASCII) -reverse -encoding $1 \
 		> $@
-endef
+    endef
 
-$(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call install-ja-manpage,UTF-8)
 
-$(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call install-ja-manpage,UTF-8)
 
-$(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call install-ja-manpage,PCK)
 
-$(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+	$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call install-ja-manpage,PCK)
 
-ifeq ($(OPENJDK_TARGET_OS), solaris)
-    $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
+    ifeq ($(OPENJDK_TARGET_OS), solaris)
+        $(JRE_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+		$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(install-file)
 
-    $(JDK_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
-	$(ECHO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(install-file)
-endif
+        $(JDK_IMAGE_DIR)/man/ja/man1/%: $(MAN_SRC_DIR)/$(MAN1_SUBDIR)/ja/%
+		$(ECHO) $(LOG_INFO) Converting $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(install-file)
+    endif
 
-# Old build creates empty man page for this, mimicing behaviour.
-$(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:
-	$(ECHO) Creating dummy $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+    # Old build creates empty man page for this, mimicing behaviour.
+    $(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:
+	$(ECHO) $(LOG_INFO) Creating dummy $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(MKDIR) -p $(@D)
 	$(TOUCH) $@
 
-ifeq ($(OPENJDK_TARGET_OS), linux)
-    $(JRE_IMAGE_DIR)/man/ja:
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
+    ifeq ($(OPENJDK_TARGET_OS), linux)
+        $(JRE_IMAGE_DIR)/man/ja:
+		$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
 
-    $(JDK_IMAGE_DIR)/man/ja:
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
-endif
+        $(JDK_IMAGE_DIR)/man/ja:
+		$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
+    endif
 
-ifeq ($(OPENJDK_TARGET_OS), macosx)
-    $(JRE_IMAGE_DIR)/man/ja:
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
+    ifeq ($(OPENJDK_TARGET_OS), macosx)
+        $(JRE_IMAGE_DIR)/man/ja:
+		$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
 
-    $(JDK_IMAGE_DIR)/man/ja:
-	$(ECHO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
-	$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
-endif
+        $(JDK_IMAGE_DIR)/man/ja:
+		$(ECHO) $(LOG_INFO) Creating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+		$(CD) $(@D) && $(RM) ja && $(LN) -s ja_JP.UTF-8 ja
+    endif
 
-ifeq ($(OPENJDK_TARGET_OS), linux)
-    JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
-			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
-			 $(JRE_IMAGE_DIR)/man/ja
+    ifeq ($(OPENJDK_TARGET_OS), linux)
+        JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
+                             $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
+                             $(JRE_IMAGE_DIR)/man/ja
 
-    JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
-			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
-			 $(JDK_IMAGE_DIR)/man/ja
-endif
+        JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
+                             $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
+                             $(JDK_IMAGE_DIR)/man/ja
+    endif
 
-ifeq ($(OPENJDK_TARGET_OS), solaris)
-    JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
-			 $(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \
-			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
-			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JRE_MAN_PAGES))
+    ifeq ($(OPENJDK_TARGET_OS), solaris)
+        JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
+                             $(addprefix $(JRE_IMAGE_DIR)/man/ja/man1/,$(JRE_MAN_PAGES)) \
+                             $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
+                             $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JRE_MAN_PAGES))
 
-    JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
-			 $(addprefix $(JDK_IMAGE_DIR)/man/ja/man1/,$(JDK_MAN_PAGES)) \
-			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
-			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES))
-endif
+        JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
+                             $(addprefix $(JDK_IMAGE_DIR)/man/ja/man1/,$(JDK_MAN_PAGES)) \
+                             $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
+                             $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.PCK/man1/,$(JDK_MAN_PAGES))
+    endif
 
-ifeq ($(OPENJDK_TARGET_OS), macosx)
-    JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
-			 $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
-			 $(JRE_IMAGE_DIR)/man/ja
+    ifeq ($(OPENJDK_TARGET_OS), macosx)
+        JRE_MAN_PAGE_LIST := $(addprefix $(JRE_IMAGE_DIR)/man/man1/,$(JRE_MAN_PAGES)) \
+                             $(addprefix $(JRE_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JRE_MAN_PAGES)) \
+                             $(JRE_IMAGE_DIR)/man/ja
 
-    JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
-			 $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
-			 $(JDK_IMAGE_DIR)/man/ja
-endif
+        JDK_MAN_PAGE_LIST := $(addprefix $(JDK_IMAGE_DIR)/man/man1/,$(JDK_MAN_PAGES)) \
+                             $(addprefix $(JDK_IMAGE_DIR)/man/ja_JP.UTF-8/man1/,$(JDK_MAN_PAGES)) \
+                             $(JDK_IMAGE_DIR)/man/ja
+    endif
+
+endif # Windows
 
 ################################################################################
 # /demo dir
 
-ifndef NO_DEMOS
 # FIXME: demo/applets/GraphLayout/GraphPanel$2.class is sometimes not copied.
 
 #   The db demo contains an empty dir that needs to be copied. The other 
 #   directories will always trigger the rule for recompile since 
 #   _the.list_of_packages files are touched.
-    $(JDK_IMAGE_DIR)/demo/%: $(JDK_OUTPUTDIR)/demo/%
+$(JDK_IMAGE_DIR)/demo/%: $(JDK_OUTPUTDIR)/demo/%
 	if [ ! -d "$@" ]; then \
-	  $(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'; \
+	  $(ECHO) $(LOG_INFO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'; \
 	  $(MKDIR) -p $(@D); \
 	  if [ -d "$<" ]; then $(MKDIR) -p $@; else $(CP) '$<' '$@'; fi \
 	fi
 
 #   Find all files including directories
-    JDK_DEMO_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/demo/%,$(JDK_IMAGE_DIR)/demo/%,\
+JDK_DEMO_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/demo/%,$(JDK_IMAGE_DIR)/demo/%,\
 			$(shell $(FIND) $(JDK_OUTPUTDIR)/demo ! \( -name "_the*" -o -name "javac_state" \) ))
 
 
 
-    # Param 1 is source file
-    define CreateOverlayDemoRule
-        $1_TARGET:=$$(subst $(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR),\
+# Param 1 is source file
+define CreateOverlayDemoRule
+    $1_TARGET:=$$(subst $(JDK_OUTPUTDIR),$(JDK_OVERLAY_IMAGE_DIR),\
 			$$(dir $1)$(OPENJDK_TARGET_CPU_ISADIR)/$$(notdir $1))
-        $$($1_TARGET): $1
-		$(ECHO) Copying '$$(patsubst $(OUTPUT_ROOT)/%,%,$$@)'
-		$(MKDIR) -p $$(@D)
-		$(RM) $$@
-		$(CP) -f '$$<' '$$@'
+    $$($1_TARGET): $1
+		$(ECHO) $(LOG_INFO) Copying '$$(patsubst $(OUTPUT_ROOT)/%,%,$$@)'
+		$$(call install-file)
 
-        JDK_OVERLAY_DEMO_TARGETS += $$($1_TARGET)
-    endef
-    JDK_OVERLAY_DEMO_SOURCES := $(shell $(FIND) $(JDK_OUTPUTDIR)/demo -name "*$(SHARED_LIBRARY_SUFFIX)")
-    $(foreach lib,$(JDK_OVERLAY_DEMO_SOURCES),$(eval $(call CreateOverlayDemoRule,$(lib))))
-
-endif
+    JDK_OVERLAY_DEMO_TARGETS += $$($1_TARGET)
+endef
+JDK_OVERLAY_DEMO_SOURCES := $(shell $(FIND) $(JDK_OUTPUTDIR)/demo -name "*$(SHARED_LIBRARY_SUFFIX)")
+$(foreach lib,$(JDK_OVERLAY_DEMO_SOURCES),$(eval $(call CreateOverlayDemoRule,$(lib))))
 
 ################################################################################
 # /sample dir
 
-ifndef NO_SAMPLES
-    $(JDK_IMAGE_DIR)/sample/%: $(JDK_OUTPUTDIR)/sample/%
-	$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
-	$(install-file)
-
-    JDK_SAMPLE_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/sample/%,$(JDK_IMAGE_DIR)/sample/%,\
-			$(shell $(FIND) $(JDK_OUTPUTDIR)/sample -type f))
-
-endif
+$(foreach f,$(shell $(FIND) $(JDK_OUTPUTDIR)/sample -type f),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR),$f,JDK_SAMPLE_TARGETS)))
 
 ################################################################################
 # /db dir
@@ -534,14 +508,13 @@
     $(IMAGES_OUTPUTDIR)/_unzip/%.unzipped: $(JDK_TOPDIR)/src/closed/share/db/%
 	$(ECHO) Unzipping $(patsubst $(SRC_ROOT)/%,%,$<)
 	$(MKDIR) -p $(JDK_IMAGE_DIR)/db
-	cd $(JDK_IMAGE_DIR)/db && $(UNZIP) -o $< -x index.html 2> /dev/null
+	cd $(JDK_IMAGE_DIR)/db && $(UNZIP) -q -o $< -x index.html 2> /dev/null
 	$(MKDIR) -p $(@D)
 	$(TOUCH) $@
 
     $(JDK_IMAGE_DIR)/db/README-JDK.html: $(JDK_TOPDIR)/src/closed/share/db/README-JDK.html
-	$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
+	$(ECHO) $(LOG_INFO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
 	$(install-file)
-	$(CHMOD) 644 $(@)
 
     JDK_DB_TARGETS := $(patsubst $(JDK_TOPDIR)/src/closed/share/db/%,$(IMAGES_OUTPUTDIR)/_unzip/%.unzipped,\
 			$(shell $(FIND) $(JDK_TOPDIR)/src/closed/share/db -name "*.zip" ! -name "*demo*")) \
@@ -552,12 +525,8 @@
 ################################################################################
 # /include dir
 
-$(JDK_IMAGE_DIR)/include/%: $(JDK_OUTPUTDIR)/include/%
-	$(ECHO) Copying '$(patsubst $(OUTPUT_ROOT)/%,%,$@)'
-	$(install-file)
-
-    JDK_INCLUDE_TARGETS := $(patsubst $(JDK_OUTPUTDIR)/include/%,$(JDK_IMAGE_DIR)/include/%,\
-			$(shell $(FIND) $(JDK_OUTPUTDIR)/include -type f))
+$(foreach f,$(shell $(FIND) $(JDK_OUTPUTDIR)/include -type f),\
+    $(eval $(call AddFileToCopy,$(JDK_OUTPUTDIR),$(JDK_IMAGE_DIR),$f,JDK_INCLUDE_TARGETS)))
 
 ################################################################################
 # doc files
@@ -575,12 +544,7 @@
     else
         JRE_DOC_FILES += README
     endif
-    ifndef NO_DEMOS
-        JDK_DOC_FILES += demo/DEMOS_LICENSE
-    endif
-    ifndef NO_SAMPLES
-        JDK_DOC_FILES += sample/SAMPLES_LICENSE
-    endif
+    JDK_DOC_FILES += demo/DEMOS_LICENSE sample/SAMPLES_LICENSE
     JRE_DOC_LOCATION := $(JDK_TOPDIR)/src/closed/share/doc/jre
     JDK_DOC_LOCATION := $(JDK_TOPDIR)/src/closed/share/doc/jdk
 endif
@@ -636,23 +600,23 @@
   fi)
 
 $(JRE_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call create-info-file)
 
 $(JDK_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call create-info-file)
 
 $(JRE_OVERLAY_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call create-info-file)
 
 $(JDK_OVERLAY_INFO_FILE): $(OUTPUT_ROOT)/spec.gmk $(OUTPUT_ROOT)/source_tips
-	$(ECHO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Generating $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(call create-info-file)
 
 $(JDK_IMAGE_DIR)/src.zip: $(IMAGES_OUTPUTDIR)/src.zip
-	$(ECHO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
+	$(ECHO) $(LOG_INFO) Copying $(patsubst $(OUTPUT_ROOT)/%,%,$@)
 	$(install-file)
 
 ################################################################################
@@ -661,7 +625,7 @@
 ifneq ($(POST_STRIP_CMD),)
     ifeq ($(OPENJDK_TARGET_OS), windows)
         EXEC_LIST_BIN:=$(shell $(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*.exe \
-		-o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)")
+		-o -name \*.dll | $(EGREP) -v -i "$(MSVCR_DLL)")
     else
         # Find all executables in JDK_OUTPUTDIR since they exist when this makefile is parsed
         EXEC_LIST_BIN:=$(shell $(FILE) `$(FIND) $(JDK_OUTPUTDIR)/bin -type f -name \*$(EXE_SUFFIX)` \
@@ -672,6 +636,8 @@
             EXEC_LIST_LIB:=$(shell $(FIND) $(JDK_OUTPUTDIR)/lib -type f -name \*$(SHARED_LIBRARY_SUFFIX))
 	endif
     endif
+    # Filter out sjavac
+    EXEC_LIST_BIN:=$(filter-out %sjavac$(EXE_SUFFIX),$(EXEC_LIST_BIN))
 
     # Filter out the overlay specific bin files
     EXEC_LIST:=$(filter-out $(OVERLAY_FILTER),$(EXEC_LIST_BIN)) $(EXEC_LIST_LIB)
@@ -708,7 +674,7 @@
     endef
 
     define strip-file
-	$(ECHO) Stripping $(patsubst $(OUTPUT_ROOT)/%,%,$<)
+	$(ECHO) Stripping $(LOG_INFO) $(patsubst $(OUTPUT_ROOT)/%,%,$<)
 	$(CHMOD) u+w $<
 	$(POST_STRIP_CMD) $<
 	$(call mcs-file)