Bladeren bron

CMake: Add FindLZ4 and FindLZMA

This makes things work with /usr/local on FreeBSD.

Gbp-Dch: ignore
Julian Andres Klode 10 jaren geleden
bovenliggende
commit
c799c3efe4
3 gewijzigde bestanden met toevoegingen van 53 en 3 verwijderingen
  1. 25 0
      CMake/FindLZ4.cmake
  2. 25 0
      CMake/FindLZMA.cmake
  3. 3 3
      CMakeLists.txt

+ 25 - 0
CMake/FindLZ4.cmake

@@ -0,0 +1,25 @@
+# - Try to find LZ4
+# Once done, this will define
+#
+#  LZ4_FOUND - system has LZ4
+#  LZ4_INCLUDE_DIRS - the LZ4 include directories
+#  LZ4_LIBRARIES - the LZ4 library
+find_package(PkgConfig)
+
+pkg_check_modules(LZ4_PKGCONF liblz4)
+
+find_path(LZ4_INCLUDE_DIRS
+  NAMES lz4frame.h
+  PATHS ${LZ4_PKGCONF_INCLUDE_DIRS}
+)
+
+
+find_library(LZ4_LIBRARIES
+  NAMES lz4
+  PATHS ${LZ4_PKGCONF_LIBRARY_DIRS}
+)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(LZ4 DEFAULT_MSG LZ4_INCLUDE_DIRS LZ4_LIBRARIES)
+
+mark_as_advanced(LZ4_INCLUDE_DIRS LZ4_LIBRARIES)

+ 25 - 0
CMake/FindLZMA.cmake

@@ -0,0 +1,25 @@
+# - Try to find LZMA
+# Once done, this will define
+#
+#  LZMA_FOUND - system has LZMA
+#  LZMA_INCLUDE_DIRS - the LZMA include directories
+#  LZMA_LIBRARIES - the LZMA library
+find_package(PkgConfig)
+
+pkg_check_modules(LZMA_PKGCONF liblzma)
+
+find_path(LZMA_INCLUDE_DIRS
+  NAMES lzma.h
+  PATHS ${LZMA_PKGCONF_INCLUDE_DIRS}
+)
+
+
+find_library(LZMA_LIBRARIES
+  NAMES lzma
+  PATHS ${LZMA_PKGCONF_LIBRARY_DIRS}
+)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(LZMA DEFAULT_MSG LZMA_INCLUDE_DIRS LZMA_LIBRARIES)
+
+mark_as_advanced(LZMA_INCLUDE_DIRS LZMA_LIBRARIES)

+ 3 - 3
CMakeLists.txt

@@ -25,7 +25,6 @@ include(CheckStructHasMember)
 include(GNUInstallDirs)
 include(TestBigEndian)
 find_package(Threads)
-find_package(PkgConfig)
 find_package(LFS REQUIRED)
 
 # Add large file support
@@ -78,12 +77,13 @@ if (BZIP2_FOUND)
   set(HAVE_BZ2 1)
 endif()
 
-pkg_check_modules(LZMA liblzma)
+find_package(LZMA)
 if (LZMA_FOUND)
   set(HAVE_LZMA 1)
 endif()
 
-pkg_check_modules(LZ4 liblz4)
+
+find_package(LZ4)
 if (LZ4_FOUND)
   set(HAVE_LZ4 1)
 endif()