FindSquish.cmake 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # Filename: FindSquish.cmake
  2. # Author: kestred (7 Dec, 2013)
  3. #
  4. # Usage:
  5. # find_package(Squish [REQUIRED] [QUIET])
  6. #
  7. # Once done this will define:
  8. # SQUISH_FOUND - system has squish
  9. # SQUISH_INCLUDE_DIR - the squish include directory
  10. # SQUISH_LIBRARY_DIR - the squish library directory
  11. # SQUISH_LIBRARY - the path to the library binary
  12. #
  13. # SQUISH_RELEASE_LIBRARY - the filepath of the squish release library
  14. # SQUISH_DEBUG_LIBRARY - the filepath of the squish debug library
  15. #
  16. if(NOT SQUISH_INCLUDE_DIR OR NOT SQUISH_LIBRARY_DIR)
  17. # Find the libsquish include files
  18. find_path(SQUISH_INCLUDE_DIR
  19. NAMES "squish.h"
  20. PATHS "/usr/include"
  21. "/usr/local/include"
  22. "/sw/include"
  23. "/opt/include"
  24. "/opt/local/include"
  25. "/opt/csw/include"
  26. PATH_SUFFIXES "" "cppunit"
  27. )
  28. # Find the libsquish library built for release
  29. find_library(SQUISH_RELEASE_LIBRARY
  30. NAMES "squish" "libsquish"
  31. PATHS "/usr"
  32. "/usr/local"
  33. "/usr/freeware"
  34. "/sw"
  35. "/opt"
  36. "/opt/csw"
  37. PATH_SUFFIXES "lib" "lib32" "lib64"
  38. )
  39. # Find the libsquish library built for debug
  40. find_library(SQUISH_DEBUG_LIBRARY
  41. NAMES "squishd" "libsquishd"
  42. PATHS "/usr"
  43. "/usr/local"
  44. "/usr/freeware"
  45. "/sw"
  46. "/opt"
  47. "/opt/csw"
  48. PATH_SUFFIXES "lib" "lib32" "lib64"
  49. )
  50. mark_as_advanced(SQUISH_INCLUDE_DIR)
  51. mark_as_advanced(SQUISH_RELEASE_LIBRARY)
  52. mark_as_advanced(SQUISH_DEBUG_LIBRARY)
  53. endif()
  54. # Choose library
  55. if(CMAKE_BUILD_TYPE MATCHES "Debug" AND SQUISH_DEBUG_LIBRARY)
  56. set(SQUISH_LIBRARY ${SQUISH_DEBUG_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
  57. elseif(SQUISH_RELEASE_LIBRARY)
  58. set(SQUISH_LIBRARY ${SQUISH_RELEASE_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
  59. elseif(SQUISH_DEBUG_LIBRARY)
  60. set(SQUISH_LIBRARY ${SQUISH_DEBUG_LIBRARY} CACHE FILEPATH "The filepath to libsquish's library binary.")
  61. endif()
  62. # Translate library into library directory
  63. if(SQUISH_LIBRARY)
  64. unset(SQUISH_LIBRARY_DIR CACHE)
  65. get_filename_component(SQUISH_LIBRARY_DIR "${SQUISH_LIBRARY}" PATH)
  66. set(SQUISH_LIBRARY_DIR "${SQUISH_LIBRARY_DIR}" CACHE PATH "The path to libsquish's library directory.") # Library path
  67. endif()
  68. mark_as_advanced(SQUISH_LIBRARY)
  69. mark_as_advanced(SQUISH_LIBRARY_DIR)
  70. include(FindPackageHandleStandardArgs)
  71. find_package_handle_standard_args(Squish DEFAULT_MSG SQUISH_LIBRARY SQUISH_INCLUDE_DIR SQUISH_LIBRARY_DIR)