On Wed, Jul 17, 2019 at 04:41:01PM +0200, Martin Jansa wrote: > On Wed, Jul 17, 2019 at 05:17:30PM +0300, Adrian Ratiu wrote: > > On Wed, 17 Jul 2019, Martin Jansa <martin.ja...@gmail.com> wrote: > > > On Wed, Jul 17, 2019 at 02:52:21PM +0300, Adrian Ratiu wrote: > > >> Hi On Wed, 17 Jul 2019, Martin Jansa <martin.ja...@gmail.com> > > >> wrote: > > >> > Why don't you overwrite it with an override? We're doing that > > >> > for years without any issues. > > >> You mean a distro-wide override in a .conf? > > > > > > yes > > > > > >> Can you please point to an example? > > > > > > https://github.com/webosose/meta-webosose/blob/master/meta-webos/conf/distro/include/webos.inc#L256 > > > > > > > Thanks, I didn't know about the _forcevariable override. > > > > Is using _forcevariable the preferred method to do this though > > instead of using ??= ? > > > > The reference manual says it's not recommended and a "worst case" > > solution... > > You can use any other override from OVERRIDES variables which covers all > cases you want to cover. > > I was using ${DISTRO} before, but switched to forcevariable later, > because I needed to cover more DISTROs at the same time. > > https://github.com/openwebos/meta-webos/commit/8c79f89fac09364e5ce494ee5fab133e7734583f#diff-e2b7938279c801074fb285c60acf2228 > > forcevariable is OK as long as you know what you're doing, if your > distro really enforces different OPKGLIBDIR for good reason, then the > users probably won't ever need to override it again locally. > > Using ??= for every variable, just because someone somewhere might > prefer different value doesn't look much better IMHO.
Also see first bullet point of the commit referenced above: http://lists.openembedded.org/pipermail/openembedded-core/2013-February/192720.html so making it easily to change this variable is just allowing more people to break u-a more easily. > Cheers, > > > > > > >> > On Wed, Jul 17, 2019 at 12:01 AM Adrian Ratiu > > >> > <adrian.ra...@collabora.com> > > >> > wrote: > > >> > > > >> >> Some distributions for various reasons (like for example mounting a > > >> >> tmpfs over /var at runtime) can't use /var/lib to store the opkg > > >> >> metadata, so a different path is required to have a functioning > > >> >> package manager. > > >> >> > > >> >> ${localstatedir} can't be modified to something other than the > > >> >> hardcoded value in bitbake.conf because other recipes depending on it > > >> >> will fail to install. > > >> >> > > >> >> So the only recourse, which is also the least invasive, is to allow > > >> >> distros to overwrite the OPKGLIBDIR variable just like they are also > > >> >> allowed to overwrite OPKGBUILDCMD. > > >> >> > > >> >> Signed-off-by: Adrian Ratiu <adrian.ra...@collabora.com> > > >> >> --- > > >> >> meta/classes/package_ipk.bbclass | 2 +- > > >> >> meta/classes/rootfs_ipk.bbclass | 2 +- > > >> >> meta/recipes-devtools/opkg/opkg_0.4.1.bb | 2 +- > > >> >> 3 files changed, 3 insertions(+), 3 deletions(-) > > >> >> > > >> >> diff --git a/meta/classes/package_ipk.bbclass > > >> >> b/meta/classes/package_ipk.bbclass > > >> >> index d1b317b42b..9f9da2f91d 100644 > > >> >> --- a/meta/classes/package_ipk.bbclass > > >> >> +++ b/meta/classes/package_ipk.bbclass > > >> >> @@ -14,7 +14,7 @@ OPKG_ARGS += "--force_postinstall > > >> >> --prefer-arch-to-version" > > >> >> OPKG_ARGS += "${@['', > > >> >> '--no-install-recommends'][d.getVar("NO_RECOMMENDATIONS") == "1"]}" > > >> >> OPKG_ARGS += "${@['', '--add-exclude ' + ' --add-exclude > > >> >> '.join((d.getVar('PACKAGE_EXCLUDE') or > > >> >> "").split())][(d.getVar("PACKAGE_EXCLUDE") or "").strip() != ""]}" > > >> >> > > >> >> -OPKGLIBDIR = "${localstatedir}/lib" > > >> >> +OPKGLIBDIR ??= "${localstatedir}/lib" > > >> >> > > >> >> python do_package_ipk () { > > >> >> workdir = d.getVar('WORKDIR') > > >> >> diff --git a/meta/classes/rootfs_ipk.bbclass > > >> >> b/meta/classes/rootfs_ipk.bbclass > > >> >> index aabc370cfc..e73d2bfdae 100644 > > >> >> --- a/meta/classes/rootfs_ipk.bbclass > > >> >> +++ b/meta/classes/rootfs_ipk.bbclass > > >> >> @@ -21,7 +21,7 @@ OPKG_PREPROCESS_COMMANDS = "" > > >> >> > > >> >> OPKG_POSTPROCESS_COMMANDS = "" > > >> >> > > >> >> -OPKGLIBDIR = "${localstatedir}/lib" > > >> >> +OPKGLIBDIR ??= "${localstatedir}/lib" > > >> >> > > >> >> MULTILIBRE_ALLOW_REP = "${OPKGLIBDIR}/opkg|/usr/lib/opkg" > > >> >> > > >> >> diff --git a/meta/recipes-devtools/opkg/opkg_0.4.1.bb > > >> >> b/meta/recipes-devtools/opkg/opkg_0.4.1.bb > > >> >> index 8c48d3097c..c663eff13b 100644 > > >> >> --- a/meta/recipes-devtools/opkg/opkg_0.4.1.bb > > >> >> +++ b/meta/recipes-devtools/opkg/opkg_0.4.1.bb > > >> >> @@ -28,7 +28,7 @@ PACKAGES =+ "libopkg" > > >> >> inherit autotools pkgconfig systemd ptest > > >> >> > > >> >> target_localstatedir := "${localstatedir}" > > >> >> -OPKGLIBDIR = "${target_localstatedir}/lib" > > >> >> +OPKGLIBDIR ??= "${target_localstatedir}/lib" > > >> >> > > >> >> PACKAGECONFIG ??= "libsolv" > > >> >> > > >> >> -- > > >> >> 2.22.0 > > >> >> > > >> >> -- > > >> >> _______________________________________________ > > >> >> Openembedded-core mailing list > > >> >> Openembedded-core@lists.openembedded.org > > >> >> http://lists.openembedded.org/mailman/listinfo/openembedded-core > > >> >> > > > > > > -- > > > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com > > -- > Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com -- Martin 'JaMa' Jansa jabber: martin.ja...@gmail.com
signature.asc
Description: Digital signature
-- _______________________________________________ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core