From 67be41a6728f9abb8c060e0855d1dcc8b670214d Mon Sep 17 00:00:00 2001 From: kestred Date: Fri, 29 Nov 2013 01:21:14 -0700 Subject: [PATCH] CMake: Configure: Add libtar support. First custom Find module. --- cmake/modules/FindTar.cmake | 49 ++++++++++++++++++++++++++++++++++ cmake/modules/MangleJPEG.cmake | 4 +-- dtool/Configure.cmake | 5 ++++ 3 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 cmake/modules/FindTar.cmake diff --git a/cmake/modules/FindTar.cmake b/cmake/modules/FindTar.cmake new file mode 100644 index 0000000000..011ac40f12 --- /dev/null +++ b/cmake/modules/FindTar.cmake @@ -0,0 +1,49 @@ +# Filename: FindTar.cmake +# Author: kestred (29 Nov, 2013) +# +# Once done this will define +# +# HAVE_TAR - system has libtar +# TAR_IPATH - the tar include directory +# TAR_LPATH - the tar library directory +# TAR_LIBS - the tar components found +# + +if(TAR_IPATH AND TAR_LPATH) + set(HAVE_TAR TRUE) + set(TAR_LIBS tar) +else() + # Find the libtar include files + find_path(TAR_IPATH + NAMES "libtar.h" + PATHS "/usr/include" + "/usr/local/include" + PATH_SUFFIXES "" "tar" "libtar" + DOC "The path to libtar's include directory." + ) + + # Find the libtar library (.a, .so) + find_library(TAR_LIBRARY + NAMES "tar" + "libtar" + PATHS "/usr" + "/usr/local" + PATH_SUFFIXES "lib" "lib32" "lib64" + ) + get_filename_component(TAR_LIBRARY_DIR "${TAR_LIBRARY}" PATH) + set(TAR_LPATH "${TAR_LIBRARY_DIR}" CACHE PATH "The path to libtar's library directory.") # Library path + + if(TAR_IPATH AND TAR_LPATH) + set(HAVE_TAR TRUE) + set(TAR_LIBS tar) + message("BAR") + endif() + + #include(FindPackageHandleStandardArgs) + #find_package_handle_standard_args(Tar DEFAULT_MSG TAR_IPATH) + + unset(TAR_LIBRARY_DIR) + unset(TAR_LIBRARY CACHE) + mark_as_advanced(TAR_IPATH) + mark_as_advanced(TAR_LPATH) +endif() diff --git a/cmake/modules/MangleJPEG.cmake b/cmake/modules/MangleJPEG.cmake index 78f5323e69..15ffb04724 100644 --- a/cmake/modules/MangleJPEG.cmake +++ b/cmake/modules/MangleJPEG.cmake @@ -11,8 +11,8 @@ if(JPEG_FOUND) get_filename_component(JPEG_LIBRARY_DIR "${JPEG_LIBRARY}" PATH) - set(JPEG_IPATH "${JPEG_INCLUDE_DIR}" CACHE PATH "The path to libJPEG's include directory.") # Include path - set(JPEG_LPATH "${JPEG_LIBRARY_DIR}" CACHE PATH "The path to libJPEG's library directory.") # Library path + set(JPEG_IPATH "${JPEG_INCLUDE_DIR}" CACHE PATH "The path to libjpeg's include directory.") # Include path + set(JPEG_LPATH "${JPEG_LIBRARY_DIR}" CACHE PATH "The path to libjpeg's library directory.") # Library path mark_as_advanced(JPEG_IPATH) mark_as_advanced(JPEG_LPATH) diff --git a/dtool/Configure.cmake b/dtool/Configure.cmake index 40f9adfa45..23f2e4566c 100644 --- a/dtool/Configure.cmake +++ b/dtool/Configure.cmake @@ -74,12 +74,17 @@ else() message(STATUS "- Did not find libtiff") endif() + +# Check for and configure TAR library +find_package(Tar QUIET COMPONENTS tar) if(HAVE_TAR) message(STATUS "+ libtar") else() message(STATUS "- Did not find libtar") endif() + + if(HAVE_FFTW) message(STATUS "+ fftw") else()