(as an aside, my apologies for the recent, nitpicky posts but i've decided to understand the build structure once and for all and, well, i am all about the nitpick. :-) from scripts/Kbuild.include: ... # Prefix -I with $(srctree) if it is not an absolute path. addtree = $(if $(filter-out -I/%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1))) $(1) ... just from the comment, i would have thought then that if i passed, say, the string "-Ia -I/b", the result should be "-I$(srctree)/a -I/b", no? in short, non-fully-qualified entries should be fully-qualified, while those already filly qualified should be left untouched, correct? but that's not what that function is doing. as a quick test run, we have the Makefile: ===== addtree = $(if $(filter-out -I/%,$(1)),$(patsubst -I%,-I$(srctree)/%,$(1))) $(1) srctree := /src S=-Ia -I/b yo: @echo $(S) @echo $(call addtree,$(S)) ===== $ make -Ia -I/b -I/src/a -I/src//b -Ia -I/b $ is that what's *supposed* to happen? it sure doesn't seem to match what the comment suggests. rday ======================================================================== Robert P. J. Day Linux Consulting, Training and Annoying Kernel Pedantry Waterloo, Ontario, CANADA http://crashcourse.ca ======================================================================== - To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html