author | lana |
Mon, 27 Jan 2014 21:01:55 -0800 | |
changeset 22412 | 81bb5f538220 |
parent 17006 | b9bfa72b7dda |
child 22818 | 34cd99df9940 |
permissions | -rw-r--r-- |
1 | 1 |
# |
17006 | 2 |
# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. |
1 | 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 |
# |
|
5547
f4b087cbb361
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
4018
diff
changeset
|
19 |
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
f4b087cbb361
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
4018
diff
changeset
|
20 |
# or visit www.oracle.com if you need additional information or have any |
f4b087cbb361
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
4018
diff
changeset
|
21 |
# questions. |
17006 | 22 |
# |
1 | 23 |
# |
24 |
||
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. |
|
28 |
||
29 |
SLASH_JAVA ?= /java |
|
30 |
||
31 |
# Need PLATFORM (os-arch combo names) for jdk and hotspot, plus libarch name |
|
13875
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
32 |
|
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
33 |
# ARCH can be set explicitly in spec.gmk |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
34 |
ifndef ARCH |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
35 |
ARCH := $(shell uname -m) |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
36 |
endif |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
37 |
|
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
38 |
PATH_SEP ?= : |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
39 |
|
1 | 40 |
ifeq ($(LP64), 1) |
41 |
ARCH_DATA_MODEL ?= 64 |
|
42 |
else |
|
43 |
ARCH_DATA_MODEL ?= 32 |
|
44 |
endif |
|
45 |
||
4013 | 46 |
# zero |
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
47 |
ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
4013 | 48 |
ifeq ($(ARCH_DATA_MODEL), 64) |
49 |
MAKE_ARGS += LP64=1 |
|
50 |
endif |
|
51 |
PLATFORM = linux-zero |
|
52 |
VM_PLATFORM = linux_$(subst i386,i486,$(ZERO_LIBARCH)) |
|
53 |
HS_ARCH = zero |
|
54 |
ARCH = zero |
|
55 |
endif |
|
56 |
||
1 | 57 |
# ia64 |
58 |
ifeq ($(ARCH), ia64) |
|
59 |
ARCH_DATA_MODEL = 64 |
|
60 |
MAKE_ARGS += LP64=1 |
|
61 |
PLATFORM = linux-ia64 |
|
62 |
VM_PLATFORM = linux_ia64 |
|
63 |
HS_ARCH = ia64 |
|
64 |
endif |
|
65 |
||
66 |
# sparc |
|
67 |
ifeq ($(ARCH), sparc64) |
|
68 |
ifeq ($(ARCH_DATA_MODEL), 64) |
|
69 |
ARCH_DATA_MODEL = 64 |
|
70 |
MAKE_ARGS += LP64=1 |
|
71 |
PLATFORM = linux-sparcv9 |
|
72 |
VM_PLATFORM = linux_sparcv9 |
|
73 |
else |
|
74 |
ARCH_DATA_MODEL = 32 |
|
75 |
PLATFORM = linux-sparc |
|
76 |
VM_PLATFORM = linux_sparc |
|
77 |
endif |
|
78 |
HS_ARCH = sparc |
|
79 |
endif |
|
80 |
||
13875
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
81 |
# amd64/x86_64 |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
82 |
ifneq (,$(findstring $(ARCH), amd64 x86_64)) |
1 | 83 |
ifeq ($(ARCH_DATA_MODEL), 64) |
84 |
ARCH_DATA_MODEL = 64 |
|
85 |
MAKE_ARGS += LP64=1 |
|
86 |
PLATFORM = linux-amd64 |
|
87 |
VM_PLATFORM = linux_amd64 |
|
88 |
HS_ARCH = x86 |
|
89 |
else |
|
90 |
ARCH_DATA_MODEL = 32 |
|
91 |
PLATFORM = linux-i586 |
|
92 |
VM_PLATFORM = linux_i486 |
|
93 |
HS_ARCH = x86 |
|
94 |
# We have to reset ARCH to i686 since SRCARCH relies on it |
|
17006 | 95 |
ARCH = i686 |
1 | 96 |
endif |
97 |
endif |
|
98 |
||
13875
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
99 |
# i686/i586 ie 32-bit x86 |
bb683b4a79ac
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
13529
diff
changeset
|
100 |
ifneq (,$(findstring $(ARCH), i686 i586)) |
1 | 101 |
ARCH_DATA_MODEL = 32 |
102 |
PLATFORM = linux-i586 |
|
103 |
VM_PLATFORM = linux_i486 |
|
104 |
HS_ARCH = x86 |
|
105 |
endif |
|
106 |
||
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
107 |
# ARM |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
108 |
ifeq ($(ARCH), arm) |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
109 |
ARCH_DATA_MODEL = 32 |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
110 |
PLATFORM = linux-arm |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
111 |
VM_PLATFORM = linux_arm |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
112 |
HS_ARCH = arm |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
113 |
endif |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
114 |
|
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
115 |
# PPC |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
116 |
ifeq ($(ARCH), ppc) |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
117 |
ARCH_DATA_MODEL = 32 |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
118 |
PLATFORM = linux-ppc |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
119 |
VM_PLATFORM = linux_ppc |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
120 |
HS_ARCH = ppc |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
121 |
endif |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
122 |
|
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
123 |
# On 32 bit linux 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
|
124 |
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
|
125 |
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
|
126 |
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
|
127 |
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
|
128 |
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
|
129 |
else |
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:=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_SERVER:=true |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
132 |
endif |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
133 |
endif |
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
134 |
|
10559 | 135 |
# determine if HotSpot is being built in JDK6 or earlier version |
136 |
JDK6_OR_EARLIER=0 |
|
137 |
ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1" |
|
138 |
# if the longer variable names (newer build style) are set, then check those |
|
139 |
ifeq "$(shell expr \( $(JDK_MAJOR_VERSION) = 1 \& $(JDK_MINOR_VERSION) \< 7 \))" "1" |
|
140 |
JDK6_OR_EARLIER=1 |
|
141 |
endif |
|
142 |
else |
|
143 |
# the longer variables aren't set so check the shorter variable names |
|
144 |
ifeq "$(shell expr \( '$(JDK_MAJOR_VER)' = 1 \& '$(JDK_MINOR_VER)' \< 7 \))" "1" |
|
145 |
JDK6_OR_EARLIER=1 |
|
146 |
endif |
|
147 |
endif |
|
148 |
||
149 |
ifeq ($(JDK6_OR_EARLIER),0) |
|
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
150 |
# Full Debug Symbols is supported on JDK7 or newer. |
12502
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
151 |
# The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
152 |
# builds is enabled with debug info files ZIP'ed to save space. For |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
153 |
# BUILD_FLAVOR != product builds, FDS is always enabled, after all a |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
154 |
# debug build without debug info isn't very useful. |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
155 |
# The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled. |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
156 |
# |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
157 |
# If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
158 |
# disabled for a BUILD_FLAVOR == product build. |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
159 |
# |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
160 |
# Note: Use of a different variable name for the FDS override option |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
161 |
# versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
162 |
# versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
163 |
# in options via environment variables, use of distinct variables |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
164 |
# prevents strange behaviours. For example, in a BUILD_FLAVOR != |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
165 |
# product build, the FULL_DEBUG_SYMBOLS environment variable will be |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
166 |
# 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
167 |
# the same variable name is used, then different values can be picked |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
168 |
# up by different parts of the build. Just to be clear, we only need |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
169 |
# two variable names because the incoming option value can be |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
170 |
# overridden in some situations, e.g., a BUILD_FLAVOR != product |
a37189400e0d
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
12501
diff
changeset
|
171 |
# build. |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
172 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
173 |
# Due to the multiple sub-make processes that occur this logic gets |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
174 |
# executed multiple times. We reduce the noise by at least checking that |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
175 |
# BUILD_FLAVOR has been set. |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
176 |
ifneq ($(BUILD_FLAVOR),) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
177 |
ifeq ($(BUILD_FLAVOR), product) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
178 |
FULL_DEBUG_SYMBOLS ?= 1 |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
179 |
ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
180 |
else |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
181 |
# debug variants always get Full Debug Symbols (if available) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
182 |
ENABLE_FULL_DEBUG_SYMBOLS = 1 |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
183 |
endif |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
184 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
185 |
echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
186 |
# since objcopy is optional, we set ZIP_DEBUGINFO_FILES later |
10559 | 187 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
188 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
189 |
# Default OBJCOPY comes from GNU Binutils on Linux |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
190 |
ifeq ($(CROSS_COMPILE_ARCH),) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
191 |
DEF_OBJCOPY=/usr/bin/objcopy |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
192 |
else |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
193 |
# Assume objcopy is part of the cross-compilation toolset |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
194 |
ifneq ($(ALT_COMPILER_PATH),) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
195 |
DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
196 |
endif |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
197 |
endif |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
198 |
OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
199 |
ifneq ($(ALT_OBJCOPY),) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
200 |
_JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)") |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
201 |
OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
202 |
endif |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
203 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
204 |
ifeq ($(OBJCOPY),) |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
205 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
206 |
echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.") |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
207 |
ENABLE_FULL_DEBUG_SYMBOLS=0 |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
208 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
209 |
echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
210 |
else |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
211 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
212 |
echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.") |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
213 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
214 |
# Library stripping policies for .debuginfo configs: |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
215 |
# all_strip - strips everything from the library |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
216 |
# min_strip - strips most stuff from the library; leaves minimum symbols |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
217 |
# no_strip - does not strip the library at all |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
218 |
# |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
219 |
# Oracle security policy requires "all_strip". A waiver was granted on |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
220 |
# 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
221 |
# |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
222 |
# Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled. |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
223 |
# |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
224 |
STRIP_POLICY ?= min_strip |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
225 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
226 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
227 |
echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
228 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
229 |
ZIP_DEBUGINFO_FILES ?= 1 |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
230 |
|
14383
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
231 |
_JUNK_ := $(shell \ |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
232 |
echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)") |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
233 |
endif |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
234 |
endif # ENABLE_FULL_DEBUG_SYMBOLS=1 |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
235 |
endif # BUILD_FLAVOR |
f31aacbd0f36
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
13975
diff
changeset
|
236 |
endif # JDK_6_OR_EARLIER |
10559 | 237 |
|
1 | 238 |
JDK_INCLUDE_SUBDIR=linux |
239 |
||
10565 | 240 |
# Library suffix |
241 |
LIBRARY_SUFFIX=so |
|
242 |
||
1 | 243 |
EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html |
4018
a73b8aa8e89d
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
4013
diff
changeset
|
244 |
|
a73b8aa8e89d
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
4013
diff
changeset
|
245 |
# client and server subdirectories have symbolic links to ../libjsig.so |
10565 | 246 |
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
247 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
248 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
249 |
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
250 |
else |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
251 |
EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
252 |
endif |
10559 | 253 |
endif |
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
254 |
EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server |
10259 | 255 |
EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client |
13975
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
256 |
EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal |
4018
a73b8aa8e89d
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
4013
diff
changeset
|
257 |
|
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
258 |
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
|
259 |
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
|
260 |
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
261 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
262 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
263 |
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
264 |
else |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
265 |
EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
266 |
endif |
10559 | 267 |
endif |
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
268 |
endif |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
269 |
|
12156
fb31de03f649
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
12095
diff
changeset
|
270 |
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
|
271 |
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
|
272 |
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) |
12503 | 273 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
274 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
|
275 |
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz |
|
276 |
else |
|
277 |
EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo |
|
10559 | 278 |
endif |
17006 | 279 |
endif |
1 | 280 |
endif |
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
281 |
|
13975
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
282 |
ifeq ($(JVM_VARIANT_MINIMAL1),true) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
283 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
284 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
285 |
|
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
286 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
287 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
288 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
289 |
else |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
290 |
EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
291 |
endif |
17006 | 292 |
endif |
13975
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
293 |
endif |
2f7431485cfa
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
13875
diff
changeset
|
294 |
|
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
295 |
# Serviceability Binaries |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
296 |
# No SA Support for PPC, IA64, ARM or zero |
10565 | 297 |
ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
17006 | 298 |
$(EXPORT_LIB_DIR)/sa-jdi.jar |
10565 | 299 |
ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
17006 | 300 |
$(EXPORT_LIB_DIR)/sa-jdi.jar |
12501
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
301 |
ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
302 |
ifeq ($(ZIP_DEBUGINFO_FILES),1) |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
303 |
ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
304 |
ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
305 |
else |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
306 |
ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
307 |
ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo |
ea7feae692ae
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
10571
diff
changeset
|
308 |
endif |
10559 | 309 |
endif |
17006 | 310 |
ADD_SA_BINARIES/ppc = |
311 |
ADD_SA_BINARIES/ia64 = |
|
312 |
ADD_SA_BINARIES/arm = |
|
313 |
ADD_SA_BINARIES/zero = |
|
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
314 |
|
13529
dc25e69fd16d
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
12503
diff
changeset
|
315 |
-include $(HS_ALT_MAKE)/linux/makefiles/defs.make |
dc25e69fd16d
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
12503
diff
changeset
|
316 |
|
6176
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
317 |
EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH)) |
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
318 |
|
4d9030fe341f
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
5547
diff
changeset
|
319 |