diff -r ffe6bce5a521 -r efd6a05935b2 jdk/makefiles/Makefile --- a/jdk/makefiles/Makefile Wed Jul 05 18:22:17 2017 +0200 +++ b/jdk/makefiles/Makefile Tue Sep 18 11:29:24 2012 -0700 @@ -26,6 +26,11 @@ # This must be the first rule default: all +# Inclusion of this pseudo-target will cause make to execute this file +# serially, regardless of -j. Recursively called makefiles will not be +# affected, however. This is required for correct dependency management. +.NOTPARALLEL: + include $(SPEC) include MakeBase.gmk include JavaCompilation.gmk @@ -37,39 +42,72 @@ # Setup the build tools. include Tools.gmk -all: $(BUILD_TOOLS) +import: $(BUILD_TOOLS) import-only +import-only: # Import (corba jaxp jaxws langtools hotspot) +$(MAKE) -f Import.gmk -# + +gensrc: import gensrc-only +gensrc-only: +$(MAKE) -f GenerateJavaSources.gmk # Ok, now gensrc is fully populated. + +gendata: gensrc gendata-only +gendata-only: +$(MAKE) -f GenerateData.gmk + +classes: gendata classes-only +classes-only: +$(MAKE) -f CompileJavaClasses.gmk # The classes are now built and # any javah files have now been generated. + +libs: classes libs-only +libs-only: +$(MAKE) -f CompileNativeLibraries.gmk + +launchers: libs launchers-only +launchers-only: # Finally compile the launchers. +$(MAKE) -f CompileLaunchers.gmk + +genclasses: launchers genclasses-only +genclasses-only: # Generate classes that have other sources. Needs # to execute launchers. +$(MAKE) -f GenerateClasses.gmk + +demos: genclasses demos-only +demos-only: # Now we have a complete jdk, which you can run. # It is not yet wrapped up as an installed image. # The demos are compiled against this jdk. ifndef NO_DEMOS +$(MAKE) -f CompileDemos.gmk endif + +samples: demos samples-only +samples-only: # Now copy the sample sources into the jdk. ifndef NO_SAMPLES +$(MAKE) -f CopySamples.gmk endif +# The all target builds the JDK, but not the images +all: import gensrc gendata classes libs launchers genclasses demos samples + +.PHONY: all images install overlay-images import-only gensrc-only gendata-only classes-only +.PHONY: libs-only launchers-only genclasses-only demos-only samples-only + # Create the final jdk and jre images, to be wrapped up # into packages, or installed. images: +$(MAKE) -f CreateJars.gmk +$(MAKE) -f Images.gmk +overlay-images: + +$(MAKE) -f CompileLaunchers.gmk OVERLAY_IMAGES=true + +$(MAKE) -f Images.gmk overlay-images BINARIES:=$(shell if test -d $(IMAGES_OUTPUTDIR)/j2sdk-image/bin; then cd $(IMAGES_OUTPUTDIR)/j2sdk-image/bin && $(LS) ; fi) INSTALLDIR:=openjdk-$(RELEASE) @@ -84,5 +122,3 @@ $(CP) -rp $(IMAGES_OUTPUTDIR)/j2sdk-image/* $(INSTALL_PREFIX)/jvm/$(INSTALLDIR) $(RM) $(addprefix $(INSTALL_PREFIX)/bin/,$(BINARIES)) $(foreach b,$(BINARIES),$(LN) -s $(INSTALL_PREFIX)/jvm/$(INSTALLDIR)/bin/$b $(INSTALL_PREFIX)/bin/$b &&) true - -.PHONY: all install images