Merge jdk7-b128
authorohair
Wed, 02 Feb 2011 09:39:31 -0800
changeset 3466f08682e23279
parent 3451 47cfd89c3227
parent 3465 aecb8f0eb83b
child 3467 07c68a15ec79
child 3547 7bb09178ffc7
Merge
make/common/Defs-windows.gmk
make/common/Demo.gmk
make/common/Library.gmk
make/common/Modules.gmk
make/common/Program.gmk
make/common/Release.gmk
     1.1 --- a/make/Makefile	Fri Jan 28 10:04:51 2011 -0800
     1.2 +++ b/make/Makefile	Wed Feb 02 09:39:31 2011 -0800
     1.3 @@ -100,7 +100,6 @@
     1.4  DEVTOOLS_PATH.desc         = Directory containing zip and unzip
     1.5  CUPS_HEADERS_PATH.desc     = Include directory location for CUPS header files
     1.6  DXSDK_PATH.desc            = Root directory of DirectX SDK
     1.7 -MSVCRT_DLL_PATH.desc       = Directory containing mscvrt.dll
     1.8  
     1.9  # Make variables to print out (description and value)
    1.10  VARIABLE_PRINTVAL_LIST +=       \
    1.11 @@ -133,12 +132,10 @@
    1.12  ifeq ($(PLATFORM), windows)
    1.13  
    1.14  VARIABLE_PRINTVAL_LIST +=       \
    1.15 -    DXSDK_PATH                  \
    1.16 -    MSVCRT_DLL_PATH
    1.17 +    DXSDK_PATH
    1.18  
    1.19  VARIABLE_CHECKDIR_LIST +=       \
    1.20 -    DXSDK_PATH                  \
    1.21 -    MSVCRT_DLL_PATH
    1.22 +    DXSDK_PATH
    1.23  
    1.24  endif
    1.25  
     2.1 --- a/make/com/sun/java/pack/Makefile	Fri Jan 28 10:04:51 2011 -0800
     2.2 +++ b/make/com/sun/java/pack/Makefile	Wed Feb 02 09:39:31 2011 -0800
     2.3 @@ -155,6 +155,7 @@
     2.4  	$(MT) /manifest $(OBJDIR)/unpack200$(EXE_SUFFIX).manifest /outputresource:$(TEMPDIR)/unpack200$(EXE_SUFFIX);#1
     2.5  endif
     2.6  	$(CP) $(TEMPDIR)/unpack200$(EXE_SUFFIX) $(UNPACK_EXE)
     2.7 +	@$(call binary_file_verification,$@)
     2.8  	$(install-module-file)
     2.9  
    2.10  ifeq ($(PLATFORM), windows) 
     3.1 --- a/make/common/Defs-windows.gmk	Fri Jan 28 10:04:51 2011 -0800
     3.2 +++ b/make/common/Defs-windows.gmk	Wed Feb 02 09:39:31 2011 -0800
     3.3 @@ -67,28 +67,27 @@
     3.4  
     3.5  # The following DLL's are considered MS runtime libraries and should
     3.6  #     not to be REBASEd, see deploy/make/common/Release.gmk.
     3.7 -#     msvcrt.dll, msvcrnn.dll [msvcr71 or msvcr80 or msvcr90] : Microsoft runtimes
     3.8 -MS_RUNTIME_LIBRARIES = msvcrt.dll
     3.9 +#     msvcr*.dll: Microsoft runtimes
    3.10  ifeq ($(ARCH_DATA_MODEL), 32)
    3.11    ifeq ($(COMPILER_VERSION), VS2003)
    3.12      MSVCRNN_DLL = msvcr71.dll
    3.13      MSVCPNN_DLL = msvcp71.dll
    3.14 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.15 +    MS_RUNTIME_LIBRARIES = msvcrt.dll $(MSVCRNN_DLL)
    3.16    endif
    3.17    ifeq ($(COMPILER_VERSION), VS2005)
    3.18      MSVCRNN_DLL = msvcr80.dll
    3.19      MSVCPNN_DLL = msvcp80.dll
    3.20 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.21 +    MS_RUNTIME_LIBRARIES = msvcrt.dll $(MSVCRNN_DLL)
    3.22    endif
    3.23    ifeq ($(COMPILER_VERSION), VS2008)
    3.24      MSVCRNN_DLL = msvcr90.dll
    3.25      MSVCPNN_DLL = msvcp90.dll
    3.26 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.27 +    MS_RUNTIME_LIBRARIES = msvcrt.dll $(MSVCRNN_DLL)
    3.28    endif
    3.29    ifeq ($(COMPILER_VERSION), VS2010)
    3.30      MSVCRNN_DLL = msvcr100.dll
    3.31      MSVCPNN_DLL = msvcp100.dll
    3.32 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.33 +    MS_RUNTIME_LIBRARIES = $(MSVCRNN_DLL)
    3.34    endif
    3.35  endif
    3.36  
    3.37 @@ -96,12 +95,12 @@
    3.38    ifeq ($(COMPILER_VERSION), VS2008)
    3.39      MSVCRNN_DLL = msvcr90.dll
    3.40      MSVCPNN_DLL = msvcp90.dll
    3.41 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.42 +    MS_RUNTIME_LIBRARIES = msvcrt.dll $(MSVCRNN_DLL)
    3.43    endif
    3.44    ifeq ($(COMPILER_VERSION), VS2010)
    3.45      MSVCRNN_DLL = msvcr100.dll
    3.46      MSVCPNN_DLL = msvcp100.dll
    3.47 -    MS_RUNTIME_LIBRARIES += $(MSVCRNN_DLL)
    3.48 +    MS_RUNTIME_LIBRARIES = $(MSVCRNN_DLL)
    3.49    endif
    3.50  endif
    3.51  
    3.52 @@ -283,7 +282,7 @@
    3.53      MS_RUNTIME_OPTION=-MTd
    3.54    else
    3.55      # This MS debugging flag forces a dependence on the debug
    3.56 -    #     version of the runtime library (MSVCRTD.DLL), as does -MDd.
    3.57 +    #     version of the runtime library (MSVCR*D.DLL), as does -MDd.
    3.58      #     We cannot re-distribute this debug runtime.
    3.59      MS_RUNTIME_OPTION=-MDd
    3.60    endif
     4.1 --- a/make/common/Demo.gmk	Fri Jan 28 10:04:51 2011 -0800
     4.2 +++ b/make/common/Demo.gmk	Wed Feb 02 09:39:31 2011 -0800
     4.3 @@ -294,6 +294,7 @@
     4.4  	@$(prep-target)
     4.5  	$(LINK.demo) $(SHARED_LIBRARY_FLAG) $(CC_PROGRAM_OUTPUT_FLAG)$@ \
     4.6  	    $(DEMO_FULL_OBJECTS) $(LDLIBS.demo)
     4.7 +	@$(call binary_file_verification,$@)
     4.8  
     4.9    # Generation of any javah include file, make sure objects are dependent on it
    4.10    ifdef DEMO_NATIVECLASS
     5.1 --- a/make/common/Library.gmk	Fri Jan 28 10:04:51 2011 -0800
     5.2 +++ b/make/common/Library.gmk	Wed Feb 02 09:39:31 2011 -0800
     5.3 @@ -167,6 +167,7 @@
     5.4  	  $(LFLAGS) @$(OBJDIR)/$(LIBRARY).lcf \
     5.5  	  $(OTHER_LCF) $(JAVALIB) $(LDLIBS)
     5.6  	$(CP) $(OBJDIR)/$(@F) $@
     5.7 +	@$(call binary_file_verification,$@)
     5.8  	$(install-module-file)
     5.9  	$(CP) $(OBJDIR)/$(LIBRARY).map $(@D)
    5.10  	$(CP) $(OBJDIR)/$(LIBRARY).pdb $(@D)
    5.11 @@ -233,6 +234,7 @@
    5.12  	$(AR) -r $@ $(FILES_o)
    5.13  else # LIBRARY
    5.14  	$(LINKER) $(SHARED_LIBRARY_FLAG) -o $@ $(FILES_o) $(LDLIBS)
    5.15 +	@$(call binary_file_verification,$@)
    5.16  	$(install-module-file)
    5.17  ifeq ($(WRITE_LIBVERSION),true)
    5.18  	$(MCS) -d -a "$(FULL_VERSION)" $@
     6.1 --- a/make/common/Modules.gmk	Fri Jan 28 10:04:51 2011 -0800
     6.2 +++ b/make/common/Modules.gmk	Wed Feb 02 09:39:31 2011 -0800
     6.3 @@ -73,47 +73,20 @@
     6.4  
     6.5  #
     6.6  # Paths to these files we need
     6.7 -JDK_MODULE_LICENSES   = $(LICENSE_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%)
     6.8 -JDK_MODULE_64_LICENSES = $(LICENSE_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%64)
     6.9 -JDK_MODULE_DOCFILES   = $(OTHER_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%)
    6.10 -
    6.11 -JRE_MODULE_LICENSES   = $(LICENSE_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%)
    6.12 -JRE_MODULE_64_LICENSES = $(LICENSE_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%64)
    6.13 -JRE_MODULE_DOCFILES   = $(OTHER_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%)
    6.14 -JRE_MODULE_DOCFILES  += $(JRE_NAMECHANGE_DOCLIST:%=$(JRE_MODULE_IMAGE_DIR)/%$(TEXT_SUFFIX))
    6.15 +JDK_MODULE_DOCFILES   = $(IMAGE_DOCLIST_JDK:%=$(JDK_MODULE_IMAGE_DIR)/%)
    6.16 +JRE_MODULE_DOCFILES   = $(IMAGE_DOCLIST_JRE:%=$(JRE_MODULE_IMAGE_DIR)/%)
    6.17  
    6.18  ###### RULES
    6.19  
    6.20  # JDK files
    6.21  $(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
    6.22  	$(process-doc-file)
    6.23 -# Removes LICENSE_VERSION or not
    6.24 -ifdef LICENSE_VERSION
    6.25 -$(JDK_MODULE_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
    6.26 -	$(process-doc-file)
    6.27 -$(JDK_MODULE_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
    6.28 -	$(process-doc-file)
    6.29 -else
    6.30 -$(JDK_MODULE_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%
    6.31 -	$(process-doc-file)
    6.32 -endif
    6.33  
    6.34  # JRE files 
    6.35  $(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
    6.36  	$(process-doc-file)
    6.37 -# Add $(TEXT_SUFFIX) suffix
    6.38 -ifdef TEXT_SUFFIX
    6.39 -$(JRE_MODULE_IMAGE_DIR)/%$(TEXT_SUFFIX): $(SHARE_JRE_DOC_SRC)/%
    6.40 -	$(process-doc-file)
    6.41 -endif
    6.42 -# Removes LICENSE_VERSION or not
    6.43 -ifdef LICENSE_VERSION
    6.44 -$(JRE_MODULE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
    6.45 -	$(process-doc-file)
    6.46 -$(JRE_MODULE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
    6.47 -	$(process-doc-file)
    6.48 -else
    6.49 -$(JRE_MODULE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%
    6.50 +ifeq ($(PLATFORM), windows)
    6.51 +$(JRE_MODULE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
    6.52  	$(process-doc-file)
    6.53  endif
    6.54  
    6.55 @@ -157,8 +130,7 @@
    6.56  	$(MKDIR) -p $(JRE_MODULE_IMAGE_DIR)
    6.57  
    6.58  # 64-bit solaris jre image contains only the 64-bit add-on files.
    6.59 -initial-module-image-jre-sol64:: initial-module-image-jre-setup \
    6.60 -			  $(JRE_MODULE_LICENSES) $(JRE_MODULE_64_LICENSES)
    6.61 +initial-module-image-jre-sol64:: initial-module-image-jre-setup
    6.62  	@# Use tar instead of cp to preserve the symbolic links
    6.63  	for dir in bin lib ; do \
    6.64  	  ( $(CD) $(OUTPUTDIR) && \
    6.65 @@ -174,7 +146,7 @@
    6.66  
    6.67  # Construct an initial jre image (initial jdk jre) no trimming or stripping
    6.68  initial-module-image-jre:: initial-module-image-jre-setup \
    6.69 -		    $(JRE_LICENSES) $(JRE_MODULE_DOCFILES) \
    6.70 +		    $(JRE_MODULE_DOCFILES) \
    6.71  		    $(BUILDMETAINDEX_JARFILE)
    6.72  	@# Copy in bin directory
    6.73  	$(CD) $(OUTPUTDIR) && $(FIND) bin -depth | $(CPIO) -pdum $(JRE_MODULE_IMAGE_DIR)
    6.74 @@ -310,8 +282,7 @@
    6.75  
    6.76  # Solaris 64 bit image is special
    6.77  initial-module-image-jdk-sol64:: initial-module-image-jdk-setup \
    6.78 -			  initial-module-image-jdk64-bindemos \
    6.79 -			  $(JDK_MODULE_LICENSES) $(JDK_MODULARLIZED_64_LICENSES)
    6.80 +			  initial-module-image-jdk64-bindemos
    6.81  
    6.82  # DB files to add
    6.83  ifeq ($(OPENJDK),true)
    6.84 @@ -335,7 +306,7 @@
    6.85  # Standard jdk image
    6.86  initial-module-image-jdk:: initial-module-image-jdk-setup \
    6.87  		    initial-module-image-jdk-db \
    6.88 -		    $(JDK_MODULE_LICENSES) $(JDK_MODULE_DOCFILES)
    6.89 +		    $(JDK_MODULE_DOCFILES)
    6.90  	$(MKDIR) $(JDK_MODULE_IMAGE_DIR)/lib
    6.91  	@#
    6.92  	@# copy jdk modules to jdk/lib
     7.1 --- a/make/common/Program.gmk	Fri Jan 28 10:04:51 2011 -0800
     7.2 +++ b/make/common/Program.gmk	Wed Feb 02 09:39:31 2011 -0800
     7.3 @@ -160,6 +160,7 @@
     7.4  ifdef MT
     7.5  	$(MT) /manifest $(OBJDIR)/$(PROGRAM).exe.manifest /outputresource:$@;#1
     7.6  endif
     7.7 +	@$(call binary_file_verification,$@)
     7.8  
     7.9  else # PLATFORM
    7.10  
    7.11 @@ -184,6 +185,7 @@
    7.12  	@$(MKDIR) -p $(TEMPDIR)
    7.13  	$(LINK_PRE_CMD) $(CC) $(CC_OBJECT_OUTPUT_FLAG)$@ $(LDFLAGS) \
    7.14  	    $(FILES_o) $(THREADLIBS) $(LDLIBS)
    7.15 +	@$(call binary_file_verification,$@)
    7.16  	$(install-module-file)
    7.17  
    7.18  endif # PLATFORM
     8.1 --- a/make/common/Release.gmk	Fri Jan 28 10:04:51 2011 -0800
     8.2 +++ b/make/common/Release.gmk	Wed Feb 02 09:39:31 2011 -0800
     8.3 @@ -26,6 +26,9 @@
     8.4  include $(JDK_TOPDIR)/make/docs/CORE_PKGS.gmk
     8.5  include $(JDK_TOPDIR)/make/docs/NON_CORE_PKGS.gmk
     8.6  
     8.7 +# What jdk version are we building
     8.8 +THIS_JDK_VERSION := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
     8.9 +
    8.10  #
    8.11  # Perform release engineering tasks.
    8.12  #
    8.13 @@ -72,14 +75,6 @@
    8.14  
    8.15  JTG_DOCS            = $(JDK_TOPDIR)/src/solaris/doc
    8.16  
    8.17 -#We use this for man page header
    8.18 -jdkversion := $(JDK_MAJOR_VERSION).$(JDK_MINOR_VERSION).$(JDK_MICRO_VERSION)
    8.19 -
    8.20 -# Text documents on windows use this suffix
    8.21 -ifeq ($(PLATFORM), windows)
    8.22 -  TEXT_SUFFIX = .txt
    8.23 -endif
    8.24 -
    8.25  # The base names of all the license and document files for the jdk and jre
    8.26  #   (These files get placed in the jdk and jre install images)
    8.27  ifdef OPENJDK
    8.28 @@ -87,48 +82,24 @@
    8.29    SHARE_JDK_DOC_SRC = $(JDK_TOPDIR)
    8.30    SHARE_JRE_DOC_SRC = $(JDK_TOPDIR)
    8.31    # Same files for jdk and jre, no name changes
    8.32 -  LICENSE_DOCLIST_JDK = LICENSE     ASSEMBLY_EXCEPTION
    8.33 -  LICENSE_DOCLIST_JRE = LICENSE     ASSEMBLY_EXCEPTION
    8.34 -  OTHER_DOCLIST_JDK   = THIRD_PARTY_README
    8.35 -  OTHER_DOCLIST_JRE   = THIRD_PARTY_README
    8.36 +  IMAGE_DOCLIST_JDK = LICENSE ASSEMBLY_EXCEPTION THIRD_PARTY_README
    8.37 +  IMAGE_DOCLIST_JRE = LICENSE ASSEMBLY_EXCEPTION THIRD_PARTY_README
    8.38  else
    8.39    # Where to find these files
    8.40    SHARE_JDK_DOC_SRC = $(CLOSED_SHARE_SRC)/doc/jdk
    8.41    SHARE_JRE_DOC_SRC = $(CLOSED_SHARE_SRC)/doc/jre
    8.42 -  # Select the pre-release or FCS license version based on the build milestone.
    8.43 -  LICENSE_VERSION=.pre
    8.44 -  ifeq ($(MILESTONE), fcs)
    8.45 -    LICENSE_VERSION=.fcs
    8.46 +  IMAGE_DOCLIST_JDK = COPYRIGHT README.html  THIRDPARTYLICENSEREADME.txt
    8.47 +  IMAGE_DOCLIST_JRE = COPYRIGHT Welcome.html THIRDPARTYLICENSEREADME.txt
    8.48 +  ifeq ($(PLATFORM), windows)
    8.49 +    IMAGE_DOCLIST_JRE += README.txt
    8.50 +  else
    8.51 +    IMAGE_DOCLIST_JRE += README
    8.52    endif
    8.53 -  ifeq ($(PLATFORM), windows)
    8.54 -    LICENSE_DOCLIST_JDK = $(subst $(LICENSE_VERSION),,\
    8.55 -		   $(shell $(CD) $(SHARE_JDK_DOC_SRC) && \
    8.56 -		           $(LS) *LICENSE*$(LICENSE_VERSION)))
    8.57 -    LICENSE_DOCLIST_JRE = $(subst $(LICENSE_VERSION),,\
    8.58 -		   $(shell $(CD) $(SHARE_JRE_DOC_SRC) && \
    8.59 -		           $(LS) *LICENSE*$(LICENSE_VERSION)))
    8.60 -  else
    8.61 -    LICENSE_DOCLIST_JDK = $(subst $(LICENSE_VERSION),,\
    8.62 -	         $(shell $(CD) $(SHARE_JDK_DOC_SRC) && \
    8.63 -		         $(LS) *LICENSE*$(LICENSE_VERSION) | $(GREP) -v rtf))
    8.64 -    LICENSE_DOCLIST_JRE = $(subst $(LICENSE_VERSION),,\
    8.65 -	         $(shell $(CD) $(SHARE_JRE_DOC_SRC) && \
    8.66 -		         $(LS) *LICENSE*$(LICENSE_VERSION) | $(GREP) -v rtf))
    8.67 -  endif
    8.68 -  OTHER_DOCLIST_JDK = COPYRIGHT README.html README_ja.html README_zh_CN.html
    8.69 -  OTHER_DOCLIST_JRE = COPYRIGHT Welcome.html
    8.70 -  JRE_NAMECHANGE_DOCLIST = README
    8.71  endif
    8.72  
    8.73  # Paths to these files we need
    8.74 -JDK_LICENSES   = $(LICENSE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
    8.75 -JDK64_LICENSES = $(LICENSE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%64)
    8.76 -JDK_DOCFILES   = $(OTHER_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
    8.77 -
    8.78 -JRE_LICENSES   = $(LICENSE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
    8.79 -JRE64_LICENSES = $(LICENSE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%64)
    8.80 -JRE_DOCFILES   = $(OTHER_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
    8.81 -JRE_DOCFILES  += $(JRE_NAMECHANGE_DOCLIST:%=$(JRE_IMAGE_DIR)/%$(TEXT_SUFFIX))
    8.82 +JDK_DOCFILES   = $(IMAGE_DOCLIST_JDK:%=$(JDK_IMAGE_DIR)/%)
    8.83 +JRE_DOCFILES   = $(IMAGE_DOCLIST_JRE:%=$(JRE_IMAGE_DIR)/%)
    8.84  
    8.85  # absolute directory names: note, these must exist prior to build
    8.86  # time - they are created in the main Makefile.
    8.87 @@ -213,7 +184,7 @@
    8.88          $(MKDIR) -p $1/man/$${ja_dir}/man1; \
    8.89          $(CAT) $${manbase}/ja/$${manpage} \
    8.90            | $(NATIVE2ASCII) -encoding $(JA_SOURCE_ENCODING) \
    8.91 -          | $(SED) 's/@@VERSION@@/$(jdkversion)/g' \
    8.92 +          | $(SED) 's/@@VERSION@@/$(THIS_JDK_VERSION)/g' \
    8.93            | $(NATIVE2ASCII) -reverse -encoding $${ja_encoding} \
    8.94              > $1/man/$${ja_dir}/man1/$${manpage}; \
    8.95        done; \
    8.96 @@ -243,6 +214,7 @@
    8.97  initial-image-jre initial-image-jdk \
    8.98  initial-image-jre-sol64 initial-image-jdk-sol64 \
    8.99  trim-image-jre trim-image-jdk \
   8.100 +identify-image-jre identify-image-jdk \
   8.101  process-image-jre process-image-jdk \
   8.102  compare-image \
   8.103  sec-files sec-files-win jgss-files ::
   8.104 @@ -252,11 +224,12 @@
   8.105  images:: sanity-images post-sanity-images  \
   8.106  	 $(INITIAL_IMAGE_JRE) $(INITIAL_IMAGE_JDK) \
   8.107  	 trim-image-jre trim-image-jdk \
   8.108 +         identify-image-jre identify-image-jdk \
   8.109  	 process-image-jre process-image-jdk sec-files sec-files-win jgss-files
   8.110  
   8.111  # Don't use these
   8.112 -image-jre:: initial-image-jre trim-image-jre process-image-jre
   8.113 -image-jdk:: initial-image-jdk trim-image-jdk process-image-jdk
   8.114 +image-jre:: initial-image-jre trim-image-jre identify-image-jre process-image-jre
   8.115 +image-jdk:: initial-image-jdk trim-image-jdk identify-image-jdk process-image-jdk
   8.116  
   8.117  #
   8.118  # Sources we ship in the SDK.
   8.119 @@ -503,33 +476,12 @@
   8.120  # JDK files
   8.121  $(JDK_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%
   8.122  	$(process-doc-file)
   8.123 -# Removes LICENSE_VERSION or not
   8.124 -ifdef LICENSE_VERSION
   8.125 -$(JDK_IMAGE_DIR)/%: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
   8.126 -	$(process-doc-file)
   8.127 -$(JDK_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%$(LICENSE_VERSION)
   8.128 -	$(process-doc-file)
   8.129 -else
   8.130 -$(JDK_IMAGE_DIR)/%64: $(SHARE_JDK_DOC_SRC)/%
   8.131 -	$(process-doc-file)
   8.132 -endif
   8.133  
   8.134  # JRE files 
   8.135  $(JRE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%
   8.136  	$(process-doc-file)
   8.137 -# Add $(TEXT_SUFFIX) suffix
   8.138 -ifdef TEXT_SUFFIX
   8.139 -$(JRE_IMAGE_DIR)/%$(TEXT_SUFFIX): $(SHARE_JRE_DOC_SRC)/%
   8.140 -	$(process-doc-file)
   8.141 -endif
   8.142 -# Removes LICENSE_VERSION or not
   8.143 -ifdef LICENSE_VERSION
   8.144 -$(JRE_IMAGE_DIR)/%: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
   8.145 -	$(process-doc-file)
   8.146 -$(JRE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%$(LICENSE_VERSION)
   8.147 -	$(process-doc-file)
   8.148 -else
   8.149 -$(JRE_IMAGE_DIR)/%64: $(SHARE_JRE_DOC_SRC)/%
   8.150 +ifeq ($(PLATFORM), windows)
   8.151 +$(JRE_IMAGE_DIR)/README.txt: $(SHARE_JRE_DOC_SRC)/README
   8.152  	$(process-doc-file)
   8.153  endif
   8.154  
   8.155 @@ -737,8 +689,7 @@
   8.156  	$(MKDIR) -p $(JRE_IMAGE_DIR)
   8.157  
   8.158  # 64-bit solaris jre image contains only the 64-bit add-on files.
   8.159 -initial-image-jre-sol64:: initial-image-jre-setup \
   8.160 -			  $(JRE_LICENSES) $(JRE64_LICENSES)
   8.161 +initial-image-jre-sol64:: initial-image-jre-setup
   8.162  	@# Use tar instead of cp to preserve the symbolic links
   8.163  	for dir in bin lib ; do \
   8.164  	  ( $(CD) $(OUTPUTDIR) && \
   8.165 @@ -759,7 +710,7 @@
   8.166  # See "initial-image-jdk-setup" for an explanation of the rm of
   8.167  # drive names like C:
   8.168  initial-image-jre:: initial-image-jre-setup \
   8.169 -		    $(JRE_LICENSES) $(JRE_DOCFILES) \
   8.170 +		    $(JRE_DOCFILES) \
   8.171  		    $(RT_JAR) $(RESOURCES_JAR) $(JSSE_JAR) \
   8.172  		    $(BUILDMETAINDEX_JARFILE)
   8.173  	@# Copy in bin directory
   8.174 @@ -835,11 +786,14 @@
   8.175    endif
   8.176  endif # PLATFORM
   8.177  
   8.178 -# Get list of all Elf files in the jre
   8.179 -JRE_ELF_LIST=$(TEMPDIR)/jre-elf-files.list
   8.180 -$(JRE_ELF_LIST):
   8.181 -ifneq ($(PLATFORM), windows)
   8.182 +# Get list of all binary (COFF or Elf) files in the jre
   8.183 +JRE_BIN_LIST=$(TEMPDIR)/jre-bin-files.list
   8.184 +$(JRE_BIN_LIST):
   8.185  	$(RM) $@
   8.186 +ifeq ($(PLATFORM), windows)
   8.187 +	$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*.exe \
   8.188 +	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" > $@
   8.189 +else
   8.190  	$(FIND) $(JRE_IMAGE_DIR)/lib -type f -name \*.$(LIB_SUFFIX) >> $@
   8.191  	$(FILE) `$(FIND) $(JRE_IMAGE_DIR)/bin -type f -name \*$(EXE_SUFFIX)` \
   8.192  	    | $(EGREP) 'ELF' | $(CUT) -d':' -f1 >> $@
   8.193 @@ -847,9 +801,9 @@
   8.194  
   8.195  # Post process the image (strips and mcs on Elf files we are shipping)
   8.196  #   (Note the jdk WILL want the jre image before this processing)
   8.197 -process-image-jre:: $(JRE_ELF_LIST)
   8.198 +process-image-jre:: $(JRE_BIN_LIST)
   8.199  ifneq ($(POST_STRIP_PROCESS), )
   8.200 -	for f in `$(CAT) $(JRE_ELF_LIST)`; do \
   8.201 +	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
   8.202  	  $(CHMOD) u+w $${f}; \
   8.203  	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
   8.204  	  $(POST_STRIP_PROCESS) $${f}; \
   8.205 @@ -857,14 +811,17 @@
   8.206  	done
   8.207  endif
   8.208  ifneq ($(POST_MCS_PROCESS), )
   8.209 -	for f in `$(CAT) $(JRE_ELF_LIST)`; do \
   8.210 +	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
   8.211  	  $(CHMOD) u+w $${f}; \
   8.212  	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
   8.213  	  $(POST_MCS_PROCESS) $${f}; \
   8.214  	  $(CHMOD) go-w $${f}; \
   8.215  	done
   8.216  endif
   8.217 -	$(RM) $(JRE_ELF_LIST)
   8.218 +	@for f in `$(CAT) $(JRE_BIN_LIST)`; do \
   8.219 +	  $(call binary_file_verification,$${f}); \
   8.220 +	done
   8.221 +	$(RM) $(JRE_BIN_LIST)
   8.222  
   8.223  ######################################################
   8.224  # JDK Image
   8.225 @@ -904,8 +861,7 @@
   8.226  
   8.227  # Solaris 64 bit image is special
   8.228  initial-image-jdk-sol64:: initial-image-jdk-setup \
   8.229 -			  initial-image-jdk64-bindemos \
   8.230 -			  $(JDK_LICENSES) $(JDK64_LICENSES)
   8.231 +			  initial-image-jdk64-bindemos
   8.232  
   8.233  # DB files to add
   8.234  ifdef OPENJDK
   8.235 @@ -929,7 +885,7 @@
   8.236  # Standard jdk image
   8.237  initial-image-jdk:: initial-image-jdk-setup \
   8.238  		    initial-image-jdk-db \
   8.239 -		    $(JDK_LICENSES) $(JDK_DOCFILES)
   8.240 +		    $(JDK_DOCFILES)
   8.241  	$(MKDIR) $(JDK_IMAGE_DIR)/lib
   8.242  	@#
   8.243  	@# Copy in the jars in lib that only belong in the JDK
   8.244 @@ -1091,10 +1047,15 @@
   8.245  	    $(RM) $(JDK_IMAGE_DIR)/bin/$${t}$(EXE_SUFFIX); \
   8.246  	done
   8.247  
   8.248 -# Get list of Elf files in the jdk
   8.249 -JDK_ELF_LIST=$(TEMPDIR)/jdk-elf-files.list
   8.250 -$(JDK_ELF_LIST):
   8.251 -ifneq ($(PLATFORM), windows)
   8.252 +# Get list of binary (COFF or Elf) files in the jdk
   8.253 +JDK_BIN_LIST=$(TEMPDIR)/jdk-bin-files.list
   8.254 +$(JDK_BIN_LIST):
   8.255 +ifeq ($(PLATFORM), windows)
   8.256 +	$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*.exe \
   8.257 +	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" > $@
   8.258 +	$(FIND) $(JDK_IMAGE_DIR)/bin -type f -name \*.exe \
   8.259 +	   -o -name \*.dll | $(EGREP) -v -i "$(MSVCRNN_DLL)" >> $@
   8.260 +else
   8.261  	$(RM) $@
   8.262  	$(FIND) $(JDK_IMAGE_DIR)/jre/lib -type f -name \*.$(LIB_SUFFIX) >> $@
   8.263  	$(FILE) `$(FIND) $(JDK_IMAGE_DIR)/jre/bin -type f -name \*$(EXE_SUFFIX)` \
   8.264 @@ -1104,9 +1065,9 @@
   8.265  endif
   8.266  
   8.267  # Post process the image (strips and mcs on files we are shipping)
   8.268 -process-image-jdk:: $(JDK_ELF_LIST)
   8.269 +process-image-jdk:: $(JDK_BIN_LIST)
   8.270  ifneq ($(POST_STRIP_PROCESS), )
   8.271 -	for f in `$(CAT) $(JDK_ELF_LIST)`; do \
   8.272 +	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
   8.273  	  $(CHMOD) u+w $${f}; \
   8.274  	  $(ECHO) $(POST_STRIP_PROCESS) $${f}; \
   8.275  	  $(POST_STRIP_PROCESS) $${f}; \
   8.276 @@ -1114,14 +1075,56 @@
   8.277  	done
   8.278  endif
   8.279  ifneq ($(POST_MCS_PROCESS), )
   8.280 -	for f in `$(CAT) $(JDK_ELF_LIST)`; do \
   8.281 +	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
   8.282  	  $(CHMOD) u+w $${f}; \
   8.283  	  $(ECHO) $(POST_MCS_PROCESS) $${f}; \
   8.284  	  $(POST_MCS_PROCESS) $${f}; \
   8.285  	  $(CHMOD) go-w $${f}; \
   8.286  	done
   8.287  endif
   8.288 -	$(RM) $(JDK_ELF_LIST)
   8.289 +	@for f in `$(CAT) $(JDK_BIN_LIST)`; do \
   8.290 +	  $(call binary_file_verification,$${f}); \
   8.291 +	done
   8.292 +	$(RM) $(JDK_BIN_LIST)
   8.293 +
   8.294 +###################################################################
   8.295 +# What did we build
   8.296 +###################################################################
   8.297 +
   8.298 +# The jdk text info file that lives at the root of the install image.
   8.299 +
   8.300 +JDK_INFO_FILE = $(JDK_IMAGE_DIR)/release
   8.301 +JRE_INFO_FILE = $(JRE_IMAGE_DIR)/release
   8.302 +
   8.303 +# Common way to emit a line into the release or info file
   8.304 +define info-file-item # name value
   8.305 +$(PRINTF) "%s=\"%s\"\n" $1 $2 >> $@
   8.306 +endef
   8.307 +
   8.308 +# Values to emit
   8.309 +MINIMUM_OS_NAME    := $(REQUIRED_OS_NAME)
   8.310 +MINIMUM_OS_VERSION := $(REQUIRED_OS_VERSION)
   8.311 +MINIMUM_OS_ARCH    := $(ARCH)
   8.312 +
   8.313 +$(JDK_INFO_FILE): FRC
   8.314 +	$(prep-target)
   8.315 +	$(call info-file-item, "JAVA_VERSION", "$(THIS_JDK_VERSION)")
   8.316 +	$(call info-file-item, "OS_NAME",      "$(MINIMUM_OS_NAME)")
   8.317 +	$(call info-file-item, "OS_VERSION",   "$(MINIMUM_OS_VERSION)")
   8.318 +	$(call info-file-item, "OS_ARCH",      "$(MINIMUM_OS_ARCH)")
   8.319 +
   8.320 +# Create release file to identify this image
   8.321 +identify-image-jdk:: $(JDK_INFO_FILE)
   8.322 +
   8.323 +$(JRE_INFO_FILE): FRC
   8.324 +	$(prep-target)
   8.325 +	$(call info-file-item, "JAVA_VERSION", "$(THIS_JDK_VERSION)")
   8.326 +	$(call info-file-item, "OS_NAME",      "$(MINIMUM_OS_NAME)")
   8.327 +	$(call info-file-item, "OS_VERSION",   "$(MINIMUM_OS_VERSION)")
   8.328 +	$(call info-file-item, "OS_ARCH",      "$(MINIMUM_OS_ARCH)")
   8.329 +
   8.330 +# Create release file to identify this image
   8.331 +identify-image-jre:: $(JRE_INFO_FILE)
   8.332  
   8.333  ###################################################################
   8.334  # What do we compare against
   8.335 @@ -1276,6 +1279,7 @@
   8.336          initial-image-jre-setup \
   8.337  	trim-image-jre trim-image-jdk \
   8.338  	process-image-jre process-image-jdk \
   8.339 +	identify-image-jre identify-image-jdk \
   8.340  	install-previous-jre install-previous-jdk \
   8.341  	compare-image-jre compare-image-jdk \
   8.342  	compare-image compare-image-clobber \
     9.1 --- a/make/common/shared/Compiler-msvc.gmk	Fri Jan 28 10:04:51 2011 -0800
     9.2 +++ b/make/common/shared/Compiler-msvc.gmk	Wed Feb 02 09:39:31 2011 -0800
     9.3 @@ -35,6 +35,7 @@
     9.4    LIBEXE       = $(COMPILER_PATH)lib
     9.5    LINK         = $(COMPILER_PATH)link
     9.6    LINK32       = $(LINK)
     9.7 +  DUMPBIN      = $(COMPILER_PATH)dumpbin.exe
     9.8   
     9.9    # Fill in unknown values
    9.10    COMPILER_NAME=Unknown MSVC Compiler
    9.11 @@ -139,8 +140,8 @@
    9.12          _OTHER_TOOLS_BIN = $(WINDOWSSDKDIR)/Bin/x64
    9.13        endif
    9.14      endif
    9.15 -    RC     = $(_OTHER_TOOLS_BIN)/rc.exe
    9.16 -    REBASE = $(_OTHER_TOOLS_BIN)/rebase.exe
    9.17 +    RC     = $(_OTHER_TOOLS_BIN)/RC.Exe
    9.18 +    REBASE = $(_OTHER_TOOLS_BIN)/ReBase.Exe
    9.19      MT     = $(_OTHER_TOOLS_BIN)/mt.exe
    9.20      MTL    = $(_OTHER_TOOLS_BIN)/midl.exe
    9.21    endif
    10.1 --- a/make/common/shared/Defs-control.gmk	Fri Jan 28 10:04:51 2011 -0800
    10.2 +++ b/make/common/shared/Defs-control.gmk	Wed Feb 02 09:39:31 2011 -0800
    10.3 @@ -76,12 +76,9 @@
    10.4  ABS_SRC_BUNDLEDIR   = $(ABS_OUTPUTDIR)/source-bundles
    10.5  BIN_BUNDLEDIR       = $(OUTPUTDIR)/bundles
    10.6  ABS_BIN_BUNDLEDIR   = $(ABS_OUTPUTDIR)/bundles
    10.7 -JRL_BUNDLEDIR       = $(OUTPUTDIR)/java.net
    10.8 -ABS_JRL_BUNDLEDIR   = $(ABS_OUTPUTDIR)/java.net
    10.9  
   10.10  dummy := $(shell $(MKDIR) -p $(BIN_BUNDLEDIR))
   10.11  dummy := $(shell $(MKDIR) -p $(SRC_BUNDLEDIR) )
   10.12 -dummy := $(shell $(MKDIR) -p $(JRL_BUNDLEDIR) )
   10.13  
   10.14  TEMP_DIR = $(OUTPUTDIR)/tmp
   10.15  ABS_TEMP_DIR = $(ABS_OUTPUTDIR)/tmp
    11.1 --- a/make/common/shared/Defs-linux.gmk	Fri Jan 28 10:04:51 2011 -0800
    11.2 +++ b/make/common/shared/Defs-linux.gmk	Wed Feb 02 09:39:31 2011 -0800
    11.3 @@ -177,3 +177,20 @@
    11.4  endif
    11.5  HOTSPOT_SERVER_PATH:=$(call AltCheckValue,HOTSPOT_SERVER_PATH)
    11.6  
    11.7 +# Special define for checking the binaries
    11.8 +
    11.9 +# Macro to check it's input file for banned dependencies and verify the
   11.10 +#   binary built properly. Relies on process exit code.
   11.11 +define binary_file_verification # binary_file
   11.12 +( \
   11.13 +  $(ECHO) "Checking for mapfile use in: $1" && \
   11.14 +  if [ "`$(NM) -D -g --defined-only $1 | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
   11.15 +    $(ECHO) "WARNING: File was not built with a mapfile: $1"; \
   11.16 +  fi && \
   11.17 +  $(ECHO) "Library loads for: $1" && \
   11.18 +  $(LDD) $1 && \
   11.19 +  $(ECHO) "RUNPATH for: $1" && \
   11.20 +  ( $(READELF) -d $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
   11.21 +)
   11.22 +endef
   11.23 +
    12.1 --- a/make/common/shared/Defs-solaris.gmk	Fri Jan 28 10:04:51 2011 -0800
    12.2 +++ b/make/common/shared/Defs-solaris.gmk	Wed Feb 02 09:39:31 2011 -0800
    12.3 @@ -186,3 +186,20 @@
    12.4  endif
    12.5  HOTSPOT_SERVER_PATH:=$(call AltCheckValue,HOTSPOT_SERVER_PATH)
    12.6  
    12.7 +# Special define for checking the binaries
    12.8 +
    12.9 +# Macro to check it's input file for banned dependencies and verify the
   12.10 +#   binary built properly. Relies on process exit code.
   12.11 +define binary_file_verification # binary_file
   12.12 +( \
   12.13 +  $(ECHO) "Checking for mapfile use in: $1" && \
   12.14 +  if [ "`$(NM) -g -D $1 | $(EGREP) -v 'UNDEF' | $(EGREP) 'SUNWprivate'`" = "" ] ; then \
   12.15 +    $(ECHO) "WARNING: File was not built with a mapfile: $1"; \
   12.16 +  fi && \
   12.17 +  $(ECHO) "Library loads for: $1" && \
   12.18 +  $(LDD) $1 && \
   12.19 +  $(ECHO) "RUNPATH for: $1" && \
   12.20 +  ( $(DUMP) -L -v $1 | $(EGREP) 'NEEDED|RUNPATH|RPATH' ) \
   12.21 +)
   12.22 +endef
   12.23 +
    13.1 --- a/make/common/shared/Defs-utils.gmk	Fri Jan 28 10:04:51 2011 -0800
    13.2 +++ b/make/common/shared/Defs-utils.gmk	Wed Feb 02 09:39:31 2011 -0800
    13.3 @@ -85,6 +85,7 @@
    13.4  DF             = $(UTILS_COMMAND_PATH)df
    13.5  DIFF           = $(UTILS_USR_BIN_PATH)diff
    13.6  DIRNAME        = $(UTILS_USR_BIN_PATH)dirname
    13.7 +DUMP           = $(UTILS_CCS_BIN_PATH)dump
    13.8  ECHO           = $(UTILS_COMMAND_PATH)echo
    13.9  EGREP          = $(UTILS_COMMAND_PATH)egrep
   13.10  EXPR           = $(UTILS_USR_BIN_PATH)expr
   13.11 @@ -99,6 +100,7 @@
   13.12  ISAINFO        = $(UTILS_COMMAND_PATH)isainfo
   13.13  KSH            = $(UTILS_COMMAND_PATH)ksh
   13.14  LD             = $(UTILS_CCS_BIN_PATH)ld
   13.15 +LDD            = $(UTILS_USR_BIN_PATH)ldd
   13.16  LEX            = $(UTILS_CCS_BIN_PATH)lex
   13.17  LN             = $(UTILS_COMMAND_PATH)ln
   13.18  LS             = $(UTILS_COMMAND_PATH)ls
   13.19 @@ -114,6 +116,7 @@
   13.20  PRINTF         = $(UTILS_USR_BIN_PATH)printf
   13.21  PWD            = $(UTILS_COMMAND_PATH)pwd
   13.22  RC             = $(UTILS_COMMAND_PATH)rc
   13.23 +READELF        = $(UTILS_USR_BIN_PATH)readelf
   13.24  RMDIR          = $(UTILS_COMMAND_PATH)rmdir
   13.25  RPM            = $(UTILS_COMMAND_PATH)rpm
   13.26  RPMBUILD       = $(UTILS_COMMAND_PATH)rpmbuild
    14.1 --- a/make/common/shared/Defs-versions.gmk	Fri Jan 28 10:04:51 2011 -0800
    14.2 +++ b/make/common/shared/Defs-versions.gmk	Wed Feb 02 09:39:31 2011 -0800
    14.3 @@ -127,6 +127,7 @@
    14.4  
    14.5  # Solaris specific
    14.6  ifeq ($(PLATFORM), solaris)
    14.7 +  REQUIRED_OS_NAME            = SunOS
    14.8    REQUIRED_OS_VERSION         = 5.10
    14.9    REQUIRED_OS_VARIANT_NAME    = Solaris
   14.10    REQUIRED_OS_VARIANT_VERSION = $(REQUIRED_OS_VERSION)
   14.11 @@ -148,6 +149,7 @@
   14.12  
   14.13  # Linux specific
   14.14  ifeq ($(PLATFORM), linux)
   14.15 +  REQUIRED_OS_NAME            = Linux
   14.16    REQUIRED_OS_VERSION         = 2.6
   14.17    REQUIRED_OS_VARIANT_NAME    = Fedora
   14.18    REQUIRED_OS_VARIANT_VERSION = 9
   14.19 @@ -166,6 +168,7 @@
   14.20  
   14.21  # Windows specific
   14.22  ifeq ($(PLATFORM), windows)
   14.23 +  REQUIRED_OS_NAME            = Windows
   14.24    ifeq ($(ARCH_DATA_MODEL),64)
   14.25      REQUIRED_OS_VERSION       = 5.2
   14.26      REQUIRED_OS_VARIANT_NAME  = Windows2003
    15.1 --- a/make/common/shared/Defs-windows.gmk	Fri Jan 28 10:04:51 2011 -0800
    15.2 +++ b/make/common/shared/Defs-windows.gmk	Wed Feb 02 09:39:31 2011 -0800
    15.3 @@ -288,8 +288,8 @@
    15.4      xVS100COMNTOOLS :="$(_program_files32)/Microsoft Visual Studio 10.0/Common7/Tools/"
    15.5      fVS100COMNTOOLS :=$(call FullPath,$(xVS100COMNTOOLS))
    15.6    else
    15.7 +    xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))"
    15.8      ifneq ($(word 2,$(VS100COMNTOOLS)),)
    15.9 -      xVS100COMNTOOLS :="$(subst \,/,$(VS100COMNTOOLS))"
   15.10        fVS100COMNTOOLS :=$(call FullPath,$(xVS100COMNTOOLS))
   15.11      else
   15.12        fVS100COMNTOOLS :=$(xVS100COMNTOOLS)
   15.13 @@ -551,18 +551,6 @@
   15.14    _BOOTDIR3  =$(SLASH_JAVA)/re/jdk/$(PREVIOUS_JDK_VERSION)/archive/fcs/binaries/$(PLATFORM)-$(ARCH)
   15.15  endif
   15.16  
   15.17 -# 32 bit always needs 2 runtimes, 64 bit usually does too
   15.18 -
   15.19 -# MSVCRT_DLL_PATH: location of msvcrt.dll that will be re-distributed
   15.20 -ifdef ALT_MSVCRT_DLL_PATH
   15.21 -  xALT_MSVCRT_DLL_PATH :="$(subst \,/,$(ALT_MSVCRT_DLL_PATH))"
   15.22 -  MSVCRT_DLL_PATH      :=$(call FullPath,$(xALT_MSVCRT_DLL_PATH))
   15.23 -else
   15.24 -  MSVCRT_DLL_PATH :=$(call FullPath,$(_system_root)/system32/)
   15.25 -endif
   15.26 -MSVCRT_DLL_PATH:=$(call AltCheckSpaces,MSVCRT_DLL_PATH)
   15.27 -MSVCRT_DLL_PATH:=$(call AltCheckValue,MSVCRT_DLL_PATH)
   15.28 -
   15.29  # 32bit always needs the MSVCRNN runtime, 64bit does when using VS2008
   15.30  ifeq ($(ARCH_DATA_MODEL), 32)
   15.31    _NEEDS_MSVCRNN = true
   15.32 @@ -641,15 +629,6 @@
   15.33  endif
   15.34  INSTALL_MSSDK:=$(call AltCheckSpaces,INSTALL_MSSDK)
   15.35  
   15.36 -# INSTALL_MSIVAL2: Installation of MsiVal2 for this platform (for install)
   15.37 -ifdef ALT_INSTALL_MSIVAL2
   15.38 -  xALT_INSTALL_MSIVAL2 :="$(subst \,/,$(ALT_INSTALL_MSIVAL2))"
   15.39 -  INSTALL_MSIVAL2      :=$(call FullPath,$(xALT_INSTALL_MSIVAL2))
   15.40 -else
   15.41 -  INSTALL_MSIVAL2      :=$(_program_files32)/MsiVal2
   15.42 -endif
   15.43 -INSTALL_MSIVAL2:=$(call AltCheckSpaces,INSTALL_MSIVAL2)
   15.44 -
   15.45  # WSCRIPT: path to wscript.exe (used in creating install bundles)
   15.46  ifdef ALT_WSCRIPT
   15.47    xALT_WSCRIPT :="$(subst \,/,$(ALT_WSCRIPT))"
   15.48 @@ -685,43 +664,6 @@
   15.49  endif
   15.50  CABARC:=$(call AltCheckSpaces,CABARC)
   15.51  
   15.52 -# MSIVAL2: path to msival2.exe (used in validating install msi files)
   15.53 -ifdef ALT_MSIVAL2
   15.54 -  xALT_MSIVAL2 :="$(subst \,/,$(ALT_MSIVAL2))"
   15.55 -  MSIVAL2  =$(xALT_MSIVAL2)
   15.56 -else
   15.57 -  _MSIVAL2_1 :=$(INSTALL_MSIVAL2)/msival2.exe
   15.58 -  _MSIVAL2_2 :=$(DEVTOOLS_PATH)msival2.exe
   15.59 -  MSIVAL2    :=$(call FileExists,$(_MSIVAL2_1),$(_MSIVAL2_2))
   15.60 -endif
   15.61 -MSIVAL2:=$(call AltCheckSpaces,MSIVAL2)
   15.62 -# suppress msival2 checks, as it hangs jprt builds
   15.63 -ifdef SKIP_MSIVAL2
   15.64 -  MSIVAL2    := $(ECHO)
   15.65 -endif
   15.66 -
   15.67 -# LOGOCUB: path to cub file for (used in validating install msi files)
   15.68 -ifdef ALT_LOGOCUB
   15.69 -  xALT_LOGOCUB :="$(subst \,/,$(ALT_LOGOCUB))"
   15.70 -  LOGOCUB  =$(xALT_LOGOCUB)
   15.71 -else
   15.72 -  _LOGOCUB1 :=$(INSTALL_MSIVAL2)/logo.cub
   15.73 -  _LOGOCUB2 :=$(DEVTOOLS_PATH)logo.cub
   15.74 -  LOGOCUB   :=$(call FileExists,$(_LOGOCUB1),$(_LOGOCUB2))
   15.75 -endif
   15.76 -LOGOCUB:=$(call AltCheckSpaces,LOGOCUB)
   15.77 -
   15.78 -# MSITRAN: path to msitran.exe (used in creating install bundles and sponsors)
   15.79 -ifdef ALT_MSITRAN
   15.80 -  xALT_MSITRAN :="$(subst \,/,$(ALT_MSITRAN))"
   15.81 -  MSITRAN  =$(xALT_MSITRAN)
   15.82 -else
   15.83 -  _MSITRAN1 :=$(INSTALL_MSSDK)/Bin/msitran.exe
   15.84 -  _MSITRAN2 :=$(DEVTOOLS_PATH)msitran.exe
   15.85 -  MSITRAN   :=$(call FileExists,$(_MSITRAN1),$(_MSITRAN2))
   15.86 -endif
   15.87 -MSITRAN:=$(call AltCheckSpaces,MSITRAN)
   15.88 -
   15.89  # MSICERT: path to msicert.exe (used in creating install bundles)
   15.90  ifdef ALT_MSICERT
   15.91    xALT_MSICERT :="$(subst \,/,$(ALT_MSICERT))"
   15.92 @@ -798,3 +740,50 @@
   15.93  endif
   15.94  HOTSPOT_LIB_PATH:=$(call AltCheckSpaces,HOTSPOT_LIB_PATH)
   15.95  HOTSPOT_LIB_PATH:=$(call AltCheckValue,HOTSPOT_LIB_PATH)
   15.96 +
   15.97 +# Special define for checking the binaries
   15.98 +
   15.99 +ifeq ($(VS2010_EXISTS),true)
  15.100 +
  15.101 +# All windows dll and exe files should have been built with /NXCOMPAT
  15.102 +#   and be setup for dynamic base addresses.
  15.103 +#   In addition, we should not be dependent on certain dll files that
  15.104 +#   we do not or cannot redistribute.
  15.105 +
  15.106 +# List of filenames we should NOT be dependent on
  15.107 +BANNED_DLLS=msvcp100[.]dll|msvcr100d[.]dll|msvcrtd[.]dll
  15.108 +
  15.109 +# Macro to check it's input file for banned dependencies and verify the
  15.110 +#   binary was built properly. Relies on process exit code.
  15.111 +define binary_file_verification # binary_file
  15.112 +( \
  15.113 +  $(ECHO) "Checking for /NXCOMPAT usage in: $1" && \
  15.114 +  if [ "`$(DUMPBIN) /headers $1 | $(EGREP) -i 'NX compatible'`" = "" ] ; then \
  15.115 +    $(ECHO) "ERROR: Did not find 'NX compatible' in headers: $1" ; \
  15.116 +    $(DUMPBIN) /headers $1 ; \
  15.117 +    exit 7 ; \
  15.118 +  fi ; \
  15.119 +  $(ECHO) "Checking for /DYNAMICBASE usage in: $1" && \
  15.120 +  if [ "`$(DUMPBIN) /headers $1 | $(EGREP) -i 'Dynamic base'`" = "" ] ; then \
  15.121 +    $(ECHO) "ERROR: Did not find 'Dynamic base' in headers: $1" ; \
  15.122 +    $(DUMPBIN) /headers $1 ; \
  15.123 +    exit 8 ; \
  15.124 +  fi ; \
  15.125 +  $(ECHO) "Checking for banned dependencies in: $1" && \
  15.126 +  if [ "`$(DUMPBIN) /dependents $1 | $(EGREP) -i '$(BANNED_DLLS)'`" != "" ] ; then \
  15.127 +    $(ECHO) "ERROR: Found us of $(BANNED_DLLS)"; \
  15.128 +    $(DUMPBIN) /dependents $1 ; \
  15.129 +    exit 9 ; \
  15.130 +  fi ; \
  15.131 +)
  15.132 +endef
  15.133 +
  15.134 +else
  15.135 +
  15.136 +# Macro to check it's input file for banned dependencies and verify the
  15.137 +#   binary was built properly. Relies on process exit code.
  15.138 +define binary_file_verification # binary_file
  15.139 +endef
  15.140 +
  15.141 +endif
  15.142 +
    16.1 --- a/make/common/shared/Sanity-Settings.gmk	Fri Jan 28 10:04:51 2011 -0800
    16.2 +++ b/make/common/shared/Sanity-Settings.gmk	Wed Feb 02 09:39:31 2011 -0800
    16.3 @@ -96,7 +96,6 @@
    16.4    endif
    16.5  endif
    16.6  ifeq ($(PLATFORM),windows)
    16.7 -  ALL_SETTINGS+=$(call addAltSetting,MSVCRT_DLL_PATH)
    16.8    ifneq ($(MSVCRNN_DLL),)
    16.9      ALL_SETTINGS+=$(call addAltSetting,MSVCRNN_DLL_PATH)
   16.10    endif
   16.11 @@ -117,6 +116,9 @@
   16.12  ALL_SETTINGS+=$(call addRequiredVersionSetting,UNZIP_VER)
   16.13  ifeq ($(PLATFORM),windows)
   16.14    ALL_SETTINGS+=$(call addRequiredVersionSetting,LINK_VER)
   16.15 +  ALL_SETTINGS+=$(call addRequiredSetting,CC)
   16.16 +  ALL_SETTINGS+=$(call addRequiredSetting,LINK)
   16.17 +  ALL_SETTINGS+=$(call addRequiredSetting,DUMPBIN)
   16.18  endif
   16.19  ALL_SETTINGS+=$(call addRequiredVersionSetting,ANT_VER)
   16.20  ALL_SETTINGS+=$(call addRequiredSetting,TEMPDIR)
   16.21 @@ -226,13 +228,13 @@
   16.22    ALL_SETTINGS+=$(call addAltSetting,DXSDK_INCLUDE_PATH)
   16.23    ALL_SETTINGS+=$(call addAltSetting,DXSDK_LIB_PATH)
   16.24    ALL_SETTINGS+=$(call addAltSetting,WINDOWSSDKDIR)
   16.25 +  ALL_SETTINGS+=$(call addRequiredSetting,RC)
   16.26 +  ALL_SETTINGS+=$(call addRequiredSetting,REBASE)
   16.27    ifndef OPENJDK
   16.28      ALL_SETTINGS+=$(call addAltSetting,DEPLOY_MSSDK)
   16.29      ALL_SETTINGS+=$(call addAltSetting,INSTALL_MSSDK)
   16.30      ALL_SETTINGS+=$(call addAltSetting,WSCRIPT)
   16.31      ALL_SETTINGS+=$(call addAltSetting,MSICERT)
   16.32 -    ALL_SETTINGS+=$(call addAltSetting,MSITRAN)
   16.33 -    ALL_SETTINGS+=$(call addAltSetting,MSIVAL2)
   16.34    endif
   16.35  endif
   16.36  ALL_SETTINGS+=$(call addAltSetting,CACERTS_FILE)
    17.1 --- a/make/common/shared/Sanity.gmk	Fri Jan 28 10:04:51 2011 -0800
    17.2 +++ b/make/common/shared/Sanity.gmk	Wed Feb 02 09:39:31 2011 -0800
    17.3 @@ -879,13 +879,6 @@
    17.4  ######################################################
    17.5  sane-msvcrt_path:
    17.6  ifeq ($(PLATFORM), windows)
    17.7 -	@if [ ! -r "$(MSVCRT_DLL_PATH)/msvcrt.dll" ]; then \
    17.8 -	  $(ECHO) "ERROR: You do not have access to msvcrt.dll. \n" \
    17.9 -	    "      Please check your access to \n" \
   17.10 -	    "          $(MSVCRT_DLL_PATH) \n" \
   17.11 -	    "      and/or check your value of ALT_MSVCRT_DLL_PATH. \n" \
   17.12 -	    "" >> $(ERROR_FILE) ; \
   17.13 -	fi
   17.14    ifneq ($(MSVCRNN_DLL),)
   17.15  	@if [ ! -r "$(MSVCRNN_DLL_PATH)/$(MSVCRNN_DLL)" ]; then \
   17.16  	  $(ECHO) "ERROR: You do not have access to $(MSVCRNN_DLL). \n" \
   17.17 @@ -1018,6 +1011,22 @@
   17.18  	    "      and/or check your value of ALT_MSDEVTOOLS_PATH. \n" \
   17.19  	    "" >> $(ERROR_FILE) ; \
   17.20  	fi
   17.21 +  else
   17.22 +    ifeq ($(wildcard $(REBASE)),)
   17.23 +	@$(ECHO) "ERROR: Cannot find the REBASE utility from path: $(REBASE)\n" \
   17.24 +	    "      This is normally obtained from the WINDOWSSDKDIR." \
   17.25 +	    "" >> $(ERROR_FILE)
   17.26 +    endif
   17.27 +    ifeq ($(wildcard $(RC)),)
   17.28 +	@$(ECHO) "ERROR: Cannot find the RC utility from path: $(RC)\n" \
   17.29 +	    "      This is normally obtained from the WINDOWSSDKDIR." \
   17.30 +	    "" >> $(ERROR_FILE)
   17.31 +    endif
   17.32 +    ifeq ($(wildcard $(DUMPBIN)),)
   17.33 +	@$(ECHO) "ERROR: Cannot find the DUMPBIN utility from path: $(DUMPBIN)\n" \
   17.34 +	    "      This is normally obtained from the WINDOWSSDKDIR." \
   17.35 +	    "" >> $(ERROR_FILE)
   17.36 +    endif
   17.37    endif
   17.38  endif
   17.39  
   17.40 @@ -1460,25 +1469,6 @@
   17.41  endif
   17.42  
   17.43  ######################################################
   17.44 -# Check for existence of INSTALL_MSIVAL2 on windows
   17.45 -######################################################
   17.46 -sane-install-msival2_path:
   17.47 -ifeq ($(PLATFORM), windows)
   17.48 -	@if [ -z "$(INSTALL_MSIVAL2)" ]; then \
   17.49 -	  $(ECHO) "WARNING: Your INSTALL_MSIVAL2 setting is empty.\n" \
   17.50 -	    "        It is recommended to set ALT_INSTALL_MSIVAL2.\n" \
   17.51 -	    "" >> $(WARNING_FILE) ; \
   17.52 -	fi
   17.53 -	@if [ ! -r "$(INSTALL_MSIVAL2)" ]; then \
   17.54 -	  $(ECHO) "ERROR: You do not have a valid INSTALL_MSIVAL2 setting. \n" \
   17.55 -	    "      Please check your access to \n" \
   17.56 -	    "          $(INSTALL_MSIVAL2) \n" \
   17.57 -	    "      and/or check your value of ALT_INSTALL_MSIVAL2. \n" \
   17.58 -	    "" >> $(ERROR_FILE) ; \
   17.59 -	fi
   17.60 -endif
   17.61 -
   17.62 -######################################################
   17.63  # Check the GNU C++ compiler for OJI plugin
   17.64  ######################################################
   17.65  sane-gcc-compiler:
    18.1 --- a/make/java/redist/Makefile	Fri Jan 28 10:04:51 2011 -0800
    18.2 +++ b/make/java/redist/Makefile	Wed Feb 02 09:39:31 2011 -0800
    18.3 @@ -93,10 +93,6 @@
    18.4  
    18.5  IMPORT_LIST += $(MS_RUNTIME_LIBRARIES:%=$(BINDIR)/%)
    18.6  
    18.7 -# NOTE: These might actually come from BUILDDIR, depends on the settings.
    18.8 -$(BINDIR)/msvcrt.dll: $(MSVCRT_DLL_PATH)/msvcrt.dll
    18.9 -	$(install-import-file)
   18.10 -	$(call chmod-file, a+x)
   18.11  $(BINDIR)/$(MSVCRNN_DLL): $(MSVCRNN_DLL_PATH)/$(MSVCRNN_DLL)
   18.12  	$(install-import-file)
   18.13  	$(call chmod-file, a+x)
   18.14 @@ -223,12 +219,15 @@
   18.15  
   18.16  $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVM_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVM_NAME)
   18.17  	$(install-import-file)
   18.18 +	@$(call binary_file_verification,$@)
   18.19  
   18.20  $(LIB_LOCATION)/$(KERNEL_LOCATION)/$(JVM_NAME): $(HOTSPOT_KERNEL_PATH)/$(JVM_NAME)
   18.21  	$(install-file)
   18.22 +	@$(call binary_file_verification,$@)
   18.23  
   18.24  $(LIB_LOCATION)/$(LIBJSIG_NAME): $(HOTSPOT_IMPORT_PATH)/$(ARCH_VM_SUBDIR)/$(LIBJSIG_NAME)
   18.25  	$(install-import-file)
   18.26 +	@$(call binary_file_verification,$@)
   18.27  
   18.28  $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(LIBJSIG_NAME) \
   18.29  $(LIB_LOCATION)/$(SERVER_LOCATION)/$(LIBJSIG_NAME):
   18.30 @@ -237,30 +236,39 @@
   18.31  
   18.32  $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDB_NAME)
   18.33  	$(install-import-file)
   18.34 +	@$(call binary_file_verification,$@)
   18.35  
   18.36  $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDB_NAME)
   18.37  	$(install-import-file)
   18.38 +	@$(call binary_file_verification,$@)
   18.39  
   18.40  $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDB_NAME)
   18.41  	$(install-import-file)
   18.42 +	@$(call binary_file_verification,$@)
   18.43  
   18.44  $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDB_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDB_NAME)
   18.45  	$(install-import-file)
   18.46 +	@$(call binary_file_verification,$@)
   18.47  
   18.48  $(LIB_LOCATION)/$(CLIENT_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/$(JVMDTRACE_NAME)
   18.49  	$(install-import-file)
   18.50 +	@$(call binary_file_verification,$@)
   18.51  
   18.52  $(LIB_LOCATION)/$(CLIENT_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_CLIENT_PATH)/64/$(JVMDTRACE_NAME)
   18.53  	$(install-import-file)
   18.54 +	@$(call binary_file_verification,$@)
   18.55  
   18.56  $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/$(JVMDTRACE_NAME)
   18.57  	$(install-import-file)
   18.58 +	@$(call binary_file_verification,$@)
   18.59  
   18.60  $(LIB_LOCATION)/$(SERVER_LOCATION)/64/$(JVMDTRACE_NAME): $(HOTSPOT_SERVER_PATH)/64/$(JVMDTRACE_NAME)
   18.61  	$(install-import-file)
   18.62 +	@$(call binary_file_verification,$@)
   18.63  
   18.64  $(LIB_LOCATION)/$(SERVER_LOCATION)/$(JVM_NAME): $(HOTSPOT_SERVER_PATH)/$(JVM_NAME)
   18.65  	$(install-import-file)
   18.66 +	@$(call binary_file_verification,$@)
   18.67  
   18.68  $(LIB_LOCATION)/$(SERVER_LOCATION)/Xusage.txt : $(HOTSPOT_SERVER_PATH)/Xusage.txt
   18.69  	$(install-import-file)
    19.1 --- a/make/jdk_generic_profile.sh	Fri Jan 28 10:04:51 2011 -0800
    19.2 +++ b/make/jdk_generic_profile.sh	Wed Feb 02 09:39:31 2011 -0800
    19.3 @@ -50,7 +50,7 @@
    19.4  #
    19.5  # Assumes basic unix utilities are in the PATH already (uname, hostname, etc.).
    19.6  #
    19.7 -# On Windows, assumes PROCESSOR_IDENTIFIER, VS71COMNTOOLS,
    19.8 +# On Windows, assumes PROCESSOR_IDENTIFIER, VS100COMNTOOLS,
    19.9  #   SYSTEMROOT (or SystemRoot), COMPUTERNAME (or hostname works), and
   19.10  #   USERNAME is defined in the environment.
   19.11  #   This profile does not rely on using vcvars32.bat and 64bit Setup.bat.
   19.12 @@ -81,8 +81,7 @@
   19.13  #    Windows Only:
   19.14  #      ALT_UNIXCOMMAND_PATH
   19.15  #      ALT_DXSDK_PATH
   19.16 -#      ALT_MSVCRT_DLL_PATH
   19.17 -#      ALT_MSVCR71_DLL_PATH
   19.18 +#      ALT_MSVCRNN_DLL_PATH
   19.19  #
   19.20  #############################################################################
   19.21  #
   19.22 @@ -213,78 +212,17 @@
   19.23    # Compiler setup (nasty part)
   19.24    #   NOTE: You can use vcvars32.bat to set PATH, LIB, and INCLUDE.
   19.25    #   NOTE: CYGWIN has a link.exe too, make sure the compilers are first
   19.26 -  if [ "${windows_arch}" = i586 ] ; then
   19.27 -    # 32bit Windows compiler settings
   19.28 -    # VisualStudio .NET 2003 VC++ 7.1 (VS71COMNTOOLS should be defined)
   19.29 -    vs_root=$(${cygpath} "${VS71COMNTOOLS}/../..")
   19.30 -    # Fill in PATH, LIB, and INCLUDE (unset all others to make sure)
   19.31 -    vc7_root="${vs_root}/Vc7"
   19.32 -    compiler_path="${vc7_root}/bin"
   19.33 -    platform_sdk="${vc7_root}/PlatformSDK"
   19.34 -        
   19.35 -    # LIB and INCLUDE must use ; as a separator
   19.36 -    include4sdk="${vc7_root}/atlmfc/include"
   19.37 -    include4sdk="${include4sdk};${vc7_root}/include"
   19.38 -    include4sdk="${include4sdk};${platform_sdk}/include/prerelease"
   19.39 -    include4sdk="${include4sdk};${platform_sdk}/include"
   19.40 -    include4sdk="${include4sdk};${vs_root}/SDK/v1.1/include"
   19.41 -    lib4sdk="${lib4sdk};${vc7_root}/lib"
   19.42 -    lib4sdk="${lib4sdk};${platform_sdk}/lib/prerelease"
   19.43 -    lib4sdk="${lib4sdk};${platform_sdk}/lib"
   19.44 -    lib4sdk="${lib4sdk};${vs_root}/SDK/v1.1/lib"
   19.45 -    # Search path and DLL locating path
   19.46 -    #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
   19.47 -    path4sdk="${vs_root}/Common7/Tools/bin;${path4sdk}"
   19.48 -    path4sdk="${vs_root}/SDK/v1.1/bin;${path4sdk}"
   19.49 -    path4sdk="${vs_root}/Common7/Tools;${path4sdk}"
   19.50 -    path4sdk="${vs_root}/Common7/Tools/bin/prerelease;${path4sdk}"
   19.51 -    path4sdk="${vs_root}/Common7/IDE;${path4sdk}"
   19.52 -    path4sdk="${compiler_path};${path4sdk}"
   19.53 -  elif [ "${windows_arch}" = amd64 ] ; then
   19.54 -    # AMD64 64bit Windows compiler settings
   19.55 -    if [ "${ALT_DEPLOY_MSSDK}" != "" ] ; then
   19.56 -      platform_sdk=${ALT_DEPLOY_MSSDK}
   19.57 -    else
   19.58 -      platform_sdk=$(${cygpath} "C:/Program Files/Microsoft Platform SDK/")
   19.59 -    fi
   19.60 -    if [ "${ALT_COMPILER_PATH}" != "" ] ; then
   19.61 -      compiler_path=${ALT_COMPILER_PATH}
   19.62 -      if [ "${ALT_DEPLOY_MSSDK}" = "" ] ; then
   19.63 -        platform_sdk=${ALT_COMPILER_PATH}/../../../..
   19.64 -      fi
   19.65 -    else
   19.66 -      compiler_path="${platform_sdk}/Bin/win64/x86/AMD64"
   19.67 -    fi
   19.68 -    # LIB and INCLUDE must use ; as a separator
   19.69 -    include4sdk="${platform_sdk}/Include"
   19.70 -    include4sdk="${include4sdk};${platform_sdk}/Include/crt/sys"
   19.71 -    include4sdk="${include4sdk};${platform_sdk}/Include/mfc"
   19.72 -    include4sdk="${include4sdk};${platform_sdk}/Include/atl"
   19.73 -    include4sdk="${include4sdk};${platform_sdk}/Include/crt"
   19.74 -    lib4sdk="${platform_sdk}/Lib/AMD64"
   19.75 -    lib4sdk="${lib4sdk};${platform_sdk}/Lib/AMD64/atlmfc"
   19.76 -    # Search path and DLL locating path
   19.77 -    #   WARNING: CYGWIN has a link.exe too, make sure compilers are first
   19.78 -    path4sdk="${platform_sdk}/bin;${path4sdk}"
   19.79 -    path4sdk="${compiler_path};${path4sdk}"
   19.80 +
   19.81 +  # Use supplied vsvars.sh
   19.82 +  repo=`hg root`
   19.83 +  if [ -f "${repo}/make/scripts/vsvars.sh" ] ; then
   19.84 +    eval `sh ${repo}/make/scripts/vsvars.sh -v10`
   19.85 +  elif [ -f "${repo}/../make/scripts/vsvars.sh" ] ; then
   19.86 +    eval `sh ${repo}/../make/scripts/vsvars.sh -v10`
   19.87 +  else
   19.88 +    echo "WARNING: No make/scripts/vsvars.sh file found"
   19.89    fi
   19.90 -  # Export LIB and INCLUDE
   19.91 -  unset lib
   19.92 -  unset Lib
   19.93 -  LIB="${lib4sdk}"
   19.94 -  export LIB
   19.95 -  unset include
   19.96 -  unset Include
   19.97 -  INCLUDE="${include4sdk}"
   19.98 -  export INCLUDE
   19.99      
  19.100 -  # Turn all \\ into /, remove duplicates and trailing /
  19.101 -  slash_path="$(echo ${path4sdk} | sed -e 's@\\\\@/@g' -e 's@//@/@g' -e 's@/$@@' -e 's@/;@;@g')"
  19.102 -  path4sdk="${slash_path}"
  19.103 -   
  19.104 -  # Convert path4sdk to cygwin style
  19.105 -  path4sdk="$(/usr/bin/cygpath -p ${path4sdk})"
  19.106 -
  19.107  fi
  19.108  
  19.109  # Get the previous JDK to be used to bootstrap the build
    20.1 --- a/src/share/demo/jvmti/index.html	Fri Jan 28 10:04:51 2011 -0800
    20.2 +++ b/src/share/demo/jvmti/index.html	Wed Feb 02 09:39:31 2011 -0800
    20.3 @@ -389,10 +389,9 @@
    20.4  <li>
    20.5  MS DLL Runtime: Use the <code>/MD /D _STATIC_CPPLIB</code> option.
    20.6  <br>
    20.7 -This causes your dll to become dependent on MSVCRT.DLL and/or 
    20.8 -the newer C++ runtime MSVCR71.DLL.
    20.9 +This causes your dll to become dependent on just MSVCR*.DLL.
   20.10  The option /D _STATIC_CPPLIB prevents you from becoming dependent on the
   20.11 -C++ library MSVCP71.DLL.
   20.12 +C++ library MSVCP*.DLL.
   20.13  This is what we use in the JDK, but there are probably many combinations
   20.14  that you could safely use, unfortunately there are many combinations
   20.15  of runtimes that will not work.