author | acorn |
Mon, 28 Jan 2013 10:55:30 -0500 | |
changeset 15439 | a72c53517fe7 |
parent 13975 | 2f7431485cfa |
child 15793 | 4867678e3517 |
permissions | -rw-r--r-- |
10565 | 1 |
# |
11629
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
2 |
# Copyright (c) 2006, 2012, Oracle and/or its affiliates. All rights reserved. |
10565 | 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 |
# |
|
24 |
||
25 |
# The common definitions for hotspot bsd builds. |
|
26 |
# Include the top level defs.make under make directory instead of this one. |
|
27 |
# This file is included into make/defs.make. |
|
28 |
||
29 |
SLASH_JAVA ?= /java |
|
30 |
||
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 |
|
39 |
||
40 |
# zero |
|
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
41 |
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
10565 | 42 |
ifeq ($(ARCH_DATA_MODEL), 64) |
43 |
MAKE_ARGS += LP64=1 |
|
44 |
endif |
|
45 |
PLATFORM = bsd-zero |
|
46 |
VM_PLATFORM = bsd_$(subst i386,i486,$(ZERO_LIBARCH)) |
|
47 |
HS_ARCH = zero |
|
48 |
ARCH = zero |
|
49 |
endif |
|
50 |
||
51 |
# ia64 |
|
52 |
ifeq ($(ARCH), ia64) |
|
53 |
ARCH_DATA_MODEL = 64 |
|
54 |
MAKE_ARGS += LP64=1 |
|
55 |
PLATFORM = bsd-ia64 |
|
56 |
VM_PLATFORM = bsd_ia64 |
|
57 |
HS_ARCH = ia64 |
|
58 |
endif |
|
59 |
||
60 |
# sparc |
|
61 |
ifeq ($(ARCH), sparc64) |
|
62 |
ifeq ($(ARCH_DATA_MODEL), 64) |
|
63 |
ARCH_DATA_MODEL = 64 |
|
64 |
MAKE_ARGS += LP64=1 |
|
65 |
PLATFORM = bsd-sparcv9 |
|
66 |
VM_PLATFORM = bsd_sparcv9 |
|
67 |
else |
|
68 |
ARCH_DATA_MODEL = 32 |
|
69 |
PLATFORM = bsd-sparc |
|
70 |
VM_PLATFORM = bsd_sparc |
|
71 |
endif |
|
72 |
HS_ARCH = sparc |
|
73 |
endif |
|
74 |
||
75 |
# amd64 |
|
76 |
ifneq (,$(findstring $(ARCH), amd64 x86_64)) |
|
77 |
ifeq ($(ARCH_DATA_MODEL), 64) |
|
78 |
ARCH_DATA_MODEL = 64 |
|
79 |
MAKE_ARGS += LP64=1 |
|
80 |
PLATFORM = bsd-amd64 |
|
81 |
VM_PLATFORM = bsd_amd64 |
|
82 |
HS_ARCH = x86 |
|
83 |
else |
|
84 |
ARCH_DATA_MODEL = 32 |
|
85 |
PLATFORM = bsd-i586 |
|
86 |
VM_PLATFORM = bsd_i486 |
|
87 |
HS_ARCH = x86 |
|
88 |
# We have to reset ARCH to i386 since SRCARCH relies on it |
|
89 |
ARCH = i386 |
|
90 |
endif |
|
91 |
endif |
|
92 |
||
93 |
# i386 |
|
94 |
ifeq ($(ARCH), i386) |
|
95 |
ifeq ($(ARCH_DATA_MODEL), 64) |
|
96 |
ARCH_DATA_MODEL = 64 |
|
97 |
MAKE_ARGS += LP64=1 |
|
98 |
PLATFORM = bsd-amd64 |
|
99 |
VM_PLATFORM = bsd_amd64 |
|
100 |
HS_ARCH = x86 |
|
101 |
# We have to reset ARCH to amd64 since SRCARCH relies on it |
|
102 |
ARCH = amd64 |
|
103 |
else |
|
104 |
ARCH_DATA_MODEL = 32 |
|
105 |
PLATFORM = bsd-i586 |
|
106 |
VM_PLATFORM = bsd_i486 |
|
107 |
HS_ARCH = x86 |
|
108 |
endif |
|
109 |
endif |
|
110 |
||
111 |
# ARM |
|
112 |
ifeq ($(ARCH), arm) |
|
113 |
ARCH_DATA_MODEL = 32 |
|
114 |
PLATFORM = bsd-arm |
|
115 |
VM_PLATFORM = bsd_arm |
|
116 |
HS_ARCH = arm |
|
117 |
endif |
|
118 |
||
119 |
# PPC |
|
120 |
ifeq ($(ARCH), ppc) |
|
121 |
ARCH_DATA_MODEL = 32 |
|
122 |
PLATFORM = bsd-ppc |
|
123 |
VM_PLATFORM = bsd_ppc |
|
124 |
HS_ARCH = ppc |
|
125 |
endif |
|
126 |
||
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
127 |
# On 32 bit bsd we build server and client, on 64 bit just server. |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
128 |
ifeq ($(JVM_VARIANTS),) |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
129 |
ifeq ($(ARCH_DATA_MODEL), 32) |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
130 |
JVM_VARIANTS:=client,server |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
131 |
JVM_VARIANT_CLIENT:=true |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
132 |
JVM_VARIANT_SERVER:=true |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
133 |
else |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
134 |
JVM_VARIANTS:=server |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
135 |
JVM_VARIANT_SERVER:=true |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
136 |
endif |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
137 |
endif |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
138 |
|
10565 | 139 |
JDK_INCLUDE_SUBDIR=bsd |
140 |
||
141 |
# Library suffix |
|
142 |
OS_VENDOR:=$(shell uname -s) |
|
143 |
ifeq ($(OS_VENDOR),Darwin) |
|
144 |
LIBRARY_SUFFIX=dylib |
|
145 |
else |
|
146 |
LIBRARY_SUFFIX=so |
|
147 |
endif |
|
148 |
||
149 |
# FIXUP: The subdirectory for a debug build is NOT the same on all platforms |
|
150 |
VM_DEBUG=jvmg |
|
151 |
||
152 |
EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html |
|
153 |
||
154 |
# client and server subdirectories have symbolic links to ../libjsig.so |
|
155 |
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) |
|
156 |
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server |
|
11593 | 157 |
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client |
13975
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
158 |
EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal |
10565 | 159 |
|
12095 | 160 |
EXPORT_LIST += $(EXPORT_JRE_LIB_DIR)/wb.jar |
161 |
||
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
162 |
ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
163 |
EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
164 |
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) |
10565 | 165 |
endif |
166 |
||
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
167 |
ifeq ($(JVM_VARIANT_CLIENT),true) |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
168 |
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
169 |
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) |
10565 | 170 |
endif |
171 |
||
13975
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
172 |
ifeq ($(JVM_VARIANT_MINIMAL1),true) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
173 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
174 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
175 |
|
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
176 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
177 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
178 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
179 |
else |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
180 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
181 |
endif |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
182 |
endif |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
183 |
endif |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
12156
diff
changeset
|
184 |
|
10565 | 185 |
# Serviceability Binaries |
186 |
# No SA Support for PPC, IA64, ARM or zero |
|
187 |
ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
|
188 |
$(EXPORT_LIB_DIR)/sa-jdi.jar |
|
189 |
ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
|
190 |
$(EXPORT_LIB_DIR)/sa-jdi.jar |
|
10739 | 191 |
ADD_SA_BINARIES/universal = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
192 |
$(EXPORT_LIB_DIR)/sa-jdi.jar |
|
10565 | 193 |
ADD_SA_BINARIES/ppc = |
194 |
ADD_SA_BINARIES/ia64 = |
|
195 |
ADD_SA_BINARIES/arm = |
|
196 |
ADD_SA_BINARIES/zero = |
|
197 |
||
198 |
EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH)) |
|
10739 | 199 |
|
11629
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
200 |
# Universal build settings |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
201 |
ifeq ($(OS_VENDOR), Darwin) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
202 |
# Build universal binaries by default on Mac OS X |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
203 |
MACOSX_UNIVERSAL = true |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
204 |
ifneq ($(ALT_MACOSX_UNIVERSAL),) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
205 |
MACOSX_UNIVERSAL = $(ALT_MACOSX_UNIVERSAL) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
206 |
endif |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
207 |
MAKE_ARGS += MACOSX_UNIVERSAL=$(MACOSX_UNIVERSAL) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
208 |
|
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
209 |
# Universal settings |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
210 |
ifeq ($(MACOSX_UNIVERSAL), true) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
211 |
|
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
212 |
# Set universal export path but avoid using ARCH or PLATFORM subdirs |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
213 |
EXPORT_PATH=$(OUTPUTDIR)/export-universal$(EXPORT_SUBDIR) |
11649
04e30cc559a9
7142616: MAC: Honor ALT_EXPORT_PATH overrides from JDK control builds
phh
parents:
11629
diff
changeset
|
214 |
ifneq ($(ALT_EXPORT_PATH),) |
04e30cc559a9
7142616: MAC: Honor ALT_EXPORT_PATH overrides from JDK control builds
phh
parents:
11629
diff
changeset
|
215 |
EXPORT_PATH=$(ALT_EXPORT_PATH) |
04e30cc559a9
7142616: MAC: Honor ALT_EXPORT_PATH overrides from JDK control builds
phh
parents:
11629
diff
changeset
|
216 |
endif |
10739 | 217 |
|
11629
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
218 |
# Set universal image dir |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
219 |
JDK_IMAGE_DIR=$(OUTPUTDIR)/jdk-universal$(EXPORT_SUBDIR) |
11784
715f58266a42
7143766: add ALT_JDK_IMAGE_DIR and improve test_jdk
twisti
parents:
11649
diff
changeset
|
220 |
ifneq ($(ALT_JDK_IMAGE_DIR),) |
715f58266a42
7143766: add ALT_JDK_IMAGE_DIR and improve test_jdk
twisti
parents:
11649
diff
changeset
|
221 |
JDK_IMAGE_DIR=$(ALT_JDK_IMAGE_DIR) |
715f58266a42
7143766: add ALT_JDK_IMAGE_DIR and improve test_jdk
twisti
parents:
11649
diff
changeset
|
222 |
endif |
11629
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
223 |
|
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
224 |
# Binaries to 'universalize' if built |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
225 |
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libjsig.$(LIBRARY_SUFFIX) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
226 |
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/libsaproc.$(LIBRARY_SUFFIX) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
227 |
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/server/libjvm.$(LIBRARY_SUFFIX) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
228 |
UNIVERSAL_LIPO_LIST += $(EXPORT_JRE_LIB_DIR)/client/libjvm.$(LIBRARY_SUFFIX) |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
229 |
|
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
230 |
# Files to simply copy in place |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
231 |
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/server/Xusage.txt |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
232 |
UNIVERSAL_COPY_LIST += $(EXPORT_JRE_LIB_DIR)/client/Xusage.txt |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
233 |
|
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
234 |
endif |
72a73185bdc7
7123386: RFE: Preserve universal builds of HotSpot on Mac OS X
phh
parents:
11593
diff
changeset
|
235 |
endif |