make/Bundles.gmk
changeset 58720 ae0af9fb3dbb
parent 54380 e297c7bb6469
child 58846 f9ac726ab347
equal deleted inserted replaced
58713:ad69fd32778e 58720:ae0af9fb3dbb
    48 # SPECIAL_INCLUDES : List of directories inside BASE_DIRS to look for additional
    48 # SPECIAL_INCLUDES : List of directories inside BASE_DIRS to look for additional
    49 #     files in. These files will not get proper dependency handling. Use when
    49 #     files in. These files will not get proper dependency handling. Use when
    50 #     files or directories may contain spaces.
    50 #     files or directories may contain spaces.
    51 # BASE_DIRS : Base directories for the root dir in the bundle.
    51 # BASE_DIRS : Base directories for the root dir in the bundle.
    52 # SUBDIR : Optional name of root dir in bundle.
    52 # SUBDIR : Optional name of root dir in bundle.
       
    53 # OUTPUTDIR : Optionally override output dir
    53 SetupBundleFile = $(NamedParamsMacroTemplate)
    54 SetupBundleFile = $(NamedParamsMacroTemplate)
    54 define SetupBundleFileBody
    55 define SetupBundleFileBody
    55 
    56 
    56   $$(foreach d, $$($1_BASE_DIRS), \
    57   $$(foreach d, $$($1_BASE_DIRS), \
    57     $$(eval $1_$$d_RELATIVE_FILES := $$$$(patsubst $$d/%, %, \
    58     $$(eval $1_$$d_RELATIVE_FILES := $$$$(patsubst $$d/%, %, \
    68     $$(error Unknown bundle type $$($1_BUNDLE_NAME))
    69     $$(error Unknown bundle type $$($1_BUNDLE_NAME))
    69   endif
    70   endif
    70 
    71 
    71   $$(call SetIfEmpty, $1_UNZIP_DEBUGINFO, false)
    72   $$(call SetIfEmpty, $1_UNZIP_DEBUGINFO, false)
    72 
    73 
    73   $(BUNDLES_OUTPUTDIR)/$$($1_BUNDLE_NAME): $$($1_FILES)
    74   $$(call SetIfEmpty, $1_OUTPUTDIR, $$(BUNDLES_OUTPUTDIR))
       
    75 
       
    76   $$($1_OUTPUTDIR)/$$($1_BUNDLE_NAME): $$($1_FILES)
    74 	$$(call MakeTargetDir)
    77 	$$(call MakeTargetDir)
       
    78 	$$(call LogWarn, Creating $$($1_BUNDLE_NAME))
    75         # If any of the files contain a space in the file name, FindFiles
    79         # If any of the files contain a space in the file name, FindFiles
    76         # will have replaced it with ?. Tar does not accept that so need to
    80         # will have replaced it with ?. Tar does not accept that so need to
    77         # switch it back.
    81         # switch it back.
    78 	$$(foreach d, $$($1_BASE_DIRS), \
    82 	$$(foreach d, $$($1_BASE_DIRS), \
    79 	  $$(eval $$(call ListPathsSafely, \
    83 	  $$(eval $$(call ListPathsSafely, \
   135           else ifeq ($$($1_TYPE), zip)
   139           else ifeq ($$($1_TYPE), zip)
   136 	    $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1 && $(ZIPEXE) -qr $$@ .
   140 	    $(CD) $(SUPPORT_OUTPUTDIR)/bundles/$1 && $(ZIPEXE) -qr $$@ .
   137           endif
   141           endif
   138         endif
   142         endif
   139 
   143 
   140   $1 += $(BUNDLES_OUTPUTDIR)/$$($1_BUNDLE_NAME)
   144   $1 += $$($1_OUTPUTDIR)/$$($1_BUNDLE_NAME)
   141 
   145 
   142 endef
   146 endef
   143 
   147 
   144 ################################################################################
   148 ################################################################################
   145 
   149 
   163   endif
   167   endif
   164 endif
   168 endif
   165 
   169 
   166 ################################################################################
   170 ################################################################################
   167 
   171 
   168 ifneq ($(filter product-bundles legacy-bundles, $(MAKECMDGOALS)), )
   172 ifneq ($(filter product-bundles% legacy-bundles, $(MAKECMDGOALS)), )
   169 
   173 
   170   SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.pdb %.map
   174   SYMBOLS_EXCLUDE_PATTERN := %.debuginfo %.diz %.pdb %.map
   171 
   175 
   172   # There may be files with spaces in the names, so use ShellFindFiles
   176   # There may be files with spaces in the names, so use ShellFindFiles
   173   # explicitly.
   177   # explicitly.