diff --git a/indra/cmake/CMakeLists.txt b/indra/cmake/CMakeLists.txt index cacb7fd05..215f7a300 100644 --- a/indra/cmake/CMakeLists.txt +++ b/indra/cmake/CMakeLists.txt @@ -85,7 +85,6 @@ set(cmake_SOURCE_FILES Prebuilt.cmake PulseAudio.cmake Python.cmake - QuickTimePlugin.cmake RunBuildTest.cmake StateMachine.cmake TemplateCheck.cmake @@ -96,6 +95,7 @@ set(cmake_SOURCE_FILES Variables.cmake ViewerMiscLibs.cmake WinManifest.cmake + LibVLCPlugin.cmake XmlRpcEpi.cmake ZLIB.cmake ) diff --git a/indra/cmake/LibVLCPlugin.cmake b/indra/cmake/LibVLCPlugin.cmake new file mode 100644 index 000000000..0787edd2c --- /dev/null +++ b/indra/cmake/LibVLCPlugin.cmake @@ -0,0 +1,30 @@ +# -*- cmake -*- +include(Linking) +include(Prebuilt) +include(Variables) + +if (LIBVLCPLUGIN) +if (USESYSTEMLIBS) +else (USESYSTEMLIBS) + use_prebuilt_binary(vlc-bin) + set(VLC_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/vlc) +endif (USESYSTEMLIBS) + +if (WINDOWS) + set(VLC_PLUGIN_LIBRARIES + libvlc.lib + libvlccore.lib + ) +elseif (DARWIN) + set(VLC_PLUGIN_LIBRARIES + libvlc.dylib + libvlccore.dylib + ) +elseif (LINUX) + # Specify a full path to make sure we get a static link + set(VLC_PLUGIN_LIBRARIES + ${LIBS_PREBUILT_DIR}/lib/libvlc.a + ${LIBS_PREBUILT_DIR}/lib/libvlccore.a + ) +endif (WINDOWS) +endif (LIBVLCPLUGIN) diff --git a/indra/cmake/QuickTimePlugin.cmake b/indra/cmake/QuickTimePlugin.cmake deleted file mode 100644 index 899a043e8..000000000 --- a/indra/cmake/QuickTimePlugin.cmake +++ /dev/null @@ -1,57 +0,0 @@ -# -*- cmake -*- - -if(INSTALL_PROPRIETARY OR USE_QUICKTIME_PREBUILT) - include(Prebuilt) - if (WINDOWS) - use_prebuilt_binary(quicktime) - endif (WINDOWS) -endif(INSTALL_PROPRIETARY OR USE_QUICKTIME_PREBUILT) - -if (DARWIN) - include(CMakeFindFrameworks) - find_library(QUICKTIME_LIBRARY QuickTime) -elseif (WINDOWS AND WORD_SIZE EQUAL 32) - SET(program_files "ProgramFiles(x86)") - SET(program_files $ENV{${program_files}}) - if(NOT program_files) - SET(program_files $ENV{ProgramW6432}) - endif(NOT program_files) - if(NOT program_files) - SET(program_files $ENV{ProgramFiles}) - endif(NOT program_files) - - set(QUICKTIME_SDK_DIR "${program_files}/QuickTime SDK" - CACHE PATH "Location of the QuickTime SDK.") - - find_library(DEBUG_QUICKTIME_LIBRARY qtmlclient - PATHS - ${ARCH_PREBUILT_DIRS_DEBUG} - "${QUICKTIME_SDK_DIR}\\libraries" - ) - - find_library(RELEASE_QUICKTIME_LIBRARY qtmlclient - PATHS - ${ARCH_PREBUILT_DIRS_RELEASE} - "${QUICKTIME_SDK_DIR}\\libraries" - ) - - if (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY) - set(QUICKTIME_LIBRARY - optimized ${RELEASE_QUICKTIME_LIBRARY} - debug ${DEBUG_QUICKTIME_LIBRARY} - ) - - endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY) - - include_directories( - ${LIBS_PREBUILT_DIR}/include/quicktime - "${QUICKTIME_SDK_DIR}\\CIncludes" - ) -endif (DARWIN) - -mark_as_advanced(QUICKTIME_LIBRARY) - -if (QUICKTIME_LIBRARY) - set(QUICKTIME ON CACHE BOOL "Build with QuickTime streaming media support.") -endif (QUICKTIME_LIBRARY) - diff --git a/indra/cmake/Variables.cmake b/indra/cmake/Variables.cmake index f522e66cf..f2613035f 100644 --- a/indra/cmake/Variables.cmake +++ b/indra/cmake/Variables.cmake @@ -31,7 +31,8 @@ option(UNATTENDED "Disable use of uneeded tooling for automated builds" OFF) # Media Plugins option(ENABLE_MEDIA_PLUGINS "Turn off building media plugins if they are imported by third-party library mechanism" ON) -option(LIBVLCPLUGIN "Turn off building support for libvlc plugin" OFF) +option(LIBVLCPLUGIN "Turn off building support for libvlc plugin" ON) + if (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") set(LIBVLCPLUGIN OFF) endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Darwin") @@ -39,6 +40,7 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux" OR ${CMAKE_SYSTEM_NAME} MATCHES "Dar # Mallocs set(DISABLE_TCMALLOC OFF CACHE BOOL "Disable linkage of TCMalloc. (64bit builds automatically disable TCMalloc)") set(DISABLE_FATAL_WARNINGS TRUE CACHE BOOL "Set this to FALSE to enable fatal warnings.") + # Audio Engines option(FMODSTUDIO "Build with support for the FMOD Studio audio engine" ON) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 0b66e7691..bcd5bdab0 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -398,9 +398,9 @@ class WindowsManifest(ViewerManifest): self.path("basic_plugin_filepicker.dll") self.end_prefix() - # Media plugins - QuickTime - if self.prefix(src='../plugins/quicktime/%s' % self.args['configuration'], dst="llplugin"): - self.path("media_plugin_quicktime.dll") + # Media plugins - LibVLC + if self.prefix(src='../plugins/libvlc/%s' % self.args['configuration'], dst="llplugin"): + self.path("media_plugin_libvlc.dll") self.end_prefix() # Media plugins - CEF @@ -495,6 +495,12 @@ class WindowsManifest(ViewerManifest): self.path("zh-TW.pak") self.end_prefix() + if self.prefix(src=os.path.join(pkgdir, 'bin', 'release')): + self.path("libvlc.dll") + self.path("libvlccore.dll") + self.path("plugins/") + self.end_prefix() + if not self.is_packaging_viewer(): self.package_file = "copied_deps" @@ -1095,6 +1101,7 @@ class LinuxManifest(ViewerManifest): self.path2basename("filepicker", "libbasic_plugin_filepicker.so") self.path("gstreamer010/libmedia_plugin_gstreamer010.so", "libmedia_plugin_gstreamer.so") self.path("cef/libmedia_plugin_cef.so", "libmedia_plugin_cef.so") + self.path2basename("libvlc", "libmedia_plugin_libvlc.so") self.end_prefix() # CEF files diff --git a/indra/plugins/CMakeLists.txt b/indra/plugins/CMakeLists.txt index b4a820c8f..441eb4dcf 100644 --- a/indra/plugins/CMakeLists.txt +++ b/indra/plugins/CMakeLists.txt @@ -8,13 +8,12 @@ if (LINUX) add_subdirectory(gstreamer010) endif (LINUX) +if (WINDOWS) + if (LIBVLCPLUGIN) + add_subdirectory(libvlc) + endif (LIBVLCPLUGIN) +endif (WINDOWS) + add_subdirectory(cef) - -if (WINDOWS OR DARWIN) - if(NOT WORD_SIZE EQUAL 64) - add_subdirectory(quicktime) - endif(NOT WORD_SIZE EQUAL 64) -endif (WINDOWS OR DARWIN) - add_subdirectory(example_basic) add_subdirectory(example_media)