diff --git a/autobuild.xml b/autobuild.xml index bb1b959d8e..d14e73c8e0 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -3317,6 +3317,20 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors name darwin64 + linux64 + + archive + + hash + 699b4fb87e20bdc05e76a32c84688fa21a16785d + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-webrtc-build/releases/download/m114.5735.08.55/webrtc-m114.5735.08.55.8404951738-linux64-8404951738.tar.zst + + name + linux64 + windows64 archive diff --git a/indra/cmake/WebRTC.cmake b/indra/cmake/WebRTC.cmake index a9adc41831..9743e77b7d 100644 --- a/indra/cmake/WebRTC.cmake +++ b/indra/cmake/WebRTC.cmake @@ -26,7 +26,7 @@ elseif (DARWIN) ${COCOA_LIBRARY} ) elseif (LINUX) - target_link_libraries( ll::webrtc INTERFACE libwebrtc ) + target_link_libraries( ll::webrtc INTERFACE webrtc ) endif (WINDOWS) diff --git a/indra/llwebrtc/CMakeLists.txt b/indra/llwebrtc/CMakeLists.txt index 29dc1df8d6..2182796963 100644 --- a/indra/llwebrtc/CMakeLists.txt +++ b/indra/llwebrtc/CMakeLists.txt @@ -26,7 +26,6 @@ set(llwebrtc_HEADER_FILES list(APPEND llwebrtc_SOURCE_FILES ${llwebrtc_HEADER_FILES}) add_library (llwebrtc SHARED ${llwebrtc_SOURCE_FILES}) - set_target_properties(llwebrtc PROPERTIES PUBLIC_HEADER llwebrtc.h) if (WINDOWS) @@ -41,6 +40,7 @@ if (WINDOWS) elseif (DARWIN) target_link_libraries(llwebrtc PRIVATE ll::webrtc) elseif (LINUX) + target_compile_options(llwebrtc PRIVATE "-Wno-deprecated-declarations") target_link_libraries(llwebrtc PRIVATE ll::webrtc) endif (WINDOWS) diff --git a/indra/llwebrtc/llwebrtc.cpp b/indra/llwebrtc/llwebrtc.cpp index b7501bd0e0..9fb278049e 100644 --- a/indra/llwebrtc/llwebrtc.cpp +++ b/indra/llwebrtc/llwebrtc.cpp @@ -26,7 +26,14 @@ #include "llwebrtc_impl.h" #include + +/* Only available for much newer compilers on linux (fine with GCC 13). +This causes grief with some older compilers (like GCC 10). Since it doesnt appear +to be needed (at least when building the viewer on linux, dont try and include it*/ +#ifndef __linux__ #include +#endif + #include #include "api/audio_codecs/audio_decoder_factory.h" diff --git a/indra/llwebrtc/llwebrtc_impl.h b/indra/llwebrtc/llwebrtc_impl.h index 1f696e8c66..1f6b9846f8 100644 --- a/indra/llwebrtc/llwebrtc_impl.h +++ b/indra/llwebrtc/llwebrtc_impl.h @@ -35,6 +35,7 @@ #define WEBRTC_POSIX 1 #elif __linux__ #define WEBRTC_LINUX 1 +#define WEBRTC_POSIX 1 #endif #include "llwebrtc.h" diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 4c00979786..ce34019998 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -2161,6 +2161,16 @@ class LinuxManifest(ViewerManifest): self.path_optional("libjemalloc.so*") + # WebRTC libraries + with self.prefix(src=os.path.join(self.args['build'], os.pardir, + 'sharedlibs', 'lib')): + + for libfile in ( + 'libllwebrtc.so', + ): + + self.path(libfile) + # Vivox runtimes # Currentelly, the 32-bit ones will work with a 64-bit client. with self.prefix(src=os.path.join(pkgdir, 'bin32' ), dst="bin"):