[cmake-developers] CMake 3.4.0-rc2 cpack xz compressed debian packages broken

Raffi Enficiaud raffi.enficiaud at mines-paris.org
Fri Oct 23 06:04:55 EDT 2015


Le 23/10/15 11:22, Nils Gladitz a écrit :
> Given this test case:
>    cmake_minimum_required(VERSION 3.3)
>
>    project(Foo NONE)
>
>    install(FILES CMakeLists.txt DESTINATION tmp)
>
>    set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
>    set(CPACK_PACKAGE_CONTACT "foo at bar.com")
>
>    include(CPack)
>
> A debian package created with:
>      cpack -G DEB
>
> Fails during installation with dpkg -i with:
>    tar: Archive is compressed. Use -J option
>    tar: Error is not recoverable: exiting now
>    dpkg-deb: error: subprocess tar returned error exit status 2
>
> The breaking commit seems to be:
>      7044e8ee4baa8250fd9c4e915b13d53c7f543ea3 CPackDeb: use of
> libarchive and removal of fakeroot
>
>  From the looks of it the contained "control.tar.gz" is now XZ
> compressed as well while it previously was gzip compressed.
>
> Nils

Fix attached! (based on current master a03c13a)
Thank you for the report.

Best,
Raffi

PS.: I will add the test later today
-------------- next part --------------
>From fd9693db2b4dcdf6cc9ce5320c009b7e20533756 Mon Sep 17 00:00:00 2001
From: Raffi Enficiaud <raffi.enficiaud at mines-paris.org>
Date: Fri, 23 Oct 2015 12:01:35 +0200
Subject: [PATCH] fixup! CPackDEB proper compression scheme for control.tar.gz

---
 Source/CPack/cmCPackDebGenerator.cxx | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Source/CPack/cmCPackDebGenerator.cxx b/Source/CPack/cmCPackDebGenerator.cxx
index 93c94e2..04efb71 100644
--- a/Source/CPack/cmCPackDebGenerator.cxx
+++ b/Source/CPack/cmCPackDebGenerator.cxx
@@ -570,7 +570,7 @@ int cmCPackDebGenerator::createDeb()
       return 0;
       }
     cmArchiveWrite control_tar(fileStream_control_tar,
-                               tar_compression_type,
+                               cmArchiveWrite::CompressGZip,
                                "paxr");
 
     // sets permissions and uid/gid for the files
-- 
2.0.1



More information about the cmake-developers mailing list