Message ID | 20221108073503.2609200-1-sam@gentoo.org |
---|---|
State | New |
Headers |
Return-Path: <libabigail-bounces+patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7E1343858280 for <patchwork@sourceware.org>; Tue, 8 Nov 2022 07:35:16 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7E1343858280 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1667892916; bh=34TIb/gDAfIqoMMAFgX7q7Nxb+HL0IfOPfzyNM23vq4=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Help:List-Subscribe:From:Reply-To:From; b=Dyfw/ok7DA2L+wOgg+oyyL05n5bXAROONEIptwbm/lGAP7Q3YKlXDkiYUB2RjDKbJ NkEQoCs8Nrm08NOQVedT73PCdPYqZm2ziYEb+iG9DKDbQ3db6MMjOTQLf7U+rUcVHu ckiF01/RIeAlBlEFijE0wybqoe5D6pCADKenpZzs= X-Original-To: libabigail@sourceware.org Delivered-To: libabigail@sourceware.org Received: from smtp.gentoo.org (mail.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) by sourceware.org (Postfix) with ESMTP id EEDF9385829F for <libabigail@sourceware.org>; Tue, 8 Nov 2022 07:35:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org EEDF9385829F To: libabigail@sourceware.org Cc: Sam James <sam@gentoo.org> Subject: [PATCH] configure.ac: add dist-xz Date: Tue, 8 Nov 2022 07:35:03 +0000 Message-Id: <20221108073503.2609200-1-sam@gentoo.org> X-Mailer: git-send-email 2.38.1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00, GIT_PATCH_0, JMQ_SPF_NEUTRAL, KAM_DMARC_STATUS, SPF_HELO_PASS, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: libabigail@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Mailing list of the Libabigail project <libabigail.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/libabigail>, <mailto:libabigail-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/libabigail/> List-Help: <mailto:libabigail-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/libabigail>, <mailto:libabigail-request@sourceware.org?subject=subscribe> From: Sam James via Libabigail <libabigail@sourceware.org> Reply-To: Sam James <sam@gentoo.org> Errors-To: libabigail-bounces+patchwork=sourceware.org@sourceware.org Sender: "Libabigail" <libabigail-bounces+patchwork=sourceware.org@sourceware.org> |
Series |
configure.ac: add dist-xz
|
|
Commit Message
Sam James
Nov. 8, 2022, 7:35 a.m. UTC
On master at 9db716e3b15912b7162def1faa704eb7823bbf34:
.rw-r--r-- 406M sam 8 Nov 07:27 libabigail-2.2.tar.gz
.rw-r--r-- 348M sam 8 Nov 07:26 libabigail-2.2.tar.xz
xz is quite a common format for software to be distributed
in nowadays because of its size reductions.
Signed-off-by: Sam James <sam@gentoo.org>
---
ChangeLog | 8 ++++++++
Makefile.am | 4 ++--
configure.ac | 2 +-
3 files changed, 11 insertions(+), 3 deletions(-)
Comments
> On 8 Nov 2022, at 07:35, Sam James <sam@gentoo.org> wrote: > > On master at 9db716e3b15912b7162def1faa704eb7823bbf34: > .rw-r--r-- 406M sam 8 Nov 07:27 libabigail-2.2.tar.gz > .rw-r--r-- 348M sam 8 Nov 07:26 libabigail-2.2.tar.xz > > xz is quite a common format for software to be distributed > in nowadays because of its size reductions. > > Signed-off-by: Sam James <sam@gentoo.org> > --- > ChangeLog | 8 ++++++++ > Makefile.am | 4 ++-- > configure.ac | 2 +- > 3 files changed, 11 insertions(+), 3 deletions(-) > > diff --git a/ChangeLog b/ChangeLog > index 33944561..f7f8d6f8 100644 > --- a/ChangeLog > +++ b/ChangeLog > @@ -1,3 +1,11 @@ > +2022-11-08 Sam James <sam@gentoo.org> > + > + build: Create an xz distribution tarball in addition to gzip. > + > + * configure.ac: add dist-xz to AM_INIT_AUTOMAKE. > + * Makefile.am: adjust $(TARBALL) to new extension. > + * Makefile.am: pass XZ_OPT="-0" for distcheck-fast. > + > 2022-09-24 Dodji Seketeli <dodji@redhat.com> > > ir: Avoid cancelling a "confirmed" propagated canonical type > diff --git a/Makefile.am b/Makefile.am > index 65a1b121..a0310368 100644 > --- a/Makefile.am > +++ b/Makefile.am > @@ -53,7 +53,7 @@ check-valgrind-recursive: > update-changelog: > python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog > > -TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.gz > +TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz > RELEASED_BRANCH = master I should've just changed this to take two so we keep gzip (as make will produce one anyway), but I'll wait until feedback about if we want to do this at all first.
Hello Sam, Sam James via Libabigail <libabigail@sourceware.org> a écrit: >> On 8 Nov 2022, at 07:35, Sam James <sam@gentoo.org> wrote: >> >> On master at 9db716e3b15912b7162def1faa704eb7823bbf34: >> .rw-r--r-- 406M sam 8 Nov 07:27 libabigail-2.2.tar.gz >> .rw-r--r-- 348M sam 8 Nov 07:26 libabigail-2.2.tar.xz >> >> xz is quite a common format for software to be distributed >> in nowadays because of its size reductions. This is a good idea! Thank you for suggesting this and coming up with this patch. I just have a few comments below. [...] >> diff --git a/ChangeLog b/ChangeLog >> index 33944561..f7f8d6f8 100644 >> --- a/ChangeLog >> +++ b/ChangeLog >> @@ -1,3 +1,11 @@ >> +2022-11-08 Sam James <sam@gentoo.org> >> + >> + build: Create an xz distribution tarball in addition to gzip. >> + >> + * configure.ac: add dist-xz to AM_INIT_AUTOMAKE. >> + * Makefile.am: adjust $(TARBALL) to new extension. >> + * Makefile.am: pass XZ_OPT="-0" for distcheck-fast. >> + >> 2022-09-24 Dodji Seketeli <dodji@redhat.com> >> >> ir: Avoid cancelling a "confirmed" propagated canonical type In the format of the patches sent to the list, what is going to be added to the ChangeLog is just put in the commit log. That part is later automatically extracted and added to the ChangeLog at release time. In other words, you don't have to add a ChangeLog entry in the patch. This is explained at https://sourceware.org/git/?p=libabigail.git;a=blob_plain;f=COMMIT-LOG-GUIDELINES;hb=HEAD. So, I have edited the patch accordingly to show you what I would apply instead. The amended patch can be found at the end of this message. >> diff --git a/Makefile.am b/Makefile.am >> index 65a1b121..a0310368 100644 >> --- a/Makefile.am >> +++ b/Makefile.am >> @@ -53,7 +53,7 @@ check-valgrind-recursive: >> update-changelog: >> python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog >> >> -TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.gz >> +TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz >> RELEASED_BRANCH = master > > I should've just changed this to take two so we keep gzip (as make > will produce one anyway), but I'll wait until feedback about if > we want to do this at all first. Right, I was wondering if there could be an option to chose between .tar and .xz for the compression format. We would then keep .xz as the default format. What do you think? In any case, thanks a lot for doing this. It is appreciated. Please find below the format of this patch that I would apply to the tree if it was to get in at this point. Cheers From e1b055c43b07fa07e738dc39645b6825aa88834d Mon Sep 17 00:00:00 2001 From: Sam James <sam@gentoo.org> Date: Tue, 8 Nov 2022 07:35:03 +0000 Subject: [PATCH] Use xz as the default tarball compression format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit xz is quite a common format for software to be distributed in nowadays because of its size reductions. With this patch, here is the result on the master branch at db716e3b15912b7162def1faa704eb7823bbf34: .rw-r--r-- 406M sam 8 Nov 07:27 libabigail-2.2.tar.gz .rw-r--r-- 348M sam 8 Nov 07:26 libabigail-2.2.tar.xz * configure.ac: add dist-xz to AM_INIT_AUTOMAKE. * Makefile.am: adjust $(TARBALL) to new extension. * Makefile.am: pass XZ_OPT="-0" for distcheck-fast. Signed-off-by: Sam James <sam@gentoo.org> Signed-off-by: Dodji Seketeli <dodji@redhat.com> --- Makefile.am | 4 ++-- configure.ac | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Makefile.am b/Makefile.am index 65a1b121..a0310368 100644 --- a/Makefile.am +++ b/Makefile.am @@ -53,7 +53,7 @@ check-valgrind-recursive: update-changelog: python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog -TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.gz +TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz RELEASED_BRANCH = master $(TARBALL): distcheck @@ -86,7 +86,7 @@ tag-and-all: distcheck check-self-compare # the default for GZIP_ENV is --best, which is pretty slow for check runs # distcheck-fast therefore compresses with --fast instead distcheck-fast: - $(MAKE) distcheck GZIP_ENV="--fast" + $(MAKE) distcheck GZIP_ENV="--fast" XZ_OPT="-0" # This makes us compare libabigail.so against its own ABIXML # representation. It's super slow (more than 5 minutes on one of my diff --git a/configure.ac b/configure.ac index 5aafed37..a2e5b33d 100644 --- a/configure.ac +++ b/configure.ac @@ -57,7 +57,7 @@ dnl This one is to be able to run "make check-valgrind" dnl and have unit tests run under der Valgrind. m4_include([autoconf-archive/ax_valgrind_check.m4]) -AM_INIT_AUTOMAKE([1.11.1 foreign subdir-objects tar-ustar parallel-tests]) +AM_INIT_AUTOMAKE([1.11.1 foreign subdir-objects dist-xz tar-ustar parallel-tests]) AM_MAINTAINER_MODE([enable]) AM_SILENT_RULES([yes])
> On 17 Nov 2022, at 10:39, Dodji Seketeli <dodji@seketeli.org> wrote: > > Hello Sam, > > Sam James via Libabigail <libabigail@sourceware.org> a écrit: > >>> On 8 Nov 2022, at 07:35, Sam James <sam@gentoo.org> wrote: >>> >>> On master at 9db716e3b15912b7162def1faa704eb7823bbf34: >>> .rw-r--r-- 406M sam 8 Nov 07:27 libabigail-2.2.tar.gz >>> .rw-r--r-- 348M sam 8 Nov 07:26 libabigail-2.2.tar.xz >>> >>> xz is quite a common format for software to be distributed >>> in nowadays because of its size reductions. > > This is a good idea! > > Thank you for suggesting this and coming up with this patch. > Thanks! > I just have a few comments below. > > [...] > > >>> diff --git a/ChangeLog b/ChangeLog >>> index 33944561..f7f8d6f8 100644 >>> --- a/ChangeLog >>> +++ b/ChangeLog >>> @@ -1,3 +1,11 @@ >>> +2022-11-08 Sam James <sam@gentoo.org> >>> + >>> + build: Create an xz distribution tarball in addition to gzip. >>> + >>> + * configure.ac: add dist-xz to AM_INIT_AUTOMAKE. >>> + * Makefile.am: adjust $(TARBALL) to new extension. >>> + * Makefile.am: pass XZ_OPT="-0" for distcheck-fast. >>> + >>> 2022-09-24 Dodji Seketeli <dodji@redhat.com> >>> >>> ir: Avoid cancelling a "confirmed" propagated canonical type > > In the format of the patches sent to the list, what is going to be added > to the ChangeLog is just put in the commit log. That part is later > automatically extracted and added to the ChangeLog at release time. In > other words, you don't have to add a ChangeLog entry in the patch. This > is explained at https://sourceware.org/git/?p=libabigail.git;a=blob_plain;f=COMMIT-LOG-GUIDELINES;hb=HEAD. > > Sorry, this seems obvious now -- I don't know how I missed it. Apologies! > So, I have edited the patch accordingly to show you what I would apply > instead. The amended patch can be found at the end of this message. > >>> diff --git a/Makefile.am b/Makefile.am >>> index 65a1b121..a0310368 100644 >>> --- a/Makefile.am >>> +++ b/Makefile.am >>> @@ -53,7 +53,7 @@ check-valgrind-recursive: >>> update-changelog: >>> python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog >>> >>> -TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.gz >>> +TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz >>> RELEASED_BRANCH = master >> >> I should've just changed this to take two so we keep gzip (as make >> will produce one anyway), but I'll wait until feedback about if >> we want to do this at all first. > > Right, I was wondering if there could be an option to chose between .tar > and .xz for the compression format. We would then keep .xz as the > default format. > > What do you think? In any case, thanks a lot for doing this. It is > appreciated. I've tweaked it to take TARBALL as both .gz and .xz, but tbh, I think we could very uncontroversially drop .gz too. A lot of software is .xz only (like all of GNOME) and it doesn't really bother anyone. My gut is it's not worth adding additional machinery to allow disabling xz creation because it kind of conflicts with the dist-* stuff from automake (I think we could do it, but it's a bit awkward). The gzip creation is pretty cheap though. The libabigail tarball is by necessity quite large (which was the motivation originally) so I think we have decent justification. TL;DR: I'll send a patch now with fixed TARBALL variable to include both .gz and .xz but not sure it's worth the complexity to allow specifically disabling either. If I had to choose, I'd just drop gzip entirely given other projects do that fine without problems. > > Please find below the format of this patch that I would apply to the > tree if it was to get in at this point. > Thank you for the extra mile there - I've always kind of struggled with ChangeLog format for some reason. > Cheers Best, sam
Hello, Sam James <sam@gentoo.org> a écrit: [...] > I've tweaked it to take TARBALL as both .gz and .xz, but tbh, I think > we could very uncontroversially drop .gz too. A lot of software is .xz > only (like all of GNOME) and it doesn't really bother anyone. > > My gut is it's not worth adding additional machinery to allow > disabling xz creation because it kind of conflicts with the dist-* > stuff from automake (I think we could do it, but it's a bit awkward). > > The gzip creation is pretty cheap though. > > The libabigail tarball is by necessity quite large (which was the > motivation originally) so I think we have decent justification. > > TL;DR: I'll send a patch now with fixed TARBALL variable to include > both .gz and .xz but not sure it's worth the complexity to > allow specifically disabling either. If I had to choose, I'd just > drop gzip entirely given other projects do that fine without problems. OK, let's follow your gut feeling then :-) Your point of view seems sensible to me. My initial inclination seems overkill. I went ahead and applied your initial patch, in the form that I posted at the end of my previous message, to master. Thank you for your dedication. [...] Cheers,
diff --git a/ChangeLog b/ChangeLog index 33944561..f7f8d6f8 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2022-11-08 Sam James <sam@gentoo.org> + + build: Create an xz distribution tarball in addition to gzip. + + * configure.ac: add dist-xz to AM_INIT_AUTOMAKE. + * Makefile.am: adjust $(TARBALL) to new extension. + * Makefile.am: pass XZ_OPT="-0" for distcheck-fast. + 2022-09-24 Dodji Seketeli <dodji@redhat.com> ir: Avoid cancelling a "confirmed" propagated canonical type diff --git a/Makefile.am b/Makefile.am index 65a1b121..a0310368 100644 --- a/Makefile.am +++ b/Makefile.am @@ -53,7 +53,7 @@ check-valgrind-recursive: update-changelog: python $(srcdir)/gen-changelog.py > $(srcdir)/ChangeLog -TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.gz +TARBALL = $(PACKAGE_NAME)-$(VERSION).tar.xz RELEASED_BRANCH = master $(TARBALL): distcheck @@ -86,7 +86,7 @@ tag-and-all: distcheck check-self-compare # the default for GZIP_ENV is --best, which is pretty slow for check runs # distcheck-fast therefore compresses with --fast instead distcheck-fast: - $(MAKE) distcheck GZIP_ENV="--fast" + $(MAKE) distcheck GZIP_ENV="--fast" XZ_OPT="-0" # This makes us compare libabigail.so against its own ABIXML # representation. It's super slow (more than 5 minutes on one of my diff --git a/configure.ac b/configure.ac index 5aafed37..a2e5b33d 100644 --- a/configure.ac +++ b/configure.ac @@ -57,7 +57,7 @@ dnl This one is to be able to run "make check-valgrind" dnl and have unit tests run under der Valgrind. m4_include([autoconf-archive/ax_valgrind_check.m4]) -AM_INIT_AUTOMAKE([1.11.1 foreign subdir-objects tar-ustar parallel-tests]) +AM_INIT_AUTOMAKE([1.11.1 foreign subdir-objects dist-xz tar-ustar parallel-tests]) AM_MAINTAINER_MODE([enable]) AM_SILENT_RULES([yes])