1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/common/autoconf/hotspot-spec.gmk.in Wed Apr 27 01:39:08 2016 +0800 1.3 @@ -0,0 +1,137 @@ 1.4 +# 1.5 +# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved. 1.6 +# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.7 +# 1.8 +# This code is free software; you can redistribute it and/or modify it 1.9 +# under the terms of the GNU General Public License version 2 only, as 1.10 +# published by the Free Software Foundation. Oracle designates this 1.11 +# particular file as subject to the "Classpath" exception as provided 1.12 +# by Oracle in the LICENSE file that accompanied this code. 1.13 +# 1.14 +# This code is distributed in the hope that it will be useful, but WITHOUT 1.15 +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 1.16 +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 1.17 +# version 2 for more details (a copy is included in the LICENSE file that 1.18 +# accompanied this code). 1.19 +# 1.20 +# You should have received a copy of the GNU General Public License version 1.21 +# 2 along with this work; if not, write to the Free Software Foundation, 1.22 +# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 1.23 +# 1.24 +# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 1.25 +# or visit www.oracle.com if you need additional information or have any 1.26 +# questions. 1.27 +# 1.28 + 1.29 + 1.30 +# Chaining of spec files 1.31 +HOTSPOT_SPEC:=$(dir $(SPEC))hotspot-spec.gmk 1.32 +override SPEC=$(HOTSPOT_SPEC) 1.33 +# Now include the base spec.gmk file 1.34 +include $(BASE_SPEC) 1.35 + 1.36 +# Additional legacy variables defined for Hotspot 1.37 + 1.38 +@SET_OPENJDK@ 1.39 + 1.40 +# Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options. 1.41 +@BUILD_HEADLESS@ 1.42 + 1.43 +# Legacy setting: OPT or DBG 1.44 +VARIANT:=@VARIANT@ 1.45 +# Legacy setting: true or false 1.46 +FASTDEBUG:=@FASTDEBUG@ 1.47 +# Legacy setting: debugging the class files? 1.48 +DEBUG_CLASSFILES:=@DEBUG_CLASSFILES@ 1.49 + 1.50 +ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@)) 1.51 + 1.52 +# The HOSTCC/HOSTCXX is Hotspot terminology for the BUILD_CC/BUILD_CXX, i.e. the 1.53 +# compiler that produces code that can be run on the build platform. 1.54 +HOSTCC:=@FIXPATH@ @BUILD_CC@ 1.55 +HOSTCXX:=@FIXPATH@ @BUILD_CXX@ 1.56 + 1.57 +#################################################### 1.58 +# 1.59 +# Legacy Hotspot support 1.60 + 1.61 +# If cross compiling, then define CROSS_COMPILE_ARCH:=cpu_name here. 1.62 +@DEFINE_CROSS_COMPILE_ARCH@ 1.63 + 1.64 +# Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc) 1.65 +PLATFORM=$(OPENJDK_TARGET_OS) 1.66 +# 32 or 64 bit 1.67 +ARCH_DATA_MODEL=$(OPENJDK_TARGET_CPU_BITS) 1.68 + 1.69 +ALT_BOOTDIR=$(BOOT_JDK) 1.70 +# Can be /sparcv9 or /amd64 on Solaris 1.71 +ISA_DIR=$(OPENJDK_TARGET_CPU_ISADIR) 1.72 +# Yet another name for arch used for an extra subdir below the jvm lib. 1.73 +# Uses i386 and amd64, instead of x86 and x86_64. 1.74 +LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB) 1.75 +# Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of x86 and x86_64. 1.76 +ARCH=$(OPENJDK_TARGET_CPU_LEGACY) 1.77 +# Legacy setting for building for a 64 bit machine. 1.78 +# If yes then this expands to _LP64:=1 1.79 +@LP64@ 1.80 + 1.81 +# Legacy settings for zero 1.82 +ZERO_ENDIANNESS=$(OPENJDK_TARGET_CPU_ENDIAN) 1.83 +ZERO_LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB) 1.84 +ZERO_ARCHDEF=@ZERO_ARCHDEF@ 1.85 +ZERO_ARCHFLAG=@ZERO_ARCHFLAG@ 1.86 +LIBFFI_CFLAGS=@LIBFFI_CFLAGS@ 1.87 +LIBFFI_LIBS=@LIBFFI_LIBS@ 1.88 + 1.89 +# Legacy settings for zeroshark 1.90 +LLVM_CFLAGS=@LLVM_CFLAGS@ 1.91 +LLVM_LIBS=@LLVM_LIBS@ 1.92 +LLVM_LDFLAGS=@LLVM_LDFLAGS@ 1.93 + 1.94 +ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR) 1.95 +ALT_EXPORT_PATH=$(HOTSPOT_DIST) 1.96 + 1.97 +JVM_INTERPRETER:=@JVM_INTERPRETER@ 1.98 +ifeq ($(JVM_INTERPRETER), cpp) 1.99 + CC_INTERP=true 1.100 +endif 1.101 + 1.102 +HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@ @STATIC_CXX_SETTING@ 1.103 +# This is used from the libjvm build for C/C++ code. 1.104 +HOTSPOT_BUILD_JOBS:=$(JOBS) 1.105 +# Control wether Hotspot runs Queens test after building 1.106 +TEST_IN_BUILD=@TEST_IN_BUILD@ 1.107 + 1.108 +# For hotspot, override compiler/tools definition to not include FIXPATH prefix. 1.109 +# Hotspot has its own handling on the Windows path situation. 1.110 +CXX:=@CCACHE@ @HOTSPOT_CXX@ 1.111 +LD:=@HOTSPOT_LD@ 1.112 +MT:=@HOTSPOT_MT@ 1.113 +RC:=@HOTSPOT_RC@ 1.114 + 1.115 +EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ 1.116 +EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@ 1.117 +EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@ 1.118 + 1.119 +USE_PRECOMPILED_HEADER=@USE_PRECOMPILED_HEADER@ 1.120 + 1.121 +# Hotspot expects the variable FULL_DEBUG_SYMBOLS=1/0 to control debug symbols 1.122 +# creation. 1.123 +ifeq ($(ENABLE_DEBUG_SYMBOLS), true) 1.124 + FULL_DEBUG_SYMBOLS=1 1.125 + # Ensure hotspot uses the objcopy that configure located 1.126 + ALT_OBJCOPY:=$(OBJCOPY) 1.127 +else 1.128 + FULL_DEBUG_SYMBOLS=0 1.129 +endif 1.130 + 1.131 +# Hotspot expects the variable ZIP_DEBUGINFO_FILES=1/0 and not true/false. 1.132 +ifeq ($(ZIP_DEBUGINFO_FILES)$(ENABLE_DEBUG_SYMBOLS), truetrue) 1.133 + ZIP_DEBUGINFO_FILES:=1 1.134 +else 1.135 + ZIP_DEBUGINFO_FILES:=0 1.136 +endif 1.137 + 1.138 +# Sneak this in via the spec.gmk file, since we don't want to mess around too much with the Hotspot make files. 1.139 +# This is needed to get the LOG setting to work properly. 1.140 +include $(SRC_ROOT)/make/common/MakeBase.gmk