Mercurial > hg > truffle
annotate make/linux/makefiles/defs.make @ 14462:1e820011ee5f
8035392: cppInterpreter: fix message of NPE
Reviewed-by: kvn
Contributed-by: axel.siebenborn@sap.com
author | goetz |
---|---|
date | Thu, 20 Feb 2014 10:48:57 +0100 |
parents | faf0c78e906b |
children | 4ca6dc0799b6 56e7f5560e60 |
rev | line source |
---|---|
0 | 1 # |
9152 | 2 # Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved. |
0 | 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 # | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1015
diff
changeset
|
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1015
diff
changeset
|
20 # or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1015
diff
changeset
|
21 # questions. |
9152 | 22 # |
0 | 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 | |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
32 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
33 # ARCH can be set explicitly in spec.gmk |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
34 ifndef ARCH |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
35 ARCH := $(shell uname -m) |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
36 endif |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
37 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
38 PATH_SEP ?= : |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
39 |
0 | 40 ifeq ($(LP64), 1) |
41 ARCH_DATA_MODEL ?= 64 | |
42 else | |
43 ARCH_DATA_MODEL ?= 32 | |
44 endif | |
45 | |
1010 | 46 # zero |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
47 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
1010 | 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 | |
0 | 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 | |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
81 # amd64/x86_64 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
82 ifneq (,$(findstring $(ARCH), amd64 x86_64)) |
0 | 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 | |
9152 | 95 ARCH = i686 |
0 | 96 endif |
97 endif | |
98 | |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
99 # i686/i586 ie 32-bit x86 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
100 ifneq (,$(findstring $(ARCH), i686 i586)) |
0 | 101 ARCH_DATA_MODEL = 32 |
102 PLATFORM = linux-i586 | |
103 VM_PLATFORM = linux_i486 | |
104 HS_ARCH = x86 | |
105 endif | |
106 | |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
107 # ARM |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
108 ifeq ($(ARCH), arm) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
109 ARCH_DATA_MODEL = 32 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
110 PLATFORM = linux-arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
111 VM_PLATFORM = linux_arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
112 HS_ARCH = arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
113 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
114 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
115 # PPC |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
116 ifeq ($(ARCH), ppc) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
117 ARCH_DATA_MODEL = 32 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
118 PLATFORM = linux-ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
119 VM_PLATFORM = linux_ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
120 HS_ARCH = ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
121 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
122 |
14402
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
123 # PPC64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
124 ifeq ($(ARCH), ppc64) |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
125 ARCH_DATA_MODEL = 64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
126 MAKE_ARGS += LP64=1 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
127 PLATFORM = linux-ppc64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
128 VM_PLATFORM = linux_ppc64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
129 HS_ARCH = ppc |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
130 endif |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
131 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
132 # On 32 bit linux we build server and client, on 64 bit just server. |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
133 ifeq ($(JVM_VARIANTS),) |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
134 ifeq ($(ARCH_DATA_MODEL), 32) |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
135 JVM_VARIANTS:=client,server |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
136 JVM_VARIANT_CLIENT:=true |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
137 JVM_VARIANT_SERVER:=true |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
138 else |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
139 JVM_VARIANTS:=server |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
140 JVM_VARIANT_SERVER:=true |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
141 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
142 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
143 |
3954 | 144 # determine if HotSpot is being built in JDK6 or earlier version |
145 JDK6_OR_EARLIER=0 | |
146 ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1" | |
147 # if the longer variable names (newer build style) are set, then check those | |
148 ifeq "$(shell expr \( $(JDK_MAJOR_VERSION) = 1 \& $(JDK_MINOR_VERSION) \< 7 \))" "1" | |
149 JDK6_OR_EARLIER=1 | |
150 endif | |
151 else | |
152 # the longer variables aren't set so check the shorter variable names | |
153 ifeq "$(shell expr \( '$(JDK_MAJOR_VER)' = 1 \& '$(JDK_MINOR_VER)' \< 7 \))" "1" | |
154 JDK6_OR_EARLIER=1 | |
155 endif | |
156 endif | |
157 | |
158 ifeq ($(JDK6_OR_EARLIER),0) | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
159 # Full Debug Symbols is supported on JDK7 or newer. |
6021
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
160 # The Full Debug Symbols (FDS) default for BUILD_FLAVOR == product |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
161 # builds is enabled with debug info files ZIP'ed to save space. For |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
162 # BUILD_FLAVOR != product builds, FDS is always enabled, after all a |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
163 # debug build without debug info isn't very useful. |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
164 # The ZIP_DEBUGINFO_FILES option only has meaning when FDS is enabled. |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
165 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
166 # If you invoke a build with FULL_DEBUG_SYMBOLS=0, then FDS will be |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
167 # disabled for a BUILD_FLAVOR == product build. |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
168 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
169 # Note: Use of a different variable name for the FDS override option |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
170 # versus the FDS enabled check is intentional (FULL_DEBUG_SYMBOLS |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
171 # versus ENABLE_FULL_DEBUG_SYMBOLS). For auto build systems that pass |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
172 # in options via environment variables, use of distinct variables |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
173 # prevents strange behaviours. For example, in a BUILD_FLAVOR != |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
174 # product build, the FULL_DEBUG_SYMBOLS environment variable will be |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
175 # 0, but the ENABLE_FULL_DEBUG_SYMBOLS make variable will be 1. If |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
176 # the same variable name is used, then different values can be picked |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
177 # up by different parts of the build. Just to be clear, we only need |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
178 # two variable names because the incoming option value can be |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
179 # overridden in some situations, e.g., a BUILD_FLAVOR != product |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
180 # build. |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
181 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
182 # Due to the multiple sub-make processes that occur this logic gets |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
183 # executed multiple times. We reduce the noise by at least checking that |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
184 # BUILD_FLAVOR has been set. |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
185 ifneq ($(BUILD_FLAVOR),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
186 ifeq ($(BUILD_FLAVOR), product) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
187 FULL_DEBUG_SYMBOLS ?= 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
188 ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
189 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
190 # debug variants always get Full Debug Symbols (if available) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
191 ENABLE_FULL_DEBUG_SYMBOLS = 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
192 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
193 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
194 echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
195 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later |
3954 | 196 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
197 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
198 # Default OBJCOPY comes from GNU Binutils on Linux |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
199 ifeq ($(CROSS_COMPILE_ARCH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
200 DEF_OBJCOPY=/usr/bin/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
201 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
202 # Assume objcopy is part of the cross-compilation toolset |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
203 ifneq ($(ALT_COMPILER_PATH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
204 DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
205 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
206 endif |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
207 OBJCOPY=$(shell test -x $(DEF_OBJCOPY) && echo $(DEF_OBJCOPY)) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
208 ifneq ($(ALT_OBJCOPY),) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
209 _JUNK_ := $(shell echo >&2 "INFO: ALT_OBJCOPY=$(ALT_OBJCOPY)") |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
210 OBJCOPY=$(shell test -x $(ALT_OBJCOPY) && echo $(ALT_OBJCOPY)) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
211 endif |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
212 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
213 ifeq ($(OBJCOPY),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
214 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
215 echo >&2 "INFO: no objcopy cmd found so cannot create .debuginfo files. You may need to set ALT_OBJCOPY.") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
216 ENABLE_FULL_DEBUG_SYMBOLS=0 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
217 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
218 echo >&2 "INFO: ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS)") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
219 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
220 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
221 echo >&2 "INFO: $(OBJCOPY) cmd found so will create .debuginfo files.") |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
222 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
223 # Library stripping policies for .debuginfo configs: |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
224 # all_strip - strips everything from the library |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
225 # min_strip - strips most stuff from the library; leaves minimum symbols |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
226 # no_strip - does not strip the library at all |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
227 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
228 # Oracle security policy requires "all_strip". A waiver was granted on |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
229 # 2011.09.01 that permits using "min_strip" in the Java JDK and Java JRE. |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
230 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
231 # Currently, STRIP_POLICY is only used when Full Debug Symbols is enabled. |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
232 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
233 STRIP_POLICY ?= min_strip |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
234 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
235 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
236 echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
237 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
238 ZIP_DEBUGINFO_FILES ?= 1 |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
239 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
240 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
241 echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
242 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
243 endif # ENABLE_FULL_DEBUG_SYMBOLS=1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
244 endif # BUILD_FLAVOR |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
245 endif # JDK_6_OR_EARLIER |
3954 | 246 |
0 | 247 JDK_INCLUDE_SUBDIR=linux |
248 | |
3960 | 249 # Library suffix |
250 LIBRARY_SUFFIX=so | |
251 | |
0 | 252 EXPORT_LIST += $(EXPORT_DOCS_DIR)/platform/jvmti/jvmti.html |
1015
23862fc517bb
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
1010
diff
changeset
|
253 |
23862fc517bb
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
1010
diff
changeset
|
254 # client and server subdirectories have symbolic links to ../libjsig.so |
3960 | 255 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.$(LIBRARY_SUFFIX) |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
256 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
257 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
258 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.diz |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
259 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
260 EXPORT_LIST += $(EXPORT_JRE_LIB_ARCH_DIR)/libjsig.debuginfo |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
261 endif |
3954 | 262 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
263 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server |
3846 | 264 EXPORT_CLIENT_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/client |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
265 EXPORT_MINIMAL_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/minimal |
1015
23862fc517bb
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
1010
diff
changeset
|
266 |
14402
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
267 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK) $(JVM_VARIANT_CORE)), true) |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
268 EXPORT_LIST += $(EXPORT_SERVER_DIR)/Xusage.txt |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
269 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.$(LIBRARY_SUFFIX) |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
270 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
271 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
272 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
273 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
274 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
275 endif |
3954 | 276 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
277 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
278 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
279 ifeq ($(JVM_VARIANT_CLIENT),true) |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
280 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/Xusage.txt |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
281 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) |
6022 | 282 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
283 ifeq ($(ZIP_DEBUGINFO_FILES),1) | |
284 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz | |
285 else | |
286 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo | |
3954 | 287 endif |
9152 | 288 endif |
0 | 289 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
290 |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
291 ifeq ($(JVM_VARIANT_MINIMAL1),true) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
292 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
293 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
294 |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
295 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
296 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
297 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
298 else |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
299 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
300 endif |
9152 | 301 endif |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
302 endif |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
303 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
304 # Serviceability Binaries |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
305 # No SA Support for PPC, IA64, ARM or zero |
3960 | 306 ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 307 $(EXPORT_LIB_DIR)/sa-jdi.jar |
3960 | 308 ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 309 $(EXPORT_LIB_DIR)/sa-jdi.jar |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
310 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
311 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
312 ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
313 ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.diz |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
314 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
315 ADD_SA_BINARIES/x86 += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
316 ADD_SA_BINARIES/sparc += $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.debuginfo |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
317 endif |
3954 | 318 endif |
9152 | 319 ADD_SA_BINARIES/ppc = |
320 ADD_SA_BINARIES/ia64 = | |
321 ADD_SA_BINARIES/arm = | |
322 ADD_SA_BINARIES/zero = | |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
323 |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6022
diff
changeset
|
324 -include $(HS_ALT_MAKE)/linux/makefiles/defs.make |
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6022
diff
changeset
|
325 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
326 EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH)) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
327 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
328 |