All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC] Delete all .la files?
@ 2015-12-23 21:41 ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2015-12-23 21:41 UTC (permalink / raw)
  To: OE-core, OpenEmbedded Devel List

[-- Attachment #1: Type: text/plain, Size: 1387 bytes --]

Hi,

So I've just done an oe-core world build with my latest .la-killer class
enabled (
https://github.com/rossburton/meta-ross/blob/master/classes/wipe-la.bbclass)
and the results are pretty good.  Basically this class hooks onto
do_install and simply deletes every *.la file it can find in ${D}, with an
opt-out if required.  .la files can cause rebuild problems if directories
move around and are mostly pointless on Linux anyway, so they can just be
deleted.

One recipe (opensp-native) needs to opt out of the .la deletion as
openjade-native for <redacted> reasons explicitly expects .la files to be
installed.  Some other desktop distros already strip out .la files so I
wouldn't be surprised if there's a patch floating around to solve this.

One recipe fails to build (gcc-sanitizers) as it expects to have built its
own libstdc++ so the recipe just deletes the source and drops in symlinks
to the libraries in the sysroot.  Works, but is nasty.   I could either opt
gcc out of la removal, or improve the fixup to make it actually link to the
installed libraries.  Or, merge the sanitisers into the main gcc recipe, as
I can't recall why they're separate anyway.

Apart from that, my world build was successful.

So in the new year I plan on submitting a renamed version of this class to
oe-core and adding it to INHERIT_DISTRO.  Any comments?

Ross

[-- Attachment #2: Type: text/html, Size: 1646 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* [RFC] Delete all .la files?
@ 2015-12-23 21:41 ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2015-12-23 21:41 UTC (permalink / raw)
  To: OE-core, OpenEmbedded Devel List

Hi,

So I've just done an oe-core world build with my latest .la-killer class
enabled (
https://github.com/rossburton/meta-ross/blob/master/classes/wipe-la.bbclass)
and the results are pretty good.  Basically this class hooks onto
do_install and simply deletes every *.la file it can find in ${D}, with an
opt-out if required.  .la files can cause rebuild problems if directories
move around and are mostly pointless on Linux anyway, so they can just be
deleted.

One recipe (opensp-native) needs to opt out of the .la deletion as
openjade-native for <redacted> reasons explicitly expects .la files to be
installed.  Some other desktop distros already strip out .la files so I
wouldn't be surprised if there's a patch floating around to solve this.

One recipe fails to build (gcc-sanitizers) as it expects to have built its
own libstdc++ so the recipe just deletes the source and drops in symlinks
to the libraries in the sysroot.  Works, but is nasty.   I could either opt
gcc out of la removal, or improve the fixup to make it actually link to the
installed libraries.  Or, merge the sanitisers into the main gcc recipe, as
I can't recall why they're separate anyway.

Apart from that, my world build was successful.

So in the new year I plan on submitting a renamed version of this class to
oe-core and adding it to INHERIT_DISTRO.  Any comments?

Ross


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-23 21:41 ` Burton, Ross
  (?)
@ 2015-12-23 22:49 ` Phil Blundell
  2015-12-24  9:09     ` [OE-core] " Burton, Ross
  -1 siblings, 1 reply; 17+ messages in thread
From: Phil Blundell @ 2015-12-23 22:49 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OpenEmbedded Devel List, OE-core

On Wed, 2015-12-23 at 21:41 +0000, Burton, Ross wrote:

> So in the new year I plan on submitting a renamed version of this
> class to oe-core and adding it to INHERIT_DISTRO.  Any comments?

Sounds good to me.  I have been using the patch from:

http://lists.openembedded.org/pipermail/openembedded-core/2012-October/069912.html

for what is apparently the past three years and it continues to work
well.

p.




^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-23 22:49 ` Phil Blundell
@ 2015-12-24  9:09     ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2015-12-24  9:09 UTC (permalink / raw)
  To: Phil Blundell; +Cc: OpenEmbedded Devel List, OE-core

[-- Attachment #1: Type: text/plain, Size: 497 bytes --]

On 23 December 2015 at 22:49, Phil Blundell <pb@pbcl.net> wrote:

> Sounds good to me.  I have been using the patch from:
>
>
> http://lists.openembedded.org/pipermail/openembedded-core/2012-October/069912.html
>
> for what is apparently the past three years and it continues to work
> well.
>

That's good to know, thanks Phil.  Does  your work not build
openjade-native?  As I said that needed .la files to be present in my
testing so I'm wondering what the difference is.

Ross

[-- Attachment #2: Type: text/html, Size: 1039 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [OE-core] [RFC] Delete all .la files?
@ 2015-12-24  9:09     ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2015-12-24  9:09 UTC (permalink / raw)
  To: Phil Blundell; +Cc: OpenEmbedded Devel List, OE-core

On 23 December 2015 at 22:49, Phil Blundell <pb@pbcl.net> wrote:

> Sounds good to me.  I have been using the patch from:
>
>
> http://lists.openembedded.org/pipermail/openembedded-core/2012-October/069912.html
>
> for what is apparently the past three years and it continues to work
> well.
>

That's good to know, thanks Phil.  Does  your work not build
openjade-native?  As I said that needed .la files to be present in my
testing so I'm wondering what the difference is.

Ross


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-23 21:41 ` Burton, Ross
  (?)
  (?)
@ 2015-12-28 13:16 ` Koen Kooi
  -1 siblings, 0 replies; 17+ messages in thread
From: Koen Kooi @ 2015-12-28 13:16 UTC (permalink / raw)
  To: openembedded-devel; +Cc: openembedded-core

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Op 23-12-15 om 22:41 schreef Burton, Ross:
> Hi,
> 
> So I've just done an oe-core world build with my latest .la-killer class 
> enabled ( 
> https://github.com/rossburton/meta-ross/blob/master/classes/wipe-la.bbclass)
>
> 
and the results are pretty good.  Basically this class hooks onto
> do_install and simply deletes every *.la file it can find in ${D}, with
> an opt-out if required.  .la files can cause rebuild problems if
> directories move around and are mostly pointless on Linux anyway, so they
> can just be deleted.
> 
> One recipe (opensp-native) needs to opt out of the .la deletion as 
> openjade-native for <redacted> reasons explicitly expects .la files to
> be installed.  Some other desktop distros already strip out .la files so
> I wouldn't be surprised if there's a patch floating around to solve
> this.
> 
> One recipe fails to build (gcc-sanitizers) as it expects to have built
> its own libstdc++ so the recipe just deletes the source and drops in
> symlinks to the libraries in the sysroot.  Works, but is nasty.   I could
> either opt gcc out of la removal, or improve the fixup to make it
> actually link to the installed libraries.  Or, merge the sanitisers into
> the main gcc recipe, as I can't recall why they're separate anyway.
> 
> Apart from that, my world build was successful.
> 
> So in the new year I plan on submitting a renamed version of this class
> to oe-core and adding it to INHERIT_DISTRO.  Any comments?

Go ahead, .la files need to go away in the OE world. I wish your class had
an option to kill them with fire, but alas.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Darwin)
Comment: GPGTools - http://gpgtools.org

iD8DBQFWgTZAMkyGM64RGpERAph9AJ0Tdmw9r3WW5OrQv6FTUGdh6zOiIwCcCyuu
9CHG+z9GGf7hW4GkdaRchZU=
=l+7i
-----END PGP SIGNATURE-----



^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-24  9:09     ` [OE-core] " Burton, Ross
  (?)
@ 2015-12-29 11:21     ` Phil Blundell
  2016-01-02 21:01         ` [OE-core] " Burton, Ross
  -1 siblings, 1 reply; 17+ messages in thread
From: Phil Blundell @ 2015-12-29 11:21 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OpenEmbedded Devel List, OE-core

On Thu, 2015-12-24 at 09:09 +0000, Burton, Ross wrote:
> 
> That's good to know, thanks Phil.  Does  your work not build openjade
> -native?  As I said that needed .la files to be present in my testing
> so I'm wondering what the difference is.
> 

Oh, yes, you're right.  In fact I don't build openjade-native
routinely, but a bit of git archaeology reveals that I do have the
following patch in my tree as well.

From 803f05d54a38be5495fa81e7fbc53f1b582317ee Mon Sep 17 00:00:00 2001
From: Phil Blundell <philb@brightsign.biz>
Date: Tue, 14 May 2013 11:59:37 +0100
Subject: [PATCH] openjade: Fix build if not installing the libtool-garbage

The openjade build system is slightly funky and does strange things with
library dependencies.  Fix it up so that it depends on the .so rather than
the .la (which may not exist) for libraries from the sysroot.
---
 .../recipes-devtools/openjade/openjade-1.3.2/no-libtool.patch | 11 +++++++++++
 meta/recipes-devtools/openjade/openjade-native_1.3.2.bb       |  1 +
 2 files changed, 12 insertions(+)
 create mode 100644 meta/recipes-devtools/openjade/openjade-1.3.2/no-libtool.patch

diff --git a/meta/recipes-devtools/openjade/openjade-1.3.2/no-libtool.patch b/meta/recipes-devtools/openjade/openjade-1.3.2/no-libtool.patch
new file mode 100644
index 0000000..9317512
--- /dev/null
+++ b/meta/recipes-devtools/openjade/openjade-1.3.2/no-libtool.patch
@@ -0,0 +1,11 @@
+--- openjade-1.3.2/Makefile.prog.in~	2013-05-14 11:42:02.646782318 +0100
++++ openjade-1.3.2/Makefile.prog.in	2013-05-14 11:54:55.051728343 +0100
+@@ -12,7 +12,7 @@
+ 
+ ALL_LIBS = $(XLIBS) $(LIBS)
+ Makefile.lt:
+-	echo 'LT_LIBS='`echo $(ALL_LIBS)|sed 's/\.a/.la/g'` >Makefile.lt
++	echo 'LT_LIBS='`for d in $(ALL_LIBS); do case $$d in ../*) echo $$d | sed 's/\.a/.la/g' ;; *) echo $$d | sed 's/\.a/.so/g' ;; esac ; done` >Makefile.lt
+ 
+ PROG:=$(shell echo "$(PROG)" | sed '@program_transform_name@')
+ 
diff --git a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
index b37009a..845d2d7 100644
--- a/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
+++ b/meta/recipes-devtools/openjade/openjade-native_1.3.2.bb
@@ -16,6 +16,7 @@ SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \
            file://makefile.patch \
            file://msggen.pl.patch \
            file://reautoconf.patch \
+	   file://no-libtool.patch \
 	   file://user-declared-default-constructor.patch"
 
 SRC_URI[md5sum] = "7df692e3186109cc00db6825b777201e"
-- 
2.1.4

p.




^ permalink raw reply related	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-29 11:21     ` Phil Blundell
@ 2016-01-02 21:01         ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-02 21:01 UTC (permalink / raw)
  To: Phil Blundell; +Cc: OpenEmbedded Devel List, OE-core

[-- Attachment #1: Type: text/plain, Size: 283 bytes --]

On 29 December 2015 at 11:21, Phil Blundell <pb@pbcl.net> wrote:

> Oh, yes, you're right.  In fact I don't build openjade-native
> routinely, but a bit of git archaeology reveals that I do have the
> following patch in my tree as well.
>

You're my hero, thanks. :)

Ross

[-- Attachment #2: Type: text/html, Size: 698 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [OE-core] [RFC] Delete all .la files?
@ 2016-01-02 21:01         ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-02 21:01 UTC (permalink / raw)
  To: Phil Blundell; +Cc: OpenEmbedded Devel List, OE-core

On 29 December 2015 at 11:21, Phil Blundell <pb@pbcl.net> wrote:

> Oh, yes, you're right.  In fact I don't build openjade-native
> routinely, but a bit of git archaeology reveals that I do have the
> following patch in my tree as well.
>

You're my hero, thanks. :)

Ross


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-23 21:41 ` Burton, Ross
                   ` (2 preceding siblings ...)
  (?)
@ 2016-01-04  8:48 ` Clemens Lang
  2016-01-04 16:50     ` [OE-core] " Burton, Ross
  -1 siblings, 1 reply; 17+ messages in thread
From: Clemens Lang @ 2016-01-04  8:48 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OpenEmbedded Devel List, OE-core

Hi,

On Wed, Dec 23, 2015 at 09:41:35PM +0000, Burton, Ross wrote:
> One recipe (opensp-native) needs to opt out of the .la deletion as
> openjade-native for <redacted> reasons explicitly expects .la files to
> be installed.  Some other desktop distros already strip out .la files
> so I wouldn't be surprised if there's a patch floating around to solve
> this.

Note that any software using libltdl will still require the .la files
and must thus opt-out of .la file deletion. ImageMagick is probably the
most common occurrence of this.

To avoid overlinking when keeping the .la files for such recipes, it can
be helpful to clear the dependency_libs field in the .la file.


HTH,
Clemens
-- 
Clemens Lang • Development Specialist
BMW Car IT GmbH • Lise-Meitner-Str. 14 • 89081 Ulm • http://bmw-carit.com
-------------------------------------------------------------------------
BMW Car IT GmbH
Geschäftsführer: Michael Würtenberger und Reinhard Stolle
Sitz und Registergericht: München HRB 134810
-------------------------------------------------------------------------


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2016-01-04  8:48 ` Clemens Lang
@ 2016-01-04 16:50     ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-04 16:50 UTC (permalink / raw)
  To: Clemens Lang; +Cc: OpenEmbedded Devel List, OE-core

[-- Attachment #1: Type: text/plain, Size: 418 bytes --]

On 4 January 2016 at 08:48, Clemens Lang <clemens.lang@bmw-carit.de> wrote:

> Note that any software using libltdl will still require the .la files
> and must thus opt-out of .la file deletion. ImageMagick is probably the
> most common occurrence of this.
>

The use of modules in imagemagick is disabled by default, so this only
impacts people who change that default (and the wiper will optional).

Ross

[-- Attachment #2: Type: text/html, Size: 828 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [OE-core] [RFC] Delete all .la files?
@ 2016-01-04 16:50     ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-04 16:50 UTC (permalink / raw)
  To: Clemens Lang; +Cc: OpenEmbedded Devel List, OE-core

On 4 January 2016 at 08:48, Clemens Lang <clemens.lang@bmw-carit.de> wrote:

> Note that any software using libltdl will still require the .la files
> and must thus opt-out of .la file deletion. ImageMagick is probably the
> most common occurrence of this.
>

The use of modules in imagemagick is disabled by default, so this only
impacts people who change that default (and the wiper will optional).

Ross


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
  2015-12-23 21:41 ` Burton, Ross
@ 2016-01-04 17:28   ` Burton, Ross
  -1 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-04 17:28 UTC (permalink / raw)
  To: OE-core, OpenEmbedded Devel List

[-- Attachment #1: Type: text/plain, Size: 407 bytes --]

On 23 December 2015 at 21:41, Burton, Ross <ross.burton@intel.com> wrote:

> So in the new year I plan on submitting a renamed version of this class to
> oe-core and adding it to INHERIT_DISTRO.  Any comments?
>

Technicalities time: should this be a new class that is in the default
INHERIT_DISTRO?  Or directly integrated into base.bbclass?  Does anyone
have a strong opinion either way?

Ross

[-- Attachment #2: Type: text/html, Size: 745 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
@ 2016-01-04 17:28   ` Burton, Ross
  0 siblings, 0 replies; 17+ messages in thread
From: Burton, Ross @ 2016-01-04 17:28 UTC (permalink / raw)
  To: OE-core, OpenEmbedded Devel List

On 23 December 2015 at 21:41, Burton, Ross <ross.burton@intel.com> wrote:

> So in the new year I plan on submitting a renamed version of this class to
> oe-core and adding it to INHERIT_DISTRO.  Any comments?
>

Technicalities time: should this be a new class that is in the default
INHERIT_DISTRO?  Or directly integrated into base.bbclass?  Does anyone
have a strong opinion either way?

Ross


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [oe] [RFC] Delete all .la files?
  2016-01-04 17:28   ` Burton, Ross
@ 2016-01-04 18:01     ` Christopher Larson
  -1 siblings, 0 replies; 17+ messages in thread
From: Christopher Larson @ 2016-01-04 18:01 UTC (permalink / raw)
  To: Openembedded Discussion; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 827 bytes --]

On Mon, Jan 4, 2016 at 10:28 AM, Burton, Ross <ross.burton@intel.com> wrote:

> On 23 December 2015 at 21:41, Burton, Ross <ross.burton@intel.com> wrote:
>
> > So in the new year I plan on submitting a renamed version of this class
> to
> > oe-core and adding it to INHERIT_DISTRO.  Any comments?
> >
>
> Technicalities time: should this be a new class that is in the default
> INHERIT_DISTRO?  Or directly integrated into base.bbclass?  Does anyone
> have a strong opinion either way?


I'm inclined to say separate class.. as much as I hate too much class
proliferation, base.bbclass does an awful lot of stuff already, arguably
too much. *shrug*
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics

[-- Attachment #2: Type: text/html, Size: 1293 bytes --]

^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [RFC] Delete all .la files?
@ 2016-01-04 18:01     ` Christopher Larson
  0 siblings, 0 replies; 17+ messages in thread
From: Christopher Larson @ 2016-01-04 18:01 UTC (permalink / raw)
  To: Openembedded Discussion; +Cc: OE-core

On Mon, Jan 4, 2016 at 10:28 AM, Burton, Ross <ross.burton@intel.com> wrote:

> On 23 December 2015 at 21:41, Burton, Ross <ross.burton@intel.com> wrote:
>
> > So in the new year I plan on submitting a renamed version of this class
> to
> > oe-core and adding it to INHERIT_DISTRO.  Any comments?
> >
>
> Technicalities time: should this be a new class that is in the default
> INHERIT_DISTRO?  Or directly integrated into base.bbclass?  Does anyone
> have a strong opinion either way?


I'm inclined to say separate class.. as much as I hate too much class
proliferation, base.bbclass does an awful lot of stuff already, arguably
too much. *shrug*
-- 
Christopher Larson
clarson at kergoth dot com
Founder - BitBake, OpenEmbedded, OpenZaurus
Maintainer - Tslib
Senior Software Engineer, Mentor Graphics


^ permalink raw reply	[flat|nested] 17+ messages in thread

* Re: [oe] [RFC] Delete all .la files?
  2016-01-04 17:28   ` Burton, Ross
  (?)
  (?)
@ 2016-01-04 19:01   ` Phil Blundell
  -1 siblings, 0 replies; 17+ messages in thread
From: Phil Blundell @ 2016-01-04 19:01 UTC (permalink / raw)
  To: openembedded-devel; +Cc: OE-core

On Mon, 2016-01-04 at 17:28 +0000, Burton, Ross wrote:
> Technicalities time: should this be a new class that is in the default
> INHERIT_DISTRO?  Or directly integrated into base.bbclass?  Does anyone
> have a strong opinion either way?

I think I'd still be inclined to put it in autotools.bbclass, on the
basis that very few non-autotools recipes use libtool.  Second
preference, probably a new class as you suggest, following the argument
that we'd be better off with less rather than more "stuff" in
base.bbclass.  But I don't have a very strong opinion either way. 

p.




^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2016-01-04 19:01 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-12-23 21:41 [RFC] Delete all .la files? Burton, Ross
2015-12-23 21:41 ` Burton, Ross
2015-12-23 22:49 ` Phil Blundell
2015-12-24  9:09   ` Burton, Ross
2015-12-24  9:09     ` [OE-core] " Burton, Ross
2015-12-29 11:21     ` Phil Blundell
2016-01-02 21:01       ` Burton, Ross
2016-01-02 21:01         ` [OE-core] " Burton, Ross
2015-12-28 13:16 ` Koen Kooi
2016-01-04  8:48 ` Clemens Lang
2016-01-04 16:50   ` Burton, Ross
2016-01-04 16:50     ` [OE-core] " Burton, Ross
2016-01-04 17:28 ` Burton, Ross
2016-01-04 17:28   ` Burton, Ross
2016-01-04 18:01   ` [oe] " Christopher Larson
2016-01-04 18:01     ` Christopher Larson
2016-01-04 19:01   ` [oe] " Phil Blundell

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.