On 07/22/2013 11:48 AM, Saul Wold wrote:
On 07/17/2013 06:54 PM, Ming Liu wrote:
The native/nativesdk overrides of EXTRA_OECONF should take effect before
append operator, otherwise, it will cause EXTRA_OECONF be overridden
instead
of be appended at native/nativesdk build time.
Signed-off-by: Ming Liu <ming....@windriver.com>
---
meta/recipes-core/util-linux/util-linux_2.23.1.bb | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-core/util-linux/util-linux_2.23.1.bb
b/meta/recipes-core/util-linux/util-linux_2.23.1.bb
index 12f5021..3040476 100644
--- a/meta/recipes-core/util-linux/util-linux_2.23.1.bb
+++ b/meta/recipes-core/util-linux/util-linux_2.23.1.bb
@@ -18,5 +18,5 @@ SRC_URI[md5sum] = "6741eeaff93ff5a6bacdd3816bdd87c4"
SRC_URI[sha256sum] =
"ad4a7831d7b27d0172996fd343e809716c2403b32a94e15194d8ea797223c4af"
CACHED_CONFIGUREVARS += "scanf_cv_alloc_modifier=as"
-EXTRA_OECONF_class-native += "--disable-fallocate
--disable-use-tty-group"
-EXTRA_OECONF_class-nativesdk += "--disable-fallocate
--disable-use-tty-group"
+EXTRA_OECONF_append_class-native = " --disable-fallocate
--disable-use-tty-group"
+EXTRA_OECONF_append_class-nativesdk = " --disable-fallocate
--disable-use-tty-group"
While this seems correct, it is causing some down stream issues with
e2fsprogs-native and not finding the uuid library
Hi, Saul:
I did some investigations about this issue, it should be a regression
introduced by commit 91c0f9e3: util-linux: move libraries to
base_libdir. It tried to transfer "--libdir=${base_libdir}" to
EXTRA_OECONF at configure status, which conflicted with following code
in configure.ac:
.........
case $libdir in
${exec_prefix}/* | ${prefix}/* | /usr/*)
usrlib_execdir=$libdir ;;
*)
usrlib_execdir='${exec_prefix}'$libdir ;;
esac
AC_SUBST([usrlib_execdir])
........
It resulted a invalid usrlib_execdir, and therefore caused libuuid.so
link unreachable. This would make packages relies on uuid fail to
compile, like e2fsprogs.
Anyway, it could be fixed by appending "--prefix=${base_prefix}
--exec_prefix=${base_prefix}" to EXTRA_OECONF and we don't need to worry
it, however, things go to more complicated after applied 91c0f9e3 that
it also breaks pkgconfig, because all *.pc go to ${base_libdir} instead
of ${libdir} though pkg-config looks for files in explicitly fixed
directories set by PKG_CONFIG_PATH, which in this case is:
${STAGING_DATADIR}/pkgconfig${EXTRA_NATIVE_PKGCONFIG_PATH}, that finally
causes other packages fail to detect libuuid by pkg-config.
Two approaches to fix this pkg-config failure, first, we could move *.pc
to ${libdir} at do_intall stage, and the other, modify PKG_CONFIG_PATH,
adding ${libdir}/pkgconfig into it. Which one do you prefer? Or we could
just revert commit 91c0f9e3?
the best,
thank you
Enabling testio debugging by default
| checking for x86_64-linux-pkg-config... no
| checking for pkg-config...
/srv/ssd/sgw/builds/world/tmp/sysroots/x86_64-linux/usr/bin/pkg-config
| checking pkg-config is at least version 0.9.0... yes
| checking for uuid_generate in -luuid... no
| configure: error: external uuid library not found
| Configure failed. The contents of all config.log files follows to
aid debugging
| ERROR: oe_runconf failed
Can you please research this further.
Thanks
Sau!
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.openembedded.org/mailman/listinfo/openembedded-core