[OE-core] [PATCH] elfutils: split libraries into separate packages

Saul Wold sgw at linux.intel.com
Wed Apr 3 15:50:29 UTC 2013


On 03/20/2013 02:11 AM, Marcin Juszkiewicz wrote:
> Elfutils contains libraries which are often used by other
> applications/libraries. But sometimes there are also conflicting
> packages needed - for example libdw-dev conflicts with libdwarf-dev
> because both provide /usr/include/dwarf.h header file.
>
> This change makes it more in line with Debian based systems. It also
> allows to have libdwarf-dev installed in image without having to go into
> ugly hacks or rewriting 3rdparty software.
>

This change seems to cause some issues with multilib build with lib32 on 
x86-64:
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_parisc.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_arm.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_ia64.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_ppc64.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_alpha.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_i386.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_mips.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_s390.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_sparc.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_x86_64.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_m68k.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_sh.so'
> ERROR: QA Issue: non -dev/-dbg/-nativesdk package contains symlink .so: lib32-libdw path '/work/x86-pokymllib32-linux/lib32-elfutils/0.148-r11/packages-split/lib32-libdw/usr/lib/elfutils/libebl_ppc.so'

If you could resolve that then we can take this change.

Thanks
	Sau!


> Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz at linaro.org>
> ---
>   meta/recipes-devtools/elfutils/elfutils_0.148.bb | 15 ++++++++++-----
>   1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/meta/recipes-devtools/elfutils/elfutils_0.148.bb b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
> index e8d58fb..dfed235 100644
> --- a/meta/recipes-devtools/elfutils/elfutils_0.148.bb
> +++ b/meta/recipes-devtools/elfutils/elfutils_0.148.bb
> @@ -68,7 +68,7 @@ EXTRA_OEMAKE_class-nativesdk = ""
>   BBCLASSEXTEND = "native nativesdk"
>
>   # Package utilities separately
> -PACKAGES =+ "${PN}-binutils"
> +PACKAGES =+ "${PN}-binutils libelf libasm libdw libdw-dev libasm-dev libelf-dev"
>   FILES_${PN}-binutils = "\
>       ${bindir}/eu-addr2line \
>       ${bindir}/eu-ld \
> @@ -77,11 +77,16 @@ FILES_${PN}-binutils = "\
>       ${bindir}/eu-size \
>       ${bindir}/eu-strip"
>
> +FILES_libelf = "${libdir}/libelf-${PV}.so ${libdir}/libelf.so.*"
> +FILES_libasm = "${libdir}/libasm-${PV}.so ${libdir}/libasm.so.*"
> +FILES_libdw  = "${libdir}/libdw-${PV}.so ${libdir}/libdw.so.* ${libdir}/elfutils/lib*"
> +FILES_libelf-dev = "${libdir}/libelf.so ${includedir}"
> +FILES_libasm-dev = "${libdir}/libasm.so ${includedir}/elfutils/libasm.h"
> +FILES_libdw-dev  = "${libdir}/libdw.so  ${includedir}/dwarf.h ${includedir}/elfutils/libdw*.h"
>   # Some packages have the version preceeding the .so instead properly
>   # versioned .so.<version>, so we need to reorder and repackage.
> -FILES_${PN} += "${libdir}/*-${PV}.so ${base_libdir}/*-${PV}.so"
> -FILES_SOLIBSDEV = "${libdir}/libasm.so ${libdir}/libdw.so ${libdir}/libelf.so"
> +#FILES_${PN} += "${libdir}/*-${PV}.so ${base_libdir}/*-${PV}.so"
> +#FILES_SOLIBSDEV = "${libdir}/libasm.so ${libdir}/libdw.so ${libdir}/libelf.so"
>
>   # The package contains symlinks that trip up insane
> -INSANE_SKIP_${PN} = "dev-so"
> -
> +INSANE_SKIP_libdw = "dev-so"
>




More information about the Openembedded-core mailing list