sven.wegener at stealer
Jul 15, 2007, 8:31 AM
Post #3 of 6
On Sun, Jul 15, 2007 at 04:34:24PM +0200, Patrick McHardy wrote:
Re: [PATCH] Change default KERNEL_DIR location and add KBUILD_OUTPUT
[In reply to]
> Sven Wegener wrote:
> > Setting KERNEL_DIR to the build symlink in /lib/modules is wrong. The
> > build symlink points to the location of generated object files and the
> > extension tests use KERNEL_DIR to check the availability of certain
> > source files.
> Good point.
> > The tests will fail, if build and source point to
> > different locations. Change KERNEL_DIR from build to source and
> > introduce KBUILD_OUTPUT for the build symink.
> What do we need KBUILD_OUTPUT for? Just the source tree should be enough.
For current kernels, true. Older kernels (before 2006-04-26) and the
whole 2.6.16.y series have a bug where include/linux/netfilter_ipv4.h
includes linux/config.h which includes linux/autoconf.h which is placed
into KBUILD_OUTPUT. Just changing KERNEL_DIR from build to source should
be enough for recent kernels. For older kernels building the iptables
package will fail with "linux/autoconf.h: No such file or directory"
unless we add the KBUILD_OUTPUT bit. That's why I added it. Do we want
to have this workaround here?