diff options
author | Daniel Pfeifer <daniel@pfeifer-mail.de> | 2014-07-13 20:23:22 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-07-29 12:45:36 (GMT) |
commit | 8436d18115a9d997fb92fc7a019da1f28646a2f8 (patch) | |
tree | 1ac085866699c54ccfca23361fc3a5e3c7e695da /Utilities/cmlibarchive | |
parent | 73eab246fbfad22bcc1b0bb5599f8e0cffb79c0d (diff) | |
download | CMake-8436d18115a9d997fb92fc7a019da1f28646a2f8.zip CMake-8436d18115a9d997fb92fc7a019da1f28646a2f8.tar.gz CMake-8436d18115a9d997fb92fc7a019da1f28646a2f8.tar.bz2 |
CMake: Enable use of liblzma in libarchive (#14504)
Build liblzma as part of CMake or find one on the system. Modify our
port of libarchive to use the liblzma configured for use with CMake.
Diffstat (limited to 'Utilities/cmlibarchive')
9 files changed, 21 insertions, 16 deletions
diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt index 9b1533d..87a9c3f 100644 --- a/Utilities/cmlibarchive/CMakeLists.txt +++ b/Utilities/cmlibarchive/CMakeLists.txt @@ -275,7 +275,6 @@ IF(BZIP2_FOUND) ENDIF(BZIP2_FOUND) MARK_AS_ADVANCED(CLEAR BZIP2_INCLUDE_DIR) MARK_AS_ADVANCED(CLEAR BZIP2_LIBRARIES) -IF(0) # CMake does not need LZMA or LZO2 support in libarchive # # Find LZMA # @@ -291,15 +290,19 @@ IF(LZMA_FOUND) SET(HAVE_LZMA_H 1) INCLUDE_DIRECTORIES(${LZMA_INCLUDE_DIR}) LIST(APPEND ADDITIONAL_LIBS ${LZMA_LIBRARIES}) - # Test if a macro is needed for the library. - TRY_MACRO_FOR_LIBRARY( - "${LZMA_INCLUDE_DIR}" "${LZMA_LIBRARIES}" - COMPILES - "#include <lzma.h>\nint main() {return (int)lzma_version_number(); }" - "WITHOUT_LZMA_API_STATIC;LZMA_API_STATIC") - IF(NOT WITHOUT_LZMA_API_STATIC AND LZMA_API_STATIC) + IF(CMAKE_USE_SYSTEM_LIBLZMA) + # Test if a macro is needed for the library. + TRY_MACRO_FOR_LIBRARY( + "${LZMA_INCLUDE_DIR}" "${LZMA_LIBRARIES}" + COMPILES + "#include <lzma.h>\nint main() {return (int)lzma_version_number(); }" + "WITHOUT_LZMA_API_STATIC;LZMA_API_STATIC") + IF(NOT WITHOUT_LZMA_API_STATIC AND LZMA_API_STATIC) + ADD_DEFINITIONS(-DLZMA_API_STATIC) + ENDIF(NOT WITHOUT_LZMA_API_STATIC AND LZMA_API_STATIC) + ELSE() ADD_DEFINITIONS(-DLZMA_API_STATIC) - ENDIF(NOT WITHOUT_LZMA_API_STATIC AND LZMA_API_STATIC) + ENDIF() ELSEIF(LZMADEC_FOUND) SET(HAVE_LIBLZMADEC 1) SET(HAVE_LZMADEC_H 1) @@ -308,6 +311,7 @@ ELSEIF(LZMADEC_FOUND) ELSE(LZMA_FOUND) # LZMA not found and will not be used. ENDIF(LZMA_FOUND) +IF(0) # CMake does not need LZO2 support in libarchive # # Find LZO2 # diff --git a/Utilities/cmlibarchive/libarchive/archive_read_support_filter_xz.c b/Utilities/cmlibarchive/libarchive/archive_read_support_filter_xz.c index 7bda263..a3ad67a 100644 --- a/Utilities/cmlibarchive/libarchive/archive_read_support_filter_xz.c +++ b/Utilities/cmlibarchive/libarchive/archive_read_support_filter_xz.c @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include <unistd.h> #endif #if HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #elif HAVE_LZMADEC_H #include <lzmadec.h> #endif diff --git a/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c b/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c index 8cd241b..47e0752 100644 --- a/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c +++ b/Utilities/cmlibarchive/libarchive/archive_read_support_format_7zip.c @@ -36,7 +36,7 @@ __FBSDID("$FreeBSD$"); #include <cm_bzlib.h> #endif #ifdef HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #endif #ifdef HAVE_ZLIB_H #include <cm_zlib.h> diff --git a/Utilities/cmlibarchive/libarchive/archive_read_support_format_xar.c b/Utilities/cmlibarchive/libarchive/archive_read_support_format_xar.c index af89ded..68485d1 100644 --- a/Utilities/cmlibarchive/libarchive/archive_read_support_format_xar.c +++ b/Utilities/cmlibarchive/libarchive/archive_read_support_format_xar.c @@ -42,7 +42,7 @@ __FBSDID("$FreeBSD$"); #include <cm_bzlib.h> #endif #if HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #elif HAVE_LZMADEC_H #include <lzmadec.h> #endif diff --git a/Utilities/cmlibarchive/libarchive/archive_util.c b/Utilities/cmlibarchive/libarchive/archive_util.c index b53beca..96b88d8 100644 --- a/Utilities/cmlibarchive/libarchive/archive_util.c +++ b/Utilities/cmlibarchive/libarchive/archive_util.c @@ -49,7 +49,7 @@ __FBSDID("$FreeBSD: head/lib/libarchive/archive_util.c 201098 2009-12-28 02:58:1 #include <cm_zlib.h> #endif #ifdef HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #endif #ifdef HAVE_BZLIB_H #include <cm_bzlib.h> diff --git a/Utilities/cmlibarchive/libarchive/archive_windows.h b/Utilities/cmlibarchive/libarchive/archive_windows.h index 9a19cdf..dc2f241 100644 --- a/Utilities/cmlibarchive/libarchive/archive_windows.h +++ b/Utilities/cmlibarchive/libarchive/archive_windows.h @@ -76,6 +76,7 @@ #if defined(_MSC_VER) #pragma warning(push,1) +#pragma warning(disable:4142) /* benign redefinition of type */ #pragma warning(disable:4761) /* integral size mismatch in argument; conversion supplied */ #endif #if defined(__BORLANDC__) diff --git a/Utilities/cmlibarchive/libarchive/archive_write_add_filter_xz.c b/Utilities/cmlibarchive/libarchive/archive_write_add_filter_xz.c index fa73311..a566732 100644 --- a/Utilities/cmlibarchive/libarchive/archive_write_add_filter_xz.c +++ b/Utilities/cmlibarchive/libarchive/archive_write_add_filter_xz.c @@ -39,7 +39,7 @@ __FBSDID("$FreeBSD: head/lib/libarchive/archive_write_set_compression_xz.c 20110 #endif #include <time.h> #ifdef HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #endif #include "archive.h" diff --git a/Utilities/cmlibarchive/libarchive/archive_write_set_format_7zip.c b/Utilities/cmlibarchive/libarchive/archive_write_set_format_7zip.c index 4f1bc26..5158854 100644 --- a/Utilities/cmlibarchive/libarchive/archive_write_set_format_7zip.c +++ b/Utilities/cmlibarchive/libarchive/archive_write_set_format_7zip.c @@ -34,7 +34,7 @@ __FBSDID("$FreeBSD$"); #include <cm_bzlib.h> #endif #if HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #endif #ifdef HAVE_ZLIB_H #include <cm_zlib.h> diff --git a/Utilities/cmlibarchive/libarchive/archive_write_set_format_xar.c b/Utilities/cmlibarchive/libarchive/archive_write_set_format_xar.c index a4ce7ee..4cd2b9d 100644 --- a/Utilities/cmlibarchive/libarchive/archive_write_set_format_xar.c +++ b/Utilities/cmlibarchive/libarchive/archive_write_set_format_xar.c @@ -40,7 +40,7 @@ __FBSDID("$FreeBSD$"); #include <cm_bzlib.h> #endif #if HAVE_LZMA_H -#include <lzma.h> +#include <cm_lzma.h> #endif #ifdef HAVE_ZLIB_H #include <cm_zlib.h> |