[Cmake-commits] CMake branch, next, updated. v3.4.0-rc2-1234-g44f5dda

Domen Vrankar domen.vrankar at gmail.com
Tue Nov 3 12:24:41 EST 2015


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".

The branch, next has been updated
       via  44f5dda355f3ac3763c0e47fac99c292835b1ee1 (commit)
       via  341cd934897b3e37319b978113a1fdf9bea21c6d (commit)
       via  b87bed0ff6d724a91bbe5ee97b5608eed588d1af (commit)
      from  4668f9ed6842fee90007c6134710c0c2d9aa787d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=44f5dda355f3ac3763c0e47fac99c292835b1ee1
commit 44f5dda355f3ac3763c0e47fac99c292835b1ee1
Merge: 4668f9e 341cd93
Author:     Domen Vrankar <domen.vrankar at gmail.com>
AuthorDate: Tue Nov 3 12:24:40 2015 -0500
Commit:     CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Tue Nov 3 12:24:40 2015 -0500

    Merge topic 'cpack-deb-compression-scheme-test' into next
    
    341cd934 CPackDeb: ctest tests for compression scheme leak
    b87bed0f CMake Nightly Date Stamp


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=341cd934897b3e37319b978113a1fdf9bea21c6d
commit 341cd934897b3e37319b978113a1fdf9bea21c6d
Author:     Raffi Enficiaud <raffi.enficiaud at mines-paris.org>
AuthorDate: Tue Nov 3 18:18:35 2015 +0100
Commit:     Domen Vrankar <domen.vrankar at gmail.com>
CommitDate: Tue Nov 3 18:18:35 2015 +0100

    CPackDeb: ctest tests for compression scheme leak
    
    Test that changing compression of debian package
    content does not affect DEBIAN/ files which must
    be gzipped

diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index ae61bca..e13dc79 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1035,7 +1035,8 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P ${CMake_SOURCE_DIR}/Utilities/Release
                                      "components-description2"
                                      "components-shlibdeps1"
                                      "components-depend1"
-                                     "components-depend2")
+                                     "components-depend2"
+                                     "compression")
       set(CPackGen "DEB")
       set(CPackRun_CPackGen "-DCPackGen=${CPackGen}")
 
diff --git a/Tests/CPackComponentsDEB/MyLibCPackConfig-compression.cmake.in b/Tests/CPackComponentsDEB/MyLibCPackConfig-compression.cmake.in
new file mode 100644
index 0000000..ff18834
--- /dev/null
+++ b/Tests/CPackComponentsDEB/MyLibCPackConfig-compression.cmake.in
@@ -0,0 +1,11 @@
+#
+# Test that setting the compression produces valid
+# packages (compression does not leak to the DEBIAN/ files that use gzip)
+#
+
+if(CPACK_GENERATOR MATCHES "DEB")
+   set(CPACK_DEB_COMPONENT_INSTALL "OFF")
+endif()
+
+set(CPACK_COMPONENTS_ALL_GROUPS_IN_ONE_PACKAGE)
+set(CPACK_DEBIAN_COMPRESSION_TYPE xz)
diff --git a/Tests/CPackComponentsDEB/RunCPackVerifyResult-compression.cmake b/Tests/CPackComponentsDEB/RunCPackVerifyResult-compression.cmake
new file mode 100644
index 0000000..2175ada
--- /dev/null
+++ b/Tests/CPackComponentsDEB/RunCPackVerifyResult-compression.cmake
@@ -0,0 +1,54 @@
+if(NOT CPackComponentsDEB_SOURCE_DIR)
+  message(FATAL_ERROR "CPackComponentsDEB_SOURCE_DIR not set")
+endif()
+
+include(${CPackComponentsDEB_SOURCE_DIR}/RunCPackVerifyResult.cmake)
+
+# TODO: currently debian doens't produce lower cased names
+set(expected_file_mask "${CPackComponentsDEB_BINARY_DIR}/MyLib-*.deb")
+set(expected_count 1)
+
+set(actual_output)
+run_cpack(actual_output
+          CPack_output
+          CPack_error
+          EXPECTED_FILE_MASK "${expected_file_mask}"
+          CONFIG_ARGS "${config_args}"
+          CONFIG_VERBOSE "${config_verbose}")
+
+if(NOT actual_output)
+  message(STATUS "expected_count='${expected_count}'")
+  message(STATUS "expected_file_mask='${expected_file_mask}'")
+  message(STATUS "actual_output_files='${actual_output}'")
+  message(FATAL_ERROR "error: expected_files do not exist: CPackComponentsDEB test fails. (CPack_output=${CPack_output}, CPack_error=${CPack_error}")
+endif()
+
+list(LENGTH actual_output actual_count)
+if(NOT actual_count EQUAL expected_count)
+  message(STATUS "actual_count='${actual_count}'")
+  message(FATAL_ERROR "error: expected_count=${expected_count} does not match actual_count=${actual_count}: CPackComponents test fails. (CPack_output=${CPack_output}, CPack_error=${CPack_error})")
+endif()
+
+
+# dpkg-deb checks
+find_program(DPKGDEB_EXECUTABLE dpkg-deb)
+if(DPKGDEB_EXECUTABLE)
+  set(dpkgdeb_output_errors_all "")
+  foreach(_f IN LISTS actual_output)
+    run_dpkgdeb(dpkg_output
+                FILENAME "${_f}"
+                )
+
+    # message(FATAL_ERROR "output = '${dpkg_output}'")
+    if("${dpkg_output}" STREQUAL "")
+      set(dpkgdeb_output_errors_all "${dpkgdeb_output_errors_all}"
+                                    "dpkg-deb: ${_f}: empty content returned by dpkg-deb")
+    endif()
+  endforeach()
+
+  if(NOT "${dpkgdeb_output_errors_all}" STREQUAL "")
+    message(FATAL_ERROR "dpkg-deb checks failed:\n${dpkgdeb_output_errors_all}")
+  endif()
+else()
+  message("dpkg-deb executable not found - skipping dpkg-deb test")
+endif()
diff --git a/Tests/CPackComponentsDEB/RunCPackVerifyResult.cmake b/Tests/CPackComponentsDEB/RunCPackVerifyResult.cmake
index bf9f81d..b4e567c 100644
--- a/Tests/CPackComponentsDEB/RunCPackVerifyResult.cmake
+++ b/Tests/CPackComponentsDEB/RunCPackVerifyResult.cmake
@@ -86,7 +86,7 @@ function(run_lintian lintian_output)
       message(FATAL_ERROR "error: run_lintian needs FILENAME to be set")
     endif()
 
-    # run lintian
+    # run dpkg-deb
     execute_process(COMMAND ${LINTIAN_EXECUTABLE} ${run_lintian_deb_FILENAME}
       WORKING_DIRECTORY "${CPACK_TEMPORARY_DIRECTORY}"
       OUTPUT_VARIABLE LINTIAN_OUTPUT
@@ -167,6 +167,10 @@ function(run_dpkgdeb dpkg_deb_output)
       ERROR_VARIABLE DPKGDEB_ERROR
       OUTPUT_STRIP_TRAILING_WHITESPACE )
 
+    if(NOT ("${DPKGDEB_RESULT}" EQUAL "0"))
+      message(FATAL_ERROR "Error '${DPKGDEB_RESULT}' returned by dpkg-deb: '${DPKGDEB_ERROR}'")
+    endif()
+
     set(${dpkg_deb_output} "${DPKGDEB_OUTPUT}" PARENT_SCOPE)
   else()
     message(FATAL_ERROR "run_dpkgdeb called without dpkg-deb executable being present")

-----------------------------------------------------------------------

Summary of changes:
 Source/CMakeVersion.cmake                          |    2 +-
 Tests/CMakeLists.txt                               |    3 +-
 .../MyLibCPackConfig-compression.cmake.in          |   11 +++++++
 ...make => RunCPackVerifyResult-compression.cmake} |   32 +++-----------------
 .../CPackComponentsDEB/RunCPackVerifyResult.cmake  |    6 +++-
 5 files changed, 23 insertions(+), 31 deletions(-)
 create mode 100644 Tests/CPackComponentsDEB/MyLibCPackConfig-compression.cmake.in
 copy Tests/CPackComponentsDEB/{RunCPackVerifyResult-components-lintian-dpkgdeb-checks.cmake => RunCPackVerifyResult-compression.cmake} (61%)


hooks/post-receive
-- 
CMake


More information about the Cmake-commits mailing list