libdrm_2.4.22.bb: Fix build for uclibc when DISTRO_FEATURES lacks largefile.
authorGraham Gower <graham.gower@gmail.com>
Mon, 29 Nov 2010 05:51:37 +0000 (16:21 +1030)
committerKhem Raj <raj.khem@gmail.com>
Tue, 30 Nov 2010 00:06:35 +0000 (16:06 -0800)
CC     intel.lo
In file included from /mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/errno.h:29:0,
                 from intel.c:32:
/mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/features.h:216:5: error: #error It appears you have defined _FILE_OFFSET_BITS=64. Unfortunately, uClibc was built without large file support enabled.
In file included from /mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/stdio.h:72:0,
                 from intel.c:33:
/mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/bits/uClibc_stdio.h:61:2: error: #error Sorry... uClibc was built without large file support!
In file included from intel.c:33:0:
/mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/stdio.h:83:26: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'fpos_t'
In file included from intel.c:33:0:
/mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/stdio.h:719:12: error: expected declaration specifiers or '...' before 'fpos_t'
/mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/stdio.h:721:12: error: expected ';', ',' or ')' before '*' token
make[2]: *** [intel.lo] Error 1

Signed-off-by: Graham Gower <graham.gower@gmail.com>
Signed-off-by: Eric Bénard <eric@eukrea.com>
recipes/dri/libdrm_2.4.22.bb

index 107e8b8..fb94e4c 100644 (file)
@@ -17,3 +17,9 @@ EXTRA_OECONF_append_angstrom = " --disable-radeon "
 PACKAGES =+ "${@base_contains('MACHINE_FEATURES', 'x86', '${PN}-intel', '',d)}"
 
 FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*"
+
+do_compile_prepend_libc-uclibc() {
+       eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/intel.c', d)}"
+       eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/vmwgfx.c', d)}"
+       eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "/_FILE_OFFSET_BITS/d" ${S}/libkms/nouveau.c', d)}"
+}