FindVorbisFile.cmake 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. # Copied from http://code.google.com/p/osgaudio/source/browse/trunk/CMakeModules/FindVorbisFile.cmake
  2. # Locate VorbisFile
  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(VORBISFILE_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(VORBISFILE_INCLUDE_DIR
  26. NAMES vorbis/vorbisfile.h
  27. HINTS
  28. $ENV{VORBISFILEDIR}
  29. $ENV{VORBISFILE_PATH}
  30. $ENV{VORBISDIR}
  31. $ENV{VORBIS_PATH}
  32. PATH_SUFFIXES include
  33. PATHS ${VORBISFILE_SEARCH_PATHS}
  34. )
  35. FIND_LIBRARY(VORBISFILE_LIBRARY
  36. NAMES vorbisfile libvorbisfile
  37. HINTS
  38. NO_DEFAULT_PATH
  39. NO_CMAKE_ENVIRONMENT_PATH
  40. NO_CMAKE_SYSTEM_PATH
  41. NO_SYSTEM_ENVIRONMENT_PATH
  42. NO_CMAKE_PATH
  43. $ENV{VORBISFILEDIR}
  44. $ENV{VORBISFILE_PATH}
  45. $ENV{VORBISDIR}
  46. $ENV{VORBIS_PATH}
  47. PATH_SUFFIXES lib lib64 win32/VorbisFile_Dynamic_Release "Win32/${MSVC_YEAR_NAME}/x64/Release" "Win32/${MSVC_YEAR_NAME}/Win32/Release"
  48. PATHS ${VORBISFILE_SEARCH_PATHS}
  49. )
  50. # First search for d-suffixed libs
  51. FIND_LIBRARY(VORBISFILE_LIBRARY_DEBUG
  52. NAMES vorbisfiled vorbisfile_d libvorbisfiled libvorbisfile_d
  53. HINTS
  54. NO_DEFAULT_PATH
  55. NO_CMAKE_ENVIRONMENT_PATH
  56. NO_CMAKE_SYSTEM_PATH
  57. NO_SYSTEM_ENVIRONMENT_PATH
  58. NO_CMAKE_PATH
  59. $ENV{VORBISFILEDIR}
  60. $ENV{VORBISFILE_PATH}
  61. $ENV{VORBISDIR}
  62. $ENV{VORBIS_PATH}
  63. PATH_SUFFIXES lib lib64 win32/VorbisFile_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  64. PATHS ${VORBISFILE_SEARCH_PATHS}
  65. )
  66. IF(NOT VORBISFILE_LIBRARY_DEBUG)
  67. # Then search for non suffixed libs if necessary, but only in debug dirs
  68. FIND_LIBRARY(VORBISFILE_LIBRARY_DEBUG
  69. NAMES vorbisfile libvorbisfile
  70. HINTS
  71. $ENV{VORBISFILEDIR}
  72. $ENV{VORBISFILE_PATH}
  73. $ENV{VORBISDIR}
  74. $ENV{VORBIS_PATH}
  75. PATH_SUFFIXES win32/VorbisFile_Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  76. PATHS ${VORBISFILE_SEARCH_PATHS}
  77. )
  78. ENDIF()
  79. IF(VORBISFILE_LIBRARY)
  80. IF(VORBISFILE_LIBRARY_DEBUG)
  81. SET(VORBISFILE_LIBRARIES optimized "${VORBISFILE_LIBRARY}" debug "${VORBISFILE_LIBRARY_DEBUG}")
  82. ELSE()
  83. SET(VORBISFILE_LIBRARIES "${VORBISFILE_LIBRARY}") # Could add "general" keyword, but it is optional
  84. ENDIF()
  85. ENDIF()
  86. # handle the QUIETLY and REQUIRED arguments and set XXX_FOUND to TRUE if all listed variables are TRUE
  87. INCLUDE(FindPackageHandleStandardArgs)
  88. FIND_PACKAGE_HANDLE_STANDARD_ARGS(VORBISFILE DEFAULT_MSG VORBISFILE_LIBRARIES VORBISFILE_INCLUDE_DIR)