diff options
| author | Helio Castro <helio@kde.org> | 2009-04-14 22:07:49 +0000 | 
|---|---|---|
| committer | Helio Castro <helio@kde.org> | 2009-04-14 22:07:49 +0000 | 
| commit | 98ff7741015d6e0db548caf5a671dc8a70c17b11 (patch) | |
| tree | 1c5262090bb3af1435034bf46eb1f9ed1020bedf | |
| parent | 0573909d5ab4123c4cb85ea019464de98aa33ca4 (diff) | |
| download | extra-cmake-modules-98ff7741015d6e0db548caf5a671dc8a70c17b11.tar.gz extra-cmake-modules-98ff7741015d6e0db548caf5a671dc8a70c17b11.tar.bz2 | |
Add lzma/xz compression algorithm handling. 
Original code by Per Øyvind Karlsen, <peroyvind@mandriva.org>
Minor modifications bu Helio Castro <helio@kde.org>
Reviewed by David Faure
svn path=/trunk/KDE/kdelibs/; revision=954017
| -rw-r--r-- | modules/FindLibLZMA.cmake | 39 | 
1 files changed, 39 insertions, 0 deletions
| diff --git a/modules/FindLibLZMA.cmake b/modules/FindLibLZMA.cmake new file mode 100644 index 00000000..f0797e34 --- /dev/null +++ b/modules/FindLibLZMA.cmake @@ -0,0 +1,39 @@ +# - Find LibLZMA +# Find LibLZMA headers and library +# +#  LIBLZMA_FOUND             - True if liblzma is found. +#  LIBLZMA_INCLUDE_DIR       - Directory where liblzma headers are located. +#  LIBLZMA_LIBRARIES         - Lzma libraries to link against. +#  LIBLZMA_HAS_AUTO_DECODER  - True if lzma_auto_decoder() is found (required). +#  LIBLZMA_HAS_EASY_ENCODER  - True if lzma_easy_encoder() is found (required). +#  LIBLZMA_HAS_LZMA_PRESET   - True if lzma_lzma_preset() is found (required). + + +# Copyright (c) 2008, Per Øyvind Karlsen, <peroyvind@mandriva.org> + + +IF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) +    SET(LIBLZMA_FIND_QUIETLY TRUE) +ENDIF (LIBLZMA_INCLUDE_DIRS AND LIBLZMA_LIBRARIES) + +IF (NOT WIN32) +   INCLUDE(FindPkgConfig) +   PKG_SEARCH_MODULE(LIBLZMA liblzma) +   ELSE (NOT WIN32) +       FIND_PATH(LIBLZMA_INCLUDE_DIRS lzma.h ) +       FIND_LIBRARY(LIBLZMA_LIBRARIES NAMES lzma ) +       INCLUDE(FindPackageHandleStandardArgs) +       FIND_PACKAGE_HANDLE_STANDARD_ARGS(LIBLZMA DEFAULT_MSG LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES) +ENDIF (NOT WIN32) + +IF (LIBLZMA_FOUND) +   INCLUDE(CheckLibraryExists) +   CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_auto_decoder "" LIBLZMA_HAS_AUTO_DECODER) +   CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_easy_encoder "" LIBLZMA_HAS_EASY_ENCODER) +   CHECK_LIBRARY_EXISTS(${LIBLZMA_LIBRARIES} lzma_lzma_preset "" LIBLZMA_HAS_LZMA_PRESET) +   IF (NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) +      SET(LIBLZMA_FOUND FALSE) +   ENDIF(NOT LIBLZMA_HAS_AUTO_DECODER AND LIBLZMA_HAS_EASY_ENCODER AND LIBLZMA_HAS_LZMA_PRESET) +ENDIF (LIBLZMA_FOUND) + +MARK_AS_ADVANCED( LIBLZMA_INCLUDE_DIRS LIBLZMA_LIBRARIES ) | 
