[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[PATCH 00/15] xz support in dpkg



Hi dpkg maintainers,

As promised, here’s an updated patch series adding xz support
to dpkg.  Changes from v1:

 - dpkg-deb --contents/--extract/etc force a memory limit high
    enough to decompress any package built with a sensible
    compression level
 - dpkg-deb -b uses a sensible compression level by default now
 - code style is much improved
 - fixes some old dpkg-deb bugs (e.g. some instances of ohshite
    where ohshit should be used)

I’m sending this in the traditional one-patch-per-email format
in the hope that it will get through this time.  I hope that’s
not too inconvenient.  (Is the Debian mailing lists’ filtering
policy documented anywhere?)

My feeling is that these patches should be more readable than
the last series, too.  I hope you enjoy them, and I look
forward to your thoughts.

Jonathan Nieder (15):
  libdpkg: Reduce scope of combuf[] in compress_cat
  libdpkg: factor out common gzip, bzip2 code
  libdpkg: fix redundant compression error messages
  libdpkg: fix compress_cat to allow I/O to files
  libdpkg: factor out function to execute compressors
  libdpkg: reorder internal fd_fd_filter() function arguments
  libdpkg: simplify code to calculate compression options
  libdpkg: compression: move each format’s code into its own function
  libdpkg: let backends decide default compression level
  libdpkg: compress_lzma(): decrease default compression level
  Add tuklib_physmem() from XZ Utils
  dpkg-deb: set a memory usage limit for lzma -d
  dpkg: add --memlimit option, passed to dpkg-deb
  dpkg-deb: add .xz compression support
  dpkg-deb: add liblzma support

 configure.ac                   |    3 +
 debian/control                 |    6 +-
 debian/copyright               |    3 +
 debian/rules                   |    3 +-
 dpkg-deb/Makefile.am           |    1 +
 dpkg-deb/build.c               |    3 +
 dpkg-deb/dpkg-deb.h            |    5 +
 dpkg-deb/extract.c             |    7 +-
 dpkg-deb/main.c                |   29 ++-
 lib/dpkg/Makefile.am           |    6 +
 lib/dpkg/compression-backend.c |  603 ++++++++++++++++++++++++++++++++++++++++
 lib/dpkg/compression-backend.h |   41 +++
 lib/dpkg/compression.c         |  178 ++----------
 lib/dpkg/dpkg.h                |    6 +-
 lib/tuklib/sysdefs.h           |  165 +++++++++++
 lib/tuklib/tuklib_common.h     |   71 +++++
 lib/tuklib/tuklib_config.h     |    1 +
 lib/tuklib/tuklib_physmem.c    |  146 ++++++++++
 lib/tuklib/tuklib_physmem.h    |   28 ++
 m4/libs.m4                     |   32 +++
 m4/tuklib_common.m4            |   22 ++
 m4/tuklib_physmem.m4           |  119 ++++++++
 man/deb.5                      |    5 +-
 man/dpkg-deb.1                 |   12 +-
 man/dpkg.1                     |    6 +
 scripts/dpkg-buildpackage.pl   |    2 +-
 src/Makefile.am                |    1 +
 src/main.c                     |    5 +
 src/main.h                     |    1 +
 src/processarc.c               |   11 +-
 30 files changed, 1353 insertions(+), 168 deletions(-)
 create mode 100644 lib/dpkg/compression-backend.c
 create mode 100644 lib/dpkg/compression-backend.h
 create mode 100644 lib/tuklib/sysdefs.h
 create mode 100644 lib/tuklib/tuklib_common.h
 create mode 100644 lib/tuklib/tuklib_config.h
 create mode 100644 lib/tuklib/tuklib_physmem.c
 create mode 100644 lib/tuklib/tuklib_physmem.h
 create mode 100644 m4/tuklib_common.m4
 create mode 100644 m4/tuklib_physmem.m4


Reply to: