> On Jul 17, 2015, at 5:38 PM, S. Lockwood-Childs <[email protected]> wrote: > > configure.ac had a runtime check for large file support that got run > on 64-bit architectures, and all runtime checks must go away to be > cross-compile safe. > > Luckily that runtime check was extraneous, so just remove it; > standard AC_SYS_LARGEFILE macro should be sufficient for figuring out > proper settings to get large file support. > > Also un-blacklist libimobiledevice, since this problem was the > reason for the blacklist. >
one difference is that now it will depend on --enable-largefile secondly, what does AC_SYS_LARGEFILE check do in the end ? is it a link time check ? > Signed-off-by: S. Lockwood-Childs <[email protected]> > --- > .../files/configure-fix-largefile.patch | 38 ++++++++++++++++++++ > .../libimobiledevice/libimobiledevice_1.1.4.bb | 6 +--- > 2 files changed, 39 insertions(+), 5 deletions(-) > create mode 100644 > meta-oe/recipes-connectivity/libimobiledevice/files/configure-fix-largefile.patch > > diff --git > a/meta-oe/recipes-connectivity/libimobiledevice/files/configure-fix-largefile.patch > > b/meta-oe/recipes-connectivity/libimobiledevice/files/configure-fix-largefile.patch > new file mode 100644 > index 0000000..679a8b5 > --- /dev/null > +++ > b/meta-oe/recipes-connectivity/libimobiledevice/files/configure-fix-largefile.patch > @@ -0,0 +1,38 @@ > +Fix configure error in large file checks on 64-bit architectures > + > + configure:17888: checking for native large file support > + configure:17891: error: in > `/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/core2-64-oe-linux/libimobiledevice/1.1.4-r0/libimobiledevice-1.1.4': > + configure:17893: error: cannot run test program while cross compiling > + > +configure.ac was using AC_SYS_LARGEFILE macro as is typical, but then > +there was an extra runtime check added beyond that: > +check if off_t is 8 bytes (64 bits) long. > +If that runtime check passed, _FILE_OFFSET_BITS was defined as 64. > + > +Runtime checks need to go away for cross compiling, and luckily this extra > +check was not serving any useful purpose. Note that off_t was *already* > +64 bits, *without* setting _FILE_OFFSET_BITS, which makes _FILE_OFFSET_BITS > +unneeded for large file support. > + > +If AC_SYS_LARGEFILE macro sets ac_cv_sys_file_offset_bits=no, > +just leave _FILE_OFFSET_BITS undefined! > + > +--- libimobiledevice-1.1.4/configure.ac.old 2015-07-15 01:38:50.900143927 > -0700 > ++++ libimobiledevice-1.1.4/configure.ac 2015-07-15 01:39:13.300144430 > -0700 > +@@ -174,16 +174,6 @@ > + if test "$enable_largefile" != no; then > + if test "$ac_cv_sys_file_offset_bits" != 'no'; then > + LFS_CFLAGS="$LFS_CFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits" > +- else > +- AC_MSG_CHECKING(for native large file support) > +- AC_RUN_IFELSE([AC_LANG_SOURCE([#include <unistd.h> > +- int main (int argc, char **argv) > +- { > +- exit(!(sizeof(off_t) == 8)); > +- }])], > +- [ac_cv_sys_file_offset_bits=64; AC_DEFINE(_FILE_OFFSET_BITS,64) > +- AC_MSG_RESULT(yes)], > +- [AC_MSG_RESULT(no)]) > + fi > + if test "$ac_cv_sys_large_files" != 'no'; then > + LFS_CFLAGS="$LFS_CFLAGS -D_LARGE_FILES=1" > diff --git > a/meta-oe/recipes-connectivity/libimobiledevice/libimobiledevice_1.1.4.bb > b/meta-oe/recipes-connectivity/libimobiledevice/libimobiledevice_1.1.4.bb > index 5256ce0..06260f7 100644 > --- a/meta-oe/recipes-connectivity/libimobiledevice/libimobiledevice_1.1.4.bb > +++ b/meta-oe/recipes-connectivity/libimobiledevice/libimobiledevice_1.1.4.bb > @@ -5,17 +5,13 @@ LIC_FILES_CHKSUM = "\ > file://COPYING.LESSER;md5=6ab17b41640564434dda85c06b7124f7 \ > " > > -#| configure:17888: checking for native large file support > -#| configure:17891: error: in > `/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/work/core2-64-oe-linux/libimobiledevice/1.1.4-r0/libimobiledevice-1.1.4': > -#| configure:17893: error: cannot run test program while cross compiling > -PNBLACKLIST[libimobiledevice] ?= "cannot run test program while cross > compiling" > - > HOMEPAGE ="http://www.libimobiledevice.org/" > > DEPENDS = "libplist usbmuxd libtasn1 gnutls libgcrypt" > > SRC_URI = " \ > http://www.libimobiledevice.org/downloads/libimobiledevice-${PV}.tar.bz2 \ > + file://configure-fix-largefile.patch \ > " > > SRC_URI[md5sum] = "3f28cbc6a2e30d34685049c0abde5183" > -- > 1.7.10.4 > > -- > _______________________________________________ > Openembedded-devel mailing list > [email protected] > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
signature.asc
Description: Message signed with OpenPGP using GPGMail
-- _______________________________________________ Openembedded-devel mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-devel
