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 # 178 # What you get with each target: 179 # 180 # debug* - "thin" libjvm_g - debug info linked into the gamma_g launcher 181 # fastdebug* - optimized compile, but with asserts enabled 182 # jvmg* - "fat" libjvm_g - debug info linked into libjvm_g.so 183 # optimized* - optimized compile, no asserts 184 # profiled* - gprof 185 # product* - the shippable thing: optimized compile, no asserts, -DPRODUCT 186 187 # This target list needs to be coordinated with the usage message 188 # in the build.sh script: 189 TARGETS = debug jvmg fastdebug optimized profiled product 190 191 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) 192 SUBDIR_DOCS = $(OSNAME)_$(VARIANTARCH)_docs 193 else 194 SUBDIR_DOCS = $(OSNAME)_$(BUILDARCH)_docs 195 endif 196 SUBDIRS_C1 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler1/,$(TARGETS)) 197 SUBDIRS_C2 = $(addprefix $(OSNAME)_$(BUILDARCH)_compiler2/,$(TARGETS)) 198 SUBDIRS_TIERED = $(addprefix $(OSNAME)_$(BUILDARCH)_tiered/,$(TARGETS)) 199 SUBDIRS_CORE = $(addprefix $(OSNAME)_$(BUILDARCH)_core/,$(TARGETS)) 200 SUBDIRS_ZERO = $(addprefix $(OSNAME)_$(VARIANTARCH)_zero/,$(TARGETS)) 201 SUBDIRS_SHARK = $(addprefix $(OSNAME)_$(VARIANTARCH)_shark/,$(TARGETS)) 202 203 TARGETS_C2 = $(TARGETS) 204 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) 205 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) 206 TARGETS_CORE = $(addsuffix core,$(TARGETS)) 207 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) 208 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) 209 210 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make 211 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) 212 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) 213 BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE) 214 215 BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS) 216 217 #------------------------------------------------------------------------------- 218 219 # Could make everything by default, but that would take a while. 220 all: 221 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of" 222 @echo " $(TARGETS_C2)" 223 @echo " $(TARGETS_C1)" 224 @echo " $(TARGETS_CORE)" 225 @echo " $(TARGETS_ZERO)" 226 @echo " $(TARGETS_SHARK)" 227 228 checks: check_os_version check_j2se_version 229 230 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, 231 # Solaris 2.5.1, 2.6). 232 # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok. 233 234 SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 235 OS_VERSION := $(shell uname -r) 236 EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION)) 237 238 check_os_version: 239 ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),) 240 $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1; 241 endif 242 243 # jvmti.make requires XSLT (J2SE 1.4.x or newer): 244 XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory 245 # If not found then fail fast. 246 check_j2se_version: 264 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 265 $(BUILDTREE) VARIANT=compiler2 266 endif 267 268 $(SUBDIRS_C1): $(BUILDTREE_MAKE) 269 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 270 $(BUILDTREE) VARIANT=compiler1 271 272 $(SUBDIRS_CORE): $(BUILDTREE_MAKE) 273 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 274 $(BUILDTREE) VARIANT=core 275 276 $(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero 277 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 278 $(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH) 279 280 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero 281 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 282 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) 283 284 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in 285 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ 286 287 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME 288 289 $(TARGETS_C2): $(SUBDIRS_C2) 290 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) 291 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && ./test_gamma 292 ifdef INSTALL 293 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install 294 endif 295 296 $(TARGETS_TIERED): $(SUBDIRS_TIERED) 297 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) 298 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && ./test_gamma 299 ifdef INSTALL 300 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install 301 endif 302 303 $(TARGETS_C1): $(SUBDIRS_C1) 304 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) 305 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && ./test_gamma 306 ifdef INSTALL 307 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install 308 endif 309 310 $(TARGETS_CORE): $(SUBDIRS_CORE) 311 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) 312 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && ./test_gamma 313 ifdef INSTALL 314 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install 315 endif 316 317 $(TARGETS_ZERO): $(SUBDIRS_ZERO) 318 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) 319 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma 320 ifdef INSTALL 321 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install 322 endif 323 324 $(TARGETS_SHARK): $(SUBDIRS_SHARK) 325 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) 326 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma 327 ifdef INSTALL 328 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install 329 endif 330 331 # Just build the tree, and nothing else: 332 tree: $(SUBDIRS_C2) 333 tree1: $(SUBDIRS_C1) 334 treecore: $(SUBDIRS_CORE) 335 treezero: $(SUBDIRS_ZERO) 336 treeshark: $(SUBDIRS_SHARK) 337 338 # Doc target. This is the same for all build options. 339 # Hence create a docs directory beside ...$(ARCH)_[...] 340 # We specify 'BUILD_FLAVOR=product' so that the proper 341 # ENABLE_FULL_DEBUG_SYMBOLS value is used. 342 docs: checks 343 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) 344 $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs 345 346 # Synonyms for win32-like targets. 347 compiler2: jvmg product 348 349 compiler1: jvmg1 product1 350 351 core: jvmgcore productcore 352 353 zero: jvmgzero productzero 354 355 shark: jvmgshark productshark 356 357 clean_docs: 358 rm -rf $(SUBDIR_DOCS) 359 360 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark: 361 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) 362 363 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_docs 364 365 include $(GAMMADIR)/make/cscope.make 366 367 #------------------------------------------------------------------------------- 368 369 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) 370 .PHONY: tree tree1 treecore treezero treeshark 371 .PHONY: all compiler1 compiler2 core zero shark 372 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs 373 .PHONY: checks check_os_version check_j2se_version | 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 # 178 # fastdebugminimal1 minimal1 <os>_<arch>_minimal1/fastdebug 179 # jvmgminimal1 minimal1 <os>_<arch>_minimal1/jvmg 180 # productminimal1 minimal1 <os>_<arch>_minimal1/product 181 # 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 195 ifeq ($(findstring true, $(JVM_VARIANT_ZERO) $(JVM_VARIANT_ZEROSHARK)), true) 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)) 206 SUBDIRS_MINIMAL1 = $(addprefix $(OSNAME)_$(BUILDARCH)_minimal1/,$(TARGETS)) 207 208 TARGETS_C2 = $(TARGETS) 209 TARGETS_C1 = $(addsuffix 1,$(TARGETS)) 210 TARGETS_TIERED = $(addsuffix tiered,$(TARGETS)) 211 TARGETS_CORE = $(addsuffix core,$(TARGETS)) 212 TARGETS_ZERO = $(addsuffix zero,$(TARGETS)) 213 TARGETS_SHARK = $(addsuffix shark,$(TARGETS)) 214 TARGETS_MINIMAL1 = $(addsuffix minimal1,$(TARGETS)) 215 216 BUILDTREE_MAKE = $(GAMMADIR)/make/$(OSNAME)/makefiles/buildtree.make 217 BUILDTREE_VARS = GAMMADIR=$(GAMMADIR) OS_FAMILY=$(OSNAME) SRCARCH=$(SRCARCH) BUILDARCH=$(BUILDARCH) LIBARCH=$(LIBARCH) 218 BUILDTREE_VARS += HOTSPOT_RELEASE_VERSION=$(HOTSPOT_RELEASE_VERSION) HOTSPOT_BUILD_VERSION=$(HOTSPOT_BUILD_VERSION) JRE_RELEASE_VERSION=$(JRE_RELEASE_VERSION) 219 BUILDTREE_VARS += ENABLE_FULL_DEBUG_SYMBOLS=$(ENABLE_FULL_DEBUG_SYMBOLS) OBJCOPY=$(OBJCOPY) STRIP_POLICY=$(STRIP_POLICY) ZIP_DEBUGINFO_FILES=$(ZIP_DEBUGINFO_FILES) ZIPEXE=$(ZIPEXE) 220 221 BUILDTREE = $(MAKE) -f $(BUILDTREE_MAKE) $(BUILDTREE_VARS) 222 223 #------------------------------------------------------------------------------- 224 225 # Could make everything by default, but that would take a while. 226 all: 227 @echo "Try '$(MAKE) <target> ...' where <target> is one or more of" 228 @echo " $(TARGETS_C2)" 229 @echo " $(TARGETS_C1)" 230 @echo " $(TARGETS_CORE)" 231 @echo " $(TARGETS_ZERO)" 232 @echo " $(TARGETS_SHARK)" 233 @echo " $(TARGETS_MINIMAL1)" 234 235 checks: check_os_version check_j2se_version 236 237 # We do not want people accidentally building on old systems (e.g. Linux 2.2.x, 238 # Solaris 2.5.1, 2.6). 239 # Disable this check by setting DISABLE_HOTSPOT_OS_VERSION_CHECK=ok. 240 241 SUPPORTED_OS_VERSION = 2.4% 2.5% 2.6% 3% 242 OS_VERSION := $(shell uname -r) 243 EMPTY_IF_NOT_SUPPORTED = $(filter $(SUPPORTED_OS_VERSION),$(OS_VERSION)) 244 245 check_os_version: 246 ifeq ($(DISABLE_HOTSPOT_OS_VERSION_CHECK)$(EMPTY_IF_NOT_SUPPORTED),) 247 $(QUIETLY) >&2 echo "*** This OS is not supported:" `uname -a`; exit 1; 248 endif 249 250 # jvmti.make requires XSLT (J2SE 1.4.x or newer): 251 XSLT_CHECK = $(REMOTE) $(RUN.JAVAP) javax.xml.transform.TransformerFactory 252 # If not found then fail fast. 253 check_j2se_version: 271 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 272 $(BUILDTREE) VARIANT=compiler2 273 endif 274 275 $(SUBDIRS_C1): $(BUILDTREE_MAKE) 276 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 277 $(BUILDTREE) VARIANT=compiler1 278 279 $(SUBDIRS_CORE): $(BUILDTREE_MAKE) 280 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 281 $(BUILDTREE) VARIANT=core 282 283 $(SUBDIRS_ZERO): $(BUILDTREE_MAKE) platform_zero 284 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 285 $(BUILDTREE) VARIANT=zero VARIANTARCH=$(VARIANTARCH) 286 287 $(SUBDIRS_SHARK): $(BUILDTREE_MAKE) platform_zero 288 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 289 $(BUILDTREE) VARIANT=shark VARIANTARCH=$(VARIANTARCH) 290 291 $(SUBDIRS_MINIMAL1): $(BUILDTREE_MAKE) 292 $(QUIETLY) $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/Makefile checks 293 $(BUILDTREE) VARIANT=minimal1 294 295 296 platform_zero: $(GAMMADIR)/make/$(OSNAME)/platform_zero.in 297 $(SED) 's/@ZERO_ARCHDEF@/$(ZERO_ARCHDEF)/g;s/@ZERO_LIBARCH@/$(ZERO_LIBARCH)/g;' < $< > $@ 298 299 # Define INSTALL=y at command line to automatically copy JVM into JAVA_HOME 300 301 $(TARGETS_C2): $(SUBDIRS_C2) 302 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) 303 ifeq ($(TEST_IN_BUILD),true) 304 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && ./test_gamma 305 endif 306 ifdef INSTALL 307 cd $(OSNAME)_$(BUILDARCH)_compiler2/$@ && $(MAKE) $(MFLAGS) install 308 endif 309 310 $(TARGETS_TIERED): $(SUBDIRS_TIERED) 311 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) 312 ifeq ($(TEST_IN_BUILD),true) 313 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && ./test_gamma 314 endif 315 ifdef INSTALL 316 cd $(OSNAME)_$(BUILDARCH)_tiered/$(patsubst %tiered,%,$@) && $(MAKE) $(MFLAGS) install 317 endif 318 319 $(TARGETS_C1): $(SUBDIRS_C1) 320 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) 321 ifeq ($(TEST_IN_BUILD),true) 322 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && ./test_gamma 323 endif 324 ifdef INSTALL 325 cd $(OSNAME)_$(BUILDARCH)_compiler1/$(patsubst %1,%,$@) && $(MAKE) $(MFLAGS) install 326 endif 327 328 $(TARGETS_CORE): $(SUBDIRS_CORE) 329 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) 330 ifeq ($(TEST_IN_BUILD),true) 331 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && ./test_gamma 332 endif 333 ifdef INSTALL 334 cd $(OSNAME)_$(BUILDARCH)_core/$(patsubst %core,%,$@) && $(MAKE) $(MFLAGS) install 335 endif 336 337 $(TARGETS_ZERO): $(SUBDIRS_ZERO) 338 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) 339 ifeq ($(TEST_IN_BUILD),true) 340 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && ./test_gamma 341 endif 342 ifdef INSTALL 343 cd $(OSNAME)_$(VARIANTARCH)_zero/$(patsubst %zero,%,$@) && $(MAKE) $(MFLAGS) install 344 endif 345 346 $(TARGETS_SHARK): $(SUBDIRS_SHARK) 347 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) 348 ifeq ($(TEST_IN_BUILD),true) 349 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && ./test_gamma 350 endif 351 ifdef INSTALL 352 cd $(OSNAME)_$(VARIANTARCH)_shark/$(patsubst %shark,%,$@) && $(MAKE) $(MFLAGS) install 353 endif 354 355 $(TARGETS_MINIMAL1): $(SUBDIRS_MINIMAL1) 356 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) 357 ifeq ($(TEST_IN_BUILD),true) 358 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && ./test_gamma 359 endif 360 ifdef INSTALL 361 cd $(OSNAME)_$(BUILDARCH)_minimal1/$(patsubst %minimal1,%,$@) && $(MAKE) $(MFLAGS) install 362 endif 363 364 # Just build the tree, and nothing else: 365 tree: $(SUBDIRS_C2) 366 tree1: $(SUBDIRS_C1) 367 treecore: $(SUBDIRS_CORE) 368 treezero: $(SUBDIRS_ZERO) 369 treeshark: $(SUBDIRS_SHARK) 370 treeminimal1: $(SUBDIRS_MINIMAL1) 371 372 # Doc target. This is the same for all build options. 373 # Hence create a docs directory beside ...$(ARCH)_[...] 374 # We specify 'BUILD_FLAVOR=product' so that the proper 375 # ENABLE_FULL_DEBUG_SYMBOLS value is used. 376 docs: checks 377 $(QUIETLY) mkdir -p $(SUBDIR_DOCS) 378 $(MAKE) -f $(GAMMADIR)/make/$(OSNAME)/makefiles/jvmti.make $(MFLAGS) $(BUILDTREE_VARS) JvmtiOutDir=$(SUBDIR_DOCS) BUILD_FLAVOR=product jvmtidocs 379 380 # Synonyms for win32-like targets. 381 compiler2: jvmg product 382 383 compiler1: jvmg1 product1 384 385 core: jvmgcore productcore 386 387 zero: jvmgzero productzero 388 389 shark: jvmgshark productshark 390 391 clean_docs: 392 rm -rf $(SUBDIR_DOCS) 393 394 clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark clean_minimal1: 395 rm -rf $(OSNAME)_$(BUILDARCH)_$(subst clean_,,$@) 396 397 clean: clean_compiler2 clean_compiler1 clean_core clean_zero clean_shark clean_minimal1 clean_docs 398 399 include $(GAMMADIR)/make/cscope.make 400 401 # 402 # Include alternate Makefile if it exists. 403 # 404 -include $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make 405 406 #------------------------------------------------------------------------------- 407 408 .PHONY: $(TARGETS_C2) $(TARGETS_C1) $(TARGETS_CORE) $(TARGETS_ZERO) $(TARGETS_SHARK) $(TARGETS_MINIMAL1) 409 .PHONY: tree tree1 treecore treezero treeshark 410 .PHONY: all compiler1 compiler2 core zero shark 411 .PHONY: clean clean_compiler1 clean_compiler2 clean_core clean_zero clean_shark docs clean_docs 412 .PHONY: checks check_os_version check_j2se_version 413 .PHONY: $(HS_ALT_MAKE)/$(OSNAME)/Makefile.make |