diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 2ee9ca97a..abe2a6f2a 100644 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -86,6 +86,11 @@ if(WINDOWS) set(release_files ${release_files} libtcmalloc_minimal.dll) endif(NOT DISABLE_TCMALLOC) + if(OPENAL) + set(debug_files ${debug_files} alut.dll OpenAL32.dll) + set(release_files ${release_files} alut.dll OpenAL32.dll) + endif(OPENAL) + if (FMODSTUDIO) set(debug_files ${debug_files} fmodL.dll) set(release_files ${release_files} fmod.dll) diff --git a/indra/cmake/FMODSTUDIO.cmake b/indra/cmake/FMODSTUDIO.cmake index 84de5689e..2f8691c27 100644 --- a/indra/cmake/FMODSTUDIO.cmake +++ b/indra/cmake/FMODSTUDIO.cmake @@ -30,22 +30,21 @@ if (FMODSTUDIO) optimized ${FMOD_LINK_LIBRARY_RELEASE} ) - set(FMOD_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/fmodstudio) + set(FMODSTUDIO_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/fmodstudio) endif(FMODSTUDIO) -if(FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) +if(FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR) set(FMOD ON) if (NOT FMOD_LIBRARY_DEBUG) #Use release library in debug configuration if debug library is absent. set(FMOD_LIBRARY_DEBUG ${FMOD_LIBRARY_RELEASE}) endif (NOT FMOD_LIBRARY_DEBUG) -else (FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) +else (FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR) message(STATUS "No support for FMOD Studio audio (need to set FMODSTUDIO_SDK_DIR?)") set(FMOD OFF) set(FMODSTUDIO OFF) -endif (FMOD_LIBRARY_RELEASE AND FMOD_INCLUDE_DIR) +endif (FMOD_LIBRARY_RELEASE AND FMODSTUDIO_INCLUDE_DIR) if (FMOD) message(STATUS "Building with FMOD Studio audio support") - set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_FMODSTUDIO=1") endif (FMOD) diff --git a/indra/cmake/OPENAL.cmake b/indra/cmake/OPENAL.cmake index 7f98cbbc4..c25eb929e 100644 --- a/indra/cmake/OPENAL.cmake +++ b/indra/cmake/OPENAL.cmake @@ -2,7 +2,6 @@ include(Linking) include(Prebuilt) -if(NOT FMOD) if (LINUX) set(OPENAL ON CACHE BOOL "Enable OpenAL") else (LINUX) @@ -10,6 +9,7 @@ else (LINUX) endif (LINUX) if (OPENAL) + set(OPENAL_LIB_INCLUDE_DIRS "${LIBS_PREBUILT_DIR}/include/AL") if (STANDALONE) include(FindPkgConfig) include(FindOpenAL) @@ -18,15 +18,16 @@ if (OPENAL) else (STANDALONE) use_prebuilt_binary(openal) endif (STANDALONE) + if(WINDOWS) set(OPENAL_LIBRARIES - openal + OpenAL32 alut ) - set(OPENAL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) -endif (OPENAL) - -if (OPENAL) + else() + set(OPENAL_LIBRARIES + openal + alut + ) + endif() message(STATUS "Building with OpenAL audio support") - set(LLSTARTUP_COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS} -DLL_OPENAL") endif (OPENAL) -endif(NOT FMOD) diff --git a/indra/llaudio/CMakeLists.txt b/indra/llaudio/CMakeLists.txt index a200a456e..20456f5dc 100644 --- a/indra/llaudio/CMakeLists.txt +++ b/indra/llaudio/CMakeLists.txt @@ -3,8 +3,6 @@ project(llaudio) include(00-Common) -include(Audio) -include(LLAudio) include(FMODSTUDIO) include(OPENAL) include(LLCommon) @@ -12,10 +10,6 @@ include(LLMath) include(LLMessage) include(LLVFS) -if (FMOD) - include_directories(${FMOD_INCLUDE_DIR}) -endif(FMOD) - include_directories( ${LLAUDIO_INCLUDE_DIRS} ${LLCOMMON_INCLUDE_DIRS} @@ -26,7 +20,7 @@ include_directories( ${VORBISENC_INCLUDE_DIRS} ${VORBISFILE_INCLUDE_DIRS} ${VORBIS_INCLUDE_DIRS} - ${OPENAL_INCLUDE_DIRS} + ${OPENAL_LIB_INCLUDE_DIRS} ${FREEAULT_LIB_INCLUDE_DIRS} ) @@ -50,6 +44,9 @@ set(llaudio_HEADER_FILES ) if (FMODSTUDIO) + include_directories( + ${FMODSTUDIO_INCLUDE_DIR} + ) list(APPEND llaudio_SOURCE_FILES llaudioengine_fmodstudio.cpp lllistener_fmodstudio.cpp diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index d2f7c5d34..72d3ca528 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -49,6 +49,10 @@ include(WinManifest) include(ZLIB) include(URIPARSER) +if(FMODSTUDIO) + include_directories(${FMODSTUDIO_INCLUDE_DIR}) +endif(FMODSTUDIO) + include_directories( ${STATEMACHINE_INCLUDE_DIRS} ${DBUSGLIB_INCLUDE_DIRS} @@ -71,6 +75,7 @@ include_directories( ${LLWINDOW_INCLUDE_DIRS} ${LLXML_INCLUDE_DIRS} ${HUNSPELL_INCLUDE_DIR} + ${OPENAL_LIB_INCLUDE_DIRS} ${LLAPPEARANCE_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR} ) @@ -1422,7 +1427,15 @@ if (WINDOWS) list(APPEND viewer_SOURCE_FILES ${viewer_INSTALLER_FILES}) endif (WINDOWS) -set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_FLAGS "${LLSTARTUP_COMPILE_FLAGS}") +if (OPENAL) + list(APPEND LLSTARTUP_COMPILE_DEFINITIONS "LL_OPENAL=1") +endif (OPENAL) + +if (FMODSTUDIO) + list(APPEND LLSTARTUP_COMPILE_DEFINITIONS "LL_FMODSTUDIO=1") +endif (FMODSTUDIO) + +set_source_files_properties(llstartup.cpp PROPERTIES COMPILE_DEFINITIONS "${LLSTARTUP_COMPILE_DEFINITIONS}") if (LIBVLCPLUGIN) set_source_files_properties(llfloaterabout.cpp PROPERTIES COMPILE_DEFINITIONS "VLCPLUGIN=1") diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index cdfd3a8bf..27d3c1b66 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -477,6 +477,10 @@ class WindowsManifest(ViewerManifest): if self.path("fmod.dll") == 0: print "Skipping fmodstudio audio library(assuming other audio engine)" + # Get OpenAL dlls, continue if missing + if self.path("alut.dll","OpenAL32.dll") == 0: + print "Skipping OpenAL audio library (assuming other audio engine)" + # Vivox runtimes self.path("SLVoice.exe") if (self.address_size == 64):