summaryrefslogtreecommitdiff
path: root/indra/llwebrtc
diff options
context:
space:
mode:
Diffstat (limited to 'indra/llwebrtc')
-rw-r--r--indra/llwebrtc/CMakeLists.txt15
-rw-r--r--indra/llwebrtc/llwebrtc.cpp2
-rw-r--r--indra/llwebrtc/llwebrtc_impl.h11
3 files changed, 26 insertions, 2 deletions
diff --git a/indra/llwebrtc/CMakeLists.txt b/indra/llwebrtc/CMakeLists.txt
index a18b716003..425376d248 100644
--- a/indra/llwebrtc/CMakeLists.txt
+++ b/indra/llwebrtc/CMakeLists.txt
@@ -28,7 +28,9 @@ list(APPEND llwebrtc_SOURCE_FILES ${llwebrtc_HEADER_FILES})
add_library (llwebrtc SHARED ${llwebrtc_SOURCE_FILES})
+if (NOT INSTALL)
set_target_properties(llwebrtc PROPERTIES PUBLIC_HEADER llwebrtc.h)
+endif ()
if (WINDOWS)
cmake_policy(SET CMP0091 NEW)
@@ -74,3 +76,16 @@ ADD_CUSTOM_COMMAND(TARGET llwebrtc POST_BUILD
# Add tests
if (LL_TESTS)
endif (LL_TESTS)
+
+if (INSTALL)
+ if (DARWIN)
+ set(_LIB ../Frameworks)
+ elseif (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
+ set(_LIB lib/${ARCH}-linux-gnu)
+ elseif (EXISTS /lib64)
+ set(_LIB lib64)
+ else (DARWIN)
+ set(_LIB lib)
+ endif (DARWIN)
+ install(TARGETS ${PROJECT_NAME} DESTINATION ${_LIB})
+endif (INSTALL)
diff --git a/indra/llwebrtc/llwebrtc.cpp b/indra/llwebrtc/llwebrtc.cpp
index 0daa767766..83350dd457 100644
--- a/indra/llwebrtc/llwebrtc.cpp
+++ b/indra/llwebrtc/llwebrtc.cpp
@@ -203,7 +203,9 @@ void LLWebRTCImpl::init()
mTuningDeviceModule->SetPlayoutDevice(mPlayoutDevice);
mTuningDeviceModule->SetRecordingDevice(mRecordingDevice);
mTuningDeviceModule->EnableBuiltInAEC(false);
+#if __x86_64__ && !__FreeBSD__
mTuningDeviceModule->SetAudioDeviceSink(this);
+#endif
mTuningDeviceModule->InitMicrophone();
mTuningDeviceModule->InitSpeaker();
mTuningDeviceModule->SetStereoRecording(false);
diff --git a/indra/llwebrtc/llwebrtc_impl.h b/indra/llwebrtc/llwebrtc_impl.h
index f8a7873af8..6543b2718c 100644
--- a/indra/llwebrtc/llwebrtc_impl.h
+++ b/indra/llwebrtc/llwebrtc_impl.h
@@ -184,7 +184,10 @@ class LLCustomProcessor : public webrtc::CustomProcessing
// Primary singleton implementation for interfacing
// with the native webrtc library.
-class LLWebRTCImpl : public LLWebRTCDeviceInterface, public webrtc::AudioDeviceSink
+class LLWebRTCImpl : public LLWebRTCDeviceInterface
+#if __x86_64__ && !__FreeBSD__
+ , public webrtc::AudioDeviceSink
+#endif
{
public:
LLWebRTCImpl(LLWebRTCLogCallback* logCallback);
@@ -219,7 +222,11 @@ class LLWebRTCImpl : public LLWebRTCDeviceInterface, public webrtc::AudioDeviceS
//
// AudioDeviceSink
//
- void OnDevicesUpdated() override;
+ void OnDevicesUpdated()
+#if __x86_64__ && !__FreeBSD__
+ override
+#endif
+ ;
//
// Helpers