Changeset 78 for trunk/kBuild
- Timestamp:
- Jun 1, 2004, 3:07:24 AM (21 years ago)
- Location:
- trunk/kBuild
- Files:
-
- 2 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/kBuild/Examples/Library/Makefile
r72 r78 6 6 7 7 8 TEMPLATE := mylib 8 TEMPLATE := mylib 9 9 LIBRARIES := libHello 10 10 libHello_SOURCES := hello.c 11 libHello_TEMPLATE := mylib12 11 13 12 DEPTH = ../../.. -
trunk/kBuild/Examples/Library/config.kmk
r72 r78 1 2 1 # define template mylib 3 2 TEMPLATE_mylib := Sample template for testing kBuild -
trunk/kBuild/footer.kmk
r76 r78 65 65 # @param $1 source file 66 66 # @param $2 normalized main target 67 _SOURCE_TOOL = $(firstword $($1_$2_TOOL) $($1_TOOL) $($2_TOOL) $(TOOL)) 67 # @param $3 tooltype 68 _SOURCE_TOOL = $(strip $(firstword $($1_$2_$(3)TOOL) $($1_$2_TOOL) $($1_$(3)TOOL) $($1_TOOL) $($2_$(3)TOOL) $($2_TOOL) $($(3)TOOL) $(TOOL) )) 69 70 ## Figure out the tool for a target. 71 # @param $1 normalized target. 72 # @param $2 tooltype. 73 _TARGET_TOOL = $(strip $(firstword $($(1)_$(2)TOOL) $($(1)_TOOL) $($(2)TOOL) $(TOOL) )) 68 74 69 75 ## Figure out where to put object files. … … 118 124 # is inherited from the default properties. 119 125 # @param $(target) Target name 126 # 120 127 define def_inherit_defaults 121 128 ifdef $(target)_TEMPLATE 122 129 ifndef TEMPLATE_$($(target)_TEMPLATE)_TOOL 123 $(foreach prop, 130 $(foreach prop,TOOL, $(eval $(def_inherit_defaults_one))) 124 131 endif 125 132 ifndef TEMPLATE_$($(target)_TEMPLATE)_SDKS 126 $(foreach prop, 133 $(foreach prop,SDKS, $(eval $(def_inherit_defaults_one))) 127 134 endif 128 135 else 129 $(foreach prop, TEMPLATE TOOL SDKS,$(eval $(def_inherit_defaults_one)))136 $(foreach prop,TEMPLATE TOOL SDKS,$(eval $(def_inherit_defaults_one))) 130 137 endif 131 138 endef … … 133 140 $(foreach target, $(ALL_TARGETS), $(eval $(def_inherit_defaults))) 134 141 142 143 ## Inherit one template property in a accumulative manner. 144 # @param $(prop) Property name 145 # @param $(target) Target name 146 # @todo fix the precedence order for some properties. 147 define def_inherit_template_one 148 ifdef TEMPLATE_$($(target)_TEMPLATE)_$(prop) 149 ifndef $(target)_$(prop) 150 $(eval $(target)_$(prop) := $(TEMPLATE_$($(target)_TEMPLATE)_$(prop))) 151 endif 152 endif 153 endef 135 154 136 155 ## Inherit one template property. 137 156 # @param $(prop) Property name 138 157 # @param $(target) Target name 139 define def_inherit_template_one 140 ifndef $(target)_$(prop) 158 define def_inherit_template_one_accumulate 141 159 ifdef TEMPLATE_$($(target)_TEMPLATE)_$(prop) 142 $( target)_$(prop) := $(TEMPLATE_$($(target)_TEMPLATE)_$(prop))143 endif 144 endif 160 $(eval $(target)_$(prop) := $($(target)_$(prop)) $(TEMPLATE_$($(target)_TEMPLATE)_$(prop))) 161 endif 162 #$ (warning 1b $(target)_$(prop)=$($(target)_$(prop)) org=$(origin $(target)_$(prop)) TEMPLATE_$($(target)_TEMPLATE)_$(prop)=$(TEMPLATE_$($(target)_TEMPLATE)_$(prop)) org=$(origin TEMPLATE_$($(target)_TEMPLATE)_$(prop))) 145 163 endef 146 164 … … 148 166 # @param $(target) Target name. 149 167 define def_inherit_template 150 $(foreach prop,TOOL SDKS DEFS INCS COPTS CFLAGS CDEFS CINCS CXXOPTS CXXFLAGS CXXDEFS CXXINCS ASOPTS ASFLAGS ASDEFS ASINCS, \ 151 $(eval $(def_inherit_template_one))) 168 $(foreach prop,TOOL ARTOOL CTOOL CXXTOOL ASTOOL\ 169 ,$(eval $(def_inherit_template_one))) 170 $(foreach prop,SDKS DEFS INCS COPTS CFLAGS CDEFS CINCS CXXOPTS CXXFLAGS CXXDEFS CXXINCS ASOPTS ASFLAGS ASDEFS ASINCS\ 171 ,$(eval $(def_inherit_template_one_accumulate))) 152 172 endef 153 173 # Inherit template properties … … 161 181 _TOOLS := $(TOOL) 162 182 define def_tools_target_source 163 #$ (warning dbg: src=$(source)) 164 $(foreach tool,$($(source)_TOOL) $($(target)_$(source)_TOOL),\ 165 $(eval _TOOLS += $(tool))) 183 $(foreach tool,\ 184 $($(source)_TOOL) $($(target)_$(source)_TOOL)\ 185 $($(source)_CTOOL) $($(target)_$(source)_CTOOL)\ 186 $($(source)_CXXTOOL) $($(target)_$(source)_CXXTOOL)\ 187 $($(source)_ASTOOL) $($(target)_$(source)_ASTOOL)\ 188 $($(source)_ARTOOL) $($(target)_$(source)_ARTOOL)\ 189 $($(source)_LDTOOL) $($(target)_$(source)_LDTOOL)\ 190 ,$(eval _TOOLS += $(tool))) 166 191 endef 167 192 define def_tools_target 168 #$ (warning dbg: trg=$(target)) 169 $(foreach tool, $($(target)_TOOL), $(eval _TOOLS += $(tool))) 193 $(foreach tool,\ 194 $($(target)_TOOL)\ 195 $($(target)_CTOOL)\ 196 $($(target)_CXXTOOL)\ 197 $($(target)_ASTOOL)\ 198 $($(target)_ARTOOL)\ 199 $($(target)_LDTOOL)\ 200 , $(eval _TOOLS += $(tool))) 170 201 $(foreach source, $($(target)_SOURCES), $(eval $(def_tools_target_source))) 171 202 endef 172 203 $(foreach target, $(ALL_TARGETS), $(eval $(def_tools_target))) 173 204 _TOOLS := $(sort $(_TOOLS)) 174 #$ (warning dbg: _TOOLS=$(_TOOLS))175 205 176 206 define def_tools_include … … 196 226 $(foreach target, $(ALL_TARGETS), $(eval $(def_sdks_target))) 197 227 _SDKS := $(sort $(_SDKS)) 198 #$ (warning dbg: _SDKS=$(_SDKS))199 228 200 229 define def_sdks_include … … 218 247 #$ (warning dbg: def_target_source_c_cpp_asm: source=$(source) target=$(target) type=$(type)) 219 248 220 $(eval tool:=$(call _SOURCE_TOOL,$(source),$(target) ))249 $(eval tool:=$(call _SOURCE_TOOL,$(source),$(target),$(type))) 221 250 $(eval defs :=\ 251 $(TOOL_$(tool)_DEFS)\ 252 $(TOOL_$(tool)_DEFS.$(BUILD_TYPE))\ 253 $(TOOL_$(tool)_DEFS.$(BUILD_TARGET))\ 254 $(TOOL_$(tool)_DEFS.$(BUILD_TARGET_ARCH))\ 255 $(TOOL_$(tool)_DEFS.$(BUILD_TARGET_CPU))\ 222 256 $(TOOL_$(tool)_$(type)DEFS)\ 223 257 $(TOOL_$(tool)_$(type)DEFS.$(BUILD_TYPE))\ 258 $(foreach sdk, $(SDKS.$(BUILD_TARGET)) \ 259 $(SDKS.$(BUILD_TYPE)) \ 260 $(SDKS),\ 261 $(SDK_$(sdk)_DEFS)\ 262 $(SDK_$(sdk)_DEFS.$(BUILD_TYPE))\ 263 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET))\ 264 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_ARCH))\ 265 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_CPU)) 266 $(SDK_$(sdk)_$(type)DEFS)\ 267 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TYPE))\ 268 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET))\ 269 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 270 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_CPU)))\ 224 271 $(DEFS)\ 225 272 $(DEFS.$(BUILD_TYPE))\ 273 $(DEFS.$(BUILD_TARGET))\ 274 $(DEFS.$(BUILD_TARGET_ARCH))\ 275 $(DEFS.$(BUILD_TARGET_CPU))\ 276 $($(type)DEFS)\ 277 $($(type)DEFS.$(BUILD_TYPE))\ 278 $($(type)DEFS.$(BUILD_TARGET))\ 279 $($(type)DEFS.$(BUILD_TARGET_ARCH))\ 280 $($(type)DEFS.$(BUILD_TARGET_CPU))\ 281 $(foreach sdk, $($(target)_SDKS.$(BUILD_TARGET)) \ 282 $($(target)_SDKS.$(BUILD_TYPE)) \ 283 $($(target)_SDKS),\ 284 $(SDK_$(sdk)_DEFS)\ 285 $(SDK_$(sdk)_DEFS.$(BUILD_TYPE))\ 286 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET))\ 287 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_ARCH))\ 288 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_CPU)) 289 $(SDK_$(sdk)_$(type)DEFS)\ 290 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TYPE))\ 291 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET))\ 292 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 293 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_CPU)))\ 226 294 $($(target)_DEFS)\ 227 295 $($(target)_DEFS.$(BUILD_TYPE))\ 228 296 $($(target)_DEFS.$(BUILD_TARGET))\ 297 $($(target)_DEFS.$(BUILD_TARGET_ARCH))\ 298 $($(target)_DEFS.$(BUILD_TARGET_CPU))\ 299 $($(target)_$(type)DEFS)\ 300 $($(target)_$(type)DEFS.$(BUILD_TYPE))\ 301 $($(target)_$(type)DEFS.$(BUILD_TARGET))\ 302 $($(target)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 303 $($(target)_$(type)DEFS.$(BUILD_TARGET_CPU))\ 304 $(foreach sdk, $($(source)_SDKS.$(BUILD_TARGET)) \ 305 $($(source)_SDKS.$(BUILD_TYPE)) \ 306 $($(source)_SDKS),\ 307 $(SDK_$(sdk)_DEFS)\ 308 $(SDK_$(sdk)_DEFS.$(BUILD_TYPE))\ 309 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET))\ 310 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_ARCH))\ 311 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_CPU)) 312 $(SDK_$(sdk)_$(type)DEFS)\ 313 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TYPE))\ 314 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET))\ 315 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 316 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_CPU)))\ 229 317 $($(source)_DEFS)\ 230 318 $($(source)_DEFS.$(BUILD_TYPE))\ 231 319 $($(source)_DEFS.$(BUILD_TARGET))\ 320 $($(source)_DEFS.$(BUILD_TARGET_ARCH))\ 321 $($(source)_DEFS.$(BUILD_TARGET_CPU))\ 232 322 $($(source)_$(type)DEFS)\ 233 323 $($(source)_$(type)DEFS.$(BUILD_TYPE))\ 234 324 $($(source)_$(type)DEFS.$(BUILD_TARGET))\ 235 $($(target)_$(type)DEFS)\ 236 $($(target)_$(type)DEFS.$(BUILD_TYPE))\ 237 $($(target)_$(type)DEFS.$(BUILD_TARGET))\ 325 $($(source)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 326 $($(source)_$(type)DEFS.$(BUILD_TARGET_CPU))\ 327 $(foreach sdk, $($(target)_$(source)_SDKS.$(BUILD_TARGET)) \ 328 $($(target)_$(source)_SDKS.$(BUILD_TYPE)) \ 329 $($(target)_$(source)_SDKS),\ 330 $(SDK_$(sdk)_DEFS)\ 331 $(SDK_$(sdk)_DEFS.$(BUILD_TYPE))\ 332 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET))\ 333 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_ARCH))\ 334 $(SDK_$(sdk)_DEFS.$(BUILD_TARGET_CPU)) 335 $(SDK_$(sdk)_$(type)DEFS)\ 336 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TYPE))\ 337 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET))\ 338 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 339 $(SDK_$(sdk)_$(type)DEFS.$(BUILD_TARGET_CPU)))\ 238 340 $($(target)_$(source)_DEFS)\ 239 341 $($(target)_$(source)_DEFS.$(BUILD_TYPE))\ 240 342 $($(target)_$(source)_DEFS.$(BUILD_TARGET))\ 343 $($(target)_$(source)_DEFS.$(BUILD_TARGET_ARCH))\ 344 $($(target)_$(source)_DEFS.$(BUILD_TARGET_CPU))\ 241 345 $($(target)_$(source)_$(type)DEFS)\ 242 346 $($(target)_$(source)_$(type)DEFS.$(BUILD_TYPE))\ 243 347 $($(target)_$(source)_$(type)DEFS.$(BUILD_TARGET))\ 348 $($(target)_$(source)_$(type)DEFS.$(BUILD_TARGET_ARCH))\ 349 $($(target)_$(source)_$(type)DEFS.$(BUILD_TARGET_CPU))\ 244 350 ) 245 351 $(eval incs :=\ 352 $($(target)_$(source)_$(type)INCS.$(BUILD_TARGET_CPU))\ 353 $($(target)_$(source)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 246 354 $($(target)_$(source)_$(type)INCS.$(BUILD_TARGET))\ 247 355 $($(target)_$(source)_$(type)INCS.$(BUILD_TYPE))\ 248 356 $($(target)_$(source)_$(type)INCS)\ 357 $($(target)_$(source)_INCS.$(BUILD_TARGET_CPU))\ 358 $($(target)_$(source)_INCS.$(BUILD_TARGET_ARCH))\ 249 359 $($(target)_$(source)_INCS.$(BUILD_TARGET))\ 250 360 $($(target)_$(source)_INCS.$(BUILD_TYPE))\ 251 361 $($(target)_$(source)_INCS)\ 362 $(foreach sdk, $($(target)_$(source)_SDKS.$(BUILD_TARGET)) \ 363 $($(target)_$(source)_SDKS.$(BUILD_TYPE)) \ 364 $($(target)_$(source)_SDKS), 365 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_CPU))\ 366 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 367 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET))\ 368 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TYPE))\ 369 $(SDK_$(sdk)_$(type)INCS)\ 370 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_CPU))\ 371 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_ARCH))\ 372 $(SDK_$(sdk)_INCS.$(BUILD_TARGET))\ 373 $(SDK_$(sdk)_INCS.$(BUILD_TYPE))\ 374 $(SDK_$(sdk)_INCS))\ 375 $($(source)_$(type)INCS.$(BUILD_TARGET_CPU))\ 376 $($(source)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 252 377 $($(source)_$(type)INCS.$(BUILD_TARGET))\ 253 378 $($(source)_$(type)INCS.$(BUILD_TYPE))\ 254 379 $($(source)_$(type)INCS)\ 380 $($(source)_INCS.$(BUILD_TARGET_CPU))\ 381 $($(source)_INCS.$(BUILD_TARGET_ARCH))\ 255 382 $($(source)_INCS.$(BUILD_TARGET))\ 256 383 $($(source)_INCS.$(BUILD_TYPE))\ 257 384 $($(source)_INCS)\ 385 $(foreach sdk, $($(source)_SDKS.$(BUILD_TARGET)) \ 386 $($(source)_SDKS.$(BUILD_TYPE)) \ 387 $($(source)_SDKS),\ 388 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_CPU))\ 389 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 390 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET))\ 391 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TYPE))\ 392 $(SDK_$(sdk)_$(type)INCS)\ 393 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_CPU))\ 394 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_ARCH))\ 395 $(SDK_$(sdk)_INCS.$(BUILD_TARGET))\ 396 $(SDK_$(sdk)_INCS.$(BUILD_TYPE))\ 397 $(SDK_$(sdk)_INCS))\ 398 $($(target)_$(type)INCS.$(BUILD_TARGET_CPU))\ 399 $($(target)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 258 400 $($(target)_$(type)INCS.$(BUILD_TARGET))\ 259 401 $($(target)_$(type)INCS.$(BUILD_TYPE))\ 260 402 $($(target)_$(type)INCS)\ 403 $($(target)_INCS.$(BUILD_TARGET_CPU))\ 404 $($(target)_INCS.$(BUILD_TARGET_ARCH))\ 261 405 $($(target)_INCS.$(BUILD_TARGET))\ 262 406 $($(target)_INCS.$(BUILD_TYPE))\ 263 407 $($(target)_INCS)\ 408 $(foreach sdk, $($(target)_SDKS.$(BUILD_TARGET)) \ 409 $($(target)_SDKS.$(BUILD_TYPE)) \ 410 $($(target)_SDKS),\ 411 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_CPU))\ 412 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 413 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET))\ 414 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TYPE))\ 415 $(SDK_$(sdk)_$(type)INCS)\ 416 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_CPU))\ 417 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_ARCH))\ 418 $(SDK_$(sdk)_INCS.$(BUILD_TARGET))\ 419 $(SDK_$(sdk)_INCS.$(BUILD_TYPE))\ 420 $(SDK_$(sdk)_INCS))\ 421 $(INCS.$(BUILD_TARGET_CPU))\ 422 $(INCS.$(BUILD_TARGET_ARCH))\ 264 423 $(INCS.$(BUILD_TARGET))\ 265 424 $(INCS.$(BUILD_TYPE))\ 266 425 $(INCS)\ 426 $(foreach sdk, $(SDKS.$(BUILD_TARGET)) \ 427 $(SDKS.$(BUILD_TYPE)) \ 428 $(SDKS),\ 429 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_CPU))\ 430 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 431 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TARGET))\ 432 $(SDK_$(sdk)_$(type)INCS.$(BUILD_TYPE))\ 433 $(SDK_$(sdk)_$(type)INCS)\ 434 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_CPU))\ 435 $(SDK_$(sdk)_INCS.$(BUILD_TARGET_ARCH))\ 436 $(SDK_$(sdk)_INCS.$(BUILD_TARGET))\ 437 $(SDK_$(sdk)_INCS.$(BUILD_TYPE))\ 438 $(SDK_$(sdk)_INCS))\ 439 $(TOOL_$(tool)_$(type)INCS.$(BUILD_TARGET_CPU))\ 440 $(TOOL_$(tool)_$(type)INCS.$(BUILD_TARGET_ARCH))\ 267 441 $(TOOL_$(tool)_$(type)INCS.$(BUILD_TARGET))\ 268 442 $(TOOL_$(tool)_$(type)INCS.$(BUILD_TYPE))\ … … 273 447 $(TOOL_$(tool)_$(type)FLAGS.$(BUILD_TYPE))\ 274 448 $(TOOL_$(tool)_$(type)FLAGS.$(BUILD_TARGET))\ 449 $(TOOL_$(tool)_$(type)FLAGS.$(BUILD_TARGET_ARCH))\ 450 $(TOOL_$(tool)_$(type)FLAGS.$(BUILD_TARGET_CPU))\ 275 451 $($(type)FLAGS)\ 276 452 $($(type)FLAGS.$(BUILD_TYPE))\ 277 453 $($(type)FLAGS.$(BUILD_TARGET))\ 454 $($(type)FLAGS.$(BUILD_TARGET_ARCH))\ 455 $($(type)FLAGS.$(BUILD_TARGET_CPU))\ 278 456 $($(target)_$(type)FLAGS)\ 279 457 $($(target)_$(type)FLAGS.$(BUILD_TYPE))\ 280 458 $($(target)_$(type)FLAGS.$(BUILD_TARGET))\ 459 $($(target)_$(type)FLAGS.$(BUILD_TARGET_ARCH))\ 460 $($(target)_$(type)FLAGS.$(BUILD_TARGET_CPU))\ 281 461 $($(source)_$(type)FLAGS)\ 282 462 $($(source)_$(type)FLAGS.$(BUILD_TYPE))\ 283 463 $($(source)_$(type)FLAGS.$(BUILD_TARGET))\ 464 $($(source)_$(type)FLAGS.$(BUILD_TARGET_ARCH))\ 465 $($(source)_$(type)FLAGS.$(BUILD_TARGET_CPU))\ 284 466 $($(target)_$(source)_$(type)FLAGS)\ 285 467 $($(target)_$(source)_$(type)FLAGS.$(BUILD_TYPE))\ 286 468 $($(target)_$(source)_$(type)FLAGS.$(BUILD_TARGET))\ 469 $($(target)_$(source)_$(type)FLAGS.$(BUILD_TARGET_ARCH))\ 470 $($(target)_$(source)_$(type)FLAGS.$(BUILD_TARGET_CPU))\ 287 471 ) 288 472 $(eval outbase := $(call _OBJECT_BASE,$(source),$(target))) … … 339 523 340 524 # library 341 $(eval tool := $(firstword $($(target)_TOOL) $(TOOL))) 525 $(eval tool := $(call _TARGET_TOOL,$(target),AR)) 526 ifeq ($(tool),) 527 $$(error kBuild: Library target $(target) doesn't have a tool defined!) 528 endif 342 529 $(eval flags :=\ 343 530 $(TOOL_$(tool)_ARFLAGS)\ … … 360 547 $(eval objs = $(_OBJS_$(target))) 361 548 $(eval dirdep := $(dir $(lib)).dir_created) 362 ## @todo fix dependencies 549 ## @todo fix dependencies on makefiles an such 363 550 $(eval deps := ) 364 551 … … 386 573 387 574 # library 388 $(eval tool := $( firstword $($(target)_TOOL) $(TOOL)))575 $(eval tool := $(call _TARGET_TOOL,$(target),LD)) 389 576 $(eval flags :=\ 390 577 $(TOOL_$(tool)_LDFLAGS)\ … … 632 819 nothing: pass_nothing 633 820 634 635 821 822 636 823 # 637 824 # THE MAIN RULES 638 825 # 639 826 all_recursive: $(foreach pass,$(PASSES),pass_$(pass)) 827 828 rebuild: clean all_recursive 829 640 830 641 831 # misc shortcuts. -
trunk/kBuild/header.kmk
r77 r78 129 129 endif 130 130 endif 131 BUILD_TARGET_ARCH := x86 132 BUILD_TARGET_CPU := i586 131 133 132 134 … … 275 277 # 276 278 _CFGDIR := . 277 _CFGFILES := 279 _CFGFILES := ./Config.kmk ./config.kmk 278 280 define def_include_config 279 $(eval _CFGDIR := $(_CFGDIR)/$( 1))280 _CFGFILES += $( wildcard $(_CFGDIR)/Config.kmk $(_CFGDIR)/config.kmk)281 $(eval _CFGDIR := $(_CFGDIR)/$(dir)) 282 _CFGFILES += $(_CFGDIR)/Config.kmk $(_CFGDIR)/config.kmk 281 283 endef 282 284 # walk down the _RELATIVE_ path specified by DEPTH. 283 $(foreach d ,$(subst /, ,$(DEPTH)), $(eval $(call def_include_config,$(d))) )285 $(foreach dir,$(subst /, ,$(DEPTH)), $(eval $(def_include_config)) ) 284 286 # add the default config file. 285 _CFGFILE := $(firstword $( _CFGFILES) $(FILE_KBUILD_CONFIG))287 _CFGFILE := $(firstword $(wildcard $(_CFGFILES) $(FILE_KBUILD_CONFIG))) 286 288 _CFGFILES := 287 289 _CFGDIR :=
Note:
See TracChangeset
for help on using the changeset viewer.