From 160eba6ba9bb11aa5c0cffc5a39d016f3f5b70e6 Mon Sep 17 00:00:00 2001 From: Yucheng Zhang Date: Fri, 9 Feb 2018 21:42:04 +0800 Subject: [PATCH] Fix building with non-mega CMake --- CMakeLists.txt | 15 ++++++++++++++- extra/cmake/FindOgg.cmake | 25 +++++++++++++++++++++++++ extra/cmake/FindOpenAL.cmake | 28 ++++++++++++++++++++++++++++ 3 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 extra/cmake/FindOgg.cmake create mode 100644 extra/cmake/FindOpenAL.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 9ab59cfd2..5f1f55af2 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -174,6 +174,8 @@ Please see http://bitbucket.org/rude/megasource find_package(SDL2 REQUIRED) find_package(Theora REQUIRED) find_package(Vorbis REQUIRED) + find_package(ZLIB REQUIRED) + find_package(Ogg REQUIRED) # required for enet add_definitions(-D HAS_SOCKLEN_T) @@ -182,6 +184,11 @@ Please see http://bitbucket.org/rude/megasource ${SDL2_INCLUDE_DIR} ${FREETYPE_INCLUDE_DIRS} ${VORBIS_INCLUDE_DIR} + ${OPENAL_INCLUDE_DIR} + ${ZLIB_INCLUDE_DIRS} + ${MODPLUG_INCLUDE_DIR} + ${OGG_INCLUDE_DIR} + ${THEORA_INCLUDE_DIR} ) set(LOVE_LINK_LIBRARIES @@ -194,14 +201,20 @@ Please see http://bitbucket.org/rude/megasource ${THEORADEC_LIBRARY} ${VORBISFILE_LIBRARY} ${LOVE_LUA_LIBRARY} + ${OGG_LIBRARY} + ${ZLIB_LIBRARY} ) - + if(LOVE_MPG123) find_package(MPG123 REQUIRED) set(LOVE_LINK_LIBRARIES ${LOVE_LINK_LIBRARIES} ${MPG123_LIBRARY} ) + set(LOVE_INCLUDE_DIRS + ${LOVE_INCLUDE_DIRS} + ${MPG123_INCLUDE_DIR} + ) endif() if(LOVE_JIT) diff --git a/extra/cmake/FindOgg.cmake b/extra/cmake/FindOgg.cmake new file mode 100644 index 000000000..dc5d55f76 --- /dev/null +++ b/extra/cmake/FindOgg.cmake @@ -0,0 +1,25 @@ +# Sets the following variables: +# +# OGG_FOUND +# OGG_INCLUDE_DIR +# OGG_LIBRARY + +set(OGG_SEARCH_PATHS + /usr/local + /usr + ) + +find_path(OGG_INCLUDE_DIR + NAMES ogg/ogg.h + PATH_SUFFIXES include + PATHS ${OGG_SEARCH_PATHS}) + +find_library(OGG_LIBRARY + NAMES ogg + PATH_SUFFIXES lib + PATHS ${OGG_SEARCH_PATHS}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(Ogg DEFAULT_MSG OGG_LIBRARY OGG_INCLUDE_DIR) + +mark_as_advanced(OGG_INCLUDE_DIR OGG_LIBRARY) diff --git a/extra/cmake/FindOpenAL.cmake b/extra/cmake/FindOpenAL.cmake new file mode 100644 index 000000000..112beca9b --- /dev/null +++ b/extra/cmake/FindOpenAL.cmake @@ -0,0 +1,28 @@ +# FindOpenAL.cmake that comes with CMake expects "#include " to be used +# However, we use "#include " + +# Sets the following variables: +# +# OPENAL_FOUND +# OPENAL_INCLUDE_DIR +# OPENAL_LIBRARY + +set(OPENAL_SEARCH_PATHS + /usr/local + /usr + ) + +find_path(OPENAL_INCLUDE_DIR + NAMES AL/al.h + PATH_SUFFIXES include + PATHS ${OPENAL_SEARCH_PATHS}) + +find_library(OPENAL_LIBRARY + NAMES openal + PATH_SUFFIXES lib + PATHS ${OPENAL_SEARCH_PATHS}) + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(OpenAL DEFAULT_MSG OPENAL_LIBRARY OPENAL_INCLUDE_DIR) + +mark_as_advanced(OPENAL_INCLUDE_DIR OPENAL_LIBRARY)