Skip to content

Commit

Permalink
Merge pull request #784 from keithc-ca/module-deps
Browse files Browse the repository at this point in the history
Simplify and improve module dependency management
  • Loading branch information
pshipton committed May 31, 2024
2 parents 3a146fa + 9f8f860 commit db46be2
Show file tree
Hide file tree
Showing 5 changed files with 6 additions and 30 deletions.
1 change: 0 additions & 1 deletion closed/OpenJ9.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ ifeq (,$(wildcard $(SPEC)))
endif
include $(SPEC)
include $(TOPDIR)/make/common/MakeBase.gmk
include $(TOPDIR)/closed/JPP.gmk

ifeq (,$(BUILD_ID))
BUILD_ID := 000000
Expand Down
1 change: 0 additions & 1 deletion closed/autoconf/custom-spec.gmk.in
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,6 @@ $(foreach var, \
$(eval $(var) += -I$(SUPPORT_OUTPUTDIR)/openj9_include))

J9JCL_SOURCES_DIR := $(SUPPORT_OUTPUTDIR)/j9jcl
J9JCL_SOURCES_DONEFILE := $(MAKESUPPORT_OUTPUTDIR)/j9jcl.done

ifeq (riscv64,$(OPENJDK_TARGET_CPU))
ifeq (cross,$(COMPILE_TYPE))
Expand Down
13 changes: 6 additions & 7 deletions closed/GensrcJ9JCL.gmk → closed/custom/Main-post.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -18,12 +18,6 @@
# 2 along with this work; if not, see <http://www.gnu.org/licenses/>.
# ===========================================================================

.PHONY : all

all :

include $(SPEC)
include $(TOPDIR)/make/common/MakeBase.gmk
include $(TOPDIR)/closed/JPP.gmk

RecursiveWildcard = $(foreach dir,$(wildcard $1/*),$(call RecursiveWildcard,$(dir),$2) $(filter $(subst *,%,$2),$(dir)))
Expand Down Expand Up @@ -59,6 +53,8 @@ $(eval $(call SetupCopyFiles,COPY_OVERLAY_FILES, \

IncludeIfUnsure := -includeIfUnsure -noWarnIncludeIf

J9JCL_SOURCES_DONEFILE := $(MAKESUPPORT_OUTPUTDIR)/j9jcl.done

$(J9JCL_SOURCES_DONEFILE) : \
$(foreach dir, $(JppSourceDirs), $(call RecursiveWildcard,$(dir),*)) \
$(COPY_OVERLAY_FILES)
Expand All @@ -80,4 +76,7 @@ $(J9JCL_SOURCES_DONEFILE) : \
@$(MKDIR) -p $(@D)
@$(TOUCH) $@

all : $(J9JCL_SOURCES_DONEFILE)
# Force (re-)generation of module dependencies after preprocessing OpenJ9 source files.
$(MODULE_DEPS_MAKEFILE) : $(J9JCL_SOURCES_DONEFILE)

# $(error in Main-post.gmk)
8 changes: 0 additions & 8 deletions closed/custom/Main.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -36,14 +36,6 @@ PHASE_MAKEDIRS := $(TOPDIR)/closed/make $(PHASE_MAKEDIRS)

OPENJ9_MAKE := $(MAKE) $(MAKE_ARGS) -f $(TOPDIR)/closed/OpenJ9.gmk

# An early part of the build process involves computing the list of main targets.
# Those targets include {module}-java, {module}-jmod, etc. which requires that the
# set of module names be known. We must build and run the preprocessor to ensure the
# modules specific to OpenJ9 will be found and included in that set. The next two
# rules make that happen.

create-main-targets-include java.base-gensrc : generate-j9jcl-sources

j9vm-build : buildtools-langtools
ifeq ($(BUILD_OPENSSL),yes)
@+$(MAKE) $(MAKE_ARGS) -f $(TOPDIR)/closed/openssl.gmk
Expand Down
13 changes: 0 additions & 13 deletions closed/custom/common/Modules.gmk
Original file line number Diff line number Diff line change
Expand Up @@ -59,16 +59,3 @@ TOP_SRC_DIRS += \
ifeq (true,$(BUILD_OPENJCEPLUS))
TOP_SRC_DIRS += $(OPENJCEPLUS_TOPDIR)/src/main
endif

.PHONY : generate-j9jcl-sources

generate-j9jcl-sources $(J9JCL_SOURCES_DONEFILE) :
@+$(MAKE) $(MAKE_ARGS) -f $(TOPDIR)/closed/GensrcJ9JCL.gmk

# When building multiple configurations at once (e.g. 'make CONF= images')
# the 'create-main-targets-include' target will only be considered for the
# first configuration; J9JCL source generation will be delayed for other
# configurations. In order to produce a complete module-deps.gmk, we need
# to ensure that the J9JCL source has been generated.

-include $(J9JCL_SOURCES_DONEFILE)

0 comments on commit db46be2

Please sign in to comment.