OK, after some more investigation, it looks like this boils down to whether EXTRA_CFLAGS is recursivly expanded or simply expanded... But again, I'm a bit out of my depth in this: In the kernel, there are several places where you see
EXTRA_CFLAGS = xxx and others where you see EXTRA_CFLAGS := xxxx (usb/storage/Makefile and fs/ntfs/Makefile for example)and then a whole lot of += modifiers... So if you have both of these in your make-path, which one takes precedence? If I include a single file that has a :=, does that effect all other files, or just sub-makefiles of it? Does 'export' have any effect on this Thanks, John julvr wrote: > > I am trying to compile a driver for the latest linux kernel, and I ran > into a difference on how the old and new kernels run sub-makefiles, and > I'm curious as to why. I have a makefile similar to the following: > > > include submakfile > VAR1 += somevalue > > Where, submakefile references VAR1. When I build with the old kernel, > VAR1 in submakefile contains 'somevalue'. When I build with the new > kernel, VAR1 in submakefile does not contain 'somevalue'. I'm wondering > if anyone has any ideas what might be causing this? (I'm using gnu make > 3.81 in case it matters) > -- View this message in context: http://www.nabble.com/Make-behaviour-changes-with-new-kernel--tp24988525p24989275.html Sent from the Gnu - Make - Help mailing list archive at Nabble.com. _______________________________________________ Help-make mailing list [email protected] http://lists.gnu.org/mailman/listinfo/help-make
