Attached is a debdiff with my work for version 1.5.0, The only thing ubuntu specific is the skipped tests (which seem to work ok in my debian sbuild chroot but not launchpad ones) the rest applies equally to Debian.
diff -Nru libzip-1.3.2/debian/changelog libzip-1.5.0/debian/changelog --- libzip-1.3.2/debian/changelog 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/changelog 2018-04-03 20:51:36.000000000 +1000 @@ -1,3 +1,29 @@ +libzip (1.5.0-1) UNRELEASED; urgency=medium + + * New upstream release + - Removes custom AES implementation in favour of using standard crypto libs + * Build with cmake, autotools support was dropped. + * Bump debhelper to compat 11 + * debian/control: + - Add Build-dep on libssl-dev and libbz2-dev + * debian/libzip5.symbols: Update with new symbols + * debian/patches: + - drop_RPATH.patch: Don't set unnecessary RPATH's + - pkg-config-Use-Libs.private.patch: Proposed upstream patch to correct + pkgconfig file + - disable_failing_tests.patch: Skip some problematic tests that fail in the + launchpad sbuild chroots but pass elsewhere + * debian/rules: + - Clean up Multi-arch support + - set dh_missing to --fail-missing + - Drop flags obsolete with dh 11 + * debian/libzip-dev.install: don't install static lib, its not built with cmake + * debian/libzip5.lintian-overrides: override possible-gpl-code-linked-with-openssl + libzip is BSD licensed only the debian packaging is licensed under GPLv3 + * debian/copyright: Update to reflect removed code + + -- Tim Lunn <t...@feathertop.org> Tue, 03 Apr 2018 20:51:36 +1000 + libzip (1.3.2-1) experimental; urgency=medium * Update to upstream version 1.3.2 (Closes: #881877) diff -Nru libzip-1.3.2/debian/compat libzip-1.5.0/debian/compat --- libzip-1.3.2/debian/compat 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/compat 2018-04-03 20:02:30.000000000 +1000 @@ -1 +1 @@ -9 +11 diff -Nru libzip-1.3.2/debian/control libzip-1.5.0/debian/control --- libzip-1.3.2/debian/control 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/control 2018-04-03 20:51:36.000000000 +1000 @@ -2,8 +2,10 @@ Priority: optional Maintainer: Stefan Schörghofer <amd1...@4md.gr> Uploaders: Ondřej Surý <ond...@debian.org> -Build-Depends: debhelper (>= 9), - dh-autoreconf, +Build-Depends: cmake, + debhelper (>= 11), + libbz2-dev, + libssl-dev, unzip, zlib1g-dev, mandoc diff -Nru libzip-1.3.2/debian/copyright libzip-1.5.0/debian/copyright --- libzip-1.3.2/debian/copyright 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/copyright 2018-04-03 20:51:36.000000000 +1000 @@ -25,12 +25,6 @@ Copyright (C) 1987-2002 The Regents of the University of California. All rights reserved. -Copyright for gladman-fcrypt: -Files: lib/gladman-fcrypt/* - - Copyright (C) 2002, Dr Brian Gladman < >, Worcester, UK. - All rights reserved. - License: Redistribution and use in source and binary forms, with or without @@ -58,31 +52,6 @@ OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -License gladman-fcrypt: - - The free distribution and use of this software in both source and binary - form is allowed (with or without changes) provided that: - - 1. distributions of this source code include the above copyright - notice, this list of conditions and the following disclaimer; - - 2. distributions in binary form include the above copyright - notice, this list of conditions and the following disclaimer - in the documentation and/or other associated materials; - - 3. the copyright holder's name is not used to endorse products - built using this software without specific written permission. - - ALTERNATIVELY, provided that this notice is retained in full, this product - may be distributed under the terms of the GNU General Public License (GPL), - in which case the provisions of the GPL apply INSTEAD OF those given above. - - DISCLAIMER - - This software is provided 'as is' with no explicit or implied warranties - in respect of its properties, including, but not limited to, correctness - and/or fitness for purpose. - The Debian packaging is: Copyright (C) 2007-2010 Fathi Boudra <f...@debian.org> diff -Nru libzip-1.3.2/debian/docs libzip-1.5.0/debian/docs --- libzip-1.3.2/debian/docs 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/docs 2018-04-03 20:06:57.000000000 +1000 @@ -1,3 +1,3 @@ -API-CHANGES +API-CHANGES.md README.md TODO.md diff -Nru libzip-1.3.2/debian/libzip5.lintian-overrides libzip-1.5.0/debian/libzip5.lintian-overrides --- libzip-1.3.2/debian/libzip5.lintian-overrides 1970-01-01 10:00:00.000000000 +1000 +++ libzip-1.5.0/debian/libzip5.lintian-overrides 2018-04-03 20:51:36.000000000 +1000 @@ -0,0 +1,2 @@ +#libzip is BSD licensed only the Debian packging is GPLv3 +libzip5: possible-gpl-code-linked-with-openssl diff -Nru libzip-1.3.2/debian/libzip5.symbols libzip-1.5.0/debian/libzip5.symbols --- libzip-1.3.2/debian/libzip5.symbols 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/libzip5.symbols 2018-04-03 20:51:36.000000000 +1000 @@ -1,8 +1,136 @@ libzip.so.5 libzip5 #MINVER# - zip_libzip_version@Base 1.3.2 + _zip_add_entry@Base 1.5.0 + _zip_buffer_data@Base 1.5.0 + _zip_buffer_eof@Base 1.5.0 + _zip_buffer_free@Base 1.5.0 + _zip_buffer_get@Base 1.5.0 + _zip_buffer_get_16@Base 1.5.0 + _zip_buffer_get_32@Base 1.5.0 + _zip_buffer_get_64@Base 1.5.0 + _zip_buffer_get_8@Base 1.5.0 + _zip_buffer_left@Base 1.5.0 + _zip_buffer_new@Base 1.5.0 + _zip_buffer_new_from_source@Base 1.5.0 + _zip_buffer_offset@Base 1.5.0 + _zip_buffer_ok@Base 1.5.0 + _zip_buffer_peek@Base 1.5.0 + _zip_buffer_put@Base 1.5.0 + _zip_buffer_put_16@Base 1.5.0 + _zip_buffer_put_32@Base 1.5.0 + _zip_buffer_put_64@Base 1.5.0 + _zip_buffer_put_8@Base 1.5.0 + _zip_buffer_read@Base 1.5.0 + _zip_buffer_set_offset@Base 1.5.0 + _zip_buffer_size@Base 1.5.0 + _zip_buffer_skip@Base 1.5.0 + _zip_cdir_free@Base 1.5.0 + _zip_cdir_grow@Base 1.5.0 + _zip_cdir_new@Base 1.5.0 + _zip_cdir_write@Base 1.5.0 + _zip_changed@Base 1.5.0 + _zip_cp437_to_utf8@Base 1.5.0 + _zip_crypto_aes_free@Base 1.5.0 + _zip_crypto_aes_new@Base 1.5.0 + _zip_crypto_hmac_free@Base 1.5.0 + _zip_crypto_hmac_new@Base 1.5.0 + _zip_crypto_hmac_output@Base 1.5.0 + _zip_deregister_source@Base 1.5.0 + _zip_dirent_clone@Base 1.5.0 + _zip_dirent_finalize@Base 1.5.0 + _zip_dirent_free@Base 1.5.0 + _zip_dirent_init@Base 1.5.0 + _zip_dirent_needs_zip64@Base 1.5.0 + _zip_dirent_new@Base 1.5.0 + _zip_dirent_read@Base 1.5.0 + _zip_dirent_set_version_needed@Base 1.5.0 + _zip_dirent_size@Base 1.5.0 + _zip_dirent_write@Base 1.5.0 + _zip_ef_clone@Base 1.5.0 + _zip_ef_delete_by_id@Base 1.5.0 + _zip_ef_free@Base 1.5.0 + _zip_ef_get_by_id@Base 1.5.0 + _zip_ef_merge@Base 1.5.0 + _zip_ef_new@Base 1.5.0 + _zip_ef_parse@Base 1.5.0 + _zip_ef_remove_internal@Base 1.5.0 + _zip_ef_size@Base 1.5.0 + _zip_ef_write@Base 1.5.0 + _zip_entry_finalize@Base 1.5.0 + _zip_entry_init@Base 1.5.0 + _zip_err_str@Base 1.5.0 + _zip_err_type@Base 1.5.0 + _zip_error_clear@Base 1.5.0 + _zip_error_copy@Base 1.5.0 + _zip_error_get@Base 1.5.0 + _zip_error_set_from_source@Base 1.5.0 + _zip_file_extra_field_prepare_for_change@Base 1.5.0 + _zip_file_get_end@Base 1.5.0 + _zip_file_get_offset@Base 1.5.0 + _zip_file_replace@Base 1.5.0 + _zip_filerange_crc@Base 1.5.0 + _zip_get_dirent@Base 1.5.0 + _zip_get_encryption_implementation@Base 1.5.0 + _zip_get_name@Base 1.5.0 + _zip_guess_encoding@Base 1.5.0 + _zip_hash_add@Base 1.5.0 + _zip_hash_delete@Base 1.5.0 + _zip_hash_free@Base 1.5.0 + _zip_hash_lookup@Base 1.5.0 + _zip_hash_new@Base 1.5.0 + _zip_hash_reserve_capacity@Base 1.5.0 + _zip_hash_revert@Base 1.5.0 + _zip_memdup@Base 1.5.0 + _zip_name_locate@Base 1.5.0 + _zip_nerr_str@Base 1.5.0 + _zip_new@Base 1.5.0 + _zip_open@Base 1.5.0 + _zip_progress_end@Base 1.5.0 + _zip_progress_free@Base 1.5.0 + _zip_progress_new@Base 1.5.0 + _zip_progress_start@Base 1.5.0 + _zip_progress_subrange@Base 1.5.0 + _zip_progress_update@Base 1.5.0 + _zip_read@Base 1.5.0 + _zip_read_data@Base 1.5.0 + _zip_read_local_ef@Base 1.5.0 + _zip_read_string@Base 1.5.0 + _zip_register_source@Base 1.5.0 + _zip_set_name@Base 1.5.0 + _zip_set_open_error@Base 1.5.0 + _zip_source_call@Base 1.5.0 + _zip_source_eof@Base 1.5.0 + _zip_source_file_or_p@Base 1.5.0 + _zip_source_had_error@Base 1.5.0 + _zip_source_invalidate@Base 1.5.0 + _zip_source_new@Base 1.5.0 + _zip_source_set_source_archive@Base 1.5.0 + _zip_source_window_new@Base 1.5.0 + _zip_source_zip_new@Base 1.5.0 + _zip_stat_merge@Base 1.5.0 + _zip_string_crc32@Base 1.5.0 + _zip_string_equal@Base 1.5.0 + _zip_string_free@Base 1.5.0 + _zip_string_get@Base 1.5.0 + _zip_string_length@Base 1.5.0 + _zip_string_new@Base 1.5.0 + _zip_string_write@Base 1.5.0 + _zip_u2d_time@Base 1.5.0 + _zip_unchange@Base 1.5.0 + _zip_unchange_data@Base 1.5.0 + _zip_winzip_aes_decrypt@Base 1.5.0 + _zip_winzip_aes_encrypt@Base 1.5.0 + _zip_winzip_aes_finish@Base 1.5.0 + _zip_winzip_aes_free@Base 1.5.0 + _zip_winzip_aes_new@Base 1.5.0 + _zip_write@Base 1.5.0 zip_add@Base 0.10 zip_add_dir@Base 0.10 + zip_algorithm_bzip2_compress@Base 1.5.0 + zip_algorithm_bzip2_decompress@Base 1.5.0 + zip_algorithm_deflate_compress@Base 1.5.0 + zip_algorithm_deflate_decompress@Base 1.5.0 zip_close@Base 0.10 + zip_compression_method_supported@Base 1.5.0 zip_delete@Base 0.10 zip_dir_add@Base 0.11.2 zip_discard@Base 0.11.2 @@ -55,9 +183,11 @@ zip_get_name@Base 0.10 zip_get_num_entries@Base 0.10 zip_get_num_files@Base 0.10 + zip_libzip_version@Base 1.5.0 zip_name_locate@Base 0.10 zip_open@Base 0.10 zip_open_from_source@Base 1.0 + zip_random@Base 1.5.0 zip_register_progress_callback@Base 1.3.0 zip_register_progress_callback_with_state@Base 1.3.0 zip_rename@Base 0.10 @@ -68,10 +198,16 @@ zip_set_file_comment@Base 0.10 zip_set_file_compression@Base 0.11.2 zip_source_begin_write@Base 1.0 + zip_source_begin_write_cloning@Base 1.5.0 zip_source_buffer@Base 0.10 zip_source_buffer_create@Base 1.0 + zip_source_buffer_fragment@Base 1.5.0 + zip_source_buffer_fragment_create@Base 1.5.0 zip_source_close@Base 1.0 zip_source_commit_write@Base 1.0 + zip_source_compress@Base 1.5.0 + zip_source_crc@Base 1.5.0 + zip_source_decompress@Base 1.5.0 zip_source_error@Base 1.0 zip_source_file@Base 0.10 zip_source_file_create@Base 1.0 @@ -80,18 +216,27 @@ zip_source_free@Base 0.10 zip_source_function@Base 0.10 zip_source_function_create@Base 1.0 + zip_source_get_compression_flags@Base 1.5.0 zip_source_is_deleted@Base 1.0 zip_source_keep@Base 1.0 + zip_source_layered@Base 1.5.0 + zip_source_layered_create@Base 1.5.0 zip_source_make_command_bitmap@Base 1.0 zip_source_open@Base 1.0 + zip_source_pkware@Base 1.5.0 zip_source_read@Base 1.0 + zip_source_remove@Base 1.5.0 zip_source_rollback_write@Base 1.0 zip_source_seek@Base 1.0 zip_source_seek_compute_offset@Base 1.0 zip_source_seek_write@Base 1.0 zip_source_stat@Base 1.0 + zip_source_supports@Base 1.5.0 zip_source_tell@Base 1.0 zip_source_tell_write@Base 1.0 + zip_source_window@Base 1.5.0 + zip_source_winzip_aes_decode@Base 1.5.0 + zip_source_winzip_aes_encode@Base 1.5.0 zip_source_write@Base 1.0 zip_source_zip@Base 0.10 zip_stat@Base 0.10 diff -Nru libzip-1.3.2/debian/libzip-dev.install libzip-1.5.0/debian/libzip-dev.install --- libzip-1.3.2/debian/libzip-dev.install 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/libzip-dev.install 2018-04-03 20:51:36.000000000 +1000 @@ -1,6 +1,5 @@ usr/include/zip.h usr/include/zipconf.h -usr/lib/*/libzip.a usr/lib/*/libzip.so usr/lib/*/pkgconfig/libzip.pc usr/share/man/man3/* diff -Nru libzip-1.3.2/debian/patches/disable_failing_tests.patch libzip-1.5.0/debian/patches/disable_failing_tests.patch --- libzip-1.3.2/debian/patches/disable_failing_tests.patch 1970-01-01 10:00:00.000000000 +1000 +++ libzip-1.5.0/debian/patches/disable_failing_tests.patch 2018-04-03 20:51:36.000000000 +1000 @@ -0,0 +1,47 @@ +Index: libzip-1.5.0/regress/encryption-nonrandom-aes128.test +=================================================================== +--- libzip-1.5.0.orig/regress/encryption-nonrandom-aes128.test ++++ /dev/null +@@ -1,6 +0,0 @@ +-features CRYPTO +-description encrypt file without entropy, to make results repeatable +-return 0 +-preload nonrandomopen.so +-args encrypt.zzip set_file_encryption 1 AES-128 no-entropy +-file encrypt.zzip encrypt-none.zip encrypt-aes128-noentropy.zip +Index: libzip-1.5.0/regress/encryption-nonrandom-aes192.test +=================================================================== +--- libzip-1.5.0.orig/regress/encryption-nonrandom-aes192.test ++++ /dev/null +@@ -1,6 +0,0 @@ +-features CRYPTO +-description encrypt file without entropy, to make results repeatable +-return 0 +-preload nonrandomopen.so +-args encrypt.zzip set_file_encryption 1 AES-192 no-entropy +-file encrypt.zzip encrypt-none.zip encrypt-aes192-noentropy.zip +Index: libzip-1.5.0/regress/encryption-nonrandom-aes256.test +=================================================================== +--- libzip-1.5.0.orig/regress/encryption-nonrandom-aes256.test ++++ /dev/null +@@ -1,6 +0,0 @@ +-features CRYPTO +-description encrypt file without entropy, to make results repeatable +-return 0 +-preload nonrandomopen.so +-args encrypt.zzip set_file_encryption 1 AES-256 no-entropy +-file encrypt.zzip encrypt-none.zip encrypt-aes256-noentropy.zip +Index: libzip-1.5.0/regress/CMakeLists.txt +=================================================================== +--- libzip-1.5.0.orig/regress/CMakeLists.txt ++++ libzip-1.5.0/regress/CMakeLists.txt +@@ -109,9 +109,6 @@ SET(EXTRA_TESTS + delete_multiple_partial.test + delete_renamed_rename.test + encrypt.test +- encryption-nonrandom-aes128.test +- encryption-nonrandom-aes192.test +- encryption-nonrandom-aes256.test + encryption-remove.test + extra_add.test + extra_add_multiple.test diff -Nru libzip-1.3.2/debian/patches/drop_RPATH.patch libzip-1.5.0/debian/patches/drop_RPATH.patch --- libzip-1.3.2/debian/patches/drop_RPATH.patch 1970-01-01 10:00:00.000000000 +1000 +++ libzip-1.5.0/debian/patches/drop_RPATH.patch 2018-04-03 20:51:36.000000000 +1000 @@ -0,0 +1,15 @@ +Index: libzip-1.5.0/CMakeLists.txt +=================================================================== +--- libzip-1.5.0.orig/CMakeLists.txt ++++ libzip-1.5.0/CMakeLists.txt +@@ -211,10 +211,6 @@ endif(WIN32) + + ADD_DEFINITIONS("-DHAVE_CONFIG_H") + +-# rpath handling: use rpath in installed binaries +-SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}") +-SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE) +- + # Testing + ENABLE_TESTING() + diff -Nru libzip-1.3.2/debian/patches/pkg-config-Use-Libs.private.patch libzip-1.5.0/debian/patches/pkg-config-Use-Libs.private.patch --- libzip-1.3.2/debian/patches/pkg-config-Use-Libs.private.patch 1970-01-01 10:00:00.000000000 +1000 +++ libzip-1.5.0/debian/patches/pkg-config-Use-Libs.private.patch 2018-04-03 20:51:36.000000000 +1000 @@ -0,0 +1,24 @@ +From ab8a9984c26d748773751881094ddc5ed2426ca5 Mon Sep 17 00:00:00 2001 +From: Martin Herkt <652892+lach...@users.noreply.github.com> +Date: Tue, 3 Apr 2018 02:49:40 +0200 +Subject: [PATCH] pkg-config: Use Libs.private for link dependencies + +Fixes #38 +--- + libzip.pc.in | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/libzip.pc.in b/libzip.pc.in +index 7be7f3e..c2565a8 100644 +--- a/libzip.pc.in ++++ b/libzip.pc.in +@@ -9,6 +9,7 @@ zipcmp=@bindir@/zipcmp + Name: libzip + Description: library for handling zip archives + Version: @VERSION@ +-Libs: @PKG_CONFIG_RPATH@ -L${libdir} -lzip @LIBS@ ++Libs: @PKG_CONFIG_RPATH@ -L${libdir} -lzip ++Libs.private: @LIBS@ + Cflags: -I${includedir} + + diff -Nru libzip-1.3.2/debian/patches/series libzip-1.5.0/debian/patches/series --- libzip-1.3.2/debian/patches/series 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/patches/series 2018-04-03 20:51:36.000000000 +1000 @@ -1 +1,4 @@ # empty file +drop_RPATH.patch +disable_failing_tests.patch +pkg-config-Use-Libs.private.patch diff -Nru libzip-1.3.2/debian/rules libzip-1.5.0/debian/rules --- libzip-1.3.2/debian/rules 2017-11-21 07:39:26.000000000 +1100 +++ libzip-1.5.0/debian/rules 2018-04-03 20:51:36.000000000 +1000 @@ -3,14 +3,17 @@ # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 -DEB_HOST_MULTIARCH ?=. +DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) %: - dh $@ --parallel --list-missing --with autoreconf + dh $@ + +override_dh_auto_configure: + dh_auto_configure -- -DLIB_INSTALL_DIR=/usr/lib/$(DEB_HOST_MULTIARCH) -override_dh_link: - install -d debian/libzip-dev/usr/include/${DEB_HOST_MULTIARCH} - dh_link override_dh_installchangelogs: dh_installchangelogs NEWS.md + +override_dh_missing: + dh_missing --fail-missing