* [Qemu-devel] [PATCH] build: change dist target to use xz @ 2012-08-02 10:08 Brad Smith 2013-01-05 0:28 ` Brad Smith 2013-01-09 2:22 ` Anthony Liguori 0 siblings, 2 replies; 6+ messages in thread From: Brad Smith @ 2012-08-02 10:08 UTC (permalink / raw) To: qemu-devel If a compression format other than gzip is used we might as well move to xz instead of bzip2. 11.0M qemu-1.1.1-1.tar.gz 9.2M qemu-1.1.1-1.tar.bz2 7.3M qemu-1.1.1-1.tar.xz --- Makefile | 6 +++--- scripts/make-release | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 621cb86..9fbaa0e 100644 --- a/Makefile +++ b/Makefile @@ -234,10 +234,10 @@ clean: VERSION ?= $(shell cat VERSION) -dist: qemu-$(VERSION).tar.bz2 +dist: qemu-$(VERSION).tar.xz -qemu-%.tar.bz2: - $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" +qemu-%.tar.xz: + $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.xz,%,$@)" distclean: clean rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi diff --git a/scripts/make-release b/scripts/make-release index 196c755..2237afd 100755 --- a/scripts/make-release +++ b/scripts/make-release @@ -20,5 +20,5 @@ git checkout "v${version}" git submodule update --init rm -rf .git roms/*/.git popd -tar cfj ${destination}.tar.bz2 ${destination} +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} rm -rf ${destination} -- 1.7.6 -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] build: change dist target to use xz 2012-08-02 10:08 [Qemu-devel] [PATCH] build: change dist target to use xz Brad Smith @ 2013-01-05 0:28 ` Brad Smith 2013-01-05 0:41 ` Eric Blake 2013-01-09 2:22 ` Anthony Liguori 1 sibling, 1 reply; 6+ messages in thread From: Brad Smith @ 2013-01-05 0:28 UTC (permalink / raw) To: qemu-devel On Thu, Aug 02, 2012 at 06:08:15AM -0400, Brad Smith wrote: > If a compression format other than gzip is used we might > as well move to xz instead of bzip2. 11.8M qemu-1.3.0.tar.gz 9.8M qemu-1.3.0.tar.bz2 7.8M qemu-1.3.0.tar.xz diff --git a/Makefile b/Makefile index a7ac04b..9073a86 100644 --- a/Makefile +++ b/Makefile @@ -251,10 +251,10 @@ clean: VERSION ?= $(shell cat VERSION) -dist: qemu-$(VERSION).tar.bz2 +dist: qemu-$(VERSION).tar.xz -qemu-%.tar.bz2: - $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" +qemu-%.tar.xz: + $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.xz,%,$@)" distclean: clean rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi diff --git a/scripts/make-release b/scripts/make-release index 196c755..2237afd 100755 --- a/scripts/make-release +++ b/scripts/make-release @@ -20,5 +20,5 @@ git checkout "v${version}" git submodule update --init rm -rf .git roms/*/.git popd -tar cfj ${destination}.tar.bz2 ${destination} +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} rm -rf ${destination} -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] build: change dist target to use xz 2013-01-05 0:28 ` Brad Smith @ 2013-01-05 0:41 ` Eric Blake 2013-01-05 1:03 ` Brad Smith 0 siblings, 1 reply; 6+ messages in thread From: Eric Blake @ 2013-01-05 0:41 UTC (permalink / raw) To: Brad Smith; +Cc: qemu-devel [-- Attachment #1: Type: text/plain, Size: 1643 bytes --] On 01/04/2013 05:28 PM, Brad Smith wrote: > On Thu, Aug 02, 2012 at 06:08:15AM -0400, Brad Smith wrote: >> If a compression format other than gzip is used we might >> as well move to xz instead of bzip2. Agreed, many projects are dropping bzip2 as irrelevant (slower than the more-widely-available gz, compresses worse than newcomer xz). > +++ b/scripts/make-release > @@ -20,5 +20,5 @@ git checkout "v${version}" > git submodule update --init > rm -rf .git roms/*/.git > popd > -tar cfj ${destination}.tar.bz2 ${destination} > +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} Do we really need -9? For example, coreutils did an interesting benchmark in its cfg.mk file, and chose to use -8e instead of -9 as a result: >> # Comparing tarball sizes compressed using different xz presets, we see that >> # an -8e-compressed tarball is only 9KiB larger than the -9e-compressed one. >> # Using -8e is preferred, since that lets the decompression process use half >> # the memory (32MiB rather than 64MiB). >> # $ for i in {7,8,9}{e,}; do \ >> # (n=$(xz -$i < coreutils-8.15*.tar|wc -c);echo $n $i) & done |sort -nr >> # 5129388 7 >> # 5036524 7e >> # 5017476 8 >> # 5010604 9 >> # 4923016 8e >> # 4914152 9e Also, your use of tar cfJ assumes relatively new GNU tar; it won't work on other systems (but this is a pre-existing non-portability, and may be irrelevant, if you are willing to require that the only people likely to make a release tarball are using appropriate tools). -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 619 bytes --] ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] build: change dist target to use xz 2013-01-05 0:41 ` Eric Blake @ 2013-01-05 1:03 ` Brad Smith 2013-01-09 1:59 ` Brad Smith 0 siblings, 1 reply; 6+ messages in thread From: Brad Smith @ 2013-01-05 1:03 UTC (permalink / raw) To: Eric Blake; +Cc: qemu-devel On Fri, Jan 04, 2013 at 05:41:41PM -0700, Eric Blake wrote: > On 01/04/2013 05:28 PM, Brad Smith wrote: > > On Thu, Aug 02, 2012 at 06:08:15AM -0400, Brad Smith wrote: > >> If a compression format other than gzip is used we might > >> as well move to xz instead of bzip2. > > Agreed, many projects are dropping bzip2 as irrelevant (slower than the > more-widely-available gz, compresses worse than newcomer xz). > > > +++ b/scripts/make-release > > @@ -20,5 +20,5 @@ git checkout "v${version}" > > git submodule update --init > > rm -rf .git roms/*/.git > > popd > > -tar cfj ${destination}.tar.bz2 ${destination} > > +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} > > Do we really need -9? No. There isn't much of a difference between 8e and 9 with QEMU's tar archive.. 8175644 qemu-1.3.0.tar.xz_8e 8164188 qemu-1.3.0.tar.xz_9 > For example, coreutils did an interesting > benchmark in its cfg.mk file, and chose to use -8e instead of -9 as a > result: > > >> # Comparing tarball sizes compressed using different xz presets, we see that > >> # an -8e-compressed tarball is only 9KiB larger than the -9e-compressed one. > >> # Using -8e is preferred, since that lets the decompression process use half > >> # the memory (32MiB rather than 64MiB). > >> # $ for i in {7,8,9}{e,}; do \ > >> # (n=$(xz -$i < coreutils-8.15*.tar|wc -c);echo $n $i) & done |sort -nr > >> # 5129388 7 > >> # 5036524 7e > >> # 5017476 8 > >> # 5010604 9 > >> # 4923016 8e > >> # 4914152 9e > > Also, your use of tar cfJ assumes relatively new GNU tar; it won't work > on other systems (but this is a pre-existing non-portability, and may be > irrelevant, if you are willing to require that the only people likely to > make a release tarball are using appropriate tools). It is already using a GNU tar-ism with the j vs J flags and IMO GNU tar 1.22 at almost 4 years old has been around more than long enough. diff --git a/Makefile b/Makefile index a7ac04b..9073a86 100644 --- a/Makefile +++ b/Makefile @@ -251,10 +251,10 @@ clean: VERSION ?= $(shell cat VERSION) -dist: qemu-$(VERSION).tar.bz2 +dist: qemu-$(VERSION).tar.xz -qemu-%.tar.bz2: - $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" +qemu-%.tar.xz: + $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.xz,%,$@)" distclean: clean rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi diff --git a/scripts/make-release b/scripts/make-release index 196c755..9b70650 100755 --- a/scripts/make-release +++ b/scripts/make-release @@ -20,5 +20,5 @@ git checkout "v${version}" git submodule update --init rm -rf .git roms/*/.git popd -tar cfj ${destination}.tar.bz2 ${destination} +XZ_OPT=-8e tar cfJ ${destination}.tar.xz ${destination} rm -rf ${destination} -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] build: change dist target to use xz 2013-01-05 1:03 ` Brad Smith @ 2013-01-09 1:59 ` Brad Smith 0 siblings, 0 replies; 6+ messages in thread From: Brad Smith @ 2013-01-09 1:59 UTC (permalink / raw) To: Eric Blake; +Cc: qemu-devel On Fri, Jan 04, 2013 at 08:03:05PM -0500, Brad Smith wrote: > On Fri, Jan 04, 2013 at 05:41:41PM -0700, Eric Blake wrote: > > On 01/04/2013 05:28 PM, Brad Smith wrote: > > > On Thu, Aug 02, 2012 at 06:08:15AM -0400, Brad Smith wrote: > > >> If a compression format other than gzip is used we might > > >> as well move to xz instead of bzip2. > > > > Agreed, many projects are dropping bzip2 as irrelevant (slower than the > > more-widely-available gz, compresses worse than newcomer xz). > > > > > +++ b/scripts/make-release > > > @@ -20,5 +20,5 @@ git checkout "v${version}" > > > git submodule update --init > > > rm -rf .git roms/*/.git > > > popd > > > -tar cfj ${destination}.tar.bz2 ${destination} > > > +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} > > > > Do we really need -9? ping. > No. There isn't much of a difference between 8e and 9 with QEMU's > tar archive.. > > 8175644 qemu-1.3.0.tar.xz_8e > 8164188 qemu-1.3.0.tar.xz_9 > > > For example, coreutils did an interesting > > benchmark in its cfg.mk file, and chose to use -8e instead of -9 as a > > result: > > > > >> # Comparing tarball sizes compressed using different xz presets, we see that > > >> # an -8e-compressed tarball is only 9KiB larger than the -9e-compressed one. > > >> # Using -8e is preferred, since that lets the decompression process use half > > >> # the memory (32MiB rather than 64MiB). > > >> # $ for i in {7,8,9}{e,}; do \ > > >> # (n=$(xz -$i < coreutils-8.15*.tar|wc -c);echo $n $i) & done |sort -nr > > >> # 5129388 7 > > >> # 5036524 7e > > >> # 5017476 8 > > >> # 5010604 9 > > >> # 4923016 8e > > >> # 4914152 9e > > > > Also, your use of tar cfJ assumes relatively new GNU tar; it won't work > > on other systems (but this is a pre-existing non-portability, and may be > > irrelevant, if you are willing to require that the only people likely to > > make a release tarball are using appropriate tools). > > It is already using a GNU tar-ism with the j vs J flags and IMO GNU tar > 1.22 at almost 4 years old has been around more than long enough. > > > diff --git a/Makefile b/Makefile > index a7ac04b..9073a86 100644 > --- a/Makefile > +++ b/Makefile > @@ -251,10 +251,10 @@ clean: > > VERSION ?= $(shell cat VERSION) > > -dist: qemu-$(VERSION).tar.bz2 > +dist: qemu-$(VERSION).tar.xz > > -qemu-%.tar.bz2: > - $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" > +qemu-%.tar.xz: > + $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.xz,%,$@)" > > distclean: clean > rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi > diff --git a/scripts/make-release b/scripts/make-release > index 196c755..9b70650 100755 > --- a/scripts/make-release > +++ b/scripts/make-release > @@ -20,5 +20,5 @@ git checkout "v${version}" > git submodule update --init > rm -rf .git roms/*/.git > popd > -tar cfj ${destination}.tar.bz2 ${destination} > +XZ_OPT=-8e tar cfJ ${destination}.tar.xz ${destination} > rm -rf ${destination} -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean. ^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [Qemu-devel] [PATCH] build: change dist target to use xz 2012-08-02 10:08 [Qemu-devel] [PATCH] build: change dist target to use xz Brad Smith 2013-01-05 0:28 ` Brad Smith @ 2013-01-09 2:22 ` Anthony Liguori 1 sibling, 0 replies; 6+ messages in thread From: Anthony Liguori @ 2013-01-09 2:22 UTC (permalink / raw) To: Brad Smith, qemu-devel Brad Smith <brad@comstyle.com> writes: > If a compression format other than gzip is used we might > as well move to xz instead of bzip2. xz support was introduced in tar only in 2009. We only expose one source tarball and I don't think relying on something so new is a good idea. Regards, Anthoyn Liguori > > 11.0M qemu-1.1.1-1.tar.gz > 9.2M qemu-1.1.1-1.tar.bz2 > 7.3M qemu-1.1.1-1.tar.xz > > --- > Makefile | 6 +++--- > scripts/make-release | 2 +- > 2 files changed, 4 insertions(+), 4 deletions(-) > > diff --git a/Makefile b/Makefile > index 621cb86..9fbaa0e 100644 > --- a/Makefile > +++ b/Makefile > @@ -234,10 +234,10 @@ clean: > > VERSION ?= $(shell cat VERSION) > > -dist: qemu-$(VERSION).tar.bz2 > +dist: qemu-$(VERSION).tar.xz > > -qemu-%.tar.bz2: > - $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.bz2,%,$@)" > +qemu-%.tar.xz: > + $(SRC_PATH)/scripts/make-release "$(SRC_PATH)" "$(patsubst qemu-%.tar.xz,%,$@)" > > distclean: clean > rm -f config-host.mak config-host.h* config-host.ld $(DOCS) qemu-options.texi qemu-img-cmds.texi qemu-monitor.texi > diff --git a/scripts/make-release b/scripts/make-release > index 196c755..2237afd 100755 > --- a/scripts/make-release > +++ b/scripts/make-release > @@ -20,5 +20,5 @@ git checkout "v${version}" > git submodule update --init > rm -rf .git roms/*/.git > popd > -tar cfj ${destination}.tar.bz2 ${destination} > +XZ_OPT=-9 tar cfJ ${destination}.tar.xz ${destination} > rm -rf ${destination} > -- > 1.7.6 > > > -- > This message has been scanned for viruses and > dangerous content by MailScanner, and is > believed to be clean. ^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2013-01-09 2:22 UTC | newest] Thread overview: 6+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2012-08-02 10:08 [Qemu-devel] [PATCH] build: change dist target to use xz Brad Smith 2013-01-05 0:28 ` Brad Smith 2013-01-05 0:41 ` Eric Blake 2013-01-05 1:03 ` Brad Smith 2013-01-09 1:59 ` Brad Smith 2013-01-09 2:22 ` Anthony Liguori
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).