1 include Makefile
   2 include make/MainSupport.gmk
   3 
   4 .PHONY: idea
   5 
   6 ifeq ($(SPEC),)
   7   ifneq ($(words $(SPECS)),1)
   8         @echo "Error: Multiple build specification files found. Please select one explicitly."
   9         @exit 2
  10   endif
  11   idea:
  12         @cd $(topdir)
  13         @$(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
  14 else #with SPEC
  15   include make/common/Modules.gmk
  16 
  17   ifeq ($(MODULES),)
  18     SEL_MODULES := $(call FindAllModules)
  19   else
  20     SEL_MODULES := $(MODULES)
  21   endif
  22 
  23   # Find all source dirs for a particular module
  24   # $1 - Module to find source dirs for
  25   FindIdeaModuleSrcDirs = \
  26     $(strip $(addsuffix /$(strip $1), $(GENERATED_SRC_DIRS) $(IMPORT_MODULES_SRC)) \
  27         $(wildcard $(foreach sub, $(SRC_SUBDIRS), $(addsuffix /$(strip $1)/$(sub), $(TOP_SRC_DIRS)))))
  28 
  29 
  30   idea:
  31         $(ECHO) "SUPPORT=$(SUPPORT_OUTPUTDIR)" >> $(OUT)
  32         $(ECHO) "MODULE_ROOTS=\"$(foreach mod, $(SEL_MODULES), $(call FindIdeaModuleSrcDirs,$(mod)))\"" >> $(OUT)
  33         $(ECHO) "MODULE_NAMES=\"$(strip $(foreach mod, $(SEL_MODULES), $(mod)))\"" >> $(OUT)
  34         $(ECHO) "SEL_MODULES=\"$(SEL_MODULES)\"" >> $(OUT)
  35         $(ECHO) "BOOT_JDK=\"$(BOOT_JDK)\"" >> $(OUT)
  36         $(ECHO) "CYGPATH=\"$(CYGPATH)\"" >> $(OUT)
  37         $(ECHO) "SPEC=\"$(SPEC)\"" >> $(OUT)
  38 
  39 endif