< prev index next >

make/Init.gmk

Print this page




  35 
  36 # Inclusion of this pseudo-target will cause make to execute this file
  37 # serially, regardless of -j.
  38 .NOTPARALLEL:
  39 
  40 # If included from the top-level Makefile then topdir is set, but not when
  41 # recursively calling ourself with a spec.
  42 ifeq ($(topdir),)
  43   topdir := $(strip $(patsubst %/make/, %, $(dir $(lastword $(MAKEFILE_LIST)))))
  44 endif
  45 
  46 # Our helper functions. Will include $(SPEC) if $(HAS_SPEC) is true.
  47 include $(topdir)/make/InitSupport.gmk
  48 
  49 # Here are "global" targets, i.e. targets that can be executed without having a configuration.
  50 # This will define ALL_GLOBAL_TARGETS.
  51 include $(topdir)/make/Help.gmk
  52 
  53 # Extract main targets from Main.gmk.
  54 ifneq ($(any_spec_file), )
  55   ifeq ($(wildcard $(dir $(any_spec_file))/make-support),)
  56     # If make-support does not exist, we need to build the genmodules java tool first.
  57     $(info Creating data for first make execution in new configuration...)
  58     ignore_output := $(shell $(MAKE) -r -R -f $(topdir)/make/Main.gmk \
  59         -I $(topdir)/make/common SPEC=$(any_spec_file) NO_RECIPES=true FRC)
  60     $(info Done)
  61   endif
  62   ALL_MAIN_TARGETS := $(shell $(MAKE) -r -R -f $(topdir)/make/Main.gmk \
  63       -I $(topdir)/make/common SPEC=$(any_spec_file) NO_RECIPES=true print-targets)
  64 else
  65   # Without at least a single valid configuration, we cannot extract any real
  66   # targets. To provide a helpful error message about the missing configuration
  67   # later on, accept whatever targets the user has provided for now.
  68   ALL_MAIN_TARGETS := $(if $(MAKECMDGOALS), $(MAKECMDGOALS), default)
  69 endif
  70 
  71 # Targets provided by this file.
  72 ALL_INIT_TARGETS := reconfigure
  73 
  74 ALL_TARGETS := $(sort $(ALL_GLOBAL_TARGETS) $(ALL_MAIN_TARGETS) $(ALL_INIT_TARGETS))
  75 




  35 
  36 # Inclusion of this pseudo-target will cause make to execute this file
  37 # serially, regardless of -j.
  38 .NOTPARALLEL:
  39 
  40 # If included from the top-level Makefile then topdir is set, but not when
  41 # recursively calling ourself with a spec.
  42 ifeq ($(topdir),)
  43   topdir := $(strip $(patsubst %/make/, %, $(dir $(lastword $(MAKEFILE_LIST)))))
  44 endif
  45 
  46 # Our helper functions. Will include $(SPEC) if $(HAS_SPEC) is true.
  47 include $(topdir)/make/InitSupport.gmk
  48 
  49 # Here are "global" targets, i.e. targets that can be executed without having a configuration.
  50 # This will define ALL_GLOBAL_TARGETS.
  51 include $(topdir)/make/Help.gmk
  52 
  53 # Extract main targets from Main.gmk.
  54 ifneq ($(any_spec_file), )
  55   ifeq ($(wildcard $(dir $(any_spec_file))/make-support/module-deps.gmk),)
  56     # If make-support does not exist, we need to build the genmodules java tool first.
  57     $(info Creating data for first make execution in new configuration...)
  58     ignore_output := $(shell $(MAKE) -r -R -f $(topdir)/make/Main.gmk \
  59         -I $(topdir)/make/common SPEC=$(any_spec_file) NO_RECIPES=true FRC)
  60     $(info Done)
  61   endif
  62   ALL_MAIN_TARGETS := $(shell $(MAKE) -r -R -f $(topdir)/make/Main.gmk \
  63       -I $(topdir)/make/common SPEC=$(any_spec_file) NO_RECIPES=true print-targets)
  64 else
  65   # Without at least a single valid configuration, we cannot extract any real
  66   # targets. To provide a helpful error message about the missing configuration
  67   # later on, accept whatever targets the user has provided for now.
  68   ALL_MAIN_TARGETS := $(if $(MAKECMDGOALS), $(MAKECMDGOALS), default)
  69 endif
  70 
  71 # Targets provided by this file.
  72 ALL_INIT_TARGETS := reconfigure
  73 
  74 ALL_TARGETS := $(sort $(ALL_GLOBAL_TARGETS) $(ALL_MAIN_TARGETS) $(ALL_INIT_TARGETS))
  75 


< prev index next >