> On 2011-04-03, Neil Williams <codehelp@debian.org> wrote:
> > I'm now getting patches from Ubuntu to catch up the effects of this old
> > Release Goal. I fully support the removal of .la files [0] but it would
> > be good if we could refresh the original goal so that .la files can be
> > removed rather than applying a piece-meal set of patches to only
> > certain packages which have been spotted independently. That way leads
> > only to pain.
>
> .la files themselves are harmless, if the dependency_libs field is
> cleared.
Harmless, but are they actually then useful?
It is far cleaner to simply not package the .la file than to mangle it
with sed in debian/rules - my contention is that removing the file is
the best solution to the harm done by the dependency_libs field.
> There might be hard to replace old copies of libltdl in various code
> pieces that can only open libraries/plugins with .la files. src:kdelibs
> (which is about to be removed from debian) is one such example. I don't
> know if there is others.
At least if we drop the low-hanging fruit of all the other packages
which package .la files without libltdl complications, it would be
easier to see if it is hard to replace old copies of libltdl or not.
--
Neil Williams
=============
http://www.linux.codehelp.co.uk/
04-03-2011, 12:05 PM
Sune Vuorela
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
On 2011-04-03, Neil Williams <codehelp@debian.org> wrote:
>> .la files themselves are harmless, if the dependency_libs field is
>> cleared.
>
> Harmless, but are they actually then useful?
I just gave a example on where it is not only useful, but required.
>> There might be hard to replace old copies of libltdl in various code=20
>> pieces that can only open libraries/plugins with .la files. src:kdelibs
>> (which is about to be removed from debian) is one such example. I don't
>> know if there is others.
>
> At least if we drop the low-hanging fruit of all the other packages
> which package .la files without libltdl complications, it would be
> easier to see if it is hard to replace old copies of libltdl or not.
I tried replacing the old copy of libltdl in kdelibs some years ago. I
got it easily building, but everything stopped working, I knew what to
do about getting everything working, but I ended up giving up because it
was too much work.
/Sune
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: slrnipgoke.rvp.nospam@sshway.ssh.pusling.com">http ://lists.debian.org/slrnipgoke.rvp.nospam@sshway.ssh.pusling.com
04-03-2011, 12:57 PM
Mathieu Parent
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
Hi,
2011/4/3 Neil Williams <codehelp@debian.org>:
> http://lists.debian.org/debian-devel/2009/08/msg00808.html
>
(...)
>
> Let's try and handle the .la file issue across all of Debian.
dh-make 0.58 install .la files by default
(/usr/share/debhelper/dh_make/debianl/package-dev.install contains
"usr/lib/*.la")
Should we change this also?
Mathieu
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: BANLkTimrce_41593M4dQ-DYuVG3A2wm3Zg@mail.gmail.com">http://lists.debian.org/BANLkTimrce_41593M4dQ-DYuVG3A2wm3Zg@mail.gmail.com
04-03-2011, 02:48 PM
Neil Williams
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
> Hi,
>
> 2011/4/3 Neil Williams <codehelp@debian.org>:
> > http://lists.debian.org/debian-devel/2009/08/msg00808.html
> >
> (...)
> >
> > Let's try and handle the .la file issue across all of Debian.
>
> dh-make 0.58 install .la files by default
> (/usr/share/debhelper/dh_make/debianl/package-dev.install contains
> "usr/lib/*.la")
This is about "unneeded" .la files. As Sune points out, there are some
situations where it is more work to remove the .la file than it is
worth. So it isn't a blanket removal, it is about getting a consistent
approach across Debian so that issues like the one Sune describes can
be more clearly identified.
dh_make does not set the defaults in Debian. Maintainers must make
their own decisions about which bits of a dh_make setup deserve to be
retained in their packaging of that package, according to Policy.
Policy 10.2 is the discussion point here. Since Policy 10.2 was last
updated, Multi-Arch has changed the "penalty" for getting this bit of
Policy wrong.
This is about identifying .la files which can be removed to make
things easier in Multi-Arch world.
> Should we change this also?
It is possible that a lintian warning can be arranged to indicate when
it might be unhelpful to package the .la file but that is no different
to lots of other bits of dh_make which are created at initial packaging
but which later need removal or adjustment.
--
Neil Williams
=============
http://www.linux.codehelp.co.uk/
04-03-2011, 05:45 PM
Andreas Metzler
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
Neil Williams <codehelp@debian.org> wrote:
[...]
> I'm now getting patches from Ubuntu to catch up the effects of this old
> Release Goal. I fully support the removal of .la files [0] but it would
> be good if we could refresh the original goal so that .la files can be
> removed rather than applying a piece-meal set of patches to only
> certain packages which have been spotted independently. That way leads
> only to pain.
> Let's try and handle the .la file issue across all of Debian.
> Andreas: the process you used to create the initial list - is that
> available as a script somewhere? Can it be re-run? Can the updated
> output be filtered for the libraries which can have the .la files
> removed immediately and then passed through dd-list?
[...]
Afaiu the script output http://release.debian.org/~aba/la/current.txt
is automatically updated. e.g. libvmime (fixed 2011-03-07) is not
included anymore.
Combine the script output with
http://lists.debian.org/debian-devel/2009/08/msg00808.html
to get up-to-date instructions.
cu andreas
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 9aom68-6nf.ln1@argenau.downhill.at.eu.org">http://lists.debian.org/9aom68-6nf.ln1@argenau.downhill.at.eu.org
04-03-2011, 05:49 PM
Andreas Metzler
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
Neil Williams <codehelp@debian.org> wrote:
[...]
> It is far cleaner to simply not package the .la file than to mangle it
> with sed in debian/rules - my contention is that removing the file is
> the best solution to the harm done by the dependency_libs field.
[...]
Hello,
If you removed an la file that is listed in another's packages la file
dependency_libs, the other package would be broken. You'll need to
clean up the latter's dependency_libs / remove its la_lile *first.*
cu andreas
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 2iom68-6nf.ln1@argenau.downhill.at.eu.org">http://lists.debian.org/2iom68-6nf.ln1@argenau.downhill.at.eu.org
04-03-2011, 06:23 PM
Neil Williams
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
On Sun, 3 Apr 2011 19:49:22 +0200
Andreas Metzler <ametzler@downhill.at.eu.org> wrote:
> Neil Williams <codehelp@debian.org> wrote:
> [...]
> > It is far cleaner to simply not package the .la file than to mangle it
> > with sed in debian/rules - my contention is that removing the file is
> > the best solution to the harm done by the dependency_libs field.
> [...]
>
> Hello,
> If you removed an la file that is listed in another's packages la file
> dependency_libs, the other package would be broken. You'll need to
> clean up the latter's dependency_libs / remove its la_lile *first.*
> cu andreas
That was part of the original Release Goal but, you're right, I left
that bit out of the original post. That's why the list starts with leaf
packages and related libraries.
The data used for my dd-list includes this part of the calculation. It
lists only those packages which would appear to not have any packages
using the .la file in question. That is why it is safe to remove
the .la file from any of the packages listed - AS LONG AS the
maintainer checks that no new packages have added the package as a
dependency since the data was generated.
This is also why the data needs to be re-generated. Not only are there
packages which are listed but which are already fixed, there are
packages which are listed as depending on the removal of .la files from
packages which are long fixed.
--
Neil Williams
=============
http://www.linux.codehelp.co.uk/
04-03-2011, 06:41 PM
Neil Williams
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
On Sun, 3 Apr 2011 19:45:13 +0200
Andreas Metzler <ametzler@downhill.at.eu.org> wrote:
> Neil Williams <codehelp@debian.org> wrote:
> > Andreas: the process you used to create the initial list - is that
> > available as a script somewhere? Can it be re-run? Can the updated
> > output be filtered for the libraries which can have the .la files
> > removed immediately and then passed through dd-list?
> [...]
>
> Afaiu the script output http://release.debian.org/~aba/la/current.txt
> is automatically updated. e.g. libvmime (fixed 2011-03-07) is not
> included anymore.
Thanks. Should have checked that URL - it's moved from ftp-master.d.o.
> Combine the script output with
> http://lists.debian.org/debian-devel/2009/08/msg00808.html
> to get up-to-date instructions.
To generate the dd-list, I've used:
$ wget http://release.debian.org/~aba/la/current.txt
$ grep -v depended-on current.txt |cut -d: -f1|xargs dd-list > ddlist.txt
That dd-list is attached from today's data.
My updated info:
Neil Williams <codehelp@debian.org>
gpe-expenses (waiting for bug number)
libcontactsdb (U) #620444
libgpeschedule #620616
libhandoff #620655
libsoundgen #620618
tslib #620658
--
Neil Williams
=============
http://www.linux.codehelp.co.uk/
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
Mathieu Parent <math.parent@gmail.com> writes:
> Hi,
>
> 2011/4/3 Neil Williams <codehelp@debian.org>:
>> http://lists.debian.org/debian-devel/2009/08/msg00808.html
>>
> (...)
>>
>> Let's try and handle the .la file issue across all of Debian.
>
> dh-make 0.58 install .la files by default
> (/usr/share/debhelper/dh_make/debianl/package-dev.install contains
> "usr/lib/*.la")
>
> Should we change this also?
>
> Mathieu
I think we should. Since this is about new packages let it start without
an .la file. If the file is really needed (which should be rare for new
stuff) people will notice. On the other hand if it is included by
default people will just leave it in there.
MfG
Goswin
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 87tyefavue.fsf@frosties.localnet">http://lists.debian.org/87tyefavue.fsf@frosties.localnet
04-03-2011, 10:04 PM
Russ Allbery
Old Release goal: Getting rid of unneeded *.la / emptying dependency_libs
Neil Williams <codehelp@debian.org> writes:
> If you are listed in the attached dd-list, it means that the following
> tasks should be done REAL SOON NOW in order to smooth the path for
> Multi-Arch and comply with Policy 10.2:
> 0: Check the listed package for .la files in the current version in sid.
> 1: Modify your package to DROP the .la file completely, if it remains.
You cannot just drop *.la files completely in every case. Software that
uses libltdl to load dynamic objects often loads those objects by the *.la
file name (and hence is documented that way in upstream documentation,
FAQs, and so forth), so we create gratuitous incompatibilities with
upstream if we drop those *.la files. It's also not necessary since there
isn't a multi-arch issue.
Policy 10.2 doesn't say to remove all *.la files. It says:
Packages that use libtool to create and install their shared libraries
install a file containing additional metadata (ending in .la)
alongside the library. For public libraries intended for use by other
packages, these files normally should not be included in the Debian
package, since the information they include is not necessary to link
with the shared library on Debian and can add unnecessary additional
dependencies to other programs or libraries. If the .la file is
required for that library (if, for instance, it's loaded via libltdl
in a way that requires that meta-information), the dependency_libs
setting in the .la file should normally be set to the empty string. If
the shared library development package has historically included the
.la, it must be retained in the development package (with
dependency_libs emptied) until all libraries that depend on it have
removed or emptied dependency_libs in their .la files to prevent
linking with those other libraries using libtool from failing.
I still believe all those caveats are important.
For example, shibboleth-sp2 was in your list because it has loadable
modules in the libapache2-mod-shib2 package:
This is already Policy 10.2-compliant and will not cause problems with
multi-arch since those modules and their *.la files are arch-dependent and
will get separate installs on 32-bit and 64-bit paths if needed.
Lintian already checks that *.la files don't contain the problematic
dependency_libs setting.
--
To UNSUBSCRIBE, email to debian-devel-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
Archive: 87sjtzq9f2.fsf@windlord.stanford.edu">http://lists.debian.org/87sjtzq9f2.fsf@windlord.stanford.edu