* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only @ 2018-11-24 16:54 Alexander Sverdlin 2018-11-24 18:47 ` Yann E. MORIN 0 siblings, 1 reply; 10+ messages in thread From: Alexander Sverdlin @ 2018-11-24 16:54 UTC (permalink / raw) To: buildroot This will save 1700K on target filesystem (as tested on ARM, i686). Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> --- Changelog: v2: - rework target libtool instead of new package/libltdl package/libtool/libtool.mk | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk index bf97ee12b5..b25e058bf4 100644 --- a/package/libtool/libtool.mk +++ b/package/libtool/libtool.mk @@ -7,12 +7,22 @@ LIBTOOL_VERSION = 2.4.6 LIBTOOL_SOURCE = libtool-$(LIBTOOL_VERSION).tar.xz LIBTOOL_SITE = $(BR2_GNU_MIRROR)/libtool + +LIBTOOL_SUBDIR = libltdl +HOST_LIBTOOL_SUBDIR = . + LIBTOOL_INSTALL_STAGING = YES -LIBTOOL_CONF_ENV = HELP2MAN=true + +LIBTOOL_CONF_OPTS = --enable-ltdl-install +HOST_LIBTOOL_CONF_OPTS = + LIBTOOL_DEPENDENCIES = host-m4 HOST_LIBTOOL_DEPENDENCIES = host-m4 -LIBTOOL_LICENSE = GPL-2.0+ -LIBTOOL_LICENSE_FILES = COPYING + +LIBTOOL_LICENSE = LGPLv2.1 +LIBTOOL_LICENSE_FILES = $(LIBTOOL_SUBDIR)/COPYING.LIB +HOST_LIBTOOL_LICENSE = GPL-2.0+ +HOST_LIBTOOL_LICENSE_FILES = COPYING HOST_LIBTOOL_CONF_ENV = MAKEINFO=true HOST_LIBTOOL_LIBTOOL_PATCH = NO -- 2.19.1 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-24 16:54 [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only Alexander Sverdlin @ 2018-11-24 18:47 ` Yann E. MORIN 2018-11-24 19:06 ` Alexander Sverdlin ` (2 more replies) 0 siblings, 3 replies; 10+ messages in thread From: Yann E. MORIN @ 2018-11-24 18:47 UTC (permalink / raw) To: buildroot Alexander, All, Arnout, licensing question for you at the end. On 2018-11-24 17:54 +0100, Alexander Sverdlin spake thusly: > This will save 1700K on target filesystem (as tested on ARM, i686). > > Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> > --- > Changelog: > v2: > - rework target libtool instead of new package/libltdl > > package/libtool/libtool.mk | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk > index bf97ee12b5..b25e058bf4 100644 > --- a/package/libtool/libtool.mk > +++ b/package/libtool/libtool.mk > @@ -7,12 +7,22 @@ > LIBTOOL_VERSION = 2.4.6 > LIBTOOL_SOURCE = libtool-$(LIBTOOL_VERSION).tar.xz > LIBTOOL_SITE = $(BR2_GNU_MIRROR)/libtool > + > +LIBTOOL_SUBDIR = libltdl > +HOST_LIBTOOL_SUBDIR = . > + > LIBTOOL_INSTALL_STAGING = YES > -LIBTOOL_CONF_ENV = HELP2MAN=true I guess HELP2MAN is no longer needed because there is no doc to build in the libltdl subdir, right? > +LIBTOOL_CONF_OPTS = --enable-ltdl-install > +HOST_LIBTOOL_CONF_OPTS = This host variable does inherit the value from the target variant, so you don't need to specify an empty HOST_LIBTOOL_CONF_OPTS. > LIBTOOL_DEPENDENCIES = host-m4 > HOST_LIBTOOL_DEPENDENCIES = host-m4 > -LIBTOOL_LICENSE = GPL-2.0+ > -LIBTOOL_LICENSE_FILES = COPYING > + > +LIBTOOL_LICENSE = LGPLv2.1 > +LIBTOOL_LICENSE_FILES = $(LIBTOOL_SUBDIR)/COPYING.LIB > +HOST_LIBTOOL_LICENSE = GPL-2.0+ > +HOST_LIBTOOL_LICENSE_FILES = COPYING So, the host presumably also builds libltdl, no? Thus, we should include its licensing information too; HOST_LIBTOOL_LICENSE = GPL-2.0+, LGPLv2.1 (libltdl) HOST_LIBTOOL_LICENSE_FILES = COPYING $(LIBTOOL_SUBDIR)/COPYING.LIB Not sure about that one, wait a bit for others to confirm before respinning the patch. Regards, Yann E. MORIN. > HOST_LIBTOOL_CONF_ENV = MAKEINFO=true > HOST_LIBTOOL_LIBTOOL_PATCH = NO > -- > 2.19.1 > -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-24 18:47 ` Yann E. MORIN @ 2018-11-24 19:06 ` Alexander Sverdlin 2018-11-24 21:03 ` Alexander Sverdlin 2018-11-24 19:24 ` Alexander Sverdlin 2018-11-26 9:28 ` Arnout Vandecappelle 2 siblings, 1 reply; 10+ messages in thread From: Alexander Sverdlin @ 2018-11-24 19:06 UTC (permalink / raw) To: buildroot Hi! On Sat, 24 Nov 2018 19:47:08 +0100 "Yann E. MORIN" <yann.morin.1998@free.fr> wrote: > So, the host presumably also builds libltdl, no? Thus, we should include > its licensing information too; > > HOST_LIBTOOL_LICENSE = GPL-2.0+, LGPLv2.1 (libltdl) > HOST_LIBTOOL_LICENSE_FILES = COPYING $(LIBTOOL_SUBDIR)/COPYING.LIB > > Not sure about that one, wait a bit for others to confirm before > respinning the patch. If others agree that there is a licensing issue, this would be totally unrelated to libltdl conversion, so I can do it in a separate patch. -- Alexander Sverdlin. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-24 19:06 ` Alexander Sverdlin @ 2018-11-24 21:03 ` Alexander Sverdlin 0 siblings, 0 replies; 10+ messages in thread From: Alexander Sverdlin @ 2018-11-24 21:03 UTC (permalink / raw) To: buildroot Hi! On Sat, 24 Nov 2018 20:06:31 +0100 Alexander Sverdlin <alexander.sverdlin@gmail.com> wrote: > > So, the host presumably also builds libltdl, no? Thus, we should include > > its licensing information too; > > > > HOST_LIBTOOL_LICENSE = GPL-2.0+, LGPLv2.1 (libltdl) > > HOST_LIBTOOL_LICENSE_FILES = COPYING $(LIBTOOL_SUBDIR)/COPYING.LIB > > > > Not sure about that one, wait a bit for others to confirm before > > respinning the patch. > > If others agree that there is a licensing issue, this would > be totally unrelated to libltdl conversion, so I can do it in > a separate patch. OK, tried to make a separate patch and understood that it was wrong idea... -- Alexander Sverdlin. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-24 18:47 ` Yann E. MORIN 2018-11-24 19:06 ` Alexander Sverdlin @ 2018-11-24 19:24 ` Alexander Sverdlin 2018-11-26 9:28 ` Arnout Vandecappelle 2 siblings, 0 replies; 10+ messages in thread From: Alexander Sverdlin @ 2018-11-24 19:24 UTC (permalink / raw) To: buildroot Hello! On Sat, 24 Nov 2018 19:47:08 +0100 "Yann E. MORIN" <yann.morin.1998@free.fr> wrote: > > -LIBTOOL_CONF_ENV = HELP2MAN=true > > I guess HELP2MAN is no longer needed because there is no doc to build in > the libltdl subdir, right? Correct. -- Alexander Sverdlin. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-24 18:47 ` Yann E. MORIN 2018-11-24 19:06 ` Alexander Sverdlin 2018-11-24 19:24 ` Alexander Sverdlin @ 2018-11-26 9:28 ` Arnout Vandecappelle 2018-11-26 9:38 ` Alexander Sverdlin 2 siblings, 1 reply; 10+ messages in thread From: Arnout Vandecappelle @ 2018-11-26 9:28 UTC (permalink / raw) To: buildroot On 24/11/2018 19:47, Yann E. MORIN wrote: > Alexander, All, > > Arnout, licensing question for you at the end. > > On 2018-11-24 17:54 +0100, Alexander Sverdlin spake thusly: >> This will save 1700K on target filesystem (as tested on ARM, i686). >> >> Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> >> --- >> Changelog: >> v2: >> - rework target libtool instead of new package/libltdl >> >> package/libtool/libtool.mk | 16 +++++++++++++--- >> 1 file changed, 13 insertions(+), 3 deletions(-) >> >> diff --git a/package/libtool/libtool.mk b/package/libtool/libtool.mk >> index bf97ee12b5..b25e058bf4 100644 >> --- a/package/libtool/libtool.mk >> +++ b/package/libtool/libtool.mk >> @@ -7,12 +7,22 @@ >> LIBTOOL_VERSION = 2.4.6 >> LIBTOOL_SOURCE = libtool-$(LIBTOOL_VERSION).tar.xz >> LIBTOOL_SITE = $(BR2_GNU_MIRROR)/libtool >> + >> +LIBTOOL_SUBDIR = libltdl >> +HOST_LIBTOOL_SUBDIR = . I guess the following doesn't work? HOST_LIBTOOL_SUBDIR = That is because we handle this case as follows: ifndef $(2)_SUBDIR ifdef $(3)_SUBDIR $(2)_SUBDIR = $$($(3)_SUBDIR) else $(2)_SUBDIR ?= endif endif The problem is that 'ifndef' doesn't check if it is not defined, it checks if it is not empty. I.e., 'ifndef' is exactly the same as 'ifeq ($(foo),)'. So if we define HOST_LIBTOOL_SUBDIR as empty, it will take its value from the target even if we override the host value. Ideally, we should fix this in the infra so we can just use HOST_LIBTOOL_SUBDIR = here. I think the solution is to change the infra into $(2)_SUBDIR ?= $$($(3)_SUBDIR) ... which is also shorter and easier to understand. And ideally, all these inherit-from-target things should be changed into something like: $(2)_FOO ?= $$(or $$($(3)_FOO),<default>) As usually, I haven't tested this :-) [snip] > > So, the host presumably also builds libltdl, no? Thus, we should include > its licensing information too; > > HOST_LIBTOOL_LICENSE = GPL-2.0+, LGPLv2.1 (libltdl) LGPL-2.1 instead of LGPLv2.1. And I think it has the 'or later' clause everywhere, doesn't it? > HOST_LIBTOOL_LICENSE_FILES = COPYING $(LIBTOOL_SUBDIR)/COPYING.LIB > > Not sure about that one, wait a bit for others to confirm before > respinning the patch. Well, the idea was that when you distribute both together, the whole effectively becomes GPL-2.0+. However, since the library may be used independently (if a host tool links against libltdl), it does make sense to mention the libltdl separately. Ideally, the GPL-2.0+ part should also mention to what it applies. Like HOST_LIBTOOL_LICENSE = GPL-2.0+ (libtool), LGPLv2.1 (libltdl) (because I think libtool is the only thing that gets installed in HOST_DIR, isn't it?) Regards, Arnout ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-26 9:28 ` Arnout Vandecappelle @ 2018-11-26 9:38 ` Alexander Sverdlin 2018-11-26 10:12 ` Arnout Vandecappelle 0 siblings, 1 reply; 10+ messages in thread From: Alexander Sverdlin @ 2018-11-26 9:38 UTC (permalink / raw) To: buildroot Hi! On Mon Nov 26 10:28:29 2018 Arnout Vandecappelle <arnout@mind.be> wrote: > > > +HOST_LIBTOOL_SUBDIR = . > >? I guess the following doesn't work? > > HOST_LIBTOOL_SUBDIR = But "." works (as it was working for glibc and gdb previously)... >? Ideally, the GPL-2.0+ part should also mention to what it applies. Like > > HOST_LIBTOOL_LICENSE = GPL-2.0+ (libtool), LGPLv2.1 (libltdl) > > (because I think libtool is the only thing that gets installed in > HOST_DIR, isn't it?) Last time I've checked libltdl was installed in HOST_DIR (I cannot tell if it's used or not right now). -- Alex. ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-26 9:38 ` Alexander Sverdlin @ 2018-11-26 10:12 ` Arnout Vandecappelle 2018-11-26 10:18 ` Thomas Petazzoni 2018-12-03 7:25 ` Peter Korsgaard 0 siblings, 2 replies; 10+ messages in thread From: Arnout Vandecappelle @ 2018-11-26 10:12 UTC (permalink / raw) To: buildroot On 26/11/2018 10:38, Alexander Sverdlin wrote: > Hi! > > On Mon Nov 26 10:28:29 2018 Arnout Vandecappelle <arnout@mind.be> wrote: >>>> +HOST_LIBTOOL_SUBDIR = . >> >> ? I guess the following doesn't work? >> >> HOST_LIBTOOL_SUBDIR = > > But "." works (as it was working for glibc and gdb previously)... Indeed, but it's ugly. BTW: glibc? On second thought, maybe we should just remove the automatic inheritance for _SUBDIR entirely. There are 15 host packages that set _SUBDIR. Of these, 6 are host-only (e.g. gcc) so the automatic inheritance is pointless. Of the remaining 9: - 2 override only HOST_XXX_SUBDIR (asterisk, cxxtest). - 1 has a different SUBDIR for host and target (gettext). - 1 overrides HOST_XXX_SUBDIR back to its default (gdb). - 1 defines both with the same value (icu). - 4 actually use the inheritance (capnproto, libnspr, tcl, vim). So it hardly seems worth to have the automatic inheritance, if only 1/3 of its occurences are actually useful. >> ? Ideally, the GPL-2.0+ part should also mention to what it applies. Like >> >> HOST_LIBTOOL_LICENSE = GPL-2.0+ (libtool), LGPLv2.1 (libltdl) >> >> (because I think libtool is the only thing that gets installed in >> HOST_DIR, isn't it?) > > Last time I've checked libltdl was installed in HOST_DIR (I cannot tell if it's used or not right now). I meant: I think libtool is the only thing that gets installed in HOST_DIR and is covered by GPL-2.0+. Regards, Arnout ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-26 10:12 ` Arnout Vandecappelle @ 2018-11-26 10:18 ` Thomas Petazzoni 2018-12-03 7:25 ` Peter Korsgaard 1 sibling, 0 replies; 10+ messages in thread From: Thomas Petazzoni @ 2018-11-26 10:18 UTC (permalink / raw) To: buildroot Hello, On Mon, 26 Nov 2018 11:12:42 +0100, Arnout Vandecappelle wrote: > On second thought, maybe we should just remove the automatic inheritance for > _SUBDIR entirely. > > There are 15 host packages that set _SUBDIR. > > Of these, 6 are host-only (e.g. gcc) so the automatic inheritance is pointless. > > Of the remaining 9: > - 2 override only HOST_XXX_SUBDIR (asterisk, cxxtest). > - 1 has a different SUBDIR for host and target (gettext). > - 1 overrides HOST_XXX_SUBDIR back to its default (gdb). > - 1 defines both with the same value (icu). > - 4 actually use the inheritance (capnproto, libnspr, tcl, vim). > > So it hardly seems worth to have the automatic inheritance, if only 1/3 of its > occurences are actually useful. Dropping the automatic inheritance of _SUBDIR is fine with me. However, while we are talking about _SUBDIR, what about making progress on the discussion we had related to https://patchwork.ozlabs.org/project/buildroot/list/?series=70199 ? :-) Best regards, Thomas -- Thomas Petazzoni, CTO, Bootlin Embedded Linux and Kernel engineering https://bootlin.com ^ permalink raw reply [flat|nested] 10+ messages in thread
* [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only 2018-11-26 10:12 ` Arnout Vandecappelle 2018-11-26 10:18 ` Thomas Petazzoni @ 2018-12-03 7:25 ` Peter Korsgaard 1 sibling, 0 replies; 10+ messages in thread From: Peter Korsgaard @ 2018-12-03 7:25 UTC (permalink / raw) To: buildroot >>>>> "Arnout" == Arnout Vandecappelle <arnout@mind.be> writes: Hi, >> But "." works (as it was working for glibc and gdb previously)... > Indeed, but it's ugly. > BTW: glibc? > On second thought, maybe we should just remove the automatic inheritance for > _SUBDIR entirely. > There are 15 host packages that set _SUBDIR. > Of these, 6 are host-only (e.g. gcc) so the automatic inheritance is pointless. > Of the remaining 9: > - 2 override only HOST_XXX_SUBDIR (asterisk, cxxtest). > - 1 has a different SUBDIR for host and target (gettext). > - 1 overrides HOST_XXX_SUBDIR back to its default (gdb). > - 1 defines both with the same value (icu). > - 4 actually use the inheritance (capnproto, libnspr, tcl, vim). > So it hardly seems worth to have the automatic inheritance, if only 1/3 of its > occurences are actually useful. Agreed. Lets only have "magic" rules in the infrastructure if it is commonly needed. -- Bye, Peter Korsgaard ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-12-03 7:25 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2018-11-24 16:54 [Buildroot] [PATCH v2] package/libtool: Reduce target package to libltdl only Alexander Sverdlin 2018-11-24 18:47 ` Yann E. MORIN 2018-11-24 19:06 ` Alexander Sverdlin 2018-11-24 21:03 ` Alexander Sverdlin 2018-11-24 19:24 ` Alexander Sverdlin 2018-11-26 9:28 ` Arnout Vandecappelle 2018-11-26 9:38 ` Alexander Sverdlin 2018-11-26 10:12 ` Arnout Vandecappelle 2018-11-26 10:18 ` Thomas Petazzoni 2018-12-03 7:25 ` Peter Korsgaard
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox