--- old/hotspot/make/windows/makefiles/defs.make 2016-04-20 15:11:39.169808987 +0200 +++ /dev/null 2016-02-18 10:58:42.502130963 +0100 @@ -1,282 +0,0 @@ -# -# Copyright (c) 2006, 2015, Oracle and/or its affiliates. All rights reserved. -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# This code is free software; you can redistribute it and/or modify it -# under the terms of the GNU General Public License version 2 only, as -# published by the Free Software Foundation. -# -# This code is distributed in the hope that it will be useful, but WITHOUT -# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -# version 2 for more details (a copy is included in the LICENSE file that -# accompanied this code). -# -# You should have received a copy of the GNU General Public License version -# 2 along with this work; if not, write to the Free Software Foundation, -# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. -# -# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA -# or visit www.oracle.com if you need additional information or have any -# questions. -# -# - -# The common definitions for hotspot windows builds. -# Include the top level defs.make under make directory instead of this one. -# This file is included into make/defs.make. -# On windows it is only used to construct parameters for -# make/windows/build.make when make/Makefile is used to build VM. - -SLASH_JAVA ?= J: -PATH_SEP = ; - -MAKE_ARGS += WARNINGS_AS_ERRORS=$(WARNINGS_AS_ERRORS) - -# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name -ifeq ($(ARCH_DATA_MODEL),32) - ARCH_DATA_MODEL=32 - PLATFORM=windows-i586 - VM_PLATFORM=windows_i486 - HS_ARCH=x86 - MAKE_ARGS += ARCH=x86 - MAKE_ARGS += BUILDARCH=i486 - MAKE_ARGS += Platform_arch=x86 - MAKE_ARGS += Platform_arch_model=x86_32 -endif - -ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) x86),) - ARCH_DATA_MODEL=32 - PLATFORM=windows-i586 - VM_PLATFORM=windows_i486 - HS_ARCH=x86 - MAKE_ARGS += ARCH=x86 - MAKE_ARGS += BUILDARCH=i486 - MAKE_ARGS += Platform_arch=x86 - MAKE_ARGS += Platform_arch_model=x86_32 -endif - -ifneq ($(ARCH_DATA_MODEL),32) - ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) ia64),) - ARCH_DATA_MODEL=64 - PLATFORM=windows-ia64 - VM_PLATFORM=windows_ia64 - HS_ARCH=ia64 - MAKE_ARGS += LP64=1 - MAKE_ARGS += ARCH=ia64 - MAKE_ARGS += BUILDARCH=ia64 - MAKE_ARGS += Platform_arch=ia64 - MAKE_ARGS += Platform_arch_model=ia64 - endif - -# http://support.microsoft.com/kb/888731 : this can be either -# AMD64 for AMD, or EM64T for Intel chips. - ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) AMD64),) - ARCH_DATA_MODEL=64 - PLATFORM=windows-amd64 - VM_PLATFORM=windows_amd64 - HS_ARCH=x86 - MAKE_ARGS += LP64=1 - MAKE_ARGS += ARCH=x86 - MAKE_ARGS += BUILDARCH=amd64 - MAKE_ARGS += Platform_arch=x86 - MAKE_ARGS += Platform_arch_model=x86_64 - endif - -ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) EM64T),) - ARCH_DATA_MODEL=64 - PLATFORM=windows-amd64 - VM_PLATFORM=windows_amd64 - HS_ARCH=x86 - MAKE_ARGS += LP64=1 - MAKE_ARGS += ARCH=x86 - MAKE_ARGS += BUILDARCH=amd64 - MAKE_ARGS += Platform_arch=x86 - MAKE_ARGS += Platform_arch_model=x86_64 - endif - -# NB later OS versions than 2003 may report "Intel64" - ifneq ($(shell $(ECHO) $(PROCESSOR_IDENTIFIER) | $(GREP) Intel64),) - ARCH_DATA_MODEL=64 - PLATFORM=windows-amd64 - VM_PLATFORM=windows_amd64 - HS_ARCH=x86 - MAKE_ARGS += LP64=1 - MAKE_ARGS += ARCH=x86 - MAKE_ARGS += BUILDARCH=amd64 - MAKE_ARGS += Platform_arch=x86 - MAKE_ARGS += Platform_arch_model=x86_64 - endif -endif - -# Full Debug Symbols has been enabled on Windows since JDK1.4.1 so -# there is no need for an "earlier than JDK7 check". -# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product -# builds is enabled with debug info files ZIP'ed to save space. For -# BUILD_FLAVOR != product builds, FDS is always enabled, after all a -# debug build without debug info isn't very useful. -# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled. -# -# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be -# disabled for a BUILD_FLAVOR == product build. -# -# Note: Use of a different variable name for the FDS override option -# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS -# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass -# in options via environment variables, use of distinct variables -# prevents strange behaviours. For example, in a BUILD_FLAVOR != -# product build, the FULL_DEBUG_SYMBOLS environment variable will be -# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If -# the same variable name is used, then different values can be picked -# up by different parts of the build. Just to be clear, we only need -# two variable names because the incoming option value can be -# overridden in some situations, e.g., a BUILD_FLAVOR != product -# build. - -# Due to the multiple sub-make processes that occur this logic gets -# executed multiple times. We reduce the noise by at least checking that -# BUILD_FLAVOR has been set. -ifneq ($(BUILD_FLAVOR),) - ifeq ($(BUILD_FLAVOR), product) - FULL_DEBUG_SYMBOLS ?= 1 - ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) - else - # debug variants always get Full Debug Symbols (if available) - ENABLE_FULL_DEBUG_SYMBOLS = 1 - endif - _JUNK_ := $(shell \ - echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") - MAKE_ARGS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) - - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ZIP_DEBUGINFO_FILES ?= 1 - else - ZIP_DEBUGINFO_FILES=0 - endif - MAKE_ARGS += ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) -endif - -MAKE_ARGS += RM="$(RM)" -MAKE_ARGS += ZIPEXE=$(ZIPEXE) -MAKE_ARGS += CP="${CP}" -MAKE_ARGS += MV="${MV}" - - -# On 32 bit windows we build server and client, on 64 bit just server. -ifeq ($(JVM_VARIANTS),) - ifeq ($(ARCH_DATA_MODEL), 32) - JVM_VARIANTS:=client,server - JVM_VARIANT_CLIENT:=true - JVM_VARIANT_SERVER:=true - else - JVM_VARIANTS:=server - JVM_VARIANT_SERVER:=true - endif -endif - -JDK_INCLUDE_SUBDIR=win32 - -# Library suffix -LIBRARY_SUFFIX=dll - -# next parameters are defined in $(GAMMADIR)/make/defs.make. -MAKE_ARGS += VERSION_SHORT=$(VERSION_SHORT) -MAKE_ARGS += VERSION_MAJOR=$(VERSION_MAJOR) -MAKE_ARGS += VERSION_MINOR=$(VERSION_MINOR) -MAKE_ARGS += VERSION_SECURITY=$(VERSION_SECURITY) -MAKE_ARGS += VERSION_PATCH=$(VERSION_PATCH) -MAKE_ARGS += VERSION_BUILD=$(VERSION_BUILD) -MAKE_ARGS += DEBUG_LEVEL=$(DEBUG_LEVEL) - -# JDK_DOTVER and JDK_VER are needed in Windows RC files -COMMA:=, -MAKE_ARGS += JDK_DOTVER=$(VERSION_NUMBER_FOUR_POSITIONS) -MAKE_ARGS += JDK_VER=$(subst .,$(COMMA),$(VERSION_NUMBER_FOUR_POSITIONS)) - -NMAKE= MAKEFLAGS= MFLAGS= EXTRA_CFLAGS="$(EXTRA_CFLAGS)" nmake -NOLOGO -ifndef SYSTEM_UNAME - SYSTEM_UNAME := $(shell uname) - export SYSTEM_UNAME -endif - -# Check for CYGWIN -ifneq (,$(findstring CYGWIN,$(SYSTEM_UNAME))) - USING_CYGWIN=true -else - USING_CYGWIN=false -endif -# Check for MinGW -ifneq (,$(findstring MINGW,$(SYSTEM_UNAME))) - USING_MINGW=true -endif - -# Windows wants particular paths due to nmake (must be after macros defined) -# It is important that gnumake invokes nmake with C:\\...\\ formated -# strings so that nmake gets C:\...\ style strings. -# Check for CYGWIN -ifeq ($(USING_CYGWIN), true) - ABS_OUTPUTDIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(OUTPUTDIR)")) - ABS_BOOTDIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(BOOTDIR)")) - ABS_GAMMADIR := $(subst /,\\,$(shell /bin/cygpath -m -a "$(GAMMADIR)")) - ABS_OS_MAKEFILE := $(shell /bin/cygpath -m -a "$(HS_MAKE_DIR)/$(OSNAME)")/build.make -else ifeq ($(USING_MINGW), true) - ABS_OUTPUTDIR := $(shell $(CD) $(OUTPUTDIR);$(PWD)) - ABS_BOOTDIR := $(shell $(CD) $(BOOTDIR);$(PWD)) - ABS_GAMMADIR := $(shell $(CD) $(GAMMADIR);$(PWD)) - ABS_OS_MAKEFILE := $(shell $(CD) $(HS_MAKE_DIR)/$(OSNAME);$(PWD))/build.make - else - ABS_OUTPUTDIR := $(subst /,\\,$(shell $(CD) $(OUTPUTDIR);$(PWD))) - ABS_BOOTDIR := $(subst /,\\,$(shell $(CD) $(BOOTDIR);$(PWD))) - ABS_GAMMADIR := $(subst /,\\,$(shell $(CD) $(GAMMADIR);$(PWD))) - ABS_OS_MAKEFILE := $(subst /,\\,$(shell $(CD) $(HS_MAKE_DIR)/$(OSNAME);$(PWD))/build.make) -endif - -EXPORT_SERVER_DIR = $(EXPORT_BIN_DIR)/server -EXPORT_CLIENT_DIR = $(EXPORT_BIN_DIR)/client - -ifeq ($(JVM_VARIANT_SERVER),true) - EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt - EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.$(LIBRARY_SUFFIX) - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.diz - else - EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.pdb - EXPORT_LIST += $(EXPORT_SERVER_DIR)/jvm.map - endif - endif -endif -ifeq ($(JVM_VARIANT_CLIENT),true) - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.$(LIBRARY_SUFFIX) - ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) - ifeq ($(ZIP_DEBUGINFO_FILES),1) - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.diz - else - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.pdb - EXPORT_LIST += $(EXPORT_CLIENT_DIR)/jvm.map - endif - endif -endif - -EXPORT_LIST += $(EXPORT_LIB_DIR)/jvm.lib - -# Propagate compiler and tools paths from configure to nmake. -# Need to make sure they contain \\ and not /. -ifneq ($(SPEC),) - ifeq ($(USING_CYGWIN), true) - MAKE_ARGS += CXX="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(CXX)))" - MAKE_ARGS += LD="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(LD)))" - MAKE_ARGS += RC="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(RC)))" - MAKE_ARGS += MT="$(subst /,\\,$(shell /bin/cygpath -s -m -a $(MT)))" - else - MAKE_ARGS += CXX="$(subst /,\\,$(CXX))" - MAKE_ARGS += LD="$(subst /,\\,$(LD))" - MAKE_ARGS += RC="$(subst /,\\,$(RC))" - MAKE_ARGS += MT="$(subst /,\\,$(MT))" - endif -endif - -ifdef OPENJDK - MAKE_ARGS += OPENJDK="$(OPENJDK)" -endif