55 # All modules for the current target platform.
56 # Manually add jdk.hotspot.agent for now.
57 ALL_MODULES := $(call FindAllModules) jdk.hotspot.agent
58
59 ################################################################################
60 ################################################################################
61 #
62 # Recipes for all targets. Only recipes, dependencies are declared later.
63 #
64 ################################################################################
65
66 ################################################################################
67 # Interim/build tools targets, compiling tools used during the build
68
69 buildtools-langtools:
70 +($(CD) $(LANGTOOLS_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Tools.gmk)
71
72 interim-langtools:
73 +($(CD) $(LANGTOOLS_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterim.gmk)
74
75 interim-corba:
76 +($(CD) $(CORBA_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterim.gmk)
77
78 interim-rmic:
79 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterimRmic.gmk)
80
81 interim-cldrconverter:
82 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopyInterimCLDRConverter.gmk)
83
84 buildtools-jdk:
85 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Tools.gmk java-tools)
86
87 ALL_TARGETS += buildtools-langtools interim-langtools interim-corba \
88 interim-rmic interim-cldrconverter buildtools-jdk
89
90 ################################################################################
91 # Special targets for certain modules
92
93 import-hotspot:
94 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Import.gmk)
95
96 unpack-sec:
97 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f UnpackSecurity.gmk)
98
99 ALL_TARGETS += import-hotspot unpack-sec
100
101 ################################################################################
102 # Gensrc targets, generating source before java compilation can be done
103 $(eval $(call DeclareRecipesForPhase, GENSRC, \
104 TARGET_SUFFIX := gensrc, \
105 FILE_PREFIX := Gensrc, \
106 MAKE_SUBDIR := gensrc, \
107 CHECK_MODULES := $(ALL_MODULES), \
340 ################################################################################
341 # Targets with recipes above
342
343 # If running an *-only target, parallel execution and dependencies between
344 # recipe targets are disabled. This makes it possible to run a select set of
345 # recipe targets in order. It's the responsibility of the user to make sure
346 # all prerequisites are fulfilled.
347 ifneq ($(findstring -only, $(MAKECMDGOALS)), )
348 .NOTPARALLEL:
349 else
350 $(LANGTOOLS_GENSRC_TARGETS): buildtools-langtools
351
352 interim-langtools: $(LANGTOOLS_GENSRC_TARGETS)
353
354 buildtools-jdk: interim-langtools interim-cldrconverter
355
356 $(CORBA_GENSRC_TARGETS): interim-langtools
357
358 $(JDK_GENSRC_TARGETS): interim-langtools buildtools-jdk
359
360 interim-corba: $(CORBA_GENSRC_TARGETS)
361
362 $(GENDATA_TARGETS): interim-langtools buildtools-jdk
363
364 interim-rmic: interim-langtools
365
366 $(RMIC_TARGETS): interim-langtools interim-corba interim-rmic
367
368 $(JAVA_TARGETS): interim-langtools
369
370 import-hotspot: hotspot
371
372 $(LIBS_TARGETS): import-hotspot
373
374 $(LAUNCHER_TARGETS): java.base-libs
375
376 # The demos are currently linking to libjvm and libjava, just like all other
377 # jdk libs, even though they don't need to. To avoid warnings, make sure they
378 # aren't built until after libjava and libjvm are available to link to.
379 demos-jdk: $(JAVA_TARGETS)
380
381 # Declare dependency from <module>-java to <module>-gensrc
382 $(foreach m, $(GENSRC_MODULES), $(eval $m-java: $m-gensrc))
383
384 # Declare dependencies between java modules
385 $(foreach m, $(JAVA_MODULES), \
386 $(eval $m-java: $(addsuffix -java, $(filter $(JAVA_MODULES), \
446
447 test: jimages test-image
448
449 verify-modules: exploded-image
450
451 test-make: clean-test-make
452
453 build-test-hotspot-jtreg-native: buildtools-jdk
454
455 build-test-jdk-jtreg-native: buildtools-jdk
456
457 test-image-hotspot-jtreg-native: build-test-hotspot-jtreg-native
458
459 test-image-jdk-jtreg-native: build-test-jdk-jtreg-native
460
461 endif
462
463 ################################################################################
464 # Virtual targets without recipes
465
466 buildtools: buildtools-langtools interim-langtools interim-corba interim-rmic \
467 buildtools-jdk
468
469 gensrc: $(GENSRC_TARGETS)
470
471 gendata: $(GENDATA_TARGETS)
472
473 copy: $(COPY_TARGETS)
474
475 java: $(JAVA_TARGETS)
476
477 rmic: $(RMIC_TARGETS)
478
479 libs: $(LIBS_TARGETS)
480
481 launchers: $(LAUNCHER_TARGETS)
482
483 # Explicitly declare dependency for virtual target jdk.jdwp.agent-gensrc which
484 # is actually handled by jdk.jdi-gensrc
485 jdk.jdwp.agent-gensrc: jdk.jdi-gensrc
486
|
55 # All modules for the current target platform.
56 # Manually add jdk.hotspot.agent for now.
57 ALL_MODULES := $(call FindAllModules) jdk.hotspot.agent
58
59 ################################################################################
60 ################################################################################
61 #
62 # Recipes for all targets. Only recipes, dependencies are declared later.
63 #
64 ################################################################################
65
66 ################################################################################
67 # Interim/build tools targets, compiling tools used during the build
68
69 buildtools-langtools:
70 +($(CD) $(LANGTOOLS_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Tools.gmk)
71
72 interim-langtools:
73 +($(CD) $(LANGTOOLS_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterim.gmk)
74
75 interim-rmic:
76 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CompileInterimRmic.gmk)
77
78 interim-cldrconverter:
79 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CopyInterimCLDRConverter.gmk)
80
81 buildtools-jdk:
82 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Tools.gmk java-tools)
83
84 ALL_TARGETS += buildtools-langtools interim-langtools \
85 interim-rmic interim-cldrconverter buildtools-jdk
86
87 ################################################################################
88 # Special targets for certain modules
89
90 import-hotspot:
91 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Import.gmk)
92
93 unpack-sec:
94 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f UnpackSecurity.gmk)
95
96 ALL_TARGETS += import-hotspot unpack-sec
97
98 ################################################################################
99 # Gensrc targets, generating source before java compilation can be done
100 $(eval $(call DeclareRecipesForPhase, GENSRC, \
101 TARGET_SUFFIX := gensrc, \
102 FILE_PREFIX := Gensrc, \
103 MAKE_SUBDIR := gensrc, \
104 CHECK_MODULES := $(ALL_MODULES), \
337 ################################################################################
338 # Targets with recipes above
339
340 # If running an *-only target, parallel execution and dependencies between
341 # recipe targets are disabled. This makes it possible to run a select set of
342 # recipe targets in order. It's the responsibility of the user to make sure
343 # all prerequisites are fulfilled.
344 ifneq ($(findstring -only, $(MAKECMDGOALS)), )
345 .NOTPARALLEL:
346 else
347 $(LANGTOOLS_GENSRC_TARGETS): buildtools-langtools
348
349 interim-langtools: $(LANGTOOLS_GENSRC_TARGETS)
350
351 buildtools-jdk: interim-langtools interim-cldrconverter
352
353 $(CORBA_GENSRC_TARGETS): interim-langtools
354
355 $(JDK_GENSRC_TARGETS): interim-langtools buildtools-jdk
356
357 $(GENDATA_TARGETS): interim-langtools buildtools-jdk
358
359 interim-rmic: interim-langtools
360
361 $(RMIC_TARGETS): interim-langtools interim-rmic
362
363 $(JAVA_TARGETS): interim-langtools
364
365 import-hotspot: hotspot
366
367 $(LIBS_TARGETS): import-hotspot
368
369 $(LAUNCHER_TARGETS): java.base-libs
370
371 # The demos are currently linking to libjvm and libjava, just like all other
372 # jdk libs, even though they don't need to. To avoid warnings, make sure they
373 # aren't built until after libjava and libjvm are available to link to.
374 demos-jdk: $(JAVA_TARGETS)
375
376 # Declare dependency from <module>-java to <module>-gensrc
377 $(foreach m, $(GENSRC_MODULES), $(eval $m-java: $m-gensrc))
378
379 # Declare dependencies between java modules
380 $(foreach m, $(JAVA_MODULES), \
381 $(eval $m-java: $(addsuffix -java, $(filter $(JAVA_MODULES), \
441
442 test: jimages test-image
443
444 verify-modules: exploded-image
445
446 test-make: clean-test-make
447
448 build-test-hotspot-jtreg-native: buildtools-jdk
449
450 build-test-jdk-jtreg-native: buildtools-jdk
451
452 test-image-hotspot-jtreg-native: build-test-hotspot-jtreg-native
453
454 test-image-jdk-jtreg-native: build-test-jdk-jtreg-native
455
456 endif
457
458 ################################################################################
459 # Virtual targets without recipes
460
461 buildtools: buildtools-langtools interim-langtools interim-rmic \
462 buildtools-jdk
463
464 gensrc: $(GENSRC_TARGETS)
465
466 gendata: $(GENDATA_TARGETS)
467
468 copy: $(COPY_TARGETS)
469
470 java: $(JAVA_TARGETS)
471
472 rmic: $(RMIC_TARGETS)
473
474 libs: $(LIBS_TARGETS)
475
476 launchers: $(LAUNCHER_TARGETS)
477
478 # Explicitly declare dependency for virtual target jdk.jdwp.agent-gensrc which
479 # is actually handled by jdk.jdi-gensrc
480 jdk.jdwp.agent-gensrc: jdk.jdi-gensrc
481
|