Mercurial > hg > truffle
annotate make/linux/makefiles/defs.make @ 17716:cdb71841f4bc
6498581: ThreadInterruptTest3 produces wrong output on Windows
Summary: There is race condition between os::interrupt and os::is_interrupted on Windows. In JVM_Sleep(Thread.sleep), check if thread gets interrupted, it may see interrupted but not really interrupted so cause spurious waking up (early return from sleep). Fix by checking if interrupt event really gets set thus prevent false return. For intrinsic of _isInterrupted, on Windows, go fastpath only on bit not set.
Reviewed-by: acorn, kvn
Contributed-by: david.holmes@oracle.com, yumin.qi@oracle.com
author | minqi |
---|---|
date | Wed, 26 Feb 2014 15:20:41 -0800 |
parents | f36e073d56a4 |
children | faf0c78e906b |
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 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
123 # 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
|
124 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
|
125 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
|
126 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
|
127 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
|
128 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
|
129 else |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
130 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
|
131 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
|
132 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
133 endif |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
134 |
3954 | 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) | |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
150 # 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
|
151 # 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
|
152 # 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
|
153 # 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
|
154 # 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
|
155 # 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
|
156 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
157 # 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
|
158 # 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
|
159 # |
744728c16316
7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents:
6020
diff
changeset
|
160 # 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
|
161 # 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
|
162 # 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
|
163 # 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
|
164 # 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
|
165 # 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
|
166 # 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
|
167 # 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
|
168 # 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
|
169 # 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
|
170 # 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
|
171 # build. |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
172 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
173 # 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
|
174 # 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
|
175 # BUILD_FLAVOR has been set. |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
176 ifneq ($(BUILD_FLAVOR),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
177 ifeq ($(BUILD_FLAVOR), product) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
178 FULL_DEBUG_SYMBOLS ?= 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
179 ENABLE_FULL_DEBUG_SYMBOLS = $(FULL_DEBUG_SYMBOLS) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
180 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
181 # debug variants always get Full Debug Symbols (if available) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
182 ENABLE_FULL_DEBUG_SYMBOLS = 1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
183 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
184 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
185 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
|
186 # since objcopy is optional, we set ZIP_DEBUGINFO_FILES later |
3954 | 187 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
188 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
189 # Default OBJCOPY comes from GNU Binutils on Linux |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
190 ifeq ($(CROSS_COMPILE_ARCH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
191 DEF_OBJCOPY=/usr/bin/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
192 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
193 # Assume objcopy is part of the cross-compilation toolset |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
194 ifneq ($(ALT_COMPILER_PATH),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
195 DEF_OBJCOPY=$(ALT_COMPILER_PATH)/objcopy |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
196 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
197 endif |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
198 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
|
199 ifneq ($(ALT_OBJCOPY),) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
200 _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
|
201 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
|
202 endif |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
203 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
204 ifeq ($(OBJCOPY),) |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
205 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
206 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
|
207 ENABLE_FULL_DEBUG_SYMBOLS=0 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
208 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
209 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
|
210 else |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
211 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
212 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
|
213 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
214 # Library stripping policies for .debuginfo configs: |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
215 # all_strip - strips everything from the library |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
216 # 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
|
217 # no_strip - does not strip the library at all |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
218 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
219 # 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
|
220 # 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
|
221 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
222 # 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
|
223 # |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
224 STRIP_POLICY ?= min_strip |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
225 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
226 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
227 echo >&2 "INFO: STRIP_POLICY=$(STRIP_POLICY)") |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
228 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
229 ZIP_DEBUGINFO_FILES ?= 1 |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
230 |
6932
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
231 _JUNK_ := $(shell \ |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
232 echo >&2 "INFO: ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES)") |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
233 endif |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
234 endif # ENABLE_FULL_DEBUG_SYMBOLS=1 |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
235 endif # BUILD_FLAVOR |
857f3ce858dd
8002034: Allow Full Debug Symbols when cross-compiling
dholmes
parents:
6854
diff
changeset
|
236 endif # JDK_6_OR_EARLIER |
3954 | 237 |
0 | 238 JDK_INCLUDE_SUBDIR=linux |
239 | |
3960 | 240 # Library suffix |
241 LIBRARY_SUFFIX=so | |
242 | |
0 | 243 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
|
244 |
23862fc517bb
6722084: JPRT make file doesn't create required symbolic link to libjvm.so
kvn
parents:
1010
diff
changeset
|
245 # client and server subdirectories have symbolic links to ../libjsig.so |
3960 | 246 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
|
247 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
248 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
249 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
|
250 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
251 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
|
252 endif |
3954 | 253 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
254 EXPORT_SERVER_DIR = $(EXPORT_JRE_LIB_ARCH_DIR)/server |
3846 | 255 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
|
256 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
|
257 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
258 ifeq ($(findstring true, $(JVM_VARIANT_SERVER) $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
259 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
|
260 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
|
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_SERVER_DIR)/libjvm.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_SERVER_DIR)/libjvm.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 endif |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
269 |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
5915
diff
changeset
|
270 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
|
271 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
|
272 EXPORT_LIST += $(EXPORT_CLIENT_DIR)/libjvm.$(LIBRARY_SUFFIX) |
6022 | 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 | |
3954 | 278 endif |
9152 | 279 endif |
0 | 280 endif |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
281 |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
282 ifeq ($(JVM_VARIANT_MINIMAL1),true) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
283 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/Xusage.txt |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
284 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.$(LIBRARY_SUFFIX) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
285 |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
286 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
287 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
288 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.diz |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
289 else |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
290 EXPORT_LIST += $(EXPORT_MINIMAL_DIR)/libjvm.debuginfo |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
291 endif |
9152 | 292 endif |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
293 endif |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6784
diff
changeset
|
294 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
295 # Serviceability Binaries |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
296 # No SA Support for PPC, IA64, ARM or zero |
3960 | 297 ADD_SA_BINARIES/x86 = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 298 $(EXPORT_LIB_DIR)/sa-jdi.jar |
3960 | 299 ADD_SA_BINARIES/sparc = $(EXPORT_JRE_LIB_ARCH_DIR)/libsaproc.$(LIBRARY_SUFFIX) \ |
9152 | 300 $(EXPORT_LIB_DIR)/sa-jdi.jar |
6020
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
301 ifeq ($(ENABLE_FULL_DEBUG_SYMBOLS),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
302 ifeq ($(ZIP_DEBUGINFO_FILES),1) |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
303 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
|
304 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
|
305 else |
d652a62d6e03
7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents:
3966
diff
changeset
|
306 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
|
307 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
|
308 endif |
3954 | 309 endif |
9152 | 310 ADD_SA_BINARIES/ppc = |
311 ADD_SA_BINARIES/ia64 = | |
312 ADD_SA_BINARIES/arm = | |
313 ADD_SA_BINARIES/zero = | |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
314 |
6641
a9fed06c01d2
7154641: Servicability agent should work on platforms other than x86, sparc
bpittore
parents:
6022
diff
changeset
|
315 -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
|
316 |
1681
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
317 EXPORT_LIST += $(ADD_SA_BINARIES/$(HS_ARCH)) |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
318 |
126ea7725993
6953477: Increase portability and flexibility of building Hotspot
bobv
parents:
1552
diff
changeset
|
319 |