54 # |
54 # |
55 # The makefiles are split this way so that "make foo" will run faster by not |
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. |
56 # having to read the dependency files for the vm. |
57 |
57 |
58 include $(GAMMADIR)/make/scm.make |
58 include $(GAMMADIR)/make/scm.make |
|
59 include $(GAMMADIR)/make/altsrc.make |
59 |
60 |
60 # 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details. |
61 # 'gmake MAKE_VERBOSE=y' or 'gmake QUIETLY=' gives all the gory details. |
61 QUIETLY$(MAKE_VERBOSE) = @ |
62 QUIETLY$(MAKE_VERBOSE) = @ |
62 |
63 |
63 # For now, until the compiler is less wobbly: |
64 # For now, until the compiler is less wobbly: |
137 HOTSPOT_BUILD_USER := $(shell whoami) |
138 HOTSPOT_BUILD_USER := $(shell whoami) |
138 endif |
139 endif |
139 # Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro |
140 # Define HOTSPOT_VM_DISTRO based on settings in make/openjdk_distro |
140 # or make/hotspot_distro. |
141 # or make/hotspot_distro. |
141 ifndef HOTSPOT_VM_DISTRO |
142 ifndef HOTSPOT_VM_DISTRO |
142 CLOSED_DIR_EXISTS := $(shell \ |
143 ifeq ($(call if-has-altsrc,$(HS_COMMON_SRC)/,true,false),true) |
143 if [ -d $(GAMMADIR)/src/closed ] ; then \ |
|
144 echo true; \ |
|
145 else \ |
|
146 echo false; \ |
|
147 fi) |
|
148 ifeq ($(CLOSED_DIR_EXISTS), true) |
|
149 include $(GAMMADIR)/make/hotspot_distro |
144 include $(GAMMADIR)/make/hotspot_distro |
150 else |
145 else |
151 include $(GAMMADIR)/make/openjdk_distro |
146 include $(GAMMADIR)/make/openjdk_distro |
152 endif |
147 endif |
153 endif |
148 endif |
167 $(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F) |
162 $(QUIETLY) cd $@ && $(BUILDTREE) TARGET=$(@F) |
168 $(QUIETLY) touch $@ |
163 $(QUIETLY) touch $@ |
169 |
164 |
170 $(SIMPLE_DIRS): |
165 $(SIMPLE_DIRS): |
171 $(QUIETLY) mkdir -p $@ |
166 $(QUIETLY) mkdir -p $@ |
|
167 |
|
168 # Convenience macro which takes a source relative path, applies $(1) to the |
|
169 # absolute path, and then replaces $(GAMMADIR) in the result with a |
|
170 # literal "$(GAMMADIR)/" suitable for inclusion in a Makefile. |
|
171 gamma-path=$(subst $(GAMMADIR),\$$(GAMMADIR),$(call $(1),$(HS_COMMON_SRC)/$(2))) |
172 |
172 |
173 flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst |
173 flags.make: $(BUILDTREE_MAKE) ../shared_dirs.lst |
174 @echo Creating $@ ... |
174 @echo Creating $@ ... |
175 $(QUIETLY) ( \ |
175 $(QUIETLY) ( \ |
176 $(BUILDTREE_COMMENT); \ |
176 $(BUILDTREE_COMMENT); \ |
200 echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \ |
200 echo "TARGET_DEFINES += -DTARGET_COMPILER_\$$(Platform_compiler)"; \ |
201 echo "CFLAGS += \$$(TARGET_DEFINES)"; \ |
201 echo "CFLAGS += \$$(TARGET_DEFINES)"; \ |
202 echo; \ |
202 echo; \ |
203 echo "Src_Dirs_V = \\"; \ |
203 echo "Src_Dirs_V = \\"; \ |
204 sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \ |
204 sed 's/$$/ \\/;s|$(GAMMADIR)|$$(GAMMADIR)|' ../shared_dirs.lst; \ |
205 echo "\$$(GAMMADIR)/src/cpu/$(ARCH)/vm \\"; \ |
205 echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \ |
206 echo "\$$(GAMMADIR)/src/os/$(OS_FAMILY)/vm \\"; \ |
206 echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \ |
207 echo "\$$(GAMMADIR)/src/os_cpu/$(OS_FAMILY)_$(ARCH)/vm"; \ |
207 echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \ |
|
208 echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \ |
|
209 echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \ |
|
210 echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \ |
|
211 echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \ |
|
212 echo "$(call gamma-path,commonsrc,os/posix/vm)"; \ |
208 echo; \ |
213 echo; \ |
209 echo "Src_Dirs_I = \\"; \ |
214 echo "Src_Dirs_I = \\"; \ |
210 echo "\$$(GAMMADIR)/src/share/vm \\"; \ |
215 echo "$(call gamma-path,altsrc,share/vm/prims) \\"; \ |
211 echo "\$$(GAMMADIR)/src/share/vm/prims \\"; \ |
216 echo "$(call gamma-path,commonsrc,share/vm/prims) \\"; \ |
212 echo "\$$(GAMMADIR)/src/cpu/$(ARCH)/vm \\"; \ |
217 echo "$(call gamma-path,altsrc,share/vm) \\"; \ |
213 echo "\$$(GAMMADIR)/src/os/$(OS_FAMILY)/vm \\"; \ |
218 echo "$(call gamma-path,commonsrc,share/vm) \\"; \ |
214 echo "\$$(GAMMADIR)/src/os_cpu/$(OS_FAMILY)_$(ARCH)/vm"; \ |
219 echo "$(call gamma-path,altsrc,cpu/$(ARCH)/vm) \\"; \ |
|
220 echo "$(call gamma-path,commonsrc,cpu/$(ARCH)/vm) \\"; \ |
|
221 echo "$(call gamma-path,altsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \ |
|
222 echo "$(call gamma-path,commonsrc,os_cpu/$(OS_FAMILY)_$(ARCH)/vm) \\"; \ |
|
223 echo "$(call gamma-path,altsrc,os/$(OS_FAMILY)/vm) \\"; \ |
|
224 echo "$(call gamma-path,commonsrc,os/$(OS_FAMILY)/vm) \\"; \ |
|
225 echo "$(call gamma-path,altsrc,os/posix/vm) \\"; \ |
|
226 echo "$(call gamma-path,commonsrc,os/posix/vm)"; \ |
215 [ -n "$(CFLAGS_BROWSE)" ] && \ |
227 [ -n "$(CFLAGS_BROWSE)" ] && \ |
216 echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \ |
228 echo && echo "CFLAGS_BROWSE = $(CFLAGS_BROWSE)"; \ |
217 [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \ |
229 [ -n "$(HOTSPOT_EXTRA_SYSDEFS)" ] && \ |
218 echo && \ |
230 echo && \ |
219 echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \ |
231 echo "HOTSPOT_EXTRA_SYSDEFS\$$(HOTSPOT_EXTRA_SYSDEFS) = $(HOTSPOT_EXTRA_SYSDEFS)" && \ |
233 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \ |
245 echo "include \$$(GAMMADIR)/make/$(OS_FAMILY)/makefiles/$(TARGET).make"; \ |
234 ) > $@ |
246 ) > $@ |
235 |
247 |
236 ../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm |
248 ../shared_dirs.lst: $(BUILDTREE_MAKE) $(GAMMADIR)/src/share/vm |
237 @echo Creating directory list $@ |
249 @echo Creating directory list $@ |
238 $(QUIETLY) find $(GAMMADIR)/src/share/vm/* -prune \ |
250 $(QUIETLY) if [ -d $(HS_ALT_SRC)/share/vm ]; then \ |
|
251 find $(HS_ALT_SRC)/share/vm/* -prune \ |
|
252 -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \ |
|
253 \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@; \ |
|
254 fi; |
|
255 $(QUIETLY) find $(HS_COMMON_SRC)/share/vm/* -prune \ |
239 -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \ |
256 -type d \! \( $(TOPLEVEL_EXCLUDE_DIRS) \) -exec find {} \ |
240 \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; > $@ |
257 \( $(ALWAYS_EXCLUDE_DIRS) \) -prune -o -type d -print \; >> $@ |
241 |
258 |
242 Makefile: $(BUILDTREE_MAKE) |
259 Makefile: $(BUILDTREE_MAKE) |
243 @echo Creating $@ ... |
260 @echo Creating $@ ... |
244 $(QUIETLY) ( \ |
261 $(QUIETLY) ( \ |
245 $(BUILDTREE_COMMENT); \ |
262 $(BUILDTREE_COMMENT); \ |