40 # HOTSPOT_BUILD_VERSION - internal, internal-$(USER_RELEASE_SUFFIX) or empty
41 # JRE_RELEASE_VERSION - <major>.<minor>.<micro> (1.7.0)
42 #
43 # Builds the directory trees with makefiles plus some convenience files in
44 # each directory:
45 #
46 # Makefile - for "make foo"
47 # flags.make - with macro settings
48 # vm.make - to support making "$(MAKE) -v vm.make" in makefiles
49 # adlc.make -
50 # jvmti.make - generate JVMTI bindings from the spec (JSR-163)
51 # sa.make - generate SA jar file and natives
52 # env.[ck]sh - environment settings
53 # test_gamma - script to run the Queens program
54 #
55 # The makefiles are split this way so that "make foo" will run faster by not
56 # having to read the dependency files for the vm.
57
58 -include $(SPEC)
59 include $(GAMMADIR)/make/scm.make
60 include $(GAMMADIR)/make/altsrc.make
61
62
63 # 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
64 QUIETLY$(MAKE_VERBOSE) = @
65
66 # For now, until the compiler is less wobbly:
67 TESTFLAGS = -Xbatch -showversion
68
69 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
70 PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
71 else
72 ifdef USE_SUNCC
73 PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).suncc
74 else
75 PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
76 endif
77 endif
78
79 # Allow overriding of the arch part of the directory but default
171 $(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
172 $(QUIETLY) touch $@
173
174 $(SIMPLE_DIRS):
175 $(QUIETLY) mkdir -p $@
176
177 # Convenience macro which takes a source relative path, applies $(1) to the
178 # absolute path, and then replaces $(GAMMADIR) in the result with a
179 # literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
180 gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
181
182 flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
183 @echo Creating $@ ...
184 $(QUIETLY) ( \
185 $(BUILDTREE_COMMENT); \
186 echo; \
187 echo "Platform_file = $(PLATFORM_FILE)" | sed 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
188 sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
189 echo; \
190 echo "GAMMADIR = $(GAMMADIR)"; \
191 echo "SYSDEFS = \$$(Platform_sysdefs)"; \
192 echo "SRCARCH = $(SRCARCH)"; \
193 echo "BUILDARCH = $(BUILDARCH)"; \
194 echo "LIBARCH = $(LIBARCH)"; \
195 echo "TARGET = $(TARGET)"; \
196 echo "HS_BUILD_VER = $(HS_BUILD_VER)"; \
197 echo "JRE_RELEASE_VER = $(JRE_RELEASE_VERSION)"; \
198 echo "SA_BUILD_VERSION = $(HS_BUILD_VER)"; \
199 echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
200 echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
201 echo; \
202 echo "# Used for platform dispatching"; \
203 echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
204 echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
205 echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
206 echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
207 echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
208 echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
209 echo "CFLAGS += \$$(TARGET_DEFINES)"; \
210 echo; \
237 [ -n "$(CFLAGS_BROWSE)" ] && \
238 echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
239 [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
240 echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
241 [ -n "$(OBJCOPY)" ] && \
242 echo && echo "OBJCOPY = $(OBJCOPY)"; \
243 [ -n "$(STRIP_POLICY)" ] && \
244 echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
245 [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
246 echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
247 [ -n "$(ZIPEXE)" ] && \
248 echo && echo "ZIPEXE = $(ZIPEXE)"; \
249 [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
250 echo && \
251 echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
252 echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
253 echo; \
254 [ -n "$(SPEC)" ] && \
255 echo "include $(SPEC)"; \
256 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
257 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
258 ) > $@
259
260 flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
261 @echo Creating $@ ...
262 $(QUIETLY) ( \
263 $(BUILDTREE_COMMENT); \
264 echo; \
265 [ "$(TARGET)" = profiled ] && \
266 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/optimized.make"; \
267 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
268 ) > $@
269
270 ../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
271 @echo Creating directory list $@
272 $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
273 find $(HS_ALT_SRC)/share/vm/* -prune \
274 -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
275 \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
276 fi;
|
40 # HOTSPOT_BUILD_VERSION - internal, internal-$(USER_RELEASE_SUFFIX) or empty
41 # JRE_RELEASE_VERSION - <major>.<minor>.<micro> (1.7.0)
42 #
43 # Builds the directory trees with makefiles plus some convenience files in
44 # each directory:
45 #
46 # Makefile - for "make foo"
47 # flags.make - with macro settings
48 # vm.make - to support making "$(MAKE) -v vm.make" in makefiles
49 # adlc.make -
50 # jvmti.make - generate JVMTI bindings from the spec (JSR-163)
51 # sa.make - generate SA jar file and natives
52 # env.[ck]sh - environment settings
53 # test_gamma - script to run the Queens program
54 #
55 # The makefiles are split this way so that "make foo" will run faster by not
56 # having to read the dependency files for the vm.
57
58 -include $(SPEC)
59 include $(GAMMADIR)/make/scm.make
60 include $(GAMMADIR)/make/defs.make
61 include $(GAMMADIR)/make/altsrc.make
62
63
64 # 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details.
65 QUIETLY$(MAKE_VERBOSE) = @
66
67 # For now, until the compiler is less wobbly:
68 TESTFLAGS = -Xbatch -showversion
69
70 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true)
71 PLATFORM_FILE = $(shell dirname $(shell dirname $(shell pwd)))/platform_zero
72 else
73 ifdef USE_SUNCC
74 PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH).suncc
75 else
76 PLATFORM_FILE = $(GAMMADIR)/make/$(OS_FAMILY)/platform_$(BUILDARCH)
77 endif
78 endif
79
80 # Allow overriding of the arch part of the directory but default
172 $(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F)
173 $(QUIETLY) touch $@
174
175 $(SIMPLE_DIRS):
176 $(QUIETLY) mkdir -p $@
177
178 # Convenience macro which takes a source relative path, applies $(1) to the
179 # absolute path, and then replaces $(GAMMADIR) in the result with a
180 # literal "$(GAMMADIR)/" suitable for inclusion in a Makefile.
181 gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2)))
182
183 flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
184 @echo Creating $@ ...
185 $(QUIETLY) ( \
186 $(BUILDTREE_COMMENT); \
187 echo; \
188 echo "Platform_file = $(PLATFORM_FILE)" | sed 's|$(GAMMADIR)|$$(GAMMADIR)|'; \
189 sed -n '/=/s/^ */Platform_/p' < $(PLATFORM_FILE); \
190 echo; \
191 echo "GAMMADIR = $(GAMMADIR)"; \
192 echo "HS_ALT_MAKE = $(HS_ALT_MAKE)"; \
193 echo "OSNAME = $(OSNAME)"; \
194 echo "SYSDEFS = \$$(Platform_sysdefs)"; \
195 echo "SRCARCH = $(SRCARCH)"; \
196 echo "BUILDARCH = $(BUILDARCH)"; \
197 echo "LIBARCH = $(LIBARCH)"; \
198 echo "TARGET = $(TARGET)"; \
199 echo "HS_BUILD_VER = $(HS_BUILD_VER)"; \
200 echo "JRE_RELEASE_VER = $(JRE_RELEASE_VERSION)"; \
201 echo "SA_BUILD_VERSION = $(HS_BUILD_VER)"; \
202 echo "HOTSPOT_BUILD_USER = $(HOTSPOT_BUILD_USER)"; \
203 echo "HOTSPOT_VM_DISTRO = $(HOTSPOT_VM_DISTRO)"; \
204 echo; \
205 echo "# Used for platform dispatching"; \
206 echo "TARGET_DEFINES = -DTARGET_OS_FAMILY_\$$(Platform_os_family)"; \
207 echo "TARGET_DEFINES += -DTARGET_ARCH_\$$(Platform_arch)"; \
208 echo "TARGET_DEFINES += -DTARGET_ARCH_MODEL_\$$(Platform_arch_model)"; \
209 echo "TARGET_DEFINES += -DTARGET_OS_ARCH_\$$(Platform_os_arch)"; \
210 echo "TARGET_DEFINES += -DTARGET_OS_ARCH_MODEL_\$$(Platform_os_arch_model)"; \
211 echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \
212 echo "CFLAGS += \$$(TARGET_DEFINES)"; \
213 echo; \
240 [ -n "$(CFLAGS_BROWSE)" ] && \
241 echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \
242 [ -n "$(ENABLE_FULL_DEBUG_SYMBOLS)" ] && \
243 echo && echo "ENABLE_FULL_DEBUG_SYMBOLS = $(ENABLE_FULL_DEBUG_SYMBOLS)"; \
244 [ -n "$(OBJCOPY)" ] && \
245 echo && echo "OBJCOPY = $(OBJCOPY)"; \
246 [ -n "$(STRIP_POLICY)" ] && \
247 echo && echo "STRIP_POLICY = $(STRIP_POLICY)"; \
248 [ -n "$(ZIP_DEBUGINFO_FILES)" ] && \
249 echo && echo "ZIP_DEBUGINFO_FILES = $(ZIP_DEBUGINFO_FILES)"; \
250 [ -n "$(ZIPEXE)" ] && \
251 echo && echo "ZIPEXE = $(ZIPEXE)"; \
252 [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \
253 echo && \
254 echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \
255 echo "SYSDEFS += \$$(HOTSPOT_EXTRA_SYSDEFS)"; \
256 echo; \
257 [ -n "$(SPEC)" ] && \
258 echo "include $(SPEC)"; \
259 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(VARIANT).make"; \
260 echo "include \$$(GAMMADIR)/make/excludeSrc.make"; \
261 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(COMPILER).make"; \
262 ) > $@
263
264 flags_vm.make: $(BUILDTREE_MAKE) ../shared_dirs.lst
265 @echo Creating $@ ...
266 $(QUIETLY) ( \
267 $(BUILDTREE_COMMENT); \
268 echo; \
269 [ "$(TARGET)" = profiled ] && \
270 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/optimized.make"; \
271 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \
272 ) > $@
273
274 ../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm
275 @echo Creating directory list $@
276 $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \
277 find $(HS_ALT_SRC)/share/vm/* -prune \
278 -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \
279 \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \
280 fi;
|