On Fri, Sep 04, 2009 at 08:50:30PM -0700, Steve Langasek wrote: > On Fri, Aug 21, 2009 at 09:25:30PM -0700, Russ Allbery wrote: > > Manoj Srivastava <[email protected]> writes: > > > On Fri, Aug 21 2009, Russ Allbery wrote: > > > >> The current restriction is specific to libraries. Don't we need to say > > >> that you can't put *any* files into any triplet directory that isn't > > >> for your package architecture? > > > > Hmm. My first read was that one could not put anything that was > > > not a library in these directories, but perhaps it should be stated > > > explicitly. > > > I was expecting that we'd need to put anything that you might want to have > > simultaneous installs from multiple architectures in that directory, which > > would include, for instance, any shared library plugins or loadable > > modules, which aren't strictly libraries. > > > We might have to duplicate some library helper programs as well, if for > > instance they communicate with the library using binary structures that > > are sensitive to sizeof(long). > > Right, this was a bug in the proposed patch, not a deliberate statement that > only libraries belong in these directories. (As I mentioned, the first > patch was something of a trial balloon.) I think this updated patch should > cover everything for the first round. > > Re-seconds?
Seconded.
> ---
> policy.sgml | 34 ++++++++++++++++++++++++++++++++++
> 1 files changed, 34 insertions(+), 0 deletions(-)
>
> diff --git a/policy.sgml b/policy.sgml
> index 0bf8253..347c0bf 100644
> --- a/policy.sgml
> +++ b/policy.sgml
> @@ -5584,6 +5584,40 @@ libbar 1 bar1 (>= 1.0-1)
> </item>
> <item>
> <p>
> + The requirement for object files, internal binaries, and
> + libraries, including <file>libc.so.*</file>, to be located
> + directly under <file>/lib{,32}</file> and
> + <file>/usr/lib{,32}</file> is amended, permitting files
> + to instead be installed to
> + <file>/lib/<var>triplet</var></file> and
> + <file>/usr/lib/<var>triplet</var></file>, where
> + <tt><var>triplet</var></tt> is the value returned by
> + <tt>dpkg-architecture -qDEB_HOST_GNU_TYPE</tt> for the
> + architecture of the package. Packages may <em>not</em>
> + install files to any <var>triplet</var> path other
> + than the one matching the architecture of that package;
> + for instance, an <tt>Architecture: amd64</tt> package
> + containing 32-bit x86 libraries may not install these
> + libraries to <file>/usr/lib/i486-linux-gnu</file>.
> + <footnote>
> + This is necessary in order to reserve the directories for
> + use in cross-installation of library packages from other
> + architectures, as part of the planned deployment of
> + <tt>multiarch</tt>.
> + </footnote>
> + </p>
> + <p>
> + Applications may also use a single subdirectory under
> + <file>/usr/lib/<var>triplet</var></file>.
> + </p>
> + <p>
> + The execution time linker/loader, ld*, must still be made
> + available in the existing location under /lib or /lib64
> + since this is part of the ELF ABI for the architecture.
> + </p>
> + </item>
> + <item>
> + <p>
> The requirement that
> <file>/usr/local/share/man</file> be "synonymous"
> with <file>/usr/local/man</file> is relaxed to a
> --
> 1.6.3.3
>
> Thanks,
> --
> Steve Langasek Give me a lever long enough and a Free OS
> Debian Developer to set it on, and I can move the world.
> Ubuntu Developer http://www.debian.org/
> [email protected] [email protected]
--
Aurelien Jarno GPG: 1024D/F1BCDB73
[email protected] http://www.aurel32.net
signature.asc
Description: Digital signature

