Source: zopfli Version: 1.0.0-1 Severity: wishlist Tags: patch Hi,
I am packaging Android SDK and I found the zipalign tool requires the dynamic library version of zopfli, which is so-called libzopfli.so. Current zopfli package does not contain the library, so I wrote a patch to change that. This patch replaces hardened_build.patch with libzopfli.diff that modifies the makefile to generate libzopfli.so.1.0.0 and libzopfli.a, and adds several .install and .links files for the new packages. The new packages are: libzopfli1 and libzopfli-dev. I used dh-exec to make the packages support multi-arch, so please make sure the .install and .links files are set executable. Thank you. You can also view the changes in <https://github.com/seamlik/debianpkg-zopfli/commit/10f68fe508fb6d31eb1ec639b0c998bb026ebbae> Regards, Kai-Chung Yan
diff --git a/debian/changelog b/debian/changelog index 7cb1621..2325e52 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +zopfli (1.0.0-2) UNRELEASED; urgency=low + + * New libzopfli.diff: Produce libzopfli.so + * New packages: libzopfli1 and libzopfli-dev + * Drop hardened_build.patch: No longer needed + + -- Kai-Chung Yan <seamli...@gmail.com> Fri, 31 Jul 2015 20:06:30 +0800 + zopfli (1.0.0-1) unstable; urgency=low * New upstream release. diff --git a/debian/control b/debian/control index 812641e..f1e7578 100644 --- a/debian/control +++ b/debian/control @@ -2,7 +2,7 @@ Source: zopfli Section: utils Priority: optional Maintainer: Laszlo Boszormenyi (GCS) <g...@debian.org> -Build-Depends: debhelper (>= 9), dpkg-dev (>= 1.16.1~) +Build-Depends: debhelper (>= 9), dpkg-dev (>= 1.16.1~), dh-exec Standards-Version: 3.9.5 Homepage: http://code.google.com/p/zopfli/ @@ -14,3 +14,27 @@ Description: zlib (gzip, deflate) compatible compressor compressor. This compressor takes more time (~100x slower), but compresses around 5% better than zlib and better than any other zlib-compatible compressor we have found. + +Package: libzopfli1 +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: zlib (gzip, deflate) compatible compressor library + Zopfli Compression Algorithm is a new zlib (gzip, deflate) compatible + compressor. This compressor takes more time (~100x slower), but compresses + around 5% better than zlib and better than any other zlib-compatible + compressor we have found. + . + This package contains the dynamic library version of zopfli. + +Package: libzopfli-dev +Architecture: any +Section: libdevel +Depends: libzopfli1 (= ${binary:Version}), ${misc:Depends} +Description: zlib (gzip, deflate) compatible compressor library - Development files + Zopfli Compression Algorithm is a new zlib (gzip, deflate) compatible + compressor. This compressor takes more time (~100x slower), but compresses + around 5% better than zlib and better than any other zlib-compatible + compressor we have found. + . + This package contains the development files. \ No newline at end of file diff --git a/debian/libzopfli-dev.install b/debian/libzopfli-dev.install new file mode 100755 index 0000000..965bedb --- /dev/null +++ b/debian/libzopfli-dev.install @@ -0,0 +1,4 @@ +#!/usr/bin/dh-exec + +libzopfli.a usr/lib/${DEB_HOST_MULTIARCH} +src/zopfli/*.h usr/include/zopfli \ No newline at end of file diff --git a/debian/libzopfli-dev.links b/debian/libzopfli-dev.links new file mode 100755 index 0000000..4175928 --- /dev/null +++ b/debian/libzopfli-dev.links @@ -0,0 +1,3 @@ +#!/usr/bin/dh-exec + +usr/lib/${DEB_HOST_MULTIARCH}/libzopfli.so.1.0.0 usr/lib/${DEB_HOST_MULTIARCH}/libzopfli.so \ No newline at end of file diff --git a/debian/libzopfli1.install b/debian/libzopfli1.install new file mode 100755 index 0000000..3312ebb --- /dev/null +++ b/debian/libzopfli1.install @@ -0,0 +1,3 @@ +#!/usr/bin/dh-exec + +libzopfli.so.* usr/lib/${DEB_HOST_MULTIARCH} \ No newline at end of file diff --git a/debian/libzopfli1.links b/debian/libzopfli1.links new file mode 100755 index 0000000..7bf70ad --- /dev/null +++ b/debian/libzopfli1.links @@ -0,0 +1,3 @@ +#!/usr/bin/dh-exec + +usr/lib/${DEB_HOST_MULTIARCH}/libzopfli.so.1.0.0 usr/lib/${DEB_HOST_MULTIARCH}/libzopfli.so.1 \ No newline at end of file diff --git a/debian/patches/hardened_build.patch b/debian/patches/hardened_build.patch deleted file mode 100644 index 3847db3..0000000 --- a/debian/patches/hardened_build.patch +++ /dev/null @@ -1,18 +0,0 @@ -Description: build with hardening enabled - Add $CPPFLAGS and $LDFLAGS to the makefile . -Author: Laszlo Boszormenyi (GCS) <g...@debian.hu> -Forwarded: not-needed -Last-Update: 2013-03-03 - ---- - ---- zopfli/makefile -+++ zopfli/makefile -@@ -1,5 +1,5 @@ - make: -- gcc src/zopfli/*.c -O2 -W -Wall -Wextra -ansi -pedantic -lm -o zopfli -+ gcc src/zopfli/*.c -O2 -W -Wall -Wextra -ansi -pedantic -lm $(CPPFLAGS) $(LDFLAGS) -o zopfli - - debug: -- gcc src/zopfli/*.c -g3 -lm -o zopfli -+ gcc src/zopfli/*.c -g3 -lm $(CPPFLAGS) $(LDFLAGS) -o zopfli diff --git a/debian/patches/libzopfli.diff b/debian/patches/libzopfli.diff new file mode 100644 index 0000000..47f14e7 --- /dev/null +++ b/debian/patches/libzopfli.diff @@ -0,0 +1,22 @@ +--- a/makefile ++++ b/makefile +@@ -1,5 +1,16 @@ +-make: +- gcc src/zopfli/*.c -O2 -W -Wall -Wextra -ansi -pedantic -lm -o zopfli ++SOURCES = $(shell find src/zopfli -name *.c) ++OBJECTS = $(SOURCES:.c=.o) ++ ++make: $(OBJECTS) ++ cc $(OBJECTS) -o zopfli $(LDFLAGS) -fPIC -lm ++ cc $(OBJECTS) -o libzopfli.so.1.0.0 $(LDFLAGS) -fPIC -lm -shared -Wl,-soname,libzopfli.so.1 ++ ar rs libzopfli.a $(OBJECTS) + + debug: + gcc src/zopfli/*.c -g3 -lm -o zopfli ++ ++$(OBJECTS): %.o: %.c ++ cc $< -o $@ $(CFLAGS) $(CPPFLAGS) -fPIC -c -ansi ++ ++clean: ++ rm -f src/zopfli/*.o *.a *.so.* zopfli +\ No newline at end of file diff --git a/debian/patches/series b/debian/patches/series index 4ea3a8e..634eb91 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -1 +1 @@ -hardened_build.patch +libzopfli.diff