FindOgg.cmake 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. # Copied from http://code.google.com/p/osgaudio/source/browse/trunk/CMakeModules/FindOGG.cmake
  2. # Locate OGG
  3. # This module defines XXX_FOUND, XXX_INCLUDE_DIRS and XXX_LIBRARIES standard variables
  4. #
  5. # $OGGDIR is an environment variable that would
  6. # correspond to the ./configure --prefix=$OGGDIR
  7. # used in building OGG.
  8. SET(OGG_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(OGG_INCLUDE_DIR
  26. NAMES ogg/ogg.h ogg/os_types.h
  27. HINTS
  28. $ENV{OGGDIR}
  29. $ENV{OGG_PATH}
  30. PATH_SUFFIXES include
  31. PATHS ${OGG_SEARCH_PATHS}
  32. )
  33. FIND_LIBRARY(OGG_LIBRARY
  34. NAMES ogg libogg liblibogg
  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. CMAKE_FIND_FRAMEWORK NEVER
  42. $ENV{OGGDIR}
  43. $ENV{OGG_PATH}
  44. PATH_SUFFIXES lib lib64 win32/Dynamic_Release "Win32/${MSVC_YEAR_NAME}/x64/Release" "Win32/${MSVC_YEAR_NAME}/Win32/Release"
  45. PATHS ${OGG_SEARCH_PATHS}
  46. )
  47. # First search for d-suffixed libs
  48. FIND_LIBRARY(OGG_LIBRARY_DEBUG
  49. NAMES oggd ogg_d liboggd libogg_d liblibogg_d
  50. HINTS
  51. NO_DEFAULT_PATH
  52. NO_CMAKE_ENVIRONMENT_PATH
  53. NO_CMAKE_SYSTEM_PATH
  54. NO_SYSTEM_ENVIRONMENT_PATH
  55. NO_CMAKE_PATH
  56. CMAKE_FIND_FRAMEWORK NEVER
  57. $ENV{OGGDIR}
  58. $ENV{OGG_PATH}
  59. PATH_SUFFIXES lib lib64 win32/Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  60. PATHS ${OGG_SEARCH_PATHS}
  61. )
  62. IF(NOT OGG_LIBRARY_DEBUG)
  63. # Then search for non suffixed libs if necessary, but only in debug dirs
  64. FIND_LIBRARY(OGG_LIBRARY_DEBUG
  65. NAMES ogg libogg liblibogg
  66. HINTS
  67. NO_DEFAULT_PATH
  68. NO_CMAKE_ENVIRONMENT_PATH
  69. NO_CMAKE_SYSTEM_PATH
  70. NO_SYSTEM_ENVIRONMENT_PATH
  71. NO_CMAKE_PATH
  72. CMAKE_FIND_FRAMEWORK NEVER
  73. $ENV{OGGDIR}
  74. $ENV{OGG_PATH}
  75. PATH_SUFFIXES win32/Dynamic_Debug "Win32/${MSVC_YEAR_NAME}/x64/Debug" "Win32/${MSVC_YEAR_NAME}/Win32/Debug"
  76. PATHS ${OGG_SEARCH_PATHS}
  77. )
  78. ENDIF()
  79. IF(OGG_LIBRARY)
  80. IF(OGG_LIBRARY_DEBUG)
  81. SET(OGG_LIBRARIES optimized "${OGG_LIBRARY}" debug "${OGG_LIBRARY_DEBUG}")
  82. ELSE()
  83. SET(OGG_LIBRARIES "${OGG_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(OGG DEFAULT_MSG OGG_LIBRARIES OGG_INCLUDE_DIR)