defs.make revision 3617
2796N/A#
3150N/A# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved.
2796N/A# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
2796N/A#
2796N/A# This code is free software; you can redistribute it and/or modify it
2796N/A# under the terms of the GNU General Public License version 2 only, as
2796N/A# published by the Free Software Foundation.
2796N/A#
2796N/A# This code is distributed in the hope that it will be useful, but WITHOUT
2796N/A# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
2796N/A# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
2796N/A# version 2 for more details (a copy is included in the LICENSE file that
2796N/A# accompanied this code).
2796N/A#
2796N/A# You should have received a copy of the GNU General Public License version
2796N/A# 2 along with this work; if not, write to the Free Software Foundation,
2796N/A# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
2796N/A#
2796N/A# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
2796N/A# or visit www.oracle.com if you need additional information or have any
2796N/A# questions.
2796N/A#
2796N/A#
2796N/A
2796N/A# The common definitions for hotspot bsd builds.
2796N/A# Include the top level defs.make under make directory instead of this one.
2796N/A# This file is included into make/defs.make.
2796N/A
2796N/ASLASH_JAVA ?= /java
2796N/A
2796N/A# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
2796N/AARCH:=$(shell uname -m)
2796N/APATH_SEP = :
2796N/Aifeq ($(LP64), 1)
2796N/A ARCH_DATA_MODEL ?= 64
2796N/Aelse
2796N/A ARCH_DATA_MODEL ?= 32
2796N/Aendif
2796N/A
2796N/A# zero
3617N/Aifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
2796N/A ifeq ($(ARCH_DATA_MODEL), 64)
2796N/A MAKE_ARGS += LP64=1
2796N/A endif
2796N/A PLATFORM = bsd-zero
2796N/A VM_PLATFORM = bsd_$(subst i386,i486,$(ZERO_LIBARCH))
2796N/A HS_ARCH = zero
2796N/A ARCH = zero
2796N/Aendif
2796N/A
2796N/A# ia64
2796N/Aifeq ($(ARCH), ia64)
2796N/A ARCH_DATA_MODEL = 64
2796N/A MAKE_ARGS += LP64=1
2796N/A PLATFORM = bsd-ia64
2796N/A VM_PLATFORM = bsd_ia64
2796N/A HS_ARCH = ia64
2796N/Aendif
2796N/A
2796N/A# sparc
2796N/Aifeq ($(ARCH), sparc64)
2796N/A ifeq ($(ARCH_DATA_MODEL), 64)
2796N/A ARCH_DATA_MODEL = 64
2796N/A MAKE_ARGS += LP64=1
2796N/A PLATFORM = bsd-sparcv9
2796N/A VM_PLATFORM = bsd_sparcv9
2796N/A else
2796N/A ARCH_DATA_MODEL = 32
2796N/A PLATFORM = bsd-sparc
2796N/A VM_PLATFORM = bsd_sparc
2796N/A endif
2796N/A HS_ARCH = sparc
2796N/Aendif
2796N/A
2796N/A# amd64
2796N/Aifneq (,$(findstring $(ARCH), amd64 x86_64))
2796N/A ifeq ($(ARCH_DATA_MODEL), 64)
2796N/A ARCH_DATA_MODEL = 64
2796N/A MAKE_ARGS += LP64=1
2796N/A PLATFORM = bsd-amd64
2796N/A VM_PLATFORM = bsd_amd64
2796N/A HS_ARCH = x86
2796N/A else
2796N/A ARCH_DATA_MODEL = 32
2796N/A PLATFORM = bsd-i586
2796N/A VM_PLATFORM = bsd_i486
2796N/A HS_ARCH = x86
2796N/A # We have to reset ARCH to i386 since SRCARCH relies on it
2796N/A ARCH = i386
2796N/A endif
2796N/Aendif
2796N/A
2796N/A# i386
2796N/Aifeq ($(ARCH), i386)
2796N/A ifeq ($(ARCH_DATA_MODEL), 64)
2796N/A ARCH_DATA_MODEL = 64
2796N/A MAKE_ARGS += LP64=1
2796N/A PLATFORM = bsd-amd64
2796N/A VM_PLATFORM = bsd_amd64
2796N/A HS_ARCH = x86
2796N/A # We have to reset ARCH to amd64 since SRCARCH relies on it
2796N/A ARCH = amd64
2796N/A else
2796N/A ARCH_DATA_MODEL = 32
2796N/A PLATFORM = bsd-i586
2796N/A VM_PLATFORM = bsd_i486
2796N/A HS_ARCH = x86
2796N/A endif
2796N/Aendif
2796N/A
2796N/A# ARM
2796N/Aifeq ($(ARCH), arm)
2796N/A ARCH_DATA_MODEL = 32
2796N/A PLATFORM = bsd-arm
2796N/A VM_PLATFORM = bsd_arm
2796N/A HS_ARCH = arm
2796N/Aendif
2796N/A
2796N/A# PPC
2796N/Aifeq ($(ARCH), ppc)
2796N/A ARCH_DATA_MODEL = 32
2796N/A PLATFORM = bsd-ppc
2796N/A VM_PLATFORM = bsd_ppc
2796N/A HS_ARCH = ppc
2796N/Aendif
2796N/A
3617N/A# On 32 bit bsd we build server and client, on 64 bit just server.
3617N/Aifeq ($(JVM_VARIANTS),)
3617N/A ifeq ($(ARCH_DATA_MODEL), 32)
3617N/A JVM_VARIANTS:=client,server
3617N/A JVM_VARIANT_CLIENT:=true
3617N/A JVM_VARIANT_SERVER:=true
3617N/A else
3617N/A JVM_VARIANTS:=server
3617N/A JVM_VARIANT_SERVER:=true
3617N/A endif
3617N/Aendif
3617N/A
2796N/AJDK_INCLUDE_SUBDIR=bsd
2796N/A
2796N/A# Library suffix
2796N/AOS_VENDOR:=$(shell uname -s)
2796N/Aifeq ($(OS_VENDOR),Darwin)
2796N/A LIBRARY_SUFFIX=dylib
2796N/Aelse
2796N/A LIBRARY_SUFFIX=so
2796N/Aendif
2796N/A
2796N/A# FIXUP: The subdirectory for a debug build is NOT the same on all platforms
2796N/AVM_DEBUG=jvmg
2796N/A
2796N/AEXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
2796N/A
2796N/A# client and server subdirectories have symbolic links to ../libjsig.so
2796N/AEXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
2796N/AEXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
3129N/AEXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
2796N/A
3586N/AEXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/wb.jar
3586N/A
3617N/Aifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
3617N/A EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
3617N/A EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
2796N/Aendif
2796N/A
3617N/Aifeq ($(JVM_VARIANT_CLIENT),true)
3617N/A EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
3617N/A EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
2796N/Aendif
2796N/A
2796N/A# Serviceability Binaries
2796N/A# No SA Support for PPC, IA64, ARM or zero
2796N/AADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
2796N/A $(EXPORT_LIB_DIR)/sa-jdi.jar
2796N/AADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
2796N/A $(EXPORT_LIB_DIR)/sa-jdi.jar
2842N/AADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
2842N/A $(EXPORT_LIB_DIR)/sa-jdi.jar
2796N/AADD_SA_BINARIES/ppc =
2796N/AADD_SA_BINARIES/ia64 =
2796N/AADD_SA_BINARIES/arm =
2796N/AADD_SA_BINARIES/zero =
2796N/A
2796N/AEXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH))
2842N/A
3150N/A# Universal build settings
3150N/Aifeq ($(OS_VENDOR), Darwin)
3150N/A # Build universal binaries by default on Mac OS X
3150N/A MACOSX_UNIVERSAL = true
3150N/A ifneq ($(ALT_MACOSX_UNIVERSAL),)
3150N/A MACOSX_UNIVERSAL = $(ALT_MACOSX_UNIVERSAL)
3150N/A endif
3150N/A MAKE_ARGS += MACOSX_UNIVERSAL=$(MACOSX_UNIVERSAL)
3150N/A
3150N/A # Universal settings
3150N/A ifeq ($(MACOSX_UNIVERSAL), true)
3150N/A
3150N/A # Set universal export path but avoid using ARCH or PLATFORM subdirs
3150N/A EXPORT_PATH=$(OUTPUTDIR)/export-universal$(EXPORT_SUBDIR)
3170N/A ifneq ($(ALT_EXPORT_PATH),)
3170N/A EXPORT_PATH=$(ALT_EXPORT_PATH)
3170N/A endif
2842N/A
3150N/A # Set universal image dir
3150N/A JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-universal$(EXPORT_SUBDIR)
3229N/A ifneq ($(ALT_JDK_IMAGE_DIR),)
3229N/A JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR)
3229N/A endif
3150N/A
3150N/A # Binaries to 'universalize' if built
3150N/A UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX)
3150N/A UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX)
3150N/A UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX)
3150N/A UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX)
3150N/A
3150N/A # Files to simply copy in place
3150N/A UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt
3150N/A UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt
3150N/A
3150N/A endif
3150N/Aendif