From: Graham Gower Date: Mon, 22 Nov 2010 23:37:37 +0000 (+1030) Subject: udev_124.bb: Fix build when DISTRO_FEATURES lacks "largefile". X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c3642f0b09467c5738b8232521c2a37f05c7ee66;p=openembedded.git udev_124.bb: Fix build when DISTRO_FEATURES lacks "largefile". NOTE: make -e EXTRAS=extras/firmware/ extras/scsi_id/ extras/volume_id/ STRIP=echo libudevdir=/lib/udev libdir=/lib prefix= GENHDR udev_version.h CC udev_device.o In file included from /mnt/oe/tmp/sysroots/mipsel-oe-linux-uclibc/include/stdlib.h:25:0, from udev_device.c:20: /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 udev_device.c:21: /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 udev_device.c:21: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 udev_device.c:21: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 udev_device.c: In function 'udev_device_event': udev_device.c:272:4: warning: cast increases required alignment of target type udev_device.c:272:4: warning: cast increases required alignment of target type make: *** [udev_device.o] Error 1 FATAL: oe_runmake failed Signed-off-by: Graham Gower Signed-off-by: Eric Bénard --- diff --git a/recipes/udev/udev_124.bb b/recipes/udev/udev_124.bb index d0d54206dc..a6c0e18dc3 100644 --- a/recipes/udev/udev_124.bb +++ b/recipes/udev/udev_124.bb @@ -29,6 +29,10 @@ FILES_${PN}-dbg += "${base_libdir}/udev/.debug" UDEV_EXTRAS = "extras/firmware/ extras/scsi_id/ extras/volume_id/" EXTRA_OEMAKE += "libudevdir=/lib/udev libdir=${base_libdir} prefix=" +do_configure_prepend_libc-uclibc() { + eval "${@base_contains('DISTRO_FEATURES', 'largefile', '', 'sed -i -e "s/-D_FILE_OFFSET_BITS=64//" ${S}/Makefile', d)}" +} + do_install () { install -d ${D}${usrsbindir} \ ${D}${sbindir}