Mercurial > hg > truffle
annotate make/linux/makefiles/defs.make @ 20272:e635a728f9da
8047819: G1 HeapRegionDCTOC does not need to inherit ContiguousSpaceDCTOC
Reviewed-by: stefank, tschatzl
author | mgerdin |
---|---|
date | Wed, 25 Jun 2014 10:55:10 +0200 |
parents | 56e7f5560e60 |
children | 52b4284cb496 |
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) |
17830
56e7f5560e60
8036767: PPC64: Support for little endian execution model
kvn
parents:
14402
diff
changeset
|
36 # Fold little endian PowerPC64 into big-endian (if ARCH is set in |
56e7f5560e60
8036767: PPC64: Support for little endian execution model
kvn
parents:
14402
diff
changeset
|
37 # hotspot-spec.gmk, this will be done by the configure script). |
56e7f5560e60
8036767: PPC64: Support for little endian execution model
kvn
parents:
14402
diff
changeset
|
38 ifeq ($(ARCH),ppc64le) |
56e7f5560e60
8036767: PPC64: Support for little endian execution model
kvn
parents:
14402
diff
changeset
|
39 ARCH := ppc64 |
56e7f5560e60
8036767: PPC64: Support for little endian execution model
kvn
parents:
14402
diff
changeset
|
40 endif |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
41 endif |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
42 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
43 PATH_SEP ?= : |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
44 |
0 | 45 ifeq ($(LP64), 1) |
46 ARCH_DATA_MODEL ?= 64 | |
47 else | |
48 ARCH_DATA_MODEL ?= 32 | |
49 endif | |
50 | |
1010 | 51 # zero |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
52 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
1010 | 53 ifeq ($(ARCH_DATA_MODEL), 64) |
54 MAKE_ARGS += LP64=1 | |
55 endif | |
56 PLATFORM = linux-zero | |
57 VM_PLATFORM = linux_$(subst i386,i486,$(ZERO_LIBARCH)) | |
58 HS_ARCH = zero | |
59 ARCH = zero | |
60 endif | |
61 | |
0 | 62 # ia64 |
63 ifeq ($(ARCH), ia64) | |
64 ARCH_DATA_MODEL = 64 | |
65 MAKE_ARGS += LP64=1 | |
66 PLATFORM = linux-ia64 | |
67 VM_PLATFORM = linux_ia64 | |
68 HS_ARCH = ia64 | |
69 endif | |
70 | |
71 # sparc | |
72 ifeq ($(ARCH), sparc64) | |
73 ifeq ($(ARCH_DATA_MODEL), 64) | |
74 ARCH_DATA_MODEL = 64 | |
75 MAKE_ARGS += LP64=1 | |
76 PLATFORM = linux-sparcv9 | |
77 VM_PLATFORM = linux_sparcv9 | |
78 else | |
79 ARCH_DATA_MODEL = 32 | |
80 PLATFORM = linux-sparc | |
81 VM_PLATFORM = linux_sparc | |
82 endif | |
83 HS_ARCH = sparc | |
84 endif | |
85 | |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
86 # amd64/x86_64 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
87 ifneq (,$(findstring $(ARCH), amd64 x86_64)) |
0 | 88 ifeq ($(ARCH_DATA_MODEL), 64) |
89 ARCH_DATA_MODEL = 64 | |
90 MAKE_ARGS += LP64=1 | |
91 PLATFORM = linux-amd64 | |
92 VM_PLATFORM = linux_amd64 | |
93 HS_ARCH = x86 | |
94 else | |
95 ARCH_DATA_MODEL = 32 | |
96 PLATFORM = linux-i586 | |
97 VM_PLATFORM = linux_i486 | |
98 HS_ARCH = x86 | |
99 # We have to reset ARCH to i686 since SRCARCH relies on it | |
9152 | 100 ARCH = i686 |
0 | 101 endif |
102 endif | |
103 | |
6784
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
104 # i686/i586 ie 32-bit x86 |
45535ab90688
7200065: Cross-compilation changes to support the new-build
dholmes
parents:
6641
diff
changeset
|
105 ifneq (,$(findstring $(ARCH), i686 i586)) |
0 | 106 ARCH_DATA_MODEL = 32 |
107 PLATFORM = linux-i586 | |
108 VM_PLATFORM = linux_i486 | |
109 HS_ARCH = x86 | |
110 endif | |
111 | |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
112 # ARM |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
113 ifeq ($(ARCH), arm) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
114 ARCH_DATA_MODEL = 32 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
115 PLATFORM = linux-arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
116 VM_PLATFORM = linux_arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
117 HS_ARCH = arm |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
118 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
119 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
120 # PPC |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
121 ifeq ($(ARCH), ppc) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
122 ARCH_DATA_MODEL = 32 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
123 PLATFORM = linux-ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
124 VM_PLATFORM = linux_ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
125 HS_ARCH = ppc |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
126 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
127 |
14402
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
128 # PPC64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
129 ifeq ($(ARCH), ppc64) |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
130 ARCH_DATA_MODEL = 64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
131 MAKE_ARGS += LP64=1 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
132 PLATFORM = linux-ppc64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
133 VM_PLATFORM = linux_ppc64 |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
134 HS_ARCH = ppc |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
135 endif |
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
136 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
137 # 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
|
138 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
|
139 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
|
140 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
|
141 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
|
142 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
|
143 else |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
144 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
|
145 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
|
146 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
147 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
148 |
3954 | 149 # determine if HotSpot is being built in JDK6 or earlier version |
150 JDK6_OR_EARLIER=0 | |
151 ifeq "$(shell expr \( '$(JDK_MAJOR_VERSION)' != '' \& '$(JDK_MINOR_VERSION)' != '' \& '$(JDK_MICRO_VERSION)' != '' \))" "1" | |
152 # if the longer variable names (newer build style) are set, then check those | |
153 ifeq "$(shell expr \( $(JDK_MAJOR_VERSION) = 1 \& $(JDK_MINOR_VERSION) \< 7 \))" "1" | |
154 JDK6_OR_EARLIER=1 | |
155 endif | |
156 else | |
157 # the longer variables aren't set so check the shorter variable names | |
158 ifeq "$(shell expr \( '$(JDK_MAJOR_VER)' = 1 \& '$(JDK_MINOR_VER)' \< 7 \))" "1" | |
159 JDK6_OR_EARLIER=1 | |
160 endif | |
161 endif | |
162 | |
163 ifeq ($(JDK6_OR_EARLIER),0) | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
164 # 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
|
165 # 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
|
166 # 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
|
167 # 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
|
168 # 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
|
169 # 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
|
170 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
171 # 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
|
172 # 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
|
173 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
174 # 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
|
175 # 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
|
176 # 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
|
177 # 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
|
178 # 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
|
179 # 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
|
180 # 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
|
181 # 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
|
182 # 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
|
183 # 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
|
184 # 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
|
185 # build. |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
186 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
187 # 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
|
188 # 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
|
189 # BUILD_FLAVOR has been set. |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
190 ifneq ($(BUILD_FLAVOR),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
191 ifeq ($(BUILD_FLAVOR), product) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
192 FULL_DEBUG_SYMBOLS ?= 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
193 ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
194 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
195 # debug variants always get Full Debug Symbols (if available) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
196 ENABLE_FULL_DEBUG_SYMBOLS = 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
197 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
198 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
199 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
|
200 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later |
3954 | 201 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
202 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
203 # Default OBJCOPY comes from GNU Binutils on Linux |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
204 ifeq ($(CROSS_COMPILE_ARCH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
205 DEF_OBJCOPY=/usr/bin/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
206 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
207 # Assume objcopy is part of the cross-compilation toolset |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
208 ifneq ($(ALT_COMPILER_PATH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
209 DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
210 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
211 endif |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
212 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
|
213 ifneq ($(ALT_OBJCOPY),) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
214 _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
|
215 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
|
216 endif |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
217 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
218 ifeq ($(OBJCOPY),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
219 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
220 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
|
221 ENABLE_FULL_DEBUG_SYMBOLS=0 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
222 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
223 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
|
224 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
225 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
226 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
|
227 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
228 # Library stripping policies for .debuginfo configs: |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
229 # all_strip - strips everything from the library |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
230 # 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
|
231 # no_strip - does not strip the library at all |
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 # 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
|
234 # 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
|
235 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
236 # 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
|
237 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
238 STRIP_POLICY ?= min_strip |
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: STRIP_POLICY=$(STRIP_POLICY)") |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
242 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
243 ZIP_DEBUGINFO_FILES ?= 1 |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
244 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
245 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
246 echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
247 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
248 endif # ENABLE_FULL_DEBUG_SYMBOLS=1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
249 endif # BUILD_FLAVOR |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
250 endif # JDK_6_OR_EARLIER |
3954 | 251 |
0 | 252 JDK_INCLUDE_SUBDIR=linux |
253 | |
3960 | 254 # Library suffix |
255 LIBRARY_SUFFIX=so | |
256 | |
0 | 257 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
|
258 |
23862fc517bb
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
1010
diff
changeset
|
259 # client and server subdirectories have symbolic links to ../libjsig.so |
3960 | 260 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
|
261 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
262 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
263 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
|
264 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
265 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
|
266 endif |
3954 | 267 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
268 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server |
3846 | 269 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
|
270 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
|
271 |
14402
faf0c78e906b
8019922: PPC64 (part 8): Implement Linux/PPC64 support in HotSpot makefiles
simonis
parents:
9152
diff
changeset
|
272 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
|
273 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
|
274 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
|
275 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
276 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
277 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.diz |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
278 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
279 EXPORT_LIST += $(EXPORT_SERVER_DIR)/libjvm.debuginfo |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
280 endif |
3954 | 281 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
282 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
283 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
284 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
|
285 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
|
286 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) |
6022 | 287 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
288 ifeq ($(ZIP_DEBUGINFO_FILES),1) | |
289 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.diz | |
290 else | |
291 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.debuginfo | |
3954 | 292 endif |
9152 | 293 endif |
0 | 294 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
295 |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
296 ifeq ($(JVM_VARIANT_MINIMAL1),true) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
297 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
298 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
299 |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
300 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
301 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
302 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
303 else |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
304 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
305 endif |
9152 | 306 endif |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
307 endif |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
308 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
309 # Serviceability Binaries |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
310 # No SA Support for PPC, IA64, ARM or zero |
3960 | 311 ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 312 $(EXPORT_LIB_DIR)/sa-jdi.jar |
3960 | 313 ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 314 $(EXPORT_LIB_DIR)/sa-jdi.jar |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
315 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
316 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
317 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
|
318 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
|
319 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
320 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
|
321 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
|
322 endif |
3954 | 323 endif |
9152 | 324 ADD_SA_BINARIES/ppc = |
325 ADD_SA_BINARIES/ia64 = | |
326 ADD_SA_BINARIES/arm = | |
327 ADD_SA_BINARIES/zero = | |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
328 |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6022
diff
changeset
|
329 -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
|
330 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
331 EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH)) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
332 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
333 |