From nobody Fri Mar 29 14:13:13 2024 X-Original-To: alpine-devel@lists.alpinelinux.org Delivered-To: alpine-devel@mail.alpinelinux.org Received: from mail.wtbts.no (mail.wtbts.no [213.234.126.131]) by mail.alpinelinux.org (Postfix) with ESMTP id 07E8AD13DD8 for ; Fri, 3 Jun 2011 14:19:47 +0000 (UTC) Received: from localhost (bsna.nor.wtbts.net [127.0.0.1]) by mail.wtbts.no (Postfix) with ESMTP id 2A5BDAE4002 for ; Fri, 3 Jun 2011 14:19:44 +0000 (UTC) X-Virus-Scanned: Yes Received: from mail.wtbts.no ([127.0.0.1]) by localhost (bsna.nor.wtbts.net [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id kCUHdjp+xlDY for ; Fri, 3 Jun 2011 14:19:41 +0000 (UTC) Received: from mail.ytre.org (extmail.nor.wtbts.net [10.65.72.14]) by mail.wtbts.no (Postfix) with ESMTP id 51184376277 for ; Fri, 3 Jun 2011 14:19:41 +0000 (UTC) Received: from mail.ytre.org (localhost [127.0.0.1]) by mail.ytre.org (Postfix) with ESMTP id 13DB760A7EF98 for ; Fri, 3 Jun 2011 14:19:41 +0000 (UTC) Received: from ncopa-desktop.nor.wtbts.net (ncopa-desktop.nor.wtbts.net [10.65.65.1]) (using TLSv1 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: ncopa@ytre.org) by mail.ytre.org (Postfix) with ESMTPSA id EE8E160A7EF97 for ; Fri, 3 Jun 2011 14:19:37 +0000 (UTC) Date: Fri, 3 Jun 2011 16:15:59 +0200 From: Natanael Copa To: alpine-devel@lists.alpinelinux.org Subject: [alpine-devel] removing .la files from packages Message-ID: <20110603161559.7418a3ba@ncopa-desktop.nor.wtbts.net> X-Mailer: Claws Mail 3.7.9 (GTK+ 2.24.4; x86_64-unknown-linux-gnu) X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Virus-Scanned: ClamAV using ClamSMTP Hi, I'd like to suggest a new packaging policy to over time remove all unneeded .la files. The reason is simple: Avoid overlinking. to be sure that the linking works on all systems, including old obsolete ones, they force linking with everything possible. When we upgraded libpng from 1.4 to 1.5 alot of packages needed a rebuild. Many of those were linked to libpng without really needing that and removing the .la files would have solved it. Many other distros also does that. But this needs to be done with care or we will break building for each other. Example we have libfoo which is needed by libbar, which is needed by appbaz. libfoo will produce a libfoo.la libbar will produce a libbar.la which will contain a reference to /usr/lib/libfoo.la appbaz will parse the libbar.la and find out that it needs to parse libfoo.la too. So if we just remove libfoo.la from libfoo-dev package, all apps that uses libbar.la will break. (That happened with libpng and is why nenolod reverted my 'remove .la' patch) So in order to remove the .la files, we might need to rebuild alot, but doing so will save us for bigger rebuilds in future. So i suggest that we start removing the .la files from top and work down to the bottom (start with appbaz, then libbar and finally libfoo) If you hit an error due to missing .la files I suggest that you do the following: abuild installdeps grep 'missin.la' /usr/lib/*.la | cut -d: -f1 | xargs apk info --who-owns and remove the .la files from those and bump pkgrel. Note that some applications do need the .la file for their plugins. Thoughts? Should we have abuild to just remove libtool files and have an option for keeping them? (i think arch linux does so). I kinda prefer to have it visible what is going on than having some obscoure automagic. Some info about libtool and overlinking: http://wiki.mandriva.com/en/Libtool_archives http://wiki.mandriva.com/en/Overlinking http://blog.flameeyes.eu/2008/04/14/what-about-those-la-files -nc --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---