| # |
| # Copyright (c) 2011, 2013, 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. Oracle designates this |
| # particular file as subject to the "Classpath" exception as provided |
| # by Oracle in the LICENSE file that accompanied this code. |
| # |
| # 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. |
| # |
| |
| |
| # Chaining of spec files |
| HOTSPOT_SPEC:=$(dir $(SPEC))hotspot-spec.gmk |
| override SPEC=$(HOTSPOT_SPEC) |
| # Now include the base spec.gmk file |
| include $(BASE_SPEC) |
| |
| # Additional legacy variables defined for Hotspot |
| |
| @SET_OPENJDK@ |
| |
| # Legacy defines controlled by the SUPPORT_HEADLESS and SUPPORT_HEADFUL options. |
| @BUILD_HEADLESS@ |
| |
| # Legacy setting: OPT or DBG |
| VARIANT:=@VARIANT@ |
| # Legacy setting: true or false |
| FASTDEBUG:=@FASTDEBUG@ |
| # Legacy setting: debugging the class files? |
| DEBUG_CLASSFILES:=@DEBUG_CLASSFILES@ |
| |
| ALT_CUPS_HEADERS_PATH:=$(patsubst -I%,%,$(filter -I%,@CUPS_CFLAGS@)) |
| |
| # The HOSTCC/HOSTCXX is Hotspot terminology for the BUILD_CC/BUILD_CXX, i.e. the |
| # compiler that produces code that can be run on the build platform. |
| HOSTCC:=@FIXPATH@ @BUILD_CC@ |
| HOSTCXX:=@FIXPATH@ @BUILD_CXX@ |
| |
| #################################################### |
| # |
| # Legacy Hotspot support |
| |
| # If cross compiling, then define CROSS_COMPILE_ARCH:=cpu_name here. |
| @DEFINE_CROSS_COMPILE_ARCH@ |
| |
| # Old name for OPENJDK_TARGET_OS (aix,bsd,hpux,linux,macosx,solaris,windows etc) |
| PLATFORM=$(OPENJDK_TARGET_OS) |
| # 32 or 64 bit |
| ARCH_DATA_MODEL=$(OPENJDK_TARGET_CPU_BITS) |
| |
| ALT_BOOTDIR=$(BOOT_JDK) |
| # Can be /sparcv9 or /amd64 on Solaris |
| ISA_DIR=$(OPENJDK_TARGET_CPU_ISADIR) |
| # Yet another name for arch used for an extra subdir below the jvm lib. |
| # Uses i386 and amd64, instead of x86 and x86_64. |
| LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB) |
| # Old name for OPENJDK_TARGET_CPU, uses i586 and amd64, instead of x86 and x86_64. |
| ARCH=$(OPENJDK_TARGET_CPU_LEGACY) |
| # Legacy setting for building for a 64 bit machine. |
| # If yes then this expands to _LP64:=1 |
| @LP64@ |
| |
| # Legacy settings for zero |
| ZERO_ENDIANNESS=$(OPENJDK_TARGET_CPU_ENDIAN) |
| ZERO_LIBARCH=$(OPENJDK_TARGET_CPU_LEGACY_LIB) |
| ZERO_ARCHDEF=@ZERO_ARCHDEF@ |
| ZERO_ARCHFLAG=@ZERO_ARCHFLAG@ |
| LIBFFI_CFLAGS=@LIBFFI_CFLAGS@ |
| LIBFFI_LIBS=@LIBFFI_LIBS@ |
| |
| # Legacy settings for zeroshark |
| LLVM_CFLAGS=@LLVM_CFLAGS@ |
| LLVM_LIBS=@LLVM_LIBS@ |
| LLVM_LDFLAGS=@LLVM_LDFLAGS@ |
| |
| ALT_OUTPUTDIR=$(HOTSPOT_OUTPUTDIR) |
| ALT_EXPORT_PATH=$(HOTSPOT_DIST) |
| |
| JVM_INTERPRETER:=@JVM_INTERPRETER@ |
| ifeq ($(JVM_INTERPRETER), cpp) |
| CC_INTERP=true |
| endif |
| |
| HOTSPOT_MAKE_ARGS:=@HOTSPOT_MAKE_ARGS@ @STATIC_CXX_SETTING@ |
| # This is used from the libjvm build for C/C++ code. |
| HOTSPOT_BUILD_JOBS:=$(JOBS) |
| # Control wether Hotspot runs Queens test after building |
| TEST_IN_BUILD=@TEST_IN_BUILD@ |
| |
| USE_CLANG := @USE_CLANG@ |
| |
| # For hotspot, override compiler/tools definition to not include FIXPATH prefix. |
| # Hotspot has its own handling on the Windows path situation. |
| CXX:=@CCACHE@ @HOTSPOT_CXX@ |
| LD:=@HOTSPOT_LD@ |
| MT:=@HOTSPOT_MT@ |
| RC:=@HOTSPOT_RC@ |
| |
| EXTRA_CFLAGS=@LEGACY_EXTRA_CFLAGS@ |
| EXTRA_CXXFLAGS=@LEGACY_EXTRA_CXXFLAGS@ |
| EXTRA_LDFLAGS=@LEGACY_EXTRA_LDFLAGS@ |
| |
| USE_PRECOMPILED_HEADER=@USE_PRECOMPILED_HEADER@ |
| |
| # Hotspot expects the variable FULL_DEBUG_SYMBOLS=1/0 to control debug symbols |
| # creation. |
| ifeq ($(ENABLE_DEBUG_SYMBOLS), true) |
| FULL_DEBUG_SYMBOLS=1 |
| # Ensure hotspot uses the objcopy that configure located |
| ALT_OBJCOPY:=$(OBJCOPY) |
| else |
| FULL_DEBUG_SYMBOLS=0 |
| endif |
| |
| # Hotspot expects the variable ZIP_DEBUGINFO_FILES=1/0 and not true/false. |
| ifeq ($(ZIP_DEBUGINFO_FILES)$(ENABLE_DEBUG_SYMBOLS), truetrue) |
| ZIP_DEBUGINFO_FILES:=1 |
| else |
| ZIP_DEBUGINFO_FILES:=0 |
| endif |
| |
| # Sneak this in via the spec.gmk file, since we don't want to mess around too much with the Hotspot make files. |
| # This is needed to get the LOG setting to work properly. |
| include $(SRC_ROOT)/make/common/MakeBase.gmk |