217 ALL_TARGETS += demos samples
218
219 ################################################################################
220 # Image targets
221
222 # Stores the tips for each repository. This file is be used when constructing the jdk image and can be
223 # used to track the exact sources used to build that image.
224 source-tips: $(OUTPUT_ROOT)/source_tips
225 $(OUTPUT_ROOT)/source_tips: FRC
226 @$(MKDIR) -p $(@D)
227 @$(RM) $@
228 @$(call GetSourceTips)
229
230 security-jars:
231 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CreateSecurityJars.gmk)
232
233 nashorn-jar:
234 +($(CD) $(NASHORN_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f BuildNashorn.gmk all)
235
236 # Creates the jar files (rt.jar resources.jar etc)
237 # this depends on all modules built
238 main-jars: exploded-image
239 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CreateJars.gmk)
240
241 # Creates the images (j2sdk-image j2re-image etc)
242 images:
243 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Images.gmk)
244 ifeq ($(OPENJDK_TARGET_OS), macosx)
245 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Bundles.gmk)
246 endif
247
248 # Create Compact Profile jars
249 PROFILE_JARS_TARGETS := $(addsuffix -jars, $(ALL_PROFILES))
250 $(PROFILE_JARS_TARGETS):
251 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) PROFILE=$(@:%-jars=%) -f CreateJars.gmk)
252
253 # Create Compact Profile images
254 PROFILE_IMAGES_TARGETS := $(addsuffix -images, $(ALL_PROFILES))
255 $(PROFILE_IMAGES_TARGETS):
256 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) PROFILE=$(@:%-images=%) \
257 JRE_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/j2re-$(word $(call profile_number,$(@:%-images=%)),$(PROFILE_NAMES))-image \
258 -f Images.gmk profile-image)
338 build-tools-jdk: interim-langtools
339
340 $(CORBA_GENSRC_TARGETS): interim-langtools
341
342 $(JDK_GENSRC_TARGETS): interim-langtools build-tools-jdk
343
344 interim-corba: $(CORBA_GENSRC_TARGETS)
345
346 $(GENDATA_TARGETS): interim-langtools build-tools-jdk
347
348 interim-rmic: interim-langtools
349
350 $(RMIC_TARGETS): interim-langtools interim-corba interim-rmic
351
352 import-hotspot: hotspot
353
354 $(LIB_TARGETS): import-hotspot
355
356 $(LAUNCHER_TARGETS): java.base-libs
357
358 demos: $(JAVA_TARGETS)
359
360 # Declare dependency from <module>-java to <module>-gensrc
361 $(foreach m, $(GENSRC_MODULES), $(eval $m-java: $m-gensrc))
362
363 # Declare dependencies between java modules
364 $(foreach m, $(JAVA_MODULES), \
365 $(eval $m-java: $(addsuffix -java, $(filter $(JAVA_MODULES), \
366 $(call FindDepsForModule,$m)))))
367
368 # Declare dependencies between <module>-rmic to <module>-java
369 $(foreach m, $(RMIC_MODULES), $(eval $m-rmic: $m-java))
370
371 # Declare dependencies from <module>-lib to <module>-java
372 # Skip jdk.jdwp.agent as it contains no java code.
373 $(foreach m, $(filter-out jdk.jdwp.agent, $(LIB_MODULES)), $(eval $m-libs: $m-java))
374
375 # Declare dependencies from all other <module>-lib to java.base-lib
376 $(foreach t, $(filter-out java.base-libs, $(LIB_TARGETS)), \
377 $(eval $t: java.base-libs))
378 # Declare the special case dependency for jdk.deploy.osx where libosx
379 # links against libosxapp.
380 jdk.deploy.osx-libs: java.desktop-libs
381
382 # This dependency needs to be explicitly declared. jdk.jdi-gensrc generates a
383 # header file used by jdk.jdwp libs.
384 jdk.jdwp-libs: jdk.jdi-gensrc
385
386 # Explicitly add dependencies for special targets
387 java.base-java: unpack-sec
388
389 security-jars: java
390
391 nashorn-jar: jdk.scripting.nashorn-java
392
393 main-jars: java rmic security-jars nashorn-jar policy-jars import-hotspot
394
395 # On windows, the jars target needs to wait for jgss libs to be built.
396 # Should ideally split out the sec-bin zip file generation to avoid
397 # this dependency.
398 ifeq ($(OPENJDK_TARGET_OS), windows)
399 main-jars: java.security.jgss-libs
400 endif
401
402 images: jars demos samples exploded-image source-tips
403
404 bootcycle-images: images
405
406 # Need to depend on jars as otherwise there will a race between all the
407 # invocations of CreateJars.gmk.
408 $(PROFILE_JARS_TARGETS): jars profiles-oscheck
409
410 $(PROFILE_IMAGES_TARGETS): demos samples exploded-image source-tips
411
412 # Declare dependencies from <profile>-images to <profile>-jars
413 $(foreach p, $(ALL_PROFILES), $(eval $p-images: $p-jars))
|
217 ALL_TARGETS += demos samples
218
219 ################################################################################
220 # Image targets
221
222 # Stores the tips for each repository. This file is be used when constructing the jdk image and can be
223 # used to track the exact sources used to build that image.
224 source-tips: $(OUTPUT_ROOT)/source_tips
225 $(OUTPUT_ROOT)/source_tips: FRC
226 @$(MKDIR) -p $(@D)
227 @$(RM) $@
228 @$(call GetSourceTips)
229
230 security-jars:
231 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CreateSecurityJars.gmk)
232
233 nashorn-jar:
234 +($(CD) $(NASHORN_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f BuildNashorn.gmk all)
235
236 # Creates the jar files (rt.jar resources.jar etc)
237 main-jars:
238 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f CreateJars.gmk)
239
240 # Creates the images (j2sdk-image j2re-image etc)
241 images:
242 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Images.gmk)
243 ifeq ($(OPENJDK_TARGET_OS), macosx)
244 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) -f Bundles.gmk)
245 endif
246
247 # Create Compact Profile jars
248 PROFILE_JARS_TARGETS := $(addsuffix -jars, $(ALL_PROFILES))
249 $(PROFILE_JARS_TARGETS):
250 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) PROFILE=$(@:%-jars=%) -f CreateJars.gmk)
251
252 # Create Compact Profile images
253 PROFILE_IMAGES_TARGETS := $(addsuffix -images, $(ALL_PROFILES))
254 $(PROFILE_IMAGES_TARGETS):
255 +($(CD) $(JDK_TOPDIR)/make && $(MAKE) $(MAKE_ARGS) PROFILE=$(@:%-images=%) \
256 JRE_IMAGE_DIR=$(IMAGES_OUTPUTDIR)/j2re-$(word $(call profile_number,$(@:%-images=%)),$(PROFILE_NAMES))-image \
257 -f Images.gmk profile-image)
337 build-tools-jdk: interim-langtools
338
339 $(CORBA_GENSRC_TARGETS): interim-langtools
340
341 $(JDK_GENSRC_TARGETS): interim-langtools build-tools-jdk
342
343 interim-corba: $(CORBA_GENSRC_TARGETS)
344
345 $(GENDATA_TARGETS): interim-langtools build-tools-jdk
346
347 interim-rmic: interim-langtools
348
349 $(RMIC_TARGETS): interim-langtools interim-corba interim-rmic
350
351 import-hotspot: hotspot
352
353 $(LIB_TARGETS): import-hotspot
354
355 $(LAUNCHER_TARGETS): java.base-libs
356
357 # The demos are currently linking to libjvm and libjava, just like all other
358 # jdk libs, even though they don't need to. To avoid warnings, make sure they
359 # aren't built until after libjava and libjvm are available to link to.
360 demos: $(JAVA_TARGETS)
361
362 # Declare dependency from <module>-java to <module>-gensrc
363 $(foreach m, $(GENSRC_MODULES), $(eval $m-java: $m-gensrc))
364
365 # Declare dependencies between java modules
366 $(foreach m, $(JAVA_MODULES), \
367 $(eval $m-java: $(addsuffix -java, $(filter $(JAVA_MODULES), \
368 $(call FindDepsForModule,$m)))))
369
370 # Declare dependencies between <module>-rmic to <module>-java
371 $(foreach m, $(RMIC_MODULES), $(eval $m-rmic: $m-java))
372
373 # Declare dependencies from <module>-lib to <module>-java
374 # Skip jdk.jdwp.agent as it contains no java code.
375 $(foreach m, $(filter-out jdk.jdwp.agent, $(LIB_MODULES)), $(eval $m-libs: $m-java))
376
377 # Declare dependencies from all other <module>-lib to java.base-lib
378 $(foreach t, $(filter-out java.base-libs, $(LIB_TARGETS)), \
379 $(eval $t: java.base-libs))
380 # Declare the special case dependency for jdk.deploy.osx where libosx
381 # links against libosxapp.
382 jdk.deploy.osx-libs: java.desktop-libs
383
384 # This dependency needs to be explicitly declared. jdk.jdi-gensrc generates a
385 # header file used by jdk.jdwp libs.
386 jdk.jdwp.agent-libs: jdk.jdi-gensrc
387
388 # Explicitly add dependencies for special targets
389 java.base-java: unpack-sec
390
391 security-jars: java
392
393 nashorn-jar: jdk.scripting.nashorn-java
394
395 main-jars: java rmic security-jars nashorn-jar policy-jars import-hotspot gendata
396
397 # On windows, the jars target needs to wait for jgss libs to be built.
398 # Should ideally split out the sec-bin zip file generation to avoid
399 # this dependency.
400 ifeq ($(OPENJDK_TARGET_OS), windows)
401 main-jars: java.security.jgss-libs
402 endif
403
404 images: jars demos samples exploded-image source-tips
405
406 bootcycle-images: images
407
408 # Need to depend on jars as otherwise there will a race between all the
409 # invocations of CreateJars.gmk.
410 $(PROFILE_JARS_TARGETS): jars profiles-oscheck
411
412 $(PROFILE_IMAGES_TARGETS): demos samples exploded-image source-tips
413
414 # Declare dependencies from <profile>-images to <profile>-jars
415 $(foreach p, $(ALL_PROFILES), $(eval $p-images: $p-jars))
|