From 62920151b1365dde59937e8381512fc35712bb31 Mon Sep 17 00:00:00 2001 From: Erik Kundiman Date: Thu, 18 Jan 2024 13:03:49 +0800 Subject: GNU/Linux internal web browser The lllibs need to be built as static libs now, otherwise SLPlugin would lose reference to gSavedSettings. The media plugins still need to be built as dynamic libs however, so they can't rely on the condition in LibraryInstall.cmake any more. Since the Megapahit viewer, when built using GCC, is using the default value for _GLIBCXX_USE_CXX11_ABI (which is 1 for the newer C++11 ABI as opposed to 0 for the older C++03 ABI), the Dullahan dependency needs to be built with the very same _GLIBCXX_USE_CXX11_ABI setting too, otherwise apr_dso would fail at loading libmedia_plugin_cef.so because of the failure to refer to the setOnConsoleMessageCallback function with strictly the same (not differing between std::__cxx11::basic_string vs. std::basic_string) parameter types. The CEF build is Spotify's, so no live streaming support, while the Dullahan package used by the viewer was built using Kokua's dullahan fork. After rebuilding it with _GLIBCXX_USE_CXX11_ABI kept at default by not overriding it in variables (from the build-variables repo), the order of the target link libraries in CEFPlugin.cmake doesn't seem to matter any more (it did before!). Now EXTERNAL_TOS can be safely omitted from GNU/Linux added compile definitions (but still used on FreeBSD). --- indra/llplugin/llpluginclassmedia.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'indra/llplugin') diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp index 14d0ea18cf..54cb04f811 100644 --- a/indra/llplugin/llpluginclassmedia.cpp +++ b/indra/llplugin/llpluginclassmedia.cpp @@ -33,8 +33,10 @@ #include "llpluginmessageclasses.h" #include "llcontrol.h" -#if LL_DARWIN +#if LL_DARWIN || LL_LINUX extern LLControlGroup gSavedSettings; +#endif +#if LL_DARWIN extern BOOL gHiDPISupport; #endif @@ -934,7 +936,7 @@ void LLPluginClassMedia::setUserDataPath(const std::string &user_data_path_cache message.setValue("username", username); // cef shares cache between users but creates user-based contexts message.setValue("cef_log_file", user_data_path_cef_log); -#if LL_DARWIN +#if LL_DARWIN || LL_LINUX bool cef_verbose_log = gSavedSettings.getBOOL("CefVerboseLog"); message.setValueBoolean("cef_verbose_log", cef_verbose_log); #endif -- cgit v1.2.3