* [PATCH 1/3] dpkg: add nativesdk support
@ 2021-01-15 9:45 hongxu
2021-01-15 9:45 ` [PATCH 2/3] apt: " hongxu
` (2 more replies)
0 siblings, 3 replies; 12+ messages in thread
From: hongxu @ 2021-01-15 9:45 UTC (permalink / raw)
To: openembedded-core
- Add nativesdk support and override EXTRA_OECONF and PROV for
nativesdk
- Replace ${bindir} with ${STAGING_BINDIR_NATIVE} for perl-native
shebang to fix QA error of shebang too long in nativesdk build
- Add ldconfig to runtime depends to fix the following issue on target
[snip]
...
dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: error: 1 expected program not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and/sbin
E: Sub-process /usr/bin/dpkg returned an error code (2)
[snip]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
meta/recipes-devtools/dpkg/dpkg.inc | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc
index 04fe85c4a8..3325159299 100644
--- a/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/meta/recipes-devtools/dpkg/dpkg.inc
@@ -26,6 +26,7 @@ EXTRA_OECONF = "\
"
EXTRA_OECONF_append_class-target = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
+EXTRA_OECONF_append_class-nativesdk = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}"
PACKAGECONFIG = "liblzma"
PACKAGECONFIG[liblzma] = "--with-liblzma,--without-liblzma, xz"
@@ -46,14 +47,15 @@ do_install_append () {
if [ "${PN}" = "dpkg-native" ]; then
# update-alternatives doesn't have an offline mode
rm ${D}${bindir}/update-alternatives
- sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env nativeperl|' ${D}${bindir}/dpkg-*
+ sed -i -e 's|^#!.*${STAGING_BINDIR_NATIVE}/perl-native.*/perl|#!/usr/bin/env nativeperl|' ${D}${bindir}/dpkg-*
else
- sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-*
+ sed -i -e 's|^#!.*${STAGING_BINDIR_NATIVE}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-*
fi
}
PROV = "virtual/update-alternatives"
PROV_class-native = ""
+PROV_class-nativesdk = ""
PROVIDES += "${PROV}"
@@ -93,7 +95,7 @@ ALTERNATIVE_${PN}-start-stop = "start-stop-daemon"
ALTERNATIVE_LINK_NAME[start-stop-daemon] = "${sbindir}/start-stop-daemon"
ALTERNATIVE_PRIORITY = "100"
-RDEPENDS_${PN} += "${PN}-start-stop"
+RDEPENDS_${PN} += "${PN}-start-stop ldconfig"
-BBCLASSEXTEND = "native"
+BBCLASSEXTEND = "native nativesdk"
--
2.18.2
^ permalink raw reply related [flat|nested] 12+ messages in thread* [PATCH 2/3] apt: add nativesdk support 2021-01-15 9:45 [PATCH 1/3] dpkg: add nativesdk support hongxu @ 2021-01-15 9:45 ` hongxu 2021-01-15 11:26 ` [OE-core] " Richard Purdie [not found] ` <165A643B5E417599.21794@lists.openembedded.org> 2021-01-15 9:45 ` [PATCH 3/3] deb: do not insert feed uris if apt not installed hongxu 2021-01-15 22:15 ` [OE-core] [PATCH 1/3] dpkg: add nativesdk support Richard Purdie 2 siblings, 2 replies; 12+ messages in thread From: hongxu @ 2021-01-15 9:45 UTC (permalink / raw) To: openembedded-core 1. Add nativesdk support - Apply the same patches of native - Generate the same apt.conf.sample of native 2. Create user '_apt' to fix apt runtime warning [snip] $ apt update ... W: No sandbox user '_apt' on the system, can not drop privileges [snip] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> --- meta/recipes-devtools/apt/apt_1.8.2.1.bb | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/meta/recipes-devtools/apt/apt_1.8.2.1.bb b/meta/recipes-devtools/apt/apt_1.8.2.1.bb index de0e150a2e..57bd7ca600 100644 --- a/meta/recipes-devtools/apt/apt_1.8.2.1.bb +++ b/meta/recipes-devtools/apt/apt_1.8.2.1.bb @@ -17,6 +17,12 @@ SRC_URI_append_class-native = " \ file://0001-Do-not-configure-packages-on-installation.patch \ " +SRC_URI_append_class-nativesdk = " \ + file://0001-Do-not-init-tables-from-dpkg-configuration.patch \ + file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ + file://0001-Do-not-configure-packages-on-installation.patch \ + " + SRC_URI[sha256sum] = "6d447f2e9437ec24e78350b63bb0592bee1f050811d51990b0c783183b0983f8" LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" @@ -24,9 +30,12 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" # so we check the latest upstream from a directory that does get updated UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/" -inherit cmake perlnative bash-completion upstream-version-is-even +inherit cmake perlnative bash-completion upstream-version-is-even useradd + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt" -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" DEPENDS += "virtual/libiconv virtual/libintl db gnutls lz4 zlib bzip2 xz" @@ -41,7 +50,7 @@ do_configure_prepend () { FILES_${PN} += "${prefix}/lib/dpkg ${prefix}/lib/apt" RDEPENDS_${PN} += "bash perl dpkg" -do_install_append_class-native() { +customize_apt_conf_sample() { cat > ${D}${sysconfdir}/apt/apt.conf.sample << EOF Dir "${STAGING_DIR_NATIVE}/" { @@ -94,6 +103,15 @@ DPkg::Path ""; EOF } +do_install_append_class-native() { + customize_apt_conf_sample +} + +do_install_append_class-nativesdk() { + customize_apt_conf_sample +} + + do_install_append_class-target() { #Write the correct apt-architecture to apt.conf APT_CONF=${D}/etc/apt/apt.conf -- 2.18.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 2/3] apt: add nativesdk support 2021-01-15 9:45 ` [PATCH 2/3] apt: " hongxu @ 2021-01-15 11:26 ` Richard Purdie [not found] ` <165A643B5E417599.21794@lists.openembedded.org> 1 sibling, 0 replies; 12+ messages in thread From: Richard Purdie @ 2021-01-15 11:26 UTC (permalink / raw) To: hongxu, openembedded-core On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: > 1. Add nativesdk support > - Apply the same patches of native > - Generate the same apt.conf.sample of native > > 2. Create user '_apt' to fix apt runtime warning > [snip] > $ apt update > ... > W: No sandbox user '_apt' on the system, can not drop privileges > [snip] > > Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> > --- > meta/recipes-devtools/apt/apt_1.8.2.1.bb | 24 +++++++++++++++++++++--- > 1 file changed, 21 insertions(+), 3 deletions(-) > > diff --git a/meta/recipes-devtools/apt/apt_1.8.2.1.bb b/meta/recipes-devtools/apt/apt_1.8.2.1.bb > index de0e150a2e..57bd7ca600 100644 > --- a/meta/recipes-devtools/apt/apt_1.8.2.1.bb > +++ b/meta/recipes-devtools/apt/apt_1.8.2.1.bb > @@ -17,6 +17,12 @@ SRC_URI_append_class-native = " \ > file://0001-Do-not-configure-packages-on-installation.patch \ > " > > > > > > > > > +SRC_URI_append_class-nativesdk = " \ > + file://0001-Do-not-init-tables-from-dpkg-configuration.patch \ > + file://0001-Revert-always-run-dpkg-configure-a-at-the-end-of-our.patch \ > + file://0001-Do-not-configure-packages-on-installation.patch \ > + " > + > SRC_URI[sha256sum] = "6d447f2e9437ec24e78350b63bb0592bee1f050811d51990b0c783183b0983f8" > LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" > > > > > > > > > @@ -24,9 +30,12 @@ LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=b234ee4d69f5fce4486a80fdaf4a4263" > # so we check the latest upstream from a directory that does get updated > UPSTREAM_CHECK_URI = "${DEBIAN_MIRROR}/main/a/apt/" > > > > > > > > > -inherit cmake perlnative bash-completion upstream-version-is-even > +inherit cmake perlnative bash-completion upstream-version-is-even useradd > + > +USERADD_PACKAGES = "${PN}" > +USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt" > I think meta-selftest/files/static-passwd will need this adding for the selftests to pass? Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
[parent not found: <165A643B5E417599.21794@lists.openembedded.org>]
* Re: [OE-core] [PATCH 2/3] apt: add nativesdk support [not found] ` <165A643B5E417599.21794@lists.openembedded.org> @ 2021-01-15 16:51 ` Richard Purdie 2021-01-16 2:49 ` hongxu 0 siblings, 1 reply; 12+ messages in thread From: Richard Purdie @ 2021-01-15 16:51 UTC (permalink / raw) To: hongxu, openembedded-core On Fri, 2021-01-15 at 11:26 +0000, Richard Purdie via lists.openembedded.org wrote: > On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: > > > > > > -inherit cmake perlnative bash-completion upstream-version-is-even > > +inherit cmake perlnative bash-completion upstream-version-is-even useradd > > + > > +USERADD_PACKAGES = "${PN}" > > +USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt" > > > > I think meta-selftest/files/static-passwd will need this adding for > the selftests to pass? I've tweaked the patch I've queued in master-next for testing. I also added a comment here to say why we need this user (it used to exist but was removed as it wasn't realised what it was for). Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 2/3] apt: add nativesdk support 2021-01-15 16:51 ` Richard Purdie @ 2021-01-16 2:49 ` hongxu 0 siblings, 0 replies; 12+ messages in thread From: hongxu @ 2021-01-16 2:49 UTC (permalink / raw) To: Richard Purdie, openembedded-core On 1/16/21 12:51 AM, Richard Purdie wrote: > [Please note this e-mail is from an EXTERNAL e-mail address] > > On Fri, 2021-01-15 at 11:26 +0000, Richard Purdie via > lists.openembedded.org wrote: >> On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: >>> >>> -inherit cmake perlnative bash-completion upstream-version-is-even >>> +inherit cmake perlnative bash-completion upstream-version-is-even useradd >>> + >>> +USERADD_PACKAGES = "${PN}" >>> +USERADD_PARAM_${PN} = "--system --home /nonexistent --no-create-home _apt" >>> >> I think meta-selftest/files/static-passwd will need this adding for >> the selftests to pass? > I've tweaked the patch I've queued in master-next for testing. > > I also added a comment here to say why we need this user (it used to > exist but was removed as it wasn't realised what it was for). Got it, thanks a lot //Hongxu > Cheers, > > Richard > ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH 3/3] deb: do not insert feed uris if apt not installed 2021-01-15 9:45 [PATCH 1/3] dpkg: add nativesdk support hongxu 2021-01-15 9:45 ` [PATCH 2/3] apt: " hongxu @ 2021-01-15 9:45 ` hongxu 2021-01-15 22:21 ` [OE-core] " Richard Purdie 2021-01-15 22:15 ` [OE-core] [PATCH 1/3] dpkg: add nativesdk support Richard Purdie 2 siblings, 1 reply; 12+ messages in thread From: hongxu @ 2021-01-15 9:45 UTC (permalink / raw) To: openembedded-core - The dir /etc/apt was created in package apt, if package apt was not installed, there is no need to insert package feed. Otherwise, it will fail with no such dir - Output the result of apt install Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> --- meta/lib/oe/package_manager/deb/__init__.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/meta/lib/oe/package_manager/deb/__init__.py b/meta/lib/oe/package_manager/deb/__init__.py index 10ad707c23..1e2278d6a4 100644 --- a/meta/lib/oe/package_manager/deb/__init__.py +++ b/meta/lib/oe/package_manager/deb/__init__.py @@ -287,7 +287,8 @@ class DpkgPM(OpkgDpkgPM): try: bb.note("Installing the following packages: %s" % ' '.join(pkgs)) - subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) + output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) + bb.note(output.decode("utf-8")) except subprocess.CalledProcessError as e: (bb.fatal, bb.warn)[attempt_only]("Unable to install packages. " "Command '%s' returned %d:\n%s" % @@ -343,8 +344,12 @@ class DpkgPM(OpkgDpkgPM): if feed_uris == "": return + sources_conf = os.path.join("%s/etc/apt/sources.list" % self.target_rootfs) + if not os.path.exists(os.path.dirname(sources_conf)): + return + arch_list = [] if feed_archs is None: -- 2.18.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 3/3] deb: do not insert feed uris if apt not installed 2021-01-15 9:45 ` [PATCH 3/3] deb: do not insert feed uris if apt not installed hongxu @ 2021-01-15 22:21 ` Richard Purdie 2021-01-16 2:46 ` hongxu 2021-01-16 3:49 ` [PATCH V2] " hongxu 0 siblings, 2 replies; 12+ messages in thread From: Richard Purdie @ 2021-01-15 22:21 UTC (permalink / raw) To: hongxu, openembedded-core On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: > - The dir /etc/apt was created in package apt, if package apt was not > installed, there is no need to insert package feed. Otherwise, it > will fail with no such dir > > - Output the result of apt install > > Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> > --- > meta/lib/oe/package_manager/deb/__init__.py | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/meta/lib/oe/package_manager/deb/__init__.py b/meta/lib/oe/package_manager/deb/__init__.py > index 10ad707c23..1e2278d6a4 100644 > --- a/meta/lib/oe/package_manager/deb/__init__.py > +++ b/meta/lib/oe/package_manager/deb/__init__.py > @@ -287,7 +287,8 @@ class DpkgPM(OpkgDpkgPM): > > > > > try: > bb.note("Installing the following packages: %s" % ' '.join(pkgs)) > - subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) > + output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) > + bb.note(output.decode("utf-8")) > except subprocess.CalledProcessError as e: > (bb.fatal, bb.warn)[attempt_only]("Unable to install packages. " > "Command '%s' returned %d:\n%s" % > @@ -343,8 +344,12 @@ class DpkgPM(OpkgDpkgPM): > if feed_uris == "": > return > > > > > + > sources_conf = os.path.join("%s/etc/apt/sources.list" > % self.target_rootfs) > + if not os.path.exists(os.path.dirname(sources_conf)): > + return > + > arch_list = [] > > > > > if feed_archs is None: I think this is resulting in these warnings: https://autobuilder.yoctoproject.org/typhoon/#/builders/50/builds/2925 Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 3/3] deb: do not insert feed uris if apt not installed 2021-01-15 22:21 ` [OE-core] " Richard Purdie @ 2021-01-16 2:46 ` hongxu 2021-01-16 3:49 ` [PATCH V2] " hongxu 1 sibling, 0 replies; 12+ messages in thread From: hongxu @ 2021-01-16 2:46 UTC (permalink / raw) To: Richard Purdie, openembedded-core On 1/16/21 6:21 AM, Richard Purdie wrote: > I think this is resulting in these warnings: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/50/builds/2925 This is caused by the warning message in the output of 'apt install' ... WARNING: The following packages cannot be authenticated! ... I will try to fix the warning //Hongxu > > Cheers, > > Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V2] deb: do not insert feed uris if apt not installed 2021-01-15 22:21 ` [OE-core] " Richard Purdie 2021-01-16 2:46 ` hongxu @ 2021-01-16 3:49 ` hongxu 1 sibling, 0 replies; 12+ messages in thread From: hongxu @ 2021-01-16 3:49 UTC (permalink / raw) To: openembedded-core, richard.purdie - The dir /etc/apt was created in package apt, if package apt was not installed, there is no need to insert package feed. Otherwise, it will fail with no such dir - Output the result of apt install - Explicitly trust the deb package repository from build This could avoid apt install warning: ... WARNING: The following packages cannot be authenticated! ... - Also trust the inserted deb package repository from PACKAGE_FEED_URIS Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> --- meta/lib/oe/package_manager/deb/__init__.py | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/meta/lib/oe/package_manager/deb/__init__.py b/meta/lib/oe/package_manager/deb/__init__.py index 10ad707c23..7fdfdaa4fa 100644 --- a/meta/lib/oe/package_manager/deb/__init__.py +++ b/meta/lib/oe/package_manager/deb/__init__.py @@ -287,7 +287,8 @@ class DpkgPM(OpkgDpkgPM): try: bb.note("Installing the following packages: %s" % ' '.join(pkgs)) - subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) + output = subprocess.check_output(cmd.split(), stderr=subprocess.STDOUT) + bb.note(output.decode("utf-8")) except subprocess.CalledProcessError as e: (bb.fatal, bb.warn)[attempt_only]("Unable to install packages. " "Command '%s' returned %d:\n%s" % @@ -343,8 +344,12 @@ class DpkgPM(OpkgDpkgPM): if feed_uris == "": return + sources_conf = os.path.join("%s/etc/apt/sources.list" % self.target_rootfs) + if not os.path.exists(os.path.dirname(sources_conf)): + return + arch_list = [] if feed_archs is None: @@ -362,11 +367,11 @@ class DpkgPM(OpkgDpkgPM): if arch_list: for arch in arch_list: bb.note('Adding dpkg channel at (%s)' % uri) - sources_file.write("deb %s/%s ./\n" % + sources_file.write("deb [trusted=yes] %s/%s ./\n" % (uri, arch)) else: bb.note('Adding dpkg channel at (%s)' % uri) - sources_file.write("deb %s ./\n" % uri) + sources_file.write("deb [trusted=yes] %s ./\n" % uri) def _create_configs(self, archs, base_archs): base_archs = re.sub(r"_", r"-", base_archs) @@ -406,7 +411,7 @@ class DpkgPM(OpkgDpkgPM): with open(os.path.join(self.apt_conf_dir, "sources.list"), "w+") as sources_file: for arch in arch_list: - sources_file.write("deb file:%s/ ./\n" % + sources_file.write("deb [trusted=yes] file:%s/ ./\n" % os.path.join(self.deploy_dir, arch)) base_arch_list = base_archs.split() -- 2.18.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] dpkg: add nativesdk support 2021-01-15 9:45 [PATCH 1/3] dpkg: add nativesdk support hongxu 2021-01-15 9:45 ` [PATCH 2/3] apt: " hongxu 2021-01-15 9:45 ` [PATCH 3/3] deb: do not insert feed uris if apt not installed hongxu @ 2021-01-15 22:15 ` Richard Purdie 2021-01-16 2:50 ` hongxu 2021-01-16 3:47 ` [PATCH V2] " hongxu 2 siblings, 2 replies; 12+ messages in thread From: Richard Purdie @ 2021-01-15 22:15 UTC (permalink / raw) To: hongxu, openembedded-core; +Cc: Khem Raj On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: > - Add nativesdk support and override EXTRA_OECONF and PROV for > nativesdk > > - Replace ${bindir} with ${STAGING_BINDIR_NATIVE} for perl-native > shebang to fix QA error of shebang too long in nativesdk build > > - Add ldconfig to runtime depends to fix the following issue on target > [snip] > ... > dpkg: warning: 'ldconfig' not found in PATH or not executable > dpkg: error: 1 expected program not found in PATH or not executable > Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and/sbin > E: Sub-process /usr/bin/dpkg returned an error code (2) > [snip] > > Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> > --- > meta/recipes-devtools/dpkg/dpkg.inc | 10 ++++++---- > 1 file changed, 6 insertions(+), 4 deletions(-) Seems to break poky-tiny: https://autobuilder.yoctoproject.org/typhoon/#/builders/15/builds/3209 (ldconfig may not be available with musl?) Cheers, Richard ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: [OE-core] [PATCH 1/3] dpkg: add nativesdk support 2021-01-15 22:15 ` [OE-core] [PATCH 1/3] dpkg: add nativesdk support Richard Purdie @ 2021-01-16 2:50 ` hongxu 2021-01-16 3:47 ` [PATCH V2] " hongxu 1 sibling, 0 replies; 12+ messages in thread From: hongxu @ 2021-01-16 2:50 UTC (permalink / raw) To: Richard Purdie, openembedded-core; +Cc: Khem Raj On 1/16/21 6:15 AM, Richard Purdie wrote: > [Please note this e-mail is from an EXTERNAL e-mail address] > > On Fri, 2021-01-15 at 17:45 +0800, hongxu wrote: >> - Add nativesdk support and override EXTRA_OECONF and PROV for >> nativesdk >> >> - Replace ${bindir} with ${STAGING_BINDIR_NATIVE} for perl-native >> shebang to fix QA error of shebang too long in nativesdk build >> >> - Add ldconfig to runtime depends to fix the following issue on target >> [snip] >> ... >> dpkg: warning: 'ldconfig' not found in PATH or not executable >> dpkg: error: 1 expected program not found in PATH or not executable >> Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and/sbin >> E: Sub-process /usr/bin/dpkg returned an error code (2) >> [snip] >> >> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> >> --- >> meta/recipes-devtools/dpkg/dpkg.inc | 10 ++++++---- >> 1 file changed, 6 insertions(+), 4 deletions(-) > Seems to break poky-tiny: > > https://autobuilder.yoctoproject.org/typhoon/#/builders/15/builds/3209 > > (ldconfig may not be available with musl?) I will try it in musl, //Hongxu > Cheers, > > Richard > ^ permalink raw reply [flat|nested] 12+ messages in thread
* [PATCH V2] dpkg: add nativesdk support 2021-01-15 22:15 ` [OE-core] [PATCH 1/3] dpkg: add nativesdk support Richard Purdie 2021-01-16 2:50 ` hongxu @ 2021-01-16 3:47 ` hongxu 1 sibling, 0 replies; 12+ messages in thread From: hongxu @ 2021-01-16 3:47 UTC (permalink / raw) To: openembedded-core, richard.purdie From: hongxu <hongxu.jia@windriver.com> - Add nativesdk support and override EXTRA_OECONF and PROV for nativesdk - Replace ${bindir} with ${STAGING_BINDIR_NATIVE} for perl-native shebang to fix QA error of shebang too long in nativesdk build - Conditionally (except musl) add ldconfig to runtime depends to fix the following issue on target [snip] ... dpkg: warning: 'ldconfig' not found in PATH or not executable dpkg: error: 1 expected program not found in PATH or not executable Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and/sbin E: Sub-process /usr/bin/dpkg returned an error code (2) [snip] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> --- meta/recipes-devtools/dpkg/dpkg.inc | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc index 04fe85c4a8..3419aa56bf 100644 --- a/meta/recipes-devtools/dpkg/dpkg.inc +++ b/meta/recipes-devtools/dpkg/dpkg.inc @@ -26,6 +26,7 @@ EXTRA_OECONF = "\ " EXTRA_OECONF_append_class-target = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}" +EXTRA_OECONF_append_class-nativesdk = " --disable-update-alternatives DEB_HOST_ARCH=${DPKG_ARCH}" PACKAGECONFIG = "liblzma" PACKAGECONFIG[liblzma] = "--with-liblzma,--without-liblzma, xz" @@ -46,14 +47,15 @@ do_install_append () { if [ "${PN}" = "dpkg-native" ]; then # update-alternatives doesn't have an offline mode rm ${D}${bindir}/update-alternatives - sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env nativeperl|' ${D}${bindir}/dpkg-* + sed -i -e 's|^#!.*${STAGING_BINDIR_NATIVE}/perl-native.*/perl|#!/usr/bin/env nativeperl|' ${D}${bindir}/dpkg-* else - sed -i -e 's|^#!.*${bindir}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-* + sed -i -e 's|^#!.*${STAGING_BINDIR_NATIVE}/perl-native.*/perl|#!/usr/bin/env perl|' ${D}${bindir}/dpkg-* fi } PROV = "virtual/update-alternatives" PROV_class-native = "" +PROV_class-nativesdk = "" PROVIDES += "${PROV}" @@ -93,7 +95,8 @@ ALTERNATIVE_${PN}-start-stop = "start-stop-daemon" ALTERNATIVE_LINK_NAME[start-stop-daemon] = "${sbindir}/start-stop-daemon" ALTERNATIVE_PRIORITY = "100" -RDEPENDS_${PN} += "${PN}-start-stop" +EXTRA_RDPENDS = "ldconfig" +EXTRA_RDPENDS_libc-musl = "" +RDEPENDS_${PN} += "${PN}-start-stop ${EXTRA_RDPENDS}" - -BBCLASSEXTEND = "native" +BBCLASSEXTEND = "native nativesdk" -- 2.18.2 ^ permalink raw reply related [flat|nested] 12+ messages in thread
end of thread, other threads:[~2021-01-16 3:49 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-15 9:45 [PATCH 1/3] dpkg: add nativesdk support hongxu
2021-01-15 9:45 ` [PATCH 2/3] apt: " hongxu
2021-01-15 11:26 ` [OE-core] " Richard Purdie
[not found] ` <165A643B5E417599.21794@lists.openembedded.org>
2021-01-15 16:51 ` Richard Purdie
2021-01-16 2:49 ` hongxu
2021-01-15 9:45 ` [PATCH 3/3] deb: do not insert feed uris if apt not installed hongxu
2021-01-15 22:21 ` [OE-core] " Richard Purdie
2021-01-16 2:46 ` hongxu
2021-01-16 3:49 ` [PATCH V2] " hongxu
2021-01-15 22:15 ` [OE-core] [PATCH 1/3] dpkg: add nativesdk support Richard Purdie
2021-01-16 2:50 ` hongxu
2021-01-16 3:47 ` [PATCH V2] " hongxu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox