annotate make/solaris/Makefile @ 21559:be896a1983c0

recast all Graal native code as JVMCI code (JBS:GRAAL-53)
author Doug Simon <doug.simon@oracle.com>
date Thu, 28 May 2015 15:36:48 +0200
parents 7848fc12602b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a61af66fc99e Initial load
duke
parents:
diff changeset
1 #
7951
8b46b0196eb0 8000692: Remove old KERNEL code
zgu
parents: 7408
diff changeset
2 # Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
a61af66fc99e Initial load
duke
parents:
diff changeset
4 #
a61af66fc99e Initial load
duke
parents:
diff changeset
5 # This code is free software; you can redistribute it and/or modify it
a61af66fc99e Initial load
duke
parents:
diff changeset
6 # under the terms of the GNU General Public License version 2 only, as
a61af66fc99e Initial load
duke
parents:
diff changeset
7 # published by the Free Software Foundation.
a61af66fc99e Initial load
duke
parents:
diff changeset
8 #
a61af66fc99e Initial load
duke
parents:
diff changeset
9 # This code is distributed in the hope that it will be useful, but WITHOUT
a61af66fc99e Initial load
duke
parents:
diff changeset
10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
a61af66fc99e Initial load
duke
parents:
diff changeset
11 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a61af66fc99e Initial load
duke
parents:
diff changeset
12 # version 2 for more details (a copy is included in the LICENSE file that
a61af66fc99e Initial load
duke
parents:
diff changeset
13 # accompanied this code).
a61af66fc99e Initial load
duke
parents:
diff changeset
14 #
a61af66fc99e Initial load
duke
parents:
diff changeset
15 # You should have received a copy of the GNU General Public License version
a61af66fc99e Initial load
duke
parents:
diff changeset
16 # 2 along with this work; if not, write to the Free Software Foundation,
a61af66fc99e Initial load
duke
parents:
diff changeset
17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
a61af66fc99e Initial load
duke
parents:
diff changeset
18 #
1552
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 196
diff changeset
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
c18cbe5936b8 6941466: Oracle rebranding changes for Hotspot repositories
trims
parents: 196
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: 196
diff changeset
21 # questions.
1783
d5d065957597 6953144: Tiered compilation
iveresov
parents: 1552
diff changeset
22 #
0
a61af66fc99e Initial load
duke
parents:
diff changeset
23 #
a61af66fc99e Initial load
duke
parents:
diff changeset
24
a61af66fc99e Initial load
duke
parents:
diff changeset
25 # This makefile creates a build tree and lights off a build.
a61af66fc99e Initial load
duke
parents:
diff changeset
26 # You can go back into the build tree and perform rebuilds or
a61af66fc99e Initial load
duke
parents:
diff changeset
27 # incremental builds as desired. Be sure to reestablish
a61af66fc99e Initial load
duke
parents:
diff changeset
28 # environment variable settings for LD_LIBRARY_PATH and JAVA_HOME.
a61af66fc99e Initial load
duke
parents:
diff changeset
29
a61af66fc99e Initial load
duke
parents:
diff changeset
30 # The make process now relies on java and javac. These can be
a61af66fc99e Initial load
duke
parents:
diff changeset
31 # specified either implicitly on the PATH, by setting the
a61af66fc99e Initial load
duke
parents:
diff changeset
32 # (JDK-inherited) ALT_BOOTDIR environment variable to full path to a
a61af66fc99e Initial load
duke
parents:
diff changeset
33 # JDK in which bin/java and bin/javac are present and working (e.g.,
a61af66fc99e Initial load
duke
parents:
diff changeset
34 # /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited)
a61af66fc99e Initial load
duke
parents:
diff changeset
35 # default BOOTDIR path value. Note that one of ALT_BOOTDIR
a61af66fc99e Initial load
duke
parents:
diff changeset
36 # or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc.
a61af66fc99e Initial load
duke
parents:
diff changeset
37 # from the PATH.
a61af66fc99e Initial load
duke
parents:
diff changeset
38
1783
d5d065957597 6953144: Tiered compilation
iveresov
parents: 1552
diff changeset
39 # Along with VM, Serviceability Agent (SA) is built for SA/JDI binding.
d5d065957597 6953144: Tiered compilation
iveresov
parents: 1552
diff changeset
40 # JDI binding on SA produces two binaries:
7408
892acf0431ef 7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents: 6774
diff changeset
41 # 1. sa-jdi.jar - This is built before building libjvm.so
0
a61af66fc99e Initial load
duke
parents:
diff changeset
42 # Please refer to ./makefiles/sa.make
7408
892acf0431ef 7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents: 6774
diff changeset
43 # 2. libsaproc.so - Native library for SA - This is built after
892acf0431ef 7153050: remove crufty '_g' support from HotSpot repo makefiles
dcubed
parents: 6774
diff changeset
44 # libjsig.so (signal interposition library)
1783
d5d065957597 6953144: Tiered compilation
iveresov
parents: 1552
diff changeset
45 # Please refer to ./makefiles/vm.make
0
a61af66fc99e Initial load
duke
parents:
diff changeset
46 # If $(GAMMADIR)/agent dir is not present, SA components are not built.
a61af66fc99e Initial load
duke
parents:
diff changeset
47
a61af66fc99e Initial load
duke
parents:
diff changeset
48 ifeq ($(GAMMADIR),)
a61af66fc99e Initial load
duke
parents:
diff changeset
49 include ../../make/defs.make
a61af66fc99e Initial load
duke
parents:
diff changeset
50 else
a61af66fc99e Initial load
duke
parents:
diff changeset
51 include $(GAMMADIR)/make/defs.make
a61af66fc99e Initial load
duke
parents:
diff changeset
52 endif
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
53 include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make
0
a61af66fc99e Initial load
duke
parents:
diff changeset
54
a61af66fc99e Initial load
duke
parents:
diff changeset
55 ifndef CC_INTERP
1918
34bd82eba3bb 6997456: Not possible to build just compiler2
iveresov
parents: 1783
diff changeset
56 ifndef FORCE_TIERED
34bd82eba3bb 6997456: Not possible to build just compiler2
iveresov
parents: 1783
diff changeset
57 FORCE_TIERED=1
34bd82eba3bb 6997456: Not possible to build just compiler2
iveresov
parents: 1783
diff changeset
58 endif
0
a61af66fc99e Initial load
duke
parents:
diff changeset
59 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
60
a61af66fc99e Initial load
duke
parents:
diff changeset
61 ifdef LP64
a61af66fc99e Initial load
duke
parents:
diff changeset
62 ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","")
a61af66fc99e Initial load
duke
parents:
diff changeset
63 _JUNK_ := $(shell echo >&2 \
a61af66fc99e Initial load
duke
parents:
diff changeset
64 $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!")
a61af66fc99e Initial load
duke
parents:
diff changeset
65 @exit 1
a61af66fc99e Initial load
duke
parents:
diff changeset
66 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
67 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
68
a61af66fc99e Initial load
duke
parents:
diff changeset
69 # The following renders pathnames in generated Makefiles valid on
a61af66fc99e Initial load
duke
parents:
diff changeset
70 # machines other than the machine containing the build tree.
a61af66fc99e Initial load
duke
parents:
diff changeset
71 #
a61af66fc99e Initial load
duke
parents:
diff changeset
72 # For example, let's say my build tree lives on /files12 on
a61af66fc99e Initial load
duke
parents:
diff changeset
73 # exact.east.sun.com. This logic will cause GAMMADIR to begin with
a61af66fc99e Initial load
duke
parents:
diff changeset
74 # /net/exact/files12/...
a61af66fc99e Initial load
duke
parents:
diff changeset
75 #
a61af66fc99e Initial load
duke
parents:
diff changeset
76 # We only do this on SunOS variants, for a couple of reasons:
a61af66fc99e Initial load
duke
parents:
diff changeset
77 # * It is extremely rare that source trees exist on other systems
a61af66fc99e Initial load
duke
parents:
diff changeset
78 # * It has been claimed that the Linux automounter is flakey, so
a61af66fc99e Initial load
duke
parents:
diff changeset
79 # changing GAMMADIR in a way that exercises the automounter could
a61af66fc99e Initial load
duke
parents:
diff changeset
80 # prove to be a source of unreliability in the build process.
a61af66fc99e Initial load
duke
parents:
diff changeset
81 # Obviously, this Makefile is only relevant on SunOS boxes to begin
a61af66fc99e Initial load
duke
parents:
diff changeset
82 # with, but the SunOS conditionalization will make it easier to
a61af66fc99e Initial load
duke
parents:
diff changeset
83 # combine Makefiles in the future (assuming we ever do that).
a61af66fc99e Initial load
duke
parents:
diff changeset
84
a61af66fc99e Initial load
duke
parents:
diff changeset
85 ifeq ($(OSNAME),solaris)
a61af66fc99e Initial load
duke
parents:
diff changeset
86
a61af66fc99e Initial load
duke
parents:
diff changeset
87 # prepend current directory to relative pathnames.
a61af66fc99e Initial load
duke
parents:
diff changeset
88 NEW_GAMMADIR := \
a61af66fc99e Initial load
duke
parents:
diff changeset
89 $(shell echo $(GAMMADIR) | \
a61af66fc99e Initial load
duke
parents:
diff changeset
90 sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \
a61af66fc99e Initial load
duke
parents:
diff changeset
91 )
a61af66fc99e Initial load
duke
parents:
diff changeset
92 unexport NEW_GAMMADIR
a61af66fc99e Initial load
duke
parents:
diff changeset
93
a61af66fc99e Initial load
duke
parents:
diff changeset
94 # If NEW_GAMMADIR doesn't already start with "/net/":
a61af66fc99e Initial load
duke
parents:
diff changeset
95 ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),)
a61af66fc99e Initial load
duke
parents:
diff changeset
96 # prepend /net/$(HOST)
a61af66fc99e Initial load
duke
parents:
diff changeset
97 # remove /net/$(HOST) if name already began with /home/
a61af66fc99e Initial load
duke
parents:
diff changeset
98 # remove /net/$(HOST) if name already began with /java/
a61af66fc99e Initial load
duke
parents:
diff changeset
99 # remove /net/$(HOST) if name already began with /lab/
a61af66fc99e Initial load
duke
parents:
diff changeset
100 NEW_GAMMADIR := \
a61af66fc99e Initial load
duke
parents:
diff changeset
101 $(shell echo $(NEW_GAMMADIR) | \
a61af66fc99e Initial load
duke
parents:
diff changeset
102 sed -e "s=^\(.*\)=/net/$(HOST)\1=" \
a61af66fc99e Initial load
duke
parents:
diff changeset
103 -e "s=^/net/$(HOST)/home/=/home/=" \
a61af66fc99e Initial load
duke
parents:
diff changeset
104 -e "s=^/net/$(HOST)/java/=/java/=" \
a61af66fc99e Initial load
duke
parents:
diff changeset
105 -e "s=^/net/$(HOST)/lab/=/lab/=" \
a61af66fc99e Initial load
duke
parents:
diff changeset
106 )
a61af66fc99e Initial load
duke
parents:
diff changeset
107 # Don't use the new value for GAMMADIR unless a file with the new
a61af66fc99e Initial load
duke
parents:
diff changeset
108 # name actually exists.
a61af66fc99e Initial load
duke
parents:
diff changeset
109 ifneq ($(wildcard $(NEW_GAMMADIR)),)
a61af66fc99e Initial load
duke
parents:
diff changeset
110 GAMMADIR := $(NEW_GAMMADIR)
a61af66fc99e Initial load
duke
parents:
diff changeset
111 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
112 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
113
a61af66fc99e Initial load
duke
parents:
diff changeset
114 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
115
a61af66fc99e Initial load
duke
parents:
diff changeset
116
a61af66fc99e Initial load
duke
parents:
diff changeset
117 # There is a (semi-) regular correspondence between make targets and actions:
a61af66fc99e Initial load
duke
parents:
diff changeset
118 #
a61af66fc99e Initial load
duke
parents:
diff changeset
119 # Target Tree Type Build Dir
a61af66fc99e Initial load
duke
parents:
diff changeset
120 #
a61af66fc99e Initial load
duke
parents:
diff changeset
121 # debug compiler2 <os>_<arch>_compiler2/debug
a61af66fc99e Initial load
duke
parents:
diff changeset
122 # fastdebug compiler2 <os>_<arch>_compiler2/fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
123 # optimized compiler2 <os>_<arch>_compiler2/optimized
a61af66fc99e Initial load
duke
parents:
diff changeset
124 # product compiler2 <os>_<arch>_compiler2/product
a61af66fc99e Initial load
duke
parents:
diff changeset
125 #
a61af66fc99e Initial load
duke
parents:
diff changeset
126 # debug1 compiler1 <os>_<arch>_compiler1/debug
a61af66fc99e Initial load
duke
parents:
diff changeset
127 # fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
128 # optimized1 compiler1 <os>_<arch>_compiler1/optimized
a61af66fc99e Initial load
duke
parents:
diff changeset
129 # product1 compiler1 <os>_<arch>_compiler1/product
a61af66fc99e Initial load
duke
parents:
diff changeset
130 #
a61af66fc99e Initial load
duke
parents:
diff changeset
131 # debugcore core <os>_<arch>_core/debug
a61af66fc99e Initial load
duke
parents:
diff changeset
132 # fastdebugcore core <os>_<arch>_core/fastdebug
a61af66fc99e Initial load
duke
parents:
diff changeset
133 # optimizedcore core <os>_<arch>_core/optimized
a61af66fc99e Initial load
duke
parents:
diff changeset
134 # productcore core <os>_<arch>_core/product
a61af66fc99e Initial load
duke
parents:
diff changeset
135 #
a61af66fc99e Initial load
duke
parents:
diff changeset
136 # What you get with each target:
a61af66fc99e Initial load
duke
parents:
diff changeset
137 #
9152
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
138 # debug* - debug compile with asserts enabled
0
a61af66fc99e Initial load
duke
parents:
diff changeset
139 # fastdebug* - optimized compile, but with asserts enabled
a61af66fc99e Initial load
duke
parents:
diff changeset
140 # optimized* - optimized compile, no asserts
a61af66fc99e Initial load
duke
parents:
diff changeset
141 # product* - the shippable thing: optimized compile, no asserts, -DPRODUCT
a61af66fc99e Initial load
duke
parents:
diff changeset
142
a61af66fc99e Initial load
duke
parents:
diff changeset
143 # This target list needs to be coordinated with the usage message
a61af66fc99e Initial load
duke
parents:
diff changeset
144 # in the build.sh script:
9152
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
145 TARGETS = debug fastdebug optimized product
0
a61af66fc99e Initial load
duke
parents:
diff changeset
146
a61af66fc99e Initial load
duke
parents:
diff changeset
147 SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs
a61af66fc99e Initial load
duke
parents:
diff changeset
148 SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS))
a61af66fc99e Initial load
duke
parents:
diff changeset
149 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS))
a61af66fc99e Initial load
duke
parents:
diff changeset
150 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS))
a61af66fc99e Initial load
duke
parents:
diff changeset
151 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS))
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
152 SUBDIRS_JVMCI = $(addprefix $(OSNAME)_$(BUILDARCH)_jvmci/,$(TARGETS))
0
a61af66fc99e Initial load
duke
parents:
diff changeset
153
a61af66fc99e Initial load
duke
parents:
diff changeset
154 TARGETS_C2 = $(TARGETS)
a61af66fc99e Initial load
duke
parents:
diff changeset
155 TARGETS_C1 = $(addsuffix 1,$(TARGETS))
a61af66fc99e Initial load
duke
parents:
diff changeset
156 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS))
a61af66fc99e Initial load
duke
parents:
diff changeset
157 TARGETS_CORE = $(addsuffix core,$(TARGETS))
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
158 TARGETS_JVMCI = $(addsuffix jvmci,$(TARGETS))
0
a61af66fc99e Initial load
duke
parents:
diff changeset
159
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
160 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make
0
a61af66fc99e Initial load
duke
parents:
diff changeset
161 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) ARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH)
a61af66fc99e Initial load
duke
parents:
diff changeset
162 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION)
6020
d652a62d6e03 7102323: RFE: enable Full Debug Symbols Phase 1 on Solaris
dcubed
parents: 3954
diff changeset
163 BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE)
20409
amurillo
parents: 20407
diff changeset
164 BUILDTREE_VARS += HS_ALT_MAKE=$(HS_ALT_MAKE)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
165
a61af66fc99e Initial load
duke
parents:
diff changeset
166 BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS)
a61af66fc99e Initial load
duke
parents:
diff changeset
167
a61af66fc99e Initial load
duke
parents:
diff changeset
168 #-------------------------------------------------------------------------------
a61af66fc99e Initial load
duke
parents:
diff changeset
169
a61af66fc99e Initial load
duke
parents:
diff changeset
170 # Could make everything by default, but that would take a while.
a61af66fc99e Initial load
duke
parents:
diff changeset
171 all:
a61af66fc99e Initial load
duke
parents:
diff changeset
172 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of"
a61af66fc99e Initial load
duke
parents:
diff changeset
173 @echo " $(TARGETS_C2)"
a61af66fc99e Initial load
duke
parents:
diff changeset
174 @echo " $(TARGETS_C1)"
a61af66fc99e Initial load
duke
parents:
diff changeset
175 @echo " $(TARGETS_CORE)"
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
176 @echo " $(TARGETS_JVMCI)"
0
a61af66fc99e Initial load
duke
parents:
diff changeset
177
a61af66fc99e Initial load
duke
parents:
diff changeset
178 checks: check_os_version check_j2se_version
a61af66fc99e Initial load
duke
parents:
diff changeset
179
a61af66fc99e Initial load
duke
parents:
diff changeset
180 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x,
a61af66fc99e Initial load
duke
parents:
diff changeset
181 # Solaris 2.5.1, 2.6).
a61af66fc99e Initial load
duke
parents:
diff changeset
182 # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok.
a61af66fc99e Initial load
duke
parents:
diff changeset
183
a61af66fc99e Initial load
duke
parents:
diff changeset
184 SUPPORTED_OS_VERSION = 5.7 5.8 5.9 5.10 5.11
a61af66fc99e Initial load
duke
parents:
diff changeset
185 OS_VERSION := $(shell uname -r)
a61af66fc99e Initial load
duke
parents:
diff changeset
186 EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION))
a61af66fc99e Initial load
duke
parents:
diff changeset
187
a61af66fc99e Initial load
duke
parents:
diff changeset
188 check_os_version:
a61af66fc99e Initial load
duke
parents:
diff changeset
189 ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),)
a61af66fc99e Initial load
duke
parents:
diff changeset
190 $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1;
a61af66fc99e Initial load
duke
parents:
diff changeset
191 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
192
a61af66fc99e Initial load
duke
parents:
diff changeset
193 # jvmti.make requires XSLT (J2SE 1.4.x or newer):
a61af66fc99e Initial load
duke
parents:
diff changeset
194 XSLT_CHECK = $(RUN.JAVAP) javax.xml.transform.TransformerFactory
a61af66fc99e Initial load
duke
parents:
diff changeset
195 # If not found then fail fast.
a61af66fc99e Initial load
duke
parents:
diff changeset
196 check_j2se_version:
a61af66fc99e Initial load
duke
parents:
diff changeset
197 $(QUIETLY) $(XSLT_CHECK) > /dev/null 2>&1; \
a61af66fc99e Initial load
duke
parents:
diff changeset
198 if [ $$? -ne 0 ]; then \
a61af66fc99e Initial load
duke
parents:
diff changeset
199 $(RUN.JAVA) -version; \
a61af66fc99e Initial load
duke
parents:
diff changeset
200 echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \
a61af66fc99e Initial load
duke
parents:
diff changeset
201 "to bootstrap this build" 1>&2; \
a61af66fc99e Initial load
duke
parents:
diff changeset
202 exit 1; \
a61af66fc99e Initial load
duke
parents:
diff changeset
203 fi
a61af66fc99e Initial load
duke
parents:
diff changeset
204
a61af66fc99e Initial load
duke
parents:
diff changeset
205 $(SUBDIRS_TIERED): $(BUILDTREE_MAKE)
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
206 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
0
a61af66fc99e Initial load
duke
parents:
diff changeset
207 $(BUILDTREE) VARIANT=tiered
a61af66fc99e Initial load
duke
parents:
diff changeset
208
a61af66fc99e Initial load
duke
parents:
diff changeset
209 $(SUBDIRS_C2): $(BUILDTREE_MAKE)
1918
34bd82eba3bb 6997456: Not possible to build just compiler2
iveresov
parents: 1783
diff changeset
210 ifeq ($(FORCE_TIERED),1)
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
211 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
0
a61af66fc99e Initial load
duke
parents:
diff changeset
212 $(BUILDTREE) VARIANT=tiered FORCE_TIERED=1
a61af66fc99e Initial load
duke
parents:
diff changeset
213 else
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
214 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
0
a61af66fc99e Initial load
duke
parents:
diff changeset
215 $(BUILDTREE) VARIANT=compiler2
a61af66fc99e Initial load
duke
parents:
diff changeset
216 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
217
a61af66fc99e Initial load
duke
parents:
diff changeset
218 $(SUBDIRS_C1): $(BUILDTREE_MAKE)
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
219 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
0
a61af66fc99e Initial load
duke
parents:
diff changeset
220 $(BUILDTREE) VARIANT=compiler1
a61af66fc99e Initial load
duke
parents:
diff changeset
221
a61af66fc99e Initial load
duke
parents:
diff changeset
222 $(SUBDIRS_CORE): $(BUILDTREE_MAKE)
91
a294fd0c4b38 6583644: Move all managed/SCCS files out of 'build' into 'make' directory
kamg
parents: 0
diff changeset
223 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
0
a61af66fc99e Initial load
duke
parents:
diff changeset
224 $(BUILDTREE) VARIANT=core
a61af66fc99e Initial load
duke
parents:
diff changeset
225
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
226 $(SUBDIRS_JVMCI): $(BUILDTREE_MAKE)
6557
297543799769 fixed makefile to build on Solaris.
Laurent Daynes <Laurent.Daynes@oracle.com>
parents: 6021
diff changeset
227 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
228 $(BUILDTREE) VARIANT=jvmci
6557
297543799769 fixed makefile to build on Solaris.
Laurent Daynes <Laurent.Daynes@oracle.com>
parents: 6021
diff changeset
229
0
a61af66fc99e Initial load
duke
parents:
diff changeset
230 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME
a61af66fc99e Initial load
duke
parents:
diff changeset
231
a61af66fc99e Initial load
duke
parents:
diff changeset
232 $(TARGETS_C2): $(SUBDIRS_C2)
a61af66fc99e Initial load
duke
parents:
diff changeset
233 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS)
a61af66fc99e Initial load
duke
parents:
diff changeset
234 ifdef INSTALL
a61af66fc99e Initial load
duke
parents:
diff changeset
235 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install
a61af66fc99e Initial load
duke
parents:
diff changeset
236 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
237
a61af66fc99e Initial load
duke
parents:
diff changeset
238 $(TARGETS_TIERED): $(SUBDIRS_TIERED)
a61af66fc99e Initial load
duke
parents:
diff changeset
239 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS)
a61af66fc99e Initial load
duke
parents:
diff changeset
240 ifdef INSTALL
a61af66fc99e Initial load
duke
parents:
diff changeset
241 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install
a61af66fc99e Initial load
duke
parents:
diff changeset
242 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
243
a61af66fc99e Initial load
duke
parents:
diff changeset
244 $(TARGETS_C1): $(SUBDIRS_C1)
a61af66fc99e Initial load
duke
parents:
diff changeset
245 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS)
a61af66fc99e Initial load
duke
parents:
diff changeset
246 ifdef INSTALL
a61af66fc99e Initial load
duke
parents:
diff changeset
247 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install
a61af66fc99e Initial load
duke
parents:
diff changeset
248 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
249
a61af66fc99e Initial load
duke
parents:
diff changeset
250 $(TARGETS_CORE): $(SUBDIRS_CORE)
a61af66fc99e Initial load
duke
parents:
diff changeset
251 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS)
a61af66fc99e Initial load
duke
parents:
diff changeset
252 ifdef INSTALL
a61af66fc99e Initial load
duke
parents:
diff changeset
253 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install
a61af66fc99e Initial load
duke
parents:
diff changeset
254 endif
a61af66fc99e Initial load
duke
parents:
diff changeset
255
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
256 $(TARGETS_JVMCI): $(SUBDIRS_JVMCI)
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
257 cd $(OSNAME)_$(BUILDARCH)_jvmci/$(patsubst %jvmci,%,$@) && $(MAKE) $(MFLAGS)
6557
297543799769 fixed makefile to build on Solaris.
Laurent Daynes <Laurent.Daynes@oracle.com>
parents: 6021
diff changeset
258 ifdef INSTALL
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
259 cd $(OSNAME)_$(BUILDARCH)_jvmci/$(patsubst %jvmci,%,$@) && $(MAKE) $(MFLAGS) install
6557
297543799769 fixed makefile to build on Solaris.
Laurent Daynes <Laurent.Daynes@oracle.com>
parents: 6021
diff changeset
260 endif
297543799769 fixed makefile to build on Solaris.
Laurent Daynes <Laurent.Daynes@oracle.com>
parents: 6021
diff changeset
261
0
a61af66fc99e Initial load
duke
parents:
diff changeset
262 # Just build the tree, and nothing else:
a61af66fc99e Initial load
duke
parents:
diff changeset
263 tree: $(SUBDIRS_C2)
a61af66fc99e Initial load
duke
parents:
diff changeset
264 tree1: $(SUBDIRS_C1)
a61af66fc99e Initial load
duke
parents:
diff changeset
265 treecore: $(SUBDIRS_CORE)
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
266 treejvmci: $(SUBDIRS_JVMCI)
0
a61af66fc99e Initial load
duke
parents:
diff changeset
267
a61af66fc99e Initial load
duke
parents:
diff changeset
268 # Doc target. This is the same for all build options.
a61af66fc99e Initial load
duke
parents:
diff changeset
269 # Hence create a docs directory beside ...$(ARCH)_[...]
6021
744728c16316 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 6020
diff changeset
270 # We specify 'BUILD_FLAVOR=product' so that the proper
744728c16316 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 6020
diff changeset
271 # ENABLE_FULL_DEBUG_SYMBOLS value is used.
0
a61af66fc99e Initial load
duke
parents:
diff changeset
272 docs: checks
a61af66fc99e Initial load
duke
parents:
diff changeset
273 $(QUIETLY) mkdir -p $(SUBDIR_DOCS)
6021
744728c16316 7158067: FDS: ENABLE_FULL_DEBUG_SYMBOLS flag should only affect product builds
dcubed
parents: 6020
diff changeset
274 $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs
0
a61af66fc99e Initial load
duke
parents:
diff changeset
275
a61af66fc99e Initial load
duke
parents:
diff changeset
276 # Synonyms for win32-like targets.
9152
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
277 compiler2: debug product
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
278
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
279 compiler1: debug1 product1
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
280
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
281 core: debugcore productcore
0
a61af66fc99e Initial load
duke
parents:
diff changeset
282
9152
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
283 warn_jvmg_deprecated:
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
284 echo "Warning: The jvmg target has been replaced with debug"
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
285 echo "Warning: Please update your usage"
0
a61af66fc99e Initial load
duke
parents:
diff changeset
286
9152
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
287 jvmg: warn_jvmg_deprecated debug
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
288
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
289 jvmg1: warn_jvmg_deprecated debug1
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
290
f36e073d56a4 7104565: trim jprt build targets
drchase
parents: 8780
diff changeset
291 jvmgcore: warn_jvmg_deprecated debugcore
0
a61af66fc99e Initial load
duke
parents:
diff changeset
292
a61af66fc99e Initial load
duke
parents:
diff changeset
293 clean_docs:
a61af66fc99e Initial load
duke
parents:
diff changeset
294 rm -rf $(SUBDIR_DOCS)
a61af66fc99e Initial load
duke
parents:
diff changeset
295
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
296 clean_compiler1 clean_compiler2 clean_core clean_jvmci:
0
a61af66fc99e Initial load
duke
parents:
diff changeset
297 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@)
a61af66fc99e Initial load
duke
parents:
diff changeset
298
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
299 clean: clean_compiler2 clean_compiler1 clean_core clean_docs clean_jvmci
0
a61af66fc99e Initial load
duke
parents:
diff changeset
300
3291
d6cdc6c77582 7037250: cscope.make database generation is silently broken
jcoomes
parents: 1918
diff changeset
301 include $(GAMMADIR)/make/cscope.make
0
a61af66fc99e Initial load
duke
parents:
diff changeset
302
a61af66fc99e Initial load
duke
parents:
diff changeset
303 #-------------------------------------------------------------------------------
a61af66fc99e Initial load
duke
parents:
diff changeset
304
a61af66fc99e Initial load
duke
parents:
diff changeset
305 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE)
21559
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
306 .PHONY: tree tree1 treecore treejvmci
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
307 .PHONY: all compiler1 compiler2 core jvmci
be896a1983c0 recast all Graal native code as JVMCI code (JBS:GRAAL-53)
Doug Simon <doug.simon@oracle.com>
parents: 20804
diff changeset
308 .PHONY: clean clean_compiler1 clean_compiler2 clean_core docs clean_docs clean_jvmci
0
a61af66fc99e Initial load
duke
parents:
diff changeset
309 .PHONY: checks check_os_version check_j2se_version