Re: [PATCH v2] documentation: build source files in Documentationsub-dir

From: Andrew Morton
Date: Wed Apr 09 2008 - 17:55:56 EST


On Wed, 9 Apr 2008 12:35:51 -0700
Randy Dunlap <randy.dunlap@xxxxxxxxxx> wrote:

> On Tue, 8 Apr 2008 13:46:13 -0700 Andrew Morton wrote:
>
> > On Thu, 3 Apr 2008 12:45:29 -0700 Randy Dunlap <randy.dunlap@xxxxxxxxxx> wrote:
> >
> > > Currently source files in the Documentation/ sub-dir can easily bit-rot
> > > since they are not generally buildable, either because they are hidden
> > > in text files or because there are no Makefile rules for them.
> > > This needs to be fixed so that the source files remain usable and good
> > > examples of code instead of bad examples.
> > >
> > > Add the ability to build source files that are in the Documentation/ dir.
> > > Add to Kconfig as "BUILD_DOCSRC" config symbol.
> > >
> > > Use "CONFIG_BUILD_DOCSRC=1 make ..." to build objects from the
> > > Documentation/ sources. Or enable BUILD_DOCSRC in the *config system.
> > >
> > > The Makefiles use $objdir/usr/include for header files, so doing
> > > "make headers_install" is required. This is done for you if you enable
> > > CONFIG_HEADERS_CHECK=y.
> > >
> > > Note: needs documentation-move-spidev_fdx-example-to-its-own-source-file.patch
> > > from -mm patchset.
> >
> > argh, I'm getting several warnings and at least two build errors from this.
> > One is:
> >
> > In file included from /usr/src/devel/usr/include/linux/netlink.h:5,
> > from /usr/src/devel/usr/include/linux/genetlink.h:4,
> > from Documentation/accounting/getdelays.c:26:
> > /usr/src/devel/usr/include/linux/types.h:166: error: expected specifier-qualifier-list before '__kernel_daddr_t'
> >
> > (i386 allmodconfig).
> >
> > I think I'll disable this patch for now..
>
> Oh drat and curses.
>
> Change all -I$(srctree) in Makefiles to -I$(objtree).
> New (full) patch file with only that change is below.
> I can send a patch with only those changes if you prefer that.
>
> Cross-build using O= works now.

I wasn't using O=.

It turns out that this is breakage introduced by git-x86.patch.
Reproducible via:

setenv ARCH i386
make mrproper
make allmodconfig
gcc -I$(/bin/pwd)/include Documentation/accounting/getdelays.c -o getdelays

In file included from /usr/src/devel/include/linux/netlink.h:5,
from /usr/src/devel/include/linux/genetlink.h:4,
from Documentation/accounting/getdelays.c:26:
/usr/src/devel/include/linux/types.h:203: error: expected specifier-qualifier-list before '__kernel_daddr_t'


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/