All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] util-linux: create nativesdk lib packages
@ 2017-11-05 18:08 Gaël PORTAY
  0 siblings, 0 replies; only message in thread
From: Gaël PORTAY @ 2017-11-05 18:08 UTC (permalink / raw)
  To: openembedded-core

The nativesdk class does not create lib<x> packages as its cross
counterpart does.

	libblkid
	libuuid
	libsmartcols
	libfdisk
	libmount...

Instead theses libraries are shipped into the nativesdk-util-linux
package.

This causes nativesdk images to fail at do_rootfs when a package depends
on util-linux-lib<x> because the nativesdk-util-linux-lib<x> is not
created.

The example below shows what the error looks like with the not created
package nativesdk-util-linux-libuuid.

    	Collected errors:
    	 * calculate_dependencies_for: Cannot satisfy the following dependencies for nativesdk-packagegroup-sdk-host:
    	 *     nativesdk-util-linux-libuuid *
    	 * opkg_solver_install: Cannot install package nativesdk-packagegroup-sdk-host.

The reason comes from the place where the libraries are installed.

Libraries are installed under ${base_libdir} (ie. /lib) for the cross
the package; but they are installed under ${libdir} (ie. /usr/lib) for
nativesdk (and native).

	EXTRA_OECONF = "${SHARED_EXTRA_OECONF} --libdir=${base_libdir}"

	EXTRA_OECONF_class-native = "${SHARED_EXTRA_OECONF} \
	                             --disable-fallocate \
				     --disable-use-tty-group \
	"

The populate_packages_prepend function dynamically creates lib<x>
packages that are installed under ${base_libdir} directory.

The new function populate_packages_prepend_class-nativesdk for nativesdk
mimics the behavior of the cross function.

It creates dynamically nativesdk-lib<x> packages for libraries that are
installed under the ${libdir} directory.

Improves:

	91c0f9e35d util-linux: move libraries to base_libdir
	4cff0bd254 util-linux: Fix QA warnings about ALTERNATIVES
	4571c9e963 util-linux: collect libs for related libxx-dev package
	a7572d7000 util-linux: split libraries dynamically

Signed-off-by: Gaël PORTAY <gael.portay@savoirfairelinux.com>
---
 meta/recipes-core/util-linux/util-linux.inc | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc
index 5c4694b1fd..0ab05c8cdc 100644
--- a/meta/recipes-core/util-linux/util-linux.inc
+++ b/meta/recipes-core/util-linux/util-linux.inc
@@ -303,6 +303,13 @@ python populate_packages_prepend() {
                       extra_depends='', prepend=True, allow_links=True)
 }
 
+python populate_packages_prepend_class-nativesdk() {
+    do_split_packages(d, '${libdir}', '^lib(.*)\.so\..*$',
+                      output_pattern='nativesdk-util-linux-lib%s',
+                      description='nativesdk-util-linux lib%s',
+                      extra_depends='', prepend=True, allow_links=True)
+}
+
 RDEPENDS_${PN}-bash-completion += "util-linux-lsblk"
 RDEPENDS_${PN}-ptest = "bash grep coreutils"
 
-- 
2.14.2



^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2017-11-05 18:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-11-05 18:08 [PATCH] util-linux: create nativesdk lib packages Gaël PORTAY

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.