From: Mark Hatle <mark.hatle@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: libexecdir and multilib
Date: Thu, 2 May 2013 13:07:23 -0500 [thread overview]
Message-ID: <5182AB5B.1080200@windriver.com> (raw)
In-Reply-To: <lyy5bxl2h7.fsf@ensc-virt.intern.sigma-chemnitz.de>
On 5/2/13 12:24 PM, Enrico Scholz wrote:
> "Burton, Ross" <ross.burton@intel.com> writes:
>
>> rpm allows "executables" (but not libraries) to conflict and will
>> prefer the 64-bit version,
>
> Sure? At least rpm-4 (Fedora, RHEL) does not allow files to conflict.
> Fedora solves the multilib problem by splitting the distribution into
> main packages (unilib only; contain binaries and data) and libraries
> (multilib). The distribution assemble tool ("mash") copies e.g. i386
> -lib and -devel packages both in i386 and x86_64 repositories.
RPM rule (doesn't matter rpm4 or rpm5), they have the same multilib rules.
If the file color (type) is -not- ELF, then a conflict occurs if the files are
different.
If the file color (type) is ELF, then the policy is used to decide if this is a
conflict, or which version wins.
> libexecdir files in Fedora should be part of unilib (main architecture)
> packages only.
Just because we're using RPM doesn't mean we have to follow Fedora. There are a
lot of things that Fedora does wrong (and right) IMHO. Same with Debian and
others. We need to make sure we do appropriate choices based on the users of
OE-Core. These users may need specific situations and/or expect certain
configurations that they are used to from Fedora. So deviating for the sake of
deviating is bad as well... There needs to be a technical reason for it.
>
>> libexecdir = ${exec_prefix}/libexec"
>> ===
>>
>> Conflicting binaries with multilib, would likely need improvements in
>> the opkg bbclass. Consistent name so cross-architecture file paths
>> are consistent, although the binary architecture isn't.
>
> How is ${bindir} multilib packaging solved in OE? Can this mechanism
> applied to ${exec_prefix}/libexec too?
>
>
>> What's clear from the research I've done is that there isn't a clear
>> answer - upstreams have different expectations of how libexecdir/bindir
>> are used, and different distributions do different things to solve the
>> multilib problems - even when the distribution maintainers are also
>> upstream developers. Some examples:
>>
>> dbus has a helper dbus-daemon-launch-helper, which is installed into
>> libexecdir. Fedora moves it into $libdir, where as Debian moves this
>> same binary to /usr/lib/dbus-1 avoiding the $arch... Some disagreement
>> there apparently.
>
> Yes; Fedora introduced this in 2007[1] without telling the rationale in
> the commit :( afais, this is not give problems because path is read from
> <serviceconfig> tag in /etc/dbus-1/system.conf and program is probably
> called only from dbus library itself.
>
>
>> My personal opinion at this point in time is that we should change
>> libexecdir to be $libdir.
>
> atm, multilib is a theoretical issue for me only and I do not have a
> strong bias for ${libdir} vs. ${exec_prefix}/lib.
>
> Nevertheless, when we change libexecdir to match ${libdir} in one
> architecture, we will see packaging regressions. To fix/detect them,
> we will have to:
>
> 1. remove ${libexecdir}/* wildcards from FILES lists (permanent change)
>
> 2. do world builds with "strange", temporary libexecdir
> (e.g. /usr/lib/strange-libexec) and look for unpackaged files.
>
>
>
> Enrico
>
> Footnotes:
> [1] http://pkgs.fedoraproject.org/cgit/dbus.git/commit/?id=73fe28f678b4a1f015bffbec0fa50b3690dd39a4
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
next prev parent reply other threads:[~2013-05-02 18:25 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-02 16:10 libexecdir and multilib Burton, Ross
2013-05-02 16:48 ` Mark Hatle
2013-05-02 17:24 ` Enrico Scholz
2013-05-02 18:07 ` Mark Hatle [this message]
2013-05-03 9:29 ` Burton, Ross
2013-05-04 17:05 ` Colin Walters
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5182AB5B.1080200@windriver.com \
--to=mark.hatle@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox