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, master has been updated
       via  0495ce4f98497ba607c5d297f2d5dee70d9a36c6 (commit)
       via  9644c835b38d211ee17b5de0bb0ae62fe188eca0 (commit)
      from  bc789afac9215ea60069393e3a2af4afb149a84c (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=0495ce4f98497ba607c5d297f2d5dee70d9a36c6
commit 0495ce4f98497ba607c5d297f2d5dee70d9a36c6
Merge: bc789af 9644c83
Author:     Marc Chevrier <marc.chevr...@gmail.com>
AuthorDate: Thu Dec 20 06:17:35 2018 -0500
Commit:     Marc Chevrier <marc.chevr...@gmail.com>
CommitDate: Thu Dec 20 06:17:35 2018 -0500

    Merge branch 'topic-findliblzma' into 'master'
    
    FindLibLZMA: add imported target
    
    Closes #18679 and #18680
    
    See merge request cmake/cmake!2730


https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9644c835b38d211ee17b5de0bb0ae62fe188eca0
commit 9644c835b38d211ee17b5de0bb0ae62fe188eca0
Author:     Hiroshi Miura <miur...@linux.com>
AuthorDate: Wed Dec 12 07:31:12 2018 +0900
Commit:     Hiroshi Miura <miur...@linux.com>
CommitDate: Thu Dec 13 09:40:11 2018 +0900

    FindLibLZMA: add imported target
    
    - Add imported target LibLZMA::LibLZMA
    - Show found message with library path
    - Add test for FindLibLZMA
    
    Fixes: #18680, #18679
    
    Signed-off-by: Hiroshi Miura <miur...@linux.com>

diff --git a/Help/release/dev/FindLibLZMA-target.rst 
b/Help/release/dev/FindLibLZMA-target.rst
new file mode 100644
index 0000000..a13c45f
--- /dev/null
+++ b/Help/release/dev/FindLibLZMA-target.rst
@@ -0,0 +1,4 @@
+FindLibLZMA-target
+------------------
+
+* The :module:`FindLibLZMA` module now provides an imported target.
diff --git a/Modules/FindLibLZMA.cmake b/Modules/FindLibLZMA.cmake
index 6d30e57..b7e5815 100644
--- a/Modules/FindLibLZMA.cmake
+++ b/Modules/FindLibLZMA.cmake
@@ -9,6 +9,18 @@ Find LibLZMA
 
 Find LibLZMA headers and library
 
+
+IMPORTED Targets
+^^^^^^^^^^^^^^^^
+
+This module defines :prop_tgt:`IMPORTED` target ``LibLZMA::LibLZMA``, if
+LibLZMA has been found.
+
+Result variables
+^^^^^^^^^^^^^^^^
+
+This module will set the following variables in your project:
+
 ::
 
   LIBLZMA_FOUND             - True if liblzma is found.
@@ -51,17 +63,23 @@ if (LIBLZMA_LIBRARY)
 endif ()
 
 include(${CMAKE_CURRENT_LIST_DIR}/FindPackageHandleStandardArgs.cmake)
-FIND_PACKAGE_HANDLE_STANDARD_ARGS(LibLZMA  REQUIRED_VARS  LIBLZMA_INCLUDE_DIR
-                                                          LIBLZMA_LIBRARY
+find_package_handle_standard_args(LibLZMA  REQUIRED_VARS  LIBLZMA_LIBRARY
+                                                          LIBLZMA_INCLUDE_DIR
                                                           
LIBLZMA_HAS_AUTO_DECODER
                                                           
LIBLZMA_HAS_EASY_ENCODER
                                                           
LIBLZMA_HAS_LZMA_PRESET
                                            VERSION_VAR    
LIBLZMA_VERSION_STRING
                                  )
+mark_as_advanced( LIBLZMA_INCLUDE_DIR LIBLZMA_LIBRARY )
 
 if (LIBLZMA_FOUND)
     set(LIBLZMA_LIBRARIES ${LIBLZMA_LIBRARY})
     set(LIBLZMA_INCLUDE_DIRS ${LIBLZMA_INCLUDE_DIR})
+    if(NOT TARGET LibLZMA::LibLZMA)
+        add_library(LibLZMA::LibLZMA UNKNOWN IMPORTED)
+        set_target_properties(LibLZMA::LibLZMA PROPERTIES
+                              INTERFACE_INCLUDE_DIRECTORIES 
${LIBLZMA_INCLUDE_DIR}
+                              IMPORTED_LINK_INTERFACE_LANGUAGES C
+                              IMPORTED_LOCATION ${LIBLZMA_LIBRARY})
+    endif()
 endif ()
-
-mark_as_advanced( LIBLZMA_INCLUDE_DIR LIBLZMA_LIBRARY )
diff --git a/Tests/CMakeLists.txt b/Tests/CMakeLists.txt
index 408c941..2a8d3e6 100644
--- a/Tests/CMakeLists.txt
+++ b/Tests/CMakeLists.txt
@@ -1417,6 +1417,10 @@ ${CMake_BINARY_DIR}/bin/cmake -DDIR=dev -P 
${CMake_SOURCE_DIR}/Utilities/Release
     add_subdirectory(FindJsonCpp)
   endif()
 
+  if(CMake_TEST_FindLibLZMA)
+    add_subdirectory(FindLibLZMA)
+  endif()
+
   if(CMake_TEST_FindLibRHash)
     add_subdirectory(FindLibRHash)
   endif()
diff --git a/Tests/FindLibLZMA/CMakeLists.txt b/Tests/FindLibLZMA/CMakeLists.txt
new file mode 100644
index 0000000..6dff0ef
--- /dev/null
+++ b/Tests/FindLibLZMA/CMakeLists.txt
@@ -0,0 +1,10 @@
+add_test(NAME FindLibLZMA.Test COMMAND
+  ${CMAKE_CTEST_COMMAND} -C $<CONFIGURATION>
+  --build-and-test
+  "${CMake_SOURCE_DIR}/Tests/FindLibLZMA/Test"
+  "${CMake_BINARY_DIR}/Tests/FindLibLZMA/Test"
+  ${build_generator_args}
+  --build-project TestFindLibLZMA
+  --build-options ${build_options}
+  --test-command ${CMAKE_CTEST_COMMAND} -V -C $<CONFIGURATION>
+  )
diff --git a/Tests/FindLibLZMA/Test/CMakeLists.txt 
b/Tests/FindLibLZMA/Test/CMakeLists.txt
new file mode 100644
index 0000000..c59dcdb
--- /dev/null
+++ b/Tests/FindLibLZMA/Test/CMakeLists.txt
@@ -0,0 +1,14 @@
+cmake_minimum_required(VERSION 3.4)
+project(TestFindLZMA C)
+include(CTest)
+
+find_package(LibLZMA REQUIRED)
+
+add_executable(test_tgt main.c)
+target_link_libraries(test_tgt LibLZMA::LibLZMA)
+add_test(NAME test_tgt COMMAND test_tgt)
+
+add_executable(test_var main.c)
+target_include_directories(test_var PRIVATE ${LIBLZMA_INCLUDE_DIRS})
+target_link_libraries(test_var PRIVATE ${LIBLZMA_LIBRARIES})
+add_test(NAME test_var COMMAND test_var)
diff --git a/Tests/FindLibLZMA/Test/main.c b/Tests/FindLibLZMA/Test/main.c
new file mode 100644
index 0000000..06e8065
--- /dev/null
+++ b/Tests/FindLibLZMA/Test/main.c
@@ -0,0 +1,15 @@
+#include <assert.h>
+#include <lzma.h>
+#include <string.h>
+
+static const uint8_t test_string[9] = "123456789";
+
+int main()
+{
+  static const uint32_t test_vector = 0xCBF43926;
+
+  uint32_t crc = lzma_crc32(test_string, sizeof(test_string), 0);
+  assert(crc == test_vector);
+
+  return 0;
+}

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

Summary of changes:
 Help/release/dev/FindLibLZMA-target.rst        |  4 ++++
 Modules/FindLibLZMA.cmake                      | 26 ++++++++++++++++++++++----
 Tests/CMakeLists.txt                           |  4 ++++
 Tests/{FindCURL => FindLibLZMA}/CMakeLists.txt |  8 ++++----
 Tests/FindLibLZMA/Test/CMakeLists.txt          | 14 ++++++++++++++
 Tests/FindLibLZMA/Test/main.c                  | 15 +++++++++++++++
 6 files changed, 63 insertions(+), 8 deletions(-)
 create mode 100644 Help/release/dev/FindLibLZMA-target.rst
 copy Tests/{FindCURL => FindLibLZMA}/CMakeLists.txt (53%)
 create mode 100644 Tests/FindLibLZMA/Test/CMakeLists.txt
 create mode 100644 Tests/FindLibLZMA/Test/main.c


hooks/post-receive
-- 
CMake
_______________________________________________
Cmake-commits mailing list
Cmake-commits@cmake.org
https://cmake.org/mailman/listinfo/cmake-commits

Reply via email to