emerge -1 sys-fs/aufs2
Calculating dependencies... done!
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) sys-fs/aufs2-0_p20090916
* aufs2-0_p20090916.tar.bz2 RMD160 SHA1 SHA256 size ;-) ... [ ok ]
* checking ebuild checksums ;-) ... [ ok ]
* checking auxfile checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
* Using bashrcng profile [ 1.1.4 ]
* Determining the location of the kernel source code
* Found kernel source directory:
* Found sources for kernel version:
>>> Unpacking source...
>>> Unpacking aufs2-0_p20090916.tar.bz2 to /var/tmp/portage/sys-fs/aufs2-0_p20090916/work
>>> Source unpacked in /var/tmp/portage/sys-fs/aufs2-0_p20090916/work
>>> Preparing source in /var/tmp/portage/sys-fs/aufs2-0_p20090916/work/aufs2-standalone ...
* Applying aufs2-0_p20090916-makefile.patch.bz2 ... [ ok ]
* Applying utils-2.6.31.patch ... [ ok ]
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-fs/aufs2-0_p20090916/work/aufs2-standalone ...
>>> Source configured.
>>> Compiling source in /var/tmp/portage/sys-fs/aufs2-0_p20090916/work/aufs2-standalone ...
make -j9 -s CC=i686-pc-linux-gnu-gcc CONFIG_AUFS_FS=m KDIR=/usr/src/linux
-I/var/tmp/portage/sys-fs/aufs2-0_p20090916/work/aufs2-standalone/include -DCONFIG_AUFS_MODULE -UCONFIG_AUFS -DCONFIG_AUFS_BRANCH_MAX_127 -DCONFIG_AUFS_BR_RAMFS
make -j9 -s CC=i686-pc-linux-gnu-gcc AR=i686-pc-linux-gnu-ar KDIR=/usr/src/linux C_INCLUDE_PATH=/var/tmp/portage/sys-fs/aufs2-0_p20090916/work/aufs2-standalone/include
In file included from /usr/include/asm/types.h:4,
/usr/src/linux/include/asm-generic/int-ll64.h:11:29: error: asm/bitsperlong.h: No such file or directory
Steps to Reproduce:
adding asm/bitsperlong.h inside aufs2-0_p20090916.tar.bz2 the problem disappears.
Created attachment 209222 [details]
Created attachment 209224 [details]
Created attachment 209226 [details]
fine build with 2.6.31-gentoo-r5 for me (anyway there are problem in the resulted module about some missing symbols not found...)
Regardin your problem. are your kernel source '2.6.31-gentoo-r4-live' a "vanilla-gentoo" kernel?
Created attachment 209296 [details]
(In reply to comment #4)
> fine build with 2.6.31-gentoo-r5 for me (anyway there are problem in the
> resulted module about some missing symbols not found...)
> Regardin your problem. are your kernel source '2.6.31-gentoo-r4-live' a
> "vanilla-gentoo" kernel?
no. it's a gentoo-sources-2.6.31-r4, as in the summary.
the -live extension is in .config CONFIG_LOCALVERSION
p.s: gentoo-sources-2.6.31-r5 is not in portage.
I just tried to build aufs2-0_p20090916 from main tree against gentoo-sources-2.6.31-r4 and it compiled fine for me, so i fear i cannot help you in this case.
I've descovered the issue happens on my chroot 32-bit installations (from a 64-bit one), while it not happens on 64-bit.
I'm not a programmer and I'm not able to understand this kind of dependencies.
may it be the problem depending from the chroot envinronment?
I do chroot with these steps:
linux32 chroot path_to_chroot
(In reply to comment #9)
> I've descovered the issue happens on my chroot 32-bit installations (from a
> 64-bit one), while it not happens on 64-bit.
> I'm not a programmer and I'm not able to understand this kind of dependencies.
> may it be the problem depending from the chroot envinronment?
> I do chroot with these steps:
> linux32 chroot path_to_chroot
> source /etc/profile
Same thing here for me. I started with the i686 stage3 and then used "linux32 chroot chroot_path /bin/bash". I'm using gentoo-sources-2.6.31-r5, patched via the ebuild with the USE flag kernel-patch.
Whats your output for "uname -m" inside the environment, where building aufs2 fails?
(In reply to comment #11)
> Whats your output for "uname -m" inside the environment, where building aufs2
it's different from chroot sources from kernel version (off course):
s939 src # uname -rm
s939 src # ls -l /usr/src/linux
lrwxrwxrwx 1 root root 27 8 nov 12:28 /usr/src/linux -> linux-2.6.31-gentoo-r5-live
uname -r comes from the 64bit envinronment.
the bug is confirmed for sys-fs/aufs2-0_p20090916-r1 ebuild
in 2.6.31 kernels, include/asm-generic/int-ll64.h was modified to include <asm/bitsperlong.h>.
This file is located in arch/*/include/asm, so it is necessary to also include arch specific path when using -I/usr/src/linux/include.
utils-2.6.31.patch tries to fix the issue by patching aufs2-utils/Makefile, but after the fix on x86_64 systems aufs2-util/Makefile includes arch/x86/include/asm and the build works, instead on i*86 systems it tries to include arch/i386/include/asm and the build fails.
The following patch fixes util-2.6.31.patch.
Created attachment 211302 [details, diff]
patch to fix files/utils-2.6.31.patch
Fixed ebuild committed, should be on your local mirror after a few hours