2
0

FindVorbis.cmake 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  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. ${POLYCODE_RELEASE_DIR}/Framework/Core/Dependencies/lib
  10. ${POLYCODE_RELEASE_DIR}/Framework/Modules/Dependencies/lib
  11. ${POLYCODE_RELEASE_DIR}/Framework/Tools/Dependencies/lib
  12. )
  13. SET(MSVC_YEAR_NAME)
  14. IF (MSVC_VERSION GREATER 1599) # >= 1600
  15. SET(MSVC_YEAR_NAME VS2010)
  16. ELSEIF(MSVC_VERSION GREATER 1499) # >= 1500
  17. SET(MSVC_YEAR_NAME VS2008)
  18. ELSEIF(MSVC_VERSION GREATER 1399) # >= 1400
  19. SET(MSVC_YEAR_NAME VS2005)
  20. ELSEIF(MSVC_VERSION GREATER 1299) # >= 1300
  21. SET(MSVC_YEAR_NAME VS2003)
  22. ELSEIF(MSVC_VERSION GREATER 1199) # >= 1200
  23. SET(MSVC_YEAR_NAME VS6)
  24. ENDIF()
  25. FIND_PATH(VORBIS_INCLUDE_DIR
  26. NAMES vorbis/codec.h
  27. HINTS
  28. $ENV{VORBISDIR}
  29. $ENV{VORBIS_PATH}
  30. PATH_SUFFIXES include
  31. PATHS ${VORBIS_SEARCH_PATHS}
  32. )
  33. FIND_LIBRARY(VORBIS_LIBRARY
  34. NAMES vorbis libvorbis
  35. HINTS
  36. NO_DEFAULT_PATH
  37. NO_CMAKE_ENVIRONMENT_PATH
  38. NO_CMAKE_SYSTEM_PATH
  39. NO_SYSTEM_ENVIRONMENT_PATH
  40. NO_CMAKE_PATH
  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. NO_DEFAULT_PATH
  51. NO_CMAKE_ENVIRONMENT_PATH
  52. NO_CMAKE_SYSTEM_PATH
  53. NO_SYSTEM_ENVIRONMENT_PATH
  54. NO_CMAKE_PATH
  55. $ENV{VORBISDIR}
  56. $ENV{VORBIS_PATH}
  57. PATH_SUFFIXES lib lib64 win32/Vorbis_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  58. PATHS ${VORBIS_SEARCH_PATHS}
  59. )
  60. IF(NOT VORBIS_LIBRARY_DEBUG)
  61. # Then search for non suffixed libs if necessary, but only in debug dirs
  62. FIND_LIBRARY(VORBIS_LIBRARY_DEBUG
  63. NAMES vorbis libvorbis
  64. HINTS
  65. NO_DEFAULT_PATH
  66. NO_CMAKE_ENVIRONMENT_PATH
  67. NO_CMAKE_SYSTEM_PATH
  68. NO_SYSTEM_ENVIRONMENT_PATH
  69. $ENV{VORBISDIR}
  70. $ENV{VORBIS_PATH}
  71. PATH_SUFFIXES win32/Vorbis_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  72. PATHS ${VORBIS_SEARCH_PATHS}
  73. )
  74. ENDIF()
  75. IF(VORBIS_LIBRARY)
  76. IF(VORBIS_LIBRARY_DEBUG)
  77. SET(VORBIS_LIBRARIES optimized "${VORBIS_LIBRARY}" debug "${VORBIS_LIBRARY_DEBUG}")
  78. ELSE()
  79. SET(VORBIS_LIBRARIES "${VORBIS_LIBRARY}") # Could add "general" keyword, but it is optional
  80. ENDIF()
  81. ENDIF()
  82. # handle the QUIETLY and REQUIRED arguments and set XXX_FOUND to TRUE if all listed variables are TRUE
  83. INCLUDE(FindPackageHandleStandardArgs)
  84. FIND_PACKAGE_HANDLE_STANDARD_ARGS(VORBIS DEFAULT_MSG VORBIS_LIBRARIES VORBIS_INCLUDE_DIR)