Changeset 984 in kBuild
- Timestamp:
- May 28, 2007 7:41:38 PM (18 years ago)
- Location:
- trunk/kBuild
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kBuild/footer.kmk
r983 r984 34 34 35 35 # all targets. 36 ALL_TARGETS += \36 _ALL_TARGETS := \ 37 37 $(FETCHES) $(FETCHES.$(BUILD_TARGET)) $(FETCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 38 38 $(PATCHES) $(PATCHES.$(BUILD_TARGET)) $(PATCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ … … 47 47 48 48 # all $(BUILD_TARGET) targets. 49 _ALL_BUILD_TARGET_TARGETS += \49 _ALL_BUILD_TARGET_TARGETS := \ 50 50 $(FETCHES) $(FETCHES.$(BUILD_TARGET)) $(FETCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 51 51 $(PATCHES) $(PATCHES.$(BUILD_TARGET)) $(PATCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ … … 59 59 60 60 # all $(BUILD_TARGET) targets. 61 _ALL_BUILD_PLATFORM_TARGETS += \61 _ALL_BUILD_PLATFORM_TARGETS := \ 62 62 $(BLDPROGS) $(BLDPROGS.$(BUILD_PLATFORM)) $(BLDPROGS.$(BUILD_PLATFORM).$(BUILD_PLATFORM_ARCH)) 63 63 64 ## all linkable targets. 65 #_ALL_LINKABLE_TARGETS := \ 66 # $(BLDPROGS) $(BLDPROGS.$(BUILD_PLATFORM)) $(BLDPROGS.$(BUILD_PLATFORM).$(BUILD_PLATFORM_ARCH)) \ 67 # $(DLLS) $(DLLS.$(BUILD_TARGET)) $(DLLS.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 68 # $(PROGRAMS) $(PROGRAMS.$(BUILD_TARGET)) $(PROGRAMS.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 69 # $(SYSMODS) $(SYSMODS.$(BUILD_TARGET)) $(SYSMODS.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) 70 # 71 ## all library targets. 72 #_ALL_LIBRARY_TARGETS := \ 73 # $(LIBRARIES) $(LIBRARIES.$(BUILD_TARGET)) $(LIBRARIES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 74 # $(IMPORT_LIBS) $(IMPORT_LIBS.$(BUILD_TARGET)) $(IMPORT_LIBS.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 75 64 76 # all targets making use of srcname. 65 _ALL_SRCNAME_TARGETS += \77 _ALL_SRCNAME_TARGETS := \ 66 78 $(FETCHES) $(FETCHES.$(BUILD_TARGET)) $(FETCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) \ 67 79 $(PATCHES) $(PATCHES.$(BUILD_TARGET)) $(PATCHES.$(BUILD_TARGET).$(BUILD_TARGET_ARCH)) … … 106 118 107 119 108 # 109 # Basic macros 120 121 # 122 # Footer macros 110 123 # 111 124 … … 138 151 139 152 140 #141 # Include the additional footer macros when bootstrapping kBuild.142 #143 ifndef KMK_VERSION144 include $(PATH_KBUILD)/gnumake-footer.kmk145 endif146 147 148 153 149 154 # … … 158 163 endif 159 164 endef 160 $(foreach target, $(ALL_TARGETS),$(eval $(def_check_target))) 165 $(foreach target, $(_ALL_TARGETS),$(eval $(def_check_target))) 166 167 168 # 169 # Target inheritance. 170 # 171 # $ (foreach ... 161 172 162 173 … … 170 181 endif 171 182 endef 172 $(foreach target, $( ALL_TARGETS), $(eval $(def_templates)))183 $(foreach target, $(_ALL_TARGETS), $(eval $(def_templates))) 173 184 _TEMPLATES := $(sort $(_TEMPLATES)) 174 185 # $ (warning dbg: _TEMPLATES=$(_TEMPLATES)) … … 1139 1150 endif 1140 1151 1141 ## Temporary macro for testing the new multi target rules.1142 ifdef USE_MULTI_TARGET1143 _M_PLUSS=+1144 else1145 _M_PLUSS=1146 endif1147 1148 1152 ## Generates the rules for building a specific object, and the aliases 1149 1153 # for building a source file. 1150 1154 # @param $(obj) The object file. 1151 1155 define def_target_source_rule 1152 $(obj) $(_M_PLUSS) $($(target)_$(source)_OUTPUT_): \1156 $(obj) + $($(target)_$(source)_OUTPUT_) : \ 1153 1157 $($(target)_$(source)_DEPEND_) \ 1154 1158 $(_DEP_COMPILE_CMDS) \ … … 1194 1198 # @param $($(target)_CMDS_PREV_) The link commands from the previous run. 1195 1199 define def_link_rule 1196 $(out) $(_M_PLUSS) $($(target)_OUTPUT_): \1200 $(out) + $($(target)_OUTPUT_) : \ 1197 1201 $($(target)_DEPEND_) \ 1198 1202 $(_DEP_LINK_CMDS) \ … … 2456 2460 # 2457 2461 show_targets: 2458 @$(foreach target, $( ALL_TARGETS),\2462 @$(foreach target, $(_ALL_TARGETS),\ 2459 2463 @$(ECHO) "target: $(target)" $(NLTAB)\ 2460 2464 @$(ECHO) " PATH_$(target)=$(PATH_$(target))" $(NLTAB)\ -
trunk/kBuild/header.kmk
r980 r984 33 33 # 34 34 ifndef KMK_VERSION 35 $(error kBuild: The kmk default variable KMK_VERSION isn't defined! Make sure you are using 'kmk' and not 'make', 'gmake', 'kmk_gmake', 'dmake' or any other make program .)35 $(error kBuild: The kmk default variable KMK_VERSION isn't defined! Make sure you are using 'kmk' and not 'make', 'gmake', 'kmk_gmake', 'dmake' or any other make program) 36 36 endif 37 37 ifneq ($(KBUILD_VERSION_MAJOR).$(KBUILD_VERSION_MINOR),0.1) … … 129 129 # to be assigned to it and added here. This strictness is required because 130 130 # this keyword namespace is shared between OSes, architectures, cpus and 131 # build types. 131 # build types. (PORTME) 132 132 # 133 133 KBUILD_OSES = darwin freebsd l4 linux netbsd nt openbsd os2 solaris win … … 304 304 # 305 305 # Build platform setup. 306 # 306 # (PORTME) 307 # 308 307 309 # OS/2 308 310 ifeq ($(BUILD_PLATFORM),os2) … … 344 346 # 345 347 # Build target setup. 348 # (PORTME) 346 349 # 347 350 SUFF_DEP := .dep … … 469 472 # @param $1 The paths to make absolute. 470 473 # @obsolete Use the GNU make function $(abspath) directly now. 471 ABSPATH = $(abspath $(1)) 474 ABSPATH = $(abspath $(1))$(warning ABSPATH is deprecated, use abspath directly!) 472 475 473 476 ## DIRDEP - make create directory dependencies. … … 510 513 # others can add stuff to if they like for processing in the footer. 511 514 # 512 513 ## ALL_TARGET514 # This is the list of all targets.515 ALL_TARGETS :=516 515 517 516 ## TEMPLATE_PATHS … … 709 708 710 709 # 710 # Check for --pretty-command-printing before including the Config.kmk 711 # so that anyone overriding the message macros can take the implied 712 # verbosity level change into account. 713 # 714 ifndef KBUILD_VERBOSE 715 ifndef KBUILD_QUIET 716 ifneq ($(filter --pretty-command-printing,$(MAKEFLAGS)),) 717 export KBUILD_VERBOSE := 2 718 endif 719 endif 720 endif 721 722 723 # 711 724 # This is how we find the closest config.kmk. 712 725 # It's a little hacky but I think it works fine. … … 727 740 $(error kBuild: no Config.kmk file found! Check the DEPTH: DEPTH='$(DEPTH)' PATH_CURRENT='$(PATH_CURRENT)') 728 741 endif 729 730 731 #732 # Check for --pretty-command-printing before including the Config.kmk733 # so that anyone overriding the message macros can take the implied734 # verbosity level change into account.735 #736 ifndef KBUILD_VERBOSE737 ifndef KBUILD_QUIET738 ifneq ($(filter --pretty-command-printing,$(MAKEFLAGS)),)739 export KBUILD_VERBOSE := 2740 endif741 endif742 endif743 744 742 745 743 # Include the config.kmk we found file (or the default one).
Note:
See TracChangeset
for help on using the changeset viewer.