Mercurial > hg > truffle
annotate make/bsd/Makefile @ 7267:a4b84ba6dc2e
Introduction of the Truffle API for efficient implementation of dynamic languages on top of the Graal VM. New projects com.oracle.truffle.api for the API definition and com.oracle.truffle.api.test for API tests and documentation.
author | Thomas Wuerthinger <thomas.wuerthinger@oracle.com> |
---|---|
date | Tue, 18 Dec 2012 15:33:55 +0100 |
parents | e522a00b91aa |
children | 989155e2d07a |
rev | line source |
---|---|
3960 | 1 # |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
2 # Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved. |
3960 | 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 # | |
19 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | |
20 # or visit www.oracle.com if you need additional information or have any | |
21 # questions. | |
22 # | |
23 # | |
24 | |
25 # This makefile creates a build tree and lights off a build. | |
26 # You can go back into the build tree and perform rebuilds or | |
27 # incremental builds as desired. Be sure to reestablish | |
28 # environment variable settings for LD_LIBRARY_PATH and JAVA_HOME. | |
29 | |
30 # The make process now relies on java and javac. These can be | |
31 # specified either implicitly on the PATH, by setting the | |
32 # (JDK-inherited) ALT_BOOTDIR environment variable to full path to a | |
33 # JDK in which bin/java and bin/javac are present and working (e.g., | |
34 # /usr/local/java/jdk1.3/solaris), or via the (JDK-inherited) | |
35 # default BOOTDIR path value. Note that one of ALT_BOOTDIR | |
36 # or BOOTDIR has to be set. We do *not* search javac, javah, rmic etc. | |
37 # from the PATH. | |
38 # | |
39 # One can set ALT_BOOTDIR or BOOTDIR to point to a jdk that runs on | |
40 # an architecture that differs from the target architecture, as long | |
41 # as the bootstrap jdk runs under the same flavor of OS as the target | |
42 # (i.e., if the target is linux, point to a jdk that runs on a linux | |
43 # box). In order to use such a bootstrap jdk, set the make variable | |
44 # REMOTE to the desired remote command mechanism, e.g., | |
45 # | |
46 # make REMOTE="rsh -l me myotherlinuxbox" | |
47 | |
48 # Along with VM, Serviceability Agent (SA) is built for SA/JDI binding. | |
49 # JDI binding on SA produces two binaries: | |
50 # 1. sa-jdi.jar - This is build before building libjvm[_g].so | |
51 # Please refer to ./makefiles/sa.make | |
52 # 2. libsa[_g].so - Native library for SA - This is built after | |
53 # libjsig[_g].so (signal interposition library) | |
54 # Please refer to ./makefiles/vm.make | |
55 # If $(GAMMADIR)/agent dir is not present, SA components are not built. | |
56 | |
57 ifeq ($(GAMMADIR),) | |
58 include ../../make/defs.make | |
59 else | |
60 include $(GAMMADIR)/make/defs.make | |
61 endif | |
62 include $(GAMMADIR)/make/$(OSNAME)/makefiles/rules.make | |
63 | |
64 ifndef CC_INTERP | |
65 ifndef FORCE_TIERED | |
66 FORCE_TIERED=1 | |
67 endif | |
68 endif | |
69 | |
70 ifdef LP64 | |
71 ifeq ("$(filter $(LP64_ARCH),$(BUILDARCH))","") | |
72 _JUNK_ := $(shell echo >&2 \ | |
73 $(OSNAME) $(ARCH) "*** ERROR: this platform does not support 64-bit compilers!") | |
74 @exit 1 | |
75 endif | |
76 endif | |
77 | |
78 # we need to set up LP64 correctly to satisfy sanity checks in adlc | |
79 ifneq ("$(filter $(LP64_ARCH),$(BUILDARCH))","") | |
80 MFLAGS += " LP64=1 " | |
81 endif | |
82 | |
83 # pass USE_SUNCC further, through MFLAGS | |
84 ifdef USE_SUNCC | |
85 MFLAGS += " USE_SUNCC=1 " | |
86 endif | |
87 | |
88 # The following renders pathnames in generated Makefiles valid on | |
89 # machines other than the machine containing the build tree. | |
90 # | |
91 # For example, let's say my build tree lives on /files12 on | |
92 # exact.east.sun.com. This logic will cause GAMMADIR to begin with | |
93 # /net/exact/files12/... | |
94 # | |
95 # We only do this on SunOS variants, for a couple of reasons: | |
96 # * It is extremely rare that source trees exist on other systems | |
97 # * It has been claimed that the Linux automounter is flakey, so | |
98 # changing GAMMADIR in a way that exercises the automounter could | |
99 # prove to be a source of unreliability in the build process. | |
100 # Obviously, this Makefile is only relevant on SunOS boxes to begin | |
101 # with, but the SunOS conditionalization will make it easier to | |
102 # combine Makefiles in the future (assuming we ever do that). | |
103 | |
104 ifeq ($(OSNAME),solaris) | |
105 | |
106 # prepend current directory to relative pathnames. | |
107 NEW_GAMMADIR := \ | |
108 $(shell echo $(GAMMADIR) | \ | |
109 sed -e "s=^\([^/].*\)=$(shell pwd)/\1=" \ | |
110 ) | |
111 unexport NEW_GAMMADIR | |
112 | |
113 # If NEW_GAMMADIR doesn't already start with "/net/": | |
114 ifeq ($(strip $(filter /net/%,$(NEW_GAMMADIR))),) | |
115 # prepend /net/$(HOST) | |
116 # remove /net/$(HOST) if name already began with /home/ | |
117 # remove /net/$(HOST) if name already began with /java/ | |
118 # remove /net/$(HOST) if name already began with /lab/ | |
119 NEW_GAMMADIR := \ | |
120 $(shell echo $(NEW_GAMMADIR) | \ | |
121 sed -e "s=^\(.*\)=/net/$(HOST)\1=" \ | |
122 -e "s=^/net/$(HOST)/home/=/home/=" \ | |
123 -e "s=^/net/$(HOST)/java/=/java/=" \ | |
124 -e "s=^/net/$(HOST)/lab/=/lab/=" \ | |
125 ) | |
126 # Don't use the new value for GAMMADIR unless a file with the new | |
127 # name actually exists. | |
128 ifneq ($(wildcard $(NEW_GAMMADIR)),) | |
129 GAMMADIR := $(NEW_GAMMADIR) | |
130 endif | |
131 endif | |
132 | |
133 endif | |
134 | |
135 # BUILDARCH is set to "zero" for Zero builds. VARIANTARCH | |
136 # is used to give the build directories meaningful names. | |
137 VARIANTARCH = $(subst i386,i486,$(ZERO_LIBARCH)) | |
138 | |
139 # There is a (semi-) regular correspondence between make targets and actions: | |
140 # | |
141 # Target Tree Type Build Dir | |
142 # | |
143 # debug compiler2 <os>_<arch>_compiler2/debug | |
144 # fastdebug compiler2 <os>_<arch>_compiler2/fastdebug | |
145 # jvmg compiler2 <os>_<arch>_compiler2/jvmg | |
146 # optimized compiler2 <os>_<arch>_compiler2/optimized | |
147 # profiled compiler2 <os>_<arch>_compiler2/profiled | |
148 # product compiler2 <os>_<arch>_compiler2/product | |
149 # | |
150 # debug1 compiler1 <os>_<arch>_compiler1/debug | |
151 # fastdebug1 compiler1 <os>_<arch>_compiler1/fastdebug | |
152 # jvmg1 compiler1 <os>_<arch>_compiler1/jvmg | |
153 # optimized1 compiler1 <os>_<arch>_compiler1/optimized | |
154 # profiled1 compiler1 <os>_<arch>_compiler1/profiled | |
155 # product1 compiler1 <os>_<arch>_compiler1/product | |
156 # | |
157 # debugcore core <os>_<arch>_core/debug | |
158 # fastdebugcore core <os>_<arch>_core/fastdebug | |
159 # jvmgcore core <os>_<arch>_core/jvmg | |
160 # optimizedcore core <os>_<arch>_core/optimized | |
161 # profiledcore core <os>_<arch>_core/profiled | |
162 # productcore core <os>_<arch>_core/product | |
163 # | |
164 # debugzero zero <os>_<arch>_zero/debug | |
165 # fastdebugzero zero <os>_<arch>_zero/fastdebug | |
166 # jvmgzero zero <os>_<arch>_zero/jvmg | |
167 # optimizedzero zero <os>_<arch>_zero/optimized | |
168 # profiledzero zero <os>_<arch>_zero/profiled | |
169 # productzero zero <os>_<arch>_zero/product | |
170 # | |
171 # debugshark shark <os>_<arch>_shark/debug | |
172 # fastdebugshark shark <os>_<arch>_shark/fastdebug | |
173 # jvmgshark shark <os>_<arch>_shark/jvmg | |
174 # optimizedshark shark <os>_<arch>_shark/optimized | |
175 # profiledshark shark <os>_<arch>_shark/profiled | |
176 # productshark shark <os>_<arch>_shark/product | |
177 # | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
178 # fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
179 # jvmgminimal1 minimal1 <os>_<arch>_minimal1/jvmg |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
180 # productminimal1 minimal1 <os>_<arch>_minimal1/product |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
181 # |
3960 | 182 # What you get with each target: |
183 # | |
184 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher | |
185 # fastdebug* - optimized compile, but with asserts enabled | |
186 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so | |
187 # optimized* - optimized compile, no asserts | |
188 # profiled* - gprof | |
189 # product* - the shippable thing: optimized compile, no asserts, -DPRODUCT | |
190 | |
191 # This target list needs to be coordinated with the usage message | |
192 # in the build.sh script: | |
193 TARGETS = debug jvmg fastdebug optimized profiled product | |
194 | |
5946
3d7ea1dbe0de
7141246: build-infra merge: Introduce new JVM_VARIANT* to control which kind of jvm gets built
erikj
parents:
4846
diff
changeset
|
195 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) |
3960 | 196 SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs |
197 else | |
198 SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs | |
199 endif | |
200 SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS)) | |
201 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) | |
202 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) | |
203 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) | |
204 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) | |
205 SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS)) | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
206 SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS)) |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
207 SUBDIRS_GRAAL = $(addprefix $(OSNAME)_$(BUILDARCH)_graal/,$(TARGETS)) |
3960 | 208 |
209 TARGETS_C2 = $(TARGETS) | |
210 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) | |
211 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) | |
212 TARGETS_CORE = $(addsuffix core,$(TARGETS)) | |
213 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) | |
214 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
215 TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS)) |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
216 TARGETS_GRAAL = $(addsuffix graal,$(TARGETS)) |
3960 | 217 |
218 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make | |
4846 | 219 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) LIBRARY_SUFFIX=$(LIBRARY_SUFFIX) |
3960 | 220 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) |
221 | |
222 BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS) | |
223 | |
224 #------------------------------------------------------------------------------- | |
225 | |
226 # Could make everything by default, but that would take a while. | |
227 all: | |
228 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of" | |
229 @echo " $(TARGETS_C2)" | |
230 @echo " $(TARGETS_C1)" | |
231 @echo " $(TARGETS_CORE)" | |
232 @echo " $(TARGETS_ZERO)" | |
233 @echo " $(TARGETS_SHARK)" | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
234 @echo " $(TARGETS_MINIMAL1)" |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
235 @echo " $(TARGETS_GRAAL)" |
3960 | 236 |
237 checks: check_os_version check_j2se_version | |
238 | |
239 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, | |
240 # Solaris 2.5.1, 2.6). | |
241 # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok. | |
242 | |
243 #SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 2.7% | |
244 DISABLE_HOTSPOT_OS_VERSION_CHECK = ok | |
245 OS_VERSION := $(shell uname -r) | |
246 EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION)) | |
247 | |
248 check_os_version: | |
249 ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),) | |
250 $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1; | |
251 endif | |
252 | |
253 # jvmti.make requires XSLT (J2SE 1.4.x or newer): | |
254 XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory | |
255 # If not found then fail fast. | |
256 check_j2se_version: | |
257 $(QUIETLY) $(XSLT_CHECK) > /dev/null 2>&1; \ | |
258 if [ $$? -ne 0 ]; then \ | |
259 $(REMOTE) $(RUN.JAVA) -version; \ | |
260 echo "*** An XSLT processor (J2SE 1.4.x or newer) is required" \ | |
261 "to bootstrap this build" 1>&2; \ | |
262 exit 1; \ | |
263 fi | |
264 | |
265 $(SUBDIRS_TIERED): $(BUILDTREE_MAKE) | |
266 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
267 $(BUILDTREE) VARIANT=tiered | |
268 | |
269 $(SUBDIRS_C2): $(BUILDTREE_MAKE) | |
270 ifeq ($(FORCE_TIERED),1) | |
271 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
272 $(BUILDTREE) VARIANT=tiered FORCE_TIERED=1 | |
273 else | |
274 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
275 $(BUILDTREE) VARIANT=compiler2 | |
276 endif | |
277 | |
278 $(SUBDIRS_C1): $(BUILDTREE_MAKE) | |
279 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
280 $(BUILDTREE) VARIANT=compiler1 | |
281 | |
282 $(SUBDIRS_CORE): $(BUILDTREE_MAKE) | |
283 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
284 $(BUILDTREE) VARIANT=core | |
285 | |
286 $(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero | |
287 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
288 $(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH) | |
289 | |
290 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero | |
291 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks | |
292 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) | |
293 | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
294 $(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
295 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
296 $(BUILDTREE) VARIANT=minimal1 |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
297 |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
298 $(SUBDIRS_GRAAL): $(BUILDTREE_MAKE) |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
299 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
300 $(BUILDTREE) VARIANT=graal |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
301 |
3960 | 302 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in |
303 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ | |
304 | |
305 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME | |
306 | |
307 $(TARGETS_C2): $(SUBDIRS_C2) | |
308 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) | |
6774 | 309 ifeq ($(TEST_IN_BUILD),true) |
3960 | 310 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && ./test_gamma |
6774 | 311 endif |
3960 | 312 ifdef INSTALL |
313 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install | |
314 endif | |
315 | |
316 $(TARGETS_TIERED): $(SUBDIRS_TIERED) | |
317 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) | |
6774 | 318 ifeq ($(TEST_IN_BUILD),true) |
3960 | 319 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && ./test_gamma |
6774 | 320 endif |
3960 | 321 ifdef INSTALL |
322 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install | |
323 endif | |
324 | |
325 $(TARGETS_C1): $(SUBDIRS_C1) | |
326 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) | |
6774 | 327 ifeq ($(TEST_IN_BUILD),true) |
3960 | 328 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && ./test_gamma |
6774 | 329 endif |
3960 | 330 ifdef INSTALL |
331 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install | |
332 endif | |
333 | |
334 $(TARGETS_CORE): $(SUBDIRS_CORE) | |
335 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) | |
6774 | 336 ifeq ($(TEST_IN_BUILD),true) |
3960 | 337 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && ./test_gamma |
6774 | 338 endif |
3960 | 339 ifdef INSTALL |
340 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install | |
341 endif | |
342 | |
343 $(TARGETS_ZERO): $(SUBDIRS_ZERO) | |
344 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) | |
6774 | 345 ifeq ($(TEST_IN_BUILD),true) |
3960 | 346 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma |
6774 | 347 endif |
3960 | 348 ifdef INSTALL |
349 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install | |
350 endif | |
351 | |
352 $(TARGETS_SHARK): $(SUBDIRS_SHARK) | |
353 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) | |
6774 | 354 ifeq ($(TEST_IN_BUILD),true) |
3960 | 355 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma |
6774 | 356 endif |
3960 | 357 ifdef INSTALL |
358 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install | |
359 endif | |
360 | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
361 $(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
362 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
363 ifeq ($(TEST_IN_BUILD),true) |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
364 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && ./test_gamma |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
365 endif |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
366 ifdef INSTALL |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
367 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
368 endif |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
369 |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
370 $(TARGETS_GRAAL): $(SUBDIRS_GRAAL) |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
371 cd $(OSNAME)_$(BUILDARCH)_graal/$(patsubst %graal,%,$@) && $(MAKE) $(MFLAGS) |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
372 ifdef INSTALL |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
373 cd $(OSNAME)_$(BUILDARCH)_graal/$(patsubst %graal,%,$@) && $(MAKE) $(MFLAGS) install |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
374 endif |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
375 |
3960 | 376 # Just build the tree, and nothing else: |
377 tree: $(SUBDIRS_C2) | |
378 tree1: $(SUBDIRS_C1) | |
379 treecore: $(SUBDIRS_CORE) | |
380 treezero: $(SUBDIRS_ZERO) | |
381 treeshark: $(SUBDIRS_SHARK) | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
382 treeminimal1: $(SUBDIRS_MINIMAL1) |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
383 treegraal: $(SUBDIRS_GRAAL) |
3960 | 384 |
385 # Doc target. This is the same for all build options. | |
386 # Hence create a docs directory beside ...$(ARCH)_[...] | |
387 docs: checks | |
388 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) | |
389 $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) jvmtidocs | |
390 | |
391 # Synonyms for win32-like targets. | |
392 compiler2: jvmg product | |
393 | |
394 compiler1: jvmg1 product1 | |
395 | |
396 core: jvmgcore productcore | |
397 | |
398 zero: jvmgzero productzero | |
399 | |
400 shark: jvmgshark productshark | |
401 | |
402 clean_docs: | |
403 rm -rf $(SUBDIR_DOCS) | |
404 | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
405 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1: |
3960 | 406 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) |
407 | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
408 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs |
3960 | 409 |
410 include $(GAMMADIR)/make/cscope.make | |
411 | |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
412 # |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
413 # Include alternate Makefile if it exists. |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
414 # |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
415 -include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make |
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
416 |
3960 | 417 #------------------------------------------------------------------------------- |
418 | |
6948
e522a00b91aa
Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
Doug Simon <doug.simon@oracle.com>
diff
changeset
|
419 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1) $(TARGETS_GRAAL) |
4607
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
420 .PHONY: tree tree1 treecore treezero treeshark treegraal |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
421 .PHONY: all compiler1 compiler2 core zero shark graal |
ee87cfe2f8f9
Made GraalVM build work on Mac OS X.
Doug Simon <doug.simon@oracle.com>
parents:
3960
diff
changeset
|
422 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs clean_graal |
3960 | 423 .PHONY: checks check_os_version check_j2se_version |
6854
fb19af007ffc
7189254: Change makefiles for more flexibility to override defaults
jprovino
parents:
6774
diff
changeset
|
424 .PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make |