make/idea/idea.gmk
author rprotacio
Mon, 24 Apr 2017 12:08:28 -0400
changeset 46404 ae62ba99a1a7
parent 37976 9cc5debe0f47
child 48667 f2344724a475
permissions -rw-r--r--
8165896: Use "open" flag from JVM_DefineModule to export all module packages Summary: Implemented VM side of open modules, which export all their packages unqualifiedly. Automatic modules and unnamed modules are treated internally as open modules. Reviewed-by: alanb, hseigel, lfoltan

include Makefile
include make/MainSupport.gmk

.PHONY: idea

ifeq ($(SPEC),)
  ifneq ($(words $(SPECS)),1)
	@echo "Error: Multiple build specification files found. Please select one explicitly."
	@exit 2
  endif
  idea:
	@cd $(topdir)
	@$(MAKE) $(MFLAGS) $(MAKE_LOG_FLAGS) -r -R -j 1 -f $(topdir)/make/idea/idea.gmk SPEC=$(SPECS) HAS_SPEC=true ACTUAL_TOPDIR=$(topdir) MODULES="$(MODULES)" idea
else #with SPEC
  include make/common/Modules.gmk

  ifeq ($(MODULES),)
    SEL_MODULES := $(call FindAllModules)
  else
    SEL_MODULES := $(MODULES)
  endif

  # Find all source dirs for a particular module
  # $1 - Module to find source dirs for
  FindIdeaModuleSrcDirs = \
    $(strip $(addsuffix /$(strip $1), $(GENERATED_SRC_DIRS) $(IMPORT_MODULES_SRC)) \
        $(wildcard $(foreach sub, $(SRC_SUBDIRS), $(addsuffix /$(strip $1)/$(sub), $(TOP_SRC_DIRS)))))


  idea:
	$(ECHO) "SUPPORT=$(SUPPORT_OUTPUTDIR)" >> $(OUT)
	$(ECHO) "MODULE_ROOTS=\"$(foreach mod, $(SEL_MODULES), $(call FindIdeaModuleSrcDirs,$(mod)))\"" >> $(OUT)
	$(ECHO) "MODULE_NAMES=\"$(strip $(foreach mod, $(SEL_MODULES), $(mod)))\"" >> $(OUT)
	$(ECHO) "SEL_MODULES=\"$(SEL_MODULES)\"" >> $(OUT)
	$(ECHO) "BOOT_JDK=\"$(BOOT_JDK)\"" >> $(OUT)
	$(ECHO) "CYGPATH=\"$(CYGPATH)\"" >> $(OUT)
	$(ECHO) "SPEC=\"$(SPEC)\"" >> $(OUT)
	$(ECHO) "JT_HOME=\"$(JT_HOME)\"" >> $(OUT)

endif