Sun, 25 Sep 2011 16:03:29 -0700
7089790: integrate bsd-port changes
Reviewed-by: kvn, twisti, jrose
Contributed-by: Kurt Miller <kurt@intricatesoftware.com>, Greg Lewis <glewis@eyesbeyond.com>, Jung-uk Kim <jkim@freebsd.org>, Christos Zoulas <christos@zoulas.com>, Landon Fuller <landonf@plausible.coop>, The FreeBSD Foundation <board@freebsdfoundation.org>, Michael Franz <mvfranz@gmail.com>, Roger Hoover <rhoover@apple.com>, Alexander Strange <astrange@apple.com>
1 #
2 # Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 #
5 # This code is free software; you can redistribute it and/or modify it
6 # under the terms of the GNU General Public License version 2 only, as
7 # published by the Free Software Foundation.
8 #
9 # This code is distributed in the hope that it will be useful, but WITHOUT
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
12 # version 2 for more details (a copy is included in the LICENSE file that
13 # accompanied this code).
14 #
15 # You should have received a copy of the GNU General Public License version
16 # 2 along with this work; if not, write to the Free Software Foundation,
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 #
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 # or visit www.oracle.com if you need additional information or have any
21 # questions.
22 #
23 #
25 # The common definitions for hotspot linux builds.
26 # Include the top level defs.make under make directory instead of this one.
27 # This file is included into make/defs.make.
29 SLASH_JAVA ?= /java
31 # Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name
32 ARCH:=$(shell uname -m)
33 PATH_SEP = :
34 ifeq ($(LP64), 1)
35 ARCH_DATA_MODEL ?= 64
36 else
37 ARCH_DATA_MODEL ?= 32
38 endif
40 # zero
41 ifeq ($(ZERO_BUILD), true)
42 ifeq ($(ARCH_DATA_MODEL), 64)
43 MAKE_ARGS += LP64=1
44 endif
45 PLATFORM = linux-zero
46 VM_PLATFORM = linux_$(subst i386,i486,$(ZERO_LIBARCH))
47 HS_ARCH = zero
48 ARCH = zero
49 endif
51 # ia64
52 ifeq ($(ARCH), ia64)
53 ARCH_DATA_MODEL = 64
54 MAKE_ARGS += LP64=1
55 PLATFORM = linux-ia64
56 VM_PLATFORM = linux_ia64
57 HS_ARCH = ia64
58 endif
60 # sparc
61 ifeq ($(ARCH), sparc64)
62 ifeq ($(ARCH_DATA_MODEL), 64)
63 ARCH_DATA_MODEL = 64
64 MAKE_ARGS += LP64=1
65 PLATFORM = linux-sparcv9
66 VM_PLATFORM = linux_sparcv9
67 else
68 ARCH_DATA_MODEL = 32
69 PLATFORM = linux-sparc
70 VM_PLATFORM = linux_sparc
71 endif
72 HS_ARCH = sparc
73 endif
75 # x86_64
76 ifeq ($(ARCH), x86_64)
77 ifeq ($(ARCH_DATA_MODEL), 64)
78 ARCH_DATA_MODEL = 64
79 MAKE_ARGS += LP64=1
80 PLATFORM = linux-amd64
81 VM_PLATFORM = linux_amd64
82 HS_ARCH = x86
83 else
84 ARCH_DATA_MODEL = 32
85 PLATFORM = linux-i586
86 VM_PLATFORM = linux_i486
87 HS_ARCH = x86
88 # We have to reset ARCH to i686 since SRCARCH relies on it
89 ARCH = i686
90 endif
91 endif
93 # i686
94 ifeq ($(ARCH), i686)
95 ARCH_DATA_MODEL = 32
96 PLATFORM = linux-i586
97 VM_PLATFORM = linux_i486
98 HS_ARCH = x86
99 endif
101 # ARM
102 ifeq ($(ARCH), arm)
103 ARCH_DATA_MODEL = 32
104 PLATFORM = linux-arm
105 VM_PLATFORM = linux_arm
106 HS_ARCH = arm
107 endif
109 # PPC
110 ifeq ($(ARCH), ppc)
111 ARCH_DATA_MODEL = 32
112 PLATFORM = linux-ppc
113 VM_PLATFORM = linux_ppc
114 HS_ARCH = ppc
115 endif
117 JDK_INCLUDE_SUBDIR=linux
119 # Library suffix
120 LIBRARY_SUFFIX=so
122 # FIXUP: The subdirectory for a debug build is NOT the same on all platforms
123 VM_DEBUG=jvmg
125 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html
127 # client and server subdirectories have symbolic links to ../libjsig.so
128 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX)
129 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server
130 EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client
132 ifndef BUILD_CLIENT_ONLY
133 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt
134 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX)
135 endif
137 ifneq ($(ZERO_BUILD), true)
138 ifeq ($(ARCH_DATA_MODEL), 32)
139 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt
140 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX)
141 endif
142 endif
144 # Serviceability Binaries
145 # No SA Support for PPC, IA64, ARM or zero
146 ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
147 $(EXPORT_LIB_DIR)/sa-jdi.jar
148 ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \
149 $(EXPORT_LIB_DIR)/sa-jdi.jar
150 ADD_SA_BINARIES/ppc =
151 ADD_SA_BINARIES/ia64 =
152 ADD_SA_BINARIES/arm =
153 ADD_SA_BINARIES/zero =
155 EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH))