diff options
| -rwxr-xr-x[-rw-r--r--] | indra/cmake/CMakeLists.txt | 1 | ||||
| -rwxr-xr-x[-rw-r--r--] | indra/cmake/Copy3rdPartyLibs.cmake | 37 | ||||
| -rwxr-xr-x[-rw-r--r--] | indra/cmake/FMOD.cmake | 78 | ||||
| -rwxr-xr-x | indra/cmake/FindFMOD.cmake | 44 | ||||
| -rwxr-xr-x[-rw-r--r--] | indra/newview/CMakeLists.txt | 4 | ||||
| -rwxr-xr-x[-rw-r--r--] | indra/newview/viewer_manifest.py | 12 | ||||
| -rw-r--r-- | install.xml | 12 | 
7 files changed, 86 insertions, 102 deletions
diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt index 4fc25dcc24..6470836286 100644..100755 --- a/indra/cmake/CMakeLists.txt +++ b/indra/cmake/CMakeLists.txt @@ -26,6 +26,7 @@ set(cmake_SOURCE_FILES      FindBerkeleyDB.cmake      FindCARes.cmake      FindELFIO.cmake +    FindFMOD.cmake      FindGooglePerfTools.cmake      FindMono.cmake      FindMT.cmake diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 95ed5d6bc8..e852cf463c 100644..100755 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -55,9 +55,10 @@ if(WINDOWS)        set(release_files ${release_files} libtcmalloc_minimal.dll)      endif(USE_GOOGLE_PERFTOOLS) -    if (FMOD_SDK_DIR) -        set(fmod_files fmod.dll) -    endif (FMOD_SDK_DIR) +    if (FMOD) +      set(debug_files ${debug_files} fmod.dll) +      set(release_files ${release_files} fmod.dll) +    endif (FMOD)      #*******************************      # LLKDU @@ -237,9 +238,9 @@ elseif(LINUX)          libssl.so.0.9.7         ) -    if (FMOD_SDK_DIR) -        set(fmod_files "libfmod-3.75.so") -    endif (FMOD_SDK_DIR) +    if (FMOD) +      set(release_files ${release_files} "libfmod-3.75.so") +    endif (FMOD)      #*******************************      # LLKDU @@ -333,30 +334,6 @@ copy_if_different(      )  set(third_party_targets ${third_party_targets} ${out_targets}) -if (FMOD_SDK_DIR) -    copy_if_different( -        ${FMOD_SDK_DIR}  -        "${CMAKE_CURRENT_BINARY_DIR}/Debug" -        out_targets  -        ${fmod_files} -        ) -    set(all_targets ${all_targets} ${out_targets}) -    copy_if_different( -        ${FMOD_SDK_DIR}  -        "${CMAKE_CURRENT_BINARY_DIR}/Release" -        out_targets  -        ${fmod_files} -        ) -    set(all_targets ${all_targets} ${out_targets}) -    copy_if_different( -        ${FMOD_SDK_DIR}  -        "${CMAKE_CURRENT_BINARY_DIR}/RelWithDbgInfo" -        out_targets  -        ${fmod_files} -        ) -    set(all_targets ${all_targets} ${out_targets}) -endif (FMOD_SDK_DIR) -  #*******************************  # LLKDU  set(internal_llkdu_path "${CMAKE_SOURCE_DIR}/llkdu") diff --git a/indra/cmake/FMOD.cmake b/indra/cmake/FMOD.cmake index 759b8f1340..96434e38fa 100644..100755 --- a/indra/cmake/FMOD.cmake +++ b/indra/cmake/FMOD.cmake @@ -1,64 +1,24 @@  # -*- cmake -*- -include(Linking) - -if(INSTALL_PROPRIETARY) -  include(Prebuilt) -  use_prebuilt_binary(fmod) -endif(INSTALL_PROPRIETARY) - -find_library(FMOD_LIBRARY_RELEASE -             NAMES fmod fmodvc fmod-3.75 -             PATHS -             ${ARCH_PREBUILT_DIRS_RELEASE} -             ) - -find_library(FMOD_LIBRARY_DEBUG -             NAMES fmod fmodvc fmod-3.75 -             PATHS -             ${ARCH_PREBUILT_DIRS_DEBUG} -             ) - -if (FMOD_LIBRARY_RELEASE AND FMOD_LIBRARY_DEBUG) -  set(FMOD_LIBRARY -      debug ${FMOD_LIBRARY_DEBUG} -      optimized ${FMOD_LIBRARY_RELEASE}) -elseif (FMOD_LIBRARY_RELEASE) -  set(FMOD_LIBRARY ${FMOD_LIBRARY_RELEASE}) -endif (FMOD_LIBRARY_RELEASE AND FMOD_LIBRARY_DEBUG) - -if (NOT FMOD_LIBRARY) -  set(FMOD_SDK_DIR CACHE PATH "Path to the FMOD SDK.") -  if (FMOD_SDK_DIR) -    find_library(FMOD_LIBRARY -                 NAMES fmodvc fmod-3.75 fmod -                 PATHS -                 ${FMOD_SDK_DIR}/api/lib -                 ${FMOD_SDK_DIR}/api -                 ${FMOD_SDK_DIR}/lib -                 ${FMOD_SDK_DIR} -                 ) -  endif (FMOD_SDK_DIR) -endif (NOT FMOD_LIBRARY) - -find_path(FMOD_INCLUDE_DIR fmod.h -          ${LIBS_PREBUILT_DIR}/include -          ${FMOD_SDK_DIR}/api/inc -          ${FMOD_SDK_DIR}/inc -          ${FMOD_SDK_DIR} -          ) - -if (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) -  set(FMOD ON CACHE BOOL "Use closed source FMOD sound library.") -else (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) -  set(FMOD_LIBRARY "") -  set(FMOD_INCLUDE_DIR "") -  if (FMOD) -    message(STATUS "No support for FMOD audio (need to set FMOD_SDK_DIR?)") -  endif (FMOD) -  set(FMOD OFF CACHE BOOL "Use closed source FMOD sound library.") -endif (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) +set(FMOD ON CACHE BOOL "Use FMOD sound library.")  if (FMOD) -  message(STATUS "Building with FMOD audio support") +  if (STANDALONE) +    set(FMOD_FIND_REQUIRED ON) +    include(FindFMOD) +  else (STANDALONE) +    include(Prebuilt) +    use_prebuilt_binary(fmod) +     +    if (WINDOWS) +      set(FMOD_LIBRARY fmod) +    elseif (DARWIN) +      set(FMOD_LIBRARY fmod) +    elseif (LINUX) +      set(FMOD_LIBRARY fmod-3.75) +    endif (WINDOWS) + +    SET(FMOD_LIBRARIES ${FMOD_LIBRARY}) +    set(FMOD_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include) +  endif (STANDALONE)  endif (FMOD) diff --git a/indra/cmake/FindFMOD.cmake b/indra/cmake/FindFMOD.cmake new file mode 100755 index 0000000000..e60b386027 --- /dev/null +++ b/indra/cmake/FindFMOD.cmake @@ -0,0 +1,44 @@ +# -*- cmake -*- + +# - Find FMOD +# Find the FMOD includes and library +# This module defines +#  FMOD_INCLUDE_DIR, where to find fmod.h and fmod_errors.h +#  FMOD_LIBRARIES, the libraries needed to use FMOD. +#  FMOD, If false, do not try to use FMOD. +# also defined, but not for general use are +#  FMOD_LIBRARY, where to find the FMOD library. + +FIND_PATH(FMOD_INCLUDE_DIR fmod.h PATH_SUFFIXES fmod) + +SET(FMOD_NAMES ${FMOD_NAMES} fmod fmodvc fmod-3.75) +FIND_LIBRARY(FMOD_LIBRARY +  NAMES ${FMOD_NAMES} +  PATH_SUFFIXES fmod +  ) + +IF (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) +  SET(FMOD_LIBRARIES ${FMOD_LIBRARY}) +  SET(FMOD_FOUND "YES") +ELSE (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) +  SET(FMOD_FOUND "NO") +ENDIF (FMOD_LIBRARY AND FMOD_INCLUDE_DIR) + +IF (FMOD_FOUND) +  IF (NOT FMOD_FIND_QUIETLY) +    MESSAGE(STATUS "Found FMOD: ${FMOD_LIBRARIES}") +  ENDIF (NOT FMOD_FIND_QUIETLY) +ELSE (FMOD_FOUND) +  IF (FMOD_FIND_REQUIRED) +    MESSAGE(FATAL_ERROR "Could not find FMOD library") +  ENDIF (FMOD_FIND_REQUIRED) +ENDIF (FMOD_FOUND) + +# Deprecated declarations. +SET (NATIVE_FMOD_INCLUDE_PATH ${FMOD_INCLUDE_DIR} ) +GET_FILENAME_COMPONENT (NATIVE_FMOD_LIB_PATH ${FMOD_LIBRARY} PATH) + +MARK_AS_ADVANCED( +  FMOD_LIBRARY +  FMOD_INCLUDE_DIR +  ) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 1f4302d870..ce98ecb2b1 100644..100755 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1471,6 +1471,9 @@ if (WINDOWS)        ${SHARED_LIB_STAGING_DIR}/Release/openjpeg.dll        ${SHARED_LIB_STAGING_DIR}/RelWithDebInfo/openjpeg.dll        ${SHARED_LIB_STAGING_DIR}/Debug/openjpegd.dll +      ${SHARED_LIB_STAGING_DIR}/Release/fmod.dll +      ${SHARED_LIB_STAGING_DIR}/RelWithDebInfo/fmod.dll +      ${SHARED_LIB_STAGING_DIR}/Debug/fmod.dll        ${SHARED_LIB_STAGING_DIR}/Release/msvcr80.dll        ${SHARED_LIB_STAGING_DIR}/Release/msvcp80.dll        ${SHARED_LIB_STAGING_DIR}/Release/Microsoft.VC80.CRT.manifest @@ -1492,7 +1495,6 @@ if (WINDOWS)        ${CMAKE_CURRENT_SOURCE_DIR}/featuretable.txt        ${CMAKE_CURRENT_SOURCE_DIR}/featuretable_xp.txt        ${CMAKE_CURRENT_SOURCE_DIR}/dbghelp.dll -      ${CMAKE_CURRENT_SOURCE_DIR}/fmod.dll        ${ARCH_PREBUILT_DIRS_RELEASE}/libeay32.dll        ${ARCH_PREBUILT_DIRS_RELEASE}/qtcore4.dll        ${ARCH_PREBUILT_DIRS_RELEASE}/qtgui4.dll diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 648366fa4c..6861f02bfb 100644..100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -271,6 +271,12 @@ class WindowsManifest(ViewerManifest):              self.disable_manifest_check() +            # Get fmod dll, continue if missing +            try: +                self.path("fmod.dll") +            except: +                print "Skipping fmod.dll" +              # For textures              if self.args['configuration'].lower() == 'debug':                  self.path("openjpegd.dll") @@ -315,12 +321,6 @@ class WindowsManifest(ViewerManifest):          # For use in crash reporting (generates minidumps)          self.path("dbghelp.dll") -        try: -            # FMOD for sound -            self.path("fmod.dll") -        except: -            print "Skipping FMOD - not found" -          self.enable_no_crt_manifest_check()          # Media plugins - QuickTime diff --git a/install.xml b/install.xml index 5a9d704191..391d83b224 100644 --- a/install.xml +++ b/install.xml @@ -366,23 +366,23 @@            <key>darwin</key>            <map>              <key>md5sum</key> -            <string>c7e317bec481b7efa2a0319e163dcc65</string> +            <string>261bcd3387066cf0a1d46549400052b5</string>              <key>url</key> -            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-darwin-20080818.tar.bz2</uri> +            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-darwin-20101007.tar.bz2</uri>            </map>            <key>linux</key>            <map>              <key>md5sum</key> -            <string>abd2b4ba4ac993f19d82804af387eb7c</string> +            <string>8490d97430c12c2e1ac19ff80a8d4db4</string>              <key>url</key> -            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-linux-20080818.tar.bz2</uri> +            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-linux-20101007.tar.bz2</uri>            </map>            <key>windows</key>            <map>              <key>md5sum</key> -            <string>1a55dec2907821f5f785648a660126c3</string> +            <string>bab1babcb01ff9849b7f072d352e1ecd</string>              <key>url</key> -            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-windows-20080611.tar.bz2</uri> +            <uri>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/fmod-3.75-windows-20101007.tar.bz2</uri>            </map>          </map>        </map>  | 
