Fix linux build

master
Pork Chop 2024-03-24 16:56:54 +11:00
parent 39c32ae9ca
commit 81da03f8c7
6 changed files with 34 additions and 2 deletions

View File

@ -3317,6 +3317,20 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors</string>
<key>name</key>
<string>darwin64</string>
</map>
<key>linux64</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>699b4fb87e20bdc05e76a32c84688fa21a16785d</string>
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
<string>https://github.com/secondlife/3p-webrtc-build/releases/download/m114.5735.08.55/webrtc-m114.5735.08.55.8404951738-linux64-8404951738.tar.zst</string>
</map>
<key>name</key>
<string>linux64</string>
</map>
<key>windows64</key>
<map>
<key>archive</key>

View File

@ -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)

View File

@ -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)

View File

@ -26,7 +26,14 @@
#include "llwebrtc_impl.h"
#include <algorithm>
/*<FS:PC> 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 <format>
#endif
#include <string.h>
#include "api/audio_codecs/audio_decoder_factory.h"

View File

@ -35,6 +35,7 @@
#define WEBRTC_POSIX 1
#elif __linux__
#define WEBRTC_LINUX 1
#define WEBRTC_POSIX 1
#endif
#include "llwebrtc.h"

View File

@ -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"):