mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 10:54:24 -04:00

CMake already has a "FindSquish" for finding the GUI testing product. This minimizes the chances of the wrong module being run on accident.
81 lines
2.5 KiB
CMake
81 lines
2.5 KiB
CMake
# Filename: FindLibSquish.cmake
|
|
# Author: kestred (7 Dec, 2013)
|
|
#
|
|
# Usage:
|
|
# find_package(LibSquish [REQUIRED] [QUIET])
|
|
#
|
|
# Once done this will define:
|
|
# LIBSQUISH_FOUND - system has libsquish
|
|
# LIBSQUISH_INCLUDE_DIR - the libsquish include directory
|
|
# LIBSQUISH_LIBRARY_DIR - the libsquish library directory
|
|
# LIBSQUISH_LIBRARY - the path to the library binary
|
|
#
|
|
# LIBSQUISH_RELEASE_LIBRARY - the filepath of the libsquish release library
|
|
# LIBSQUISH_DEBUG_LIBRARY - the filepath of the libsquish debug library
|
|
#
|
|
|
|
if(NOT LIBSQUISH_INCLUDE_DIR OR NOT LIBSQUISH_LIBRARY_DIR)
|
|
# Find the libsquish include files
|
|
find_path(LIBSQUISH_INCLUDE_DIR
|
|
NAMES "squish.h"
|
|
PATHS "/usr/include"
|
|
"/usr/local/include"
|
|
"/sw/include"
|
|
"/opt/include"
|
|
"/opt/local/include"
|
|
"/opt/csw/include"
|
|
PATH_SUFFIXES "" "cppunit"
|
|
)
|
|
|
|
# Find the libsquish library built for release
|
|
find_library(LIBSQUISH_RELEASE_LIBRARY
|
|
NAMES "squish" "libsquish"
|
|
PATHS "/usr"
|
|
"/usr/local"
|
|
"/usr/freeware"
|
|
"/sw"
|
|
"/opt"
|
|
"/opt/csw"
|
|
PATH_SUFFIXES "lib" "lib32" "lib64"
|
|
)
|
|
|
|
# Find the libsquish library built for debug
|
|
find_library(LIBSQUISH_DEBUG_LIBRARY
|
|
NAMES "squishd" "libsquishd"
|
|
PATHS "/usr"
|
|
"/usr/local"
|
|
"/usr/freeware"
|
|
"/sw"
|
|
"/opt"
|
|
"/opt/csw"
|
|
PATH_SUFFIXES "lib" "lib32" "lib64"
|
|
)
|
|
|
|
|
|
mark_as_advanced(LIBSQUISH_INCLUDE_DIR)
|
|
mark_as_advanced(LIBSQUISH_RELEASE_LIBRARY)
|
|
mark_as_advanced(LIBSQUISH_DEBUG_LIBRARY)
|
|
endif()
|
|
|
|
# Choose library
|
|
if(CMAKE_BUILD_TYPE MATCHES "Debug" AND LIBSQUISH_DEBUG_LIBRARY)
|
|
set(LIBSQUISH_LIBRARY ${LIBSQUISH_DEBUG_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
|
|
elseif(LIBSQUISH_RELEASE_LIBRARY)
|
|
set(LIBSQUISH_LIBRARY ${LIBSQUISH_RELEASE_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
|
|
elseif(LIBSQUISH_DEBUG_LIBRARY)
|
|
set(LIBSQUISH_LIBRARY ${LIBSQUISH_DEBUG_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
|
|
endif()
|
|
|
|
# Translate library into library directory
|
|
if(LIBSQUISH_LIBRARY)
|
|
unset(LIBSQUISH_LIBRARY_DIR CACHE)
|
|
get_filename_component(LIBSQUISH_LIBRARY_DIR "${LIBSQUISH_LIBRARY}" PATH)
|
|
set(LIBSQUISH_LIBRARY_DIR "${LIBSQUISH_LIBRARY_DIR}" CACHE PATH "The path to libsquish's library directory.") # Library path
|
|
endif()
|
|
|
|
mark_as_advanced(LIBSQUISH_LIBRARY)
|
|
mark_as_advanced(LIBSQUISH_LIBRARY_DIR)
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(LibSquish DEFAULT_MSG LIBSQUISH_LIBRARY LIBSQUISH_INCLUDE_DIR LIBSQUISH_LIBRARY_DIR)
|