FindVorbis.cmake 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. # Copied from http://code.google.com/p/osgaudio/source/browse/trunk/CMakeModules/FindVorbis.cmake
  2. # Locate Vorbis
  3. # This module defines XXX_FOUND, XXX_INCLUDE_DIRS and XXX_LIBRARIES standard variables
  4. #
  5. # $VORBISDIR is an environment variable that would
  6. # correspond to the ./configure --prefix=$VORBISDIR
  7. # used in building Vorbis.
  8. SET(VORBIS_SEARCH_PATHS
  9. ~/Library/Frameworks
  10. /Library/Frameworks
  11. /usr/local
  12. /usr
  13. /sw # Fink
  14. /opt/local # DarwinPorts
  15. /opt/csw # Blastwave
  16. /opt
  17. )
  18. SET(MSVC_YEAR_NAME)
  19. IF (MSVC_VERSION GREATER 1599) # >= 1600
  20. SET(MSVC_YEAR_NAME VS2010)
  21. ELSEIF(MSVC_VERSION GREATER 1499) # >= 1500
  22. SET(MSVC_YEAR_NAME VS2008)
  23. ELSEIF(MSVC_VERSION GREATER 1399) # >= 1400
  24. SET(MSVC_YEAR_NAME VS2005)
  25. ELSEIF(MSVC_VERSION GREATER 1299) # >= 1300
  26. SET(MSVC_YEAR_NAME VS2003)
  27. ELSEIF(MSVC_VERSION GREATER 1199) # >= 1200
  28. SET(MSVC_YEAR_NAME VS6)
  29. ENDIF()
  30. FIND_PATH(VORBIS_INCLUDE_DIR
  31. NAMES vorbis/codec.h
  32. HINTS
  33. $ENV{VORBISDIR}
  34. $ENV{VORBIS_PATH}
  35. PATH_SUFFIXES include
  36. PATHS ${VORBIS_SEARCH_PATHS}
  37. )
  38. FIND_LIBRARY(VORBIS_LIBRARY
  39. NAMES vorbis libvorbis
  40. HINTS
  41. $ENV{VORBISDIR}
  42. $ENV{VORBIS_PATH}
  43. PATH_SUFFIXES lib lib64 win32/Vorbis_Dynamic_Release "Win32/${MSVC_YEAR_NAME}/x64/Release" "Win32/${MSVC_YEAR_NAME}/Win32/Release"
  44. PATHS ${VORBIS_SEARCH_PATHS}
  45. )
  46. # First search for d-suffixed libs
  47. FIND_LIBRARY(VORBIS_LIBRARY_DEBUG
  48. NAMES vorbisd vorbis_d libvorbisd libvorbis_d
  49. HINTS
  50. $ENV{VORBISDIR}
  51. $ENV{VORBIS_PATH}
  52. PATH_SUFFIXES lib lib64 win32/Vorbis_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  53. PATHS ${VORBIS_SEARCH_PATHS}
  54. )
  55. IF(NOT VORBIS_LIBRARY_DEBUG)
  56. # Then search for non suffixed libs if necessary, but only in debug dirs
  57. FIND_LIBRARY(VORBIS_LIBRARY_DEBUG
  58. NAMES vorbis libvorbis
  59. HINTS
  60. $ENV{VORBISDIR}
  61. $ENV{VORBIS_PATH}
  62. PATH_SUFFIXES win32/Vorbis_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  63. PATHS ${VORBIS_SEARCH_PATHS}
  64. )
  65. ENDIF()
  66. IF(VORBIS_LIBRARY)
  67. IF(VORBIS_LIBRARY_DEBUG)
  68. SET(VORBIS_LIBRARIES optimized "${VORBIS_LIBRARY}" debug "${VORBIS_LIBRARY_DEBUG}")
  69. ELSE()
  70. SET(VORBIS_LIBRARIES "${VORBIS_LIBRARY}") # Could add "general" keyword, but it is optional
  71. ENDIF()
  72. ENDIF()
  73. # handle the QUIETLY and REQUIRED arguments and set XXX_FOUND to TRUE if all listed variables are TRUE
  74. INCLUDE(FindPackageHandleStandardArgs)
  75. FIND_PACKAGE_HANDLE_STANDARD_ARGS(VORBIS DEFAULT_MSG VORBIS_LIBRARIES VORBIS_INCLUDE_DIR)