22 CREATABLEPATHS:= |
22 CREATABLEPATHS:= |
23 CLEANTARGETS:= |
23 CLEANTARGETS:= |
24 |
24 |
25 .PHONY:: PP_EXPORTS |
25 .PHONY:: PP_EXPORTS |
26 |
26 |
|
27 ifneq ($(filter win,$(HOSTPLATFORM)),) |
|
28 SBS:=$(subst \,/,$(SBS_HOME)/bin/sbs.bat) |
|
29 else |
|
30 SBS:=$(SBS_HOME)/bin/sbs |
|
31 endif |
27 |
32 |
28 SBS := $(subst \,/,$(SBS_HOME)/bin/sbs) |
|
29 |
33 |
30 define doexports |
34 define doexports |
31 PP_EXPORTS:: |
35 PP_EXPORTS:: |
32 $(call startrule,makefile_generation_exports) \ |
36 $(call startrule,makefile_generation_exports) \ |
33 export TALON_DESCRAMBLE=0; \ |
37 $(SBS) --pp=slave --toolcheck=off --export-only $(component_list) $(config_list) -f- -m $(MAKEFILE_PATH).exports $(cli_options) \ |
34 $(SBS) --export-only $(component_list) $(config_list) -f- -m $(SBS_BUILD_DIR)/makefiles_export.mk $(cli_options) --mo=DESCRAMBLE:= --mo=TALON_DESCRAMBLE:=0 | $(GNUSED) 's#]I*]>#XXX#' \ |
|
35 $(call endrule,makefile_generation_exports) |
38 $(call endrule,makefile_generation_exports) |
36 |
39 |
37 CLEANTARGETS:=$$(CLEANTARGETS) $(SBS_BUILD_DIR)/makefiles_export.mk |
40 CLEANTARGETS:=$$(CLEANTARGETS) $(MAKEFILE_PATH).exports |
38 endef |
41 endef |
39 |
42 |
40 # Generate makefiles for particular bldinf |
43 # Generate makefiles for particular bldinf |
41 # $(1) = source target source target...... |
44 # $(1) = source target source target...... |
42 define generate_makefiles |
45 define generate_makefiles |
43 |
46 |
44 $$(info XXX component_list=$(COMPONENT_PATHS) makefile=$(MAKEFILE_PATH)) |
|
45 |
|
46 ifeq ($(NO_BUILD),1) |
|
47 ALL:: $(MAKEFILE_PATH) |
47 ALL:: $(MAKEFILE_PATH) |
48 else |
|
49 include $(MAKEFILE_PATH) |
|
50 endif |
|
51 |
48 |
52 $(MAKEFILE_PATH): $(COMPONENT_PATHS) | PP_EXPORTS |
49 $(MAKEFILE_PATH): $(COMPONENT_PATHS) | PP_EXPORTS |
53 $(call startrule,makefile_generation) \ |
50 $(call startrule,makefile_generation) \ |
54 export TALON_DESCRAMBLE=0; \ |
51 $(SBS) --pp=slave --toolcheck=off -n $(CLI_OPTIONS) $(component_list) $(config_list) -m $$@ -f- \ |
55 $(SBS) --toolcheck=off -n $(CLI_OPTIONS) $(component_list) $(config_list) -m $$@ -f- --mo=DESCRAMBLE:= --mo=TALON_DESCRAMBLE:=0 | $(GNUSED) 's#\]\][>]#XXX#' && \ |
|
56 $(MAKE) -j 8 -f $$@.resource_deps \ |
|
57 $(call endrule,makefile_generation) |
52 $(call endrule,makefile_generation) |
58 |
53 |
59 CLEANTARGETS:=$$(CLEANTARGETS) $(MAKEFILE_PATH) |
54 CLEANTARGETS:=$$(CLEANTARGETS) $(MAKEFILE_PATH) |
60 |
55 |
61 endef |
56 endef |
62 |
57 |
63 # Create config list for commands |
58 # Create config list for commands |
64 config_list:=$(addprefix -c ,$(CONFIGS)) |
59 config_list:=$(addprefix -c ,$(CONFIGS)) |
65 component_list:=$(addprefix -b ,$(COMPONENT_PATHS)) |
60 component_list:=$(addprefix -b ,$(COMPONENT_PATHS)) |
66 $(info COMFIG_LIST: $(config_list)) |
61 $(info <debug>build.flm: configlist: $(config_list)</debug>) |
67 |
62 |
68 $(eval $(doexports)) |
63 $(eval $(doexports)) |
69 |
64 |
70 # Create the Makefiles |
65 # Create the Makefiles |
71 $(eval $(call generate_makefiles)) |
66 $(eval $(call generate_makefiles)) |
72 |
67 |
|
68 CREATABLEPATHS:=$(CREATABLEPATHS) $(dir $(MAKEFILE_PATH)) |
|
69 |
73 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS),$(CREATABLEPATHS),)) |
70 $(eval $(call GenerateStandardCleanTarget,$(CLEANTARGETS),$(CREATABLEPATHS),)) |
74 $(call makepath,$(CREATABLEPATHS)) |
71 $(call makepath,$(CREATABLEPATHS)) |
75 |
72 |