summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md10
-rw-r--r--autobuild.xml24
-rw-r--r--indra/cmake/00-Common.cmake2
-rw-r--r--indra/cmake/APR.cmake27
-rw-r--r--indra/cmake/Boost.cmake40
-rw-r--r--indra/cmake/CEFPlugin.cmake99
-rw-r--r--indra/cmake/Discord.cmake8
-rw-r--r--indra/cmake/FMODSTUDIO.cmake32
-rw-r--r--indra/cmake/GLM.cmake2
-rw-r--r--indra/cmake/LLPrimitive.cmake232
-rw-r--r--indra/cmake/LibVLCPlugin.cmake9
-rw-r--r--indra/cmake/Meshoptimizer.cmake14
-rw-r--r--indra/cmake/OPENAL.cmake36
-rw-r--r--indra/cmake/OpenGL.cmake5
-rw-r--r--indra/cmake/UI.cmake32
-rw-r--r--indra/cmake/UnixInstall.cmake28
-rw-r--r--indra/cmake/ViewerMiscLibs.cmake2
-rw-r--r--indra/llcommon/CMakeLists.txt2
-rw-r--r--indra/llplugin/llpluginclassmedia.cpp2
-rw-r--r--indra/llplugin/llpluginclassmedia.h2
-rw-r--r--indra/llplugin/slplugin/CMakeLists.txt9
-rw-r--r--indra/llrender/CMakeLists.txt7
-rw-r--r--indra/llwebrtc/CMakeLists.txt10
-rw-r--r--indra/llwindow/llkeyboardmacosx.cpp34
-rw-r--r--indra/media_plugins/cef/CMakeLists.txt42
-rw-r--r--indra/media_plugins/libvlc/CMakeLists.txt23
-rw-r--r--indra/newview/CMakeLists.txt19
-rw-r--r--indra/newview/FixBundle.cmake.in449
-rw-r--r--indra/newview/FixPackage.cmake.in440
-rw-r--r--indra/newview/SignBundle.cmake.in430
-rw-r--r--indra/newview/SignBundleMmxSse2.cmake.in11
-rw-r--r--indra/newview/SignPackage.cmake.in430
-rw-r--r--indra/newview/SignPackageMmxSse2.cmake.in11
-rw-r--r--indra/newview/ViewerInstall.cmake120
-rwxr-xr-xindra/newview/linux_tools/megapahit.desktop1
-rw-r--r--indra/newview/llappviewer.cpp2
-rw-r--r--indra/newview/llavataractions.cpp85
-rw-r--r--indra/newview/llavataractions.h6
-rw-r--r--indra/newview/lllogininstance.cpp2
-rw-r--r--indra/newview/llpanelpeoplemenus.cpp16
-rw-r--r--indra/newview/llpanelpeoplemenus.h1
-rw-r--r--indra/newview/llviewermedia.cpp2
-rw-r--r--indra/newview/llviewermenu.cpp41
-rw-r--r--indra/newview/net.megapahit.Viewer.metainfo.xml.in21
-rw-r--r--indra/newview/rlvhandler.cpp4
-rw-r--r--indra/newview/skins/default/xui/en/menu_avatar_other.xml16
-rw-r--r--indra/newview/skins/default/xui/en/menu_people_nearby.xml16
-rw-r--r--indra/newview/skins/default/xui/en/notifications.xml12
48 files changed, 1708 insertions, 1160 deletions
diff --git a/README.md b/README.md
index edb25b4bba..6e15ce8036 100644
--- a/README.md
+++ b/README.md
@@ -71,7 +71,7 @@ $ su -
# portmaster devel/cmake devel/pkgconf audio/freealut devel/apr1 devel/boost-libs x11-toolkits/fltk math/glm textproc/hunspell misc/meshoptimizer archivers/minizip graphics/nanosvg www/libnghttp2 graphics/openjpeg devel/sdl20 multimedia/vlc audio/libvorbis devel/xxhash
# exit
$ setenv LL_BUILD "-O3 -std=c++20 -fPIC"
-$ setenv PYTHON /usr/local/bin/python3.11
+$ setenv PYTHON `which python3.12`
$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSE_OPENAL:BOOL=ON -DUSE_FMODSTUDIO:BOOL=OFF -DENABLE_MEDIA_PLUGINS:BOOL=ON -DLL_TESTS:BOOL=OFF -DNDOF:BOOL=OFF -DROOT_PROJECT_NAME:STRING=Megapahit -DVIEWER_CHANNEL:STRING=Megapahit -DVIEWER_BINARY_NAME:STRING=megapahit -DBUILD_SHARED_LIBS:BOOL=OFF -DINSTALL:BOOL=ON -DPACKAGE:BOOL=ON ../indra
$ make -j`nproc`
$ cd ..
@@ -99,7 +99,7 @@ $ megapahit
### macOS
```
-$ sudo port install cmake pkgconfig freealut +universal apr-util +universal boost188 +universal glm hunspell +universal freetype +universal minizip +universal nghttp2 +universal openjpeg +universal libvorbis +universal xxhashlib
+$ sudo port install cmake pkgconfig freealut apr-util boost188 glm hunspell freetype minizip nghttp2 openjpeg libvorbis xxhashlib
$ export LL_BUILD="-O3 -gdwarf-2 -stdlib=libc++ -mmacosx-version-min=12 -iwithsysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -std=c++20 -fPIC -DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -DNDEBUG -DPIC -DLL_DARWIN=1"
$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSE_OPENAL:BOOL=ON -DUSE_FMODSTUDIO:BOOL=OFF -DENABLE_MEDIA_PLUGINS:BOOL=ON -DLL_TESTS:BOOL=OFF -DNDOF:BOOL=ON -DROOT_PROJECT_NAME:STRING=Megapahit -DVIEWER_CHANNEL:STRING=Megapahit -DVIEWER_BINARY_NAME:STRING=megapahit -DBUILD_SHARED_LIBS:BOOL=OFF -DINSTALL:BOOL=ON -DPACKAGE:BOOL=OFF -DCMAKE_INSTALL_PREFIX:PATH=newview/Megapahit.app/Contents/Resources -DCMAKE_OSX_ARCHITECTURES:STRING=`uname -m` -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=12 -DENABLE_SIGNING:BOOL=ON -DSIGNING_IDENTITY:STRING=- ../indra
$ make -j`sysctl -n hw.ncpu`
@@ -137,10 +137,10 @@ $ megapahit
### Windows arm64
```
-$ vcpkg install python3 freealut apr-util boost curl freetype glm hunspell libjpeg-turbo meshoptimizer minizip nanosvg nghttp2 openjpeg sse2neon libvorbis libxml2[tools] xxhash
+$ vcpkg install python3 freealut apr-util boost curl freetype hunspell libjpeg-turbo meshoptimizer minizip nanosvg nghttp2 openjpeg sse2neon libvorbis libxml2[tools] xxhash
$ vcpkg install --allow-unsupported boost-fiber
$ export LL_BUILD="/MD /O2 /Ob2 /std:c++20 /Zc:wchar_t- /Zi /GR /DLL_RELEASE=1 /DLL_RELEASE_FOR_DOWNLOAD=1 /DNDEBUG /D_SECURE_STL=0 /D_HAS_ITERATOR_DEBUGGING=0 /DWIN32 /D_WINDOWS /DLL_WINDOWS=1 /DUNICODE /D_UNICODE /DWINVER=0x0602 /D_WIN32_WINNT=0x0602 /Zc:preprocessor"
-$ export PATH="$VCPKG_ROOT/downloads/tools/cmake-4.3.2-windows/cmake-4.3.2-windows-arm64/bin:$VCPKG_ROOT/installed/arm64-windows/tools/libxml2:/c/Program Files (x86)/Microsoft Visual Studio/18/BuildTools/MSBuild/Current/Bin:$PATH"
+$ export PATH="$VCPKG_ROOT/downloads/tools/cmake-4.3.3-windows/cmake-4.3.3-windows-arm64/bin:$VCPKG_ROOT/installed/arm64-windows/tools/libxml2:/c/Program Files (x86)/Microsoft Visual Studio/18/BuildTools/MSBuild/Current/Bin:$PATH"
$ export PYTHON="$VCPKG_ROOT/installed/arm64-windows/tools/python3"
$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSE_OPENAL:BOOL=ON -DUSE_FMODSTUDIO:BOOL=OFF -DENABLE_MEDIA_PLUGINS:BOOL=OFF -DLL_TESTS:BOOL=OFF -DNDOF:BOOL=OFF -DROOT_PROJECT_NAME:STRING=Megapahit -DVIEWER_CHANNEL:STRING=Megapahit -DVIEWER_BINARY_NAME:STRING=Megapahit -DBUILD_SHARED_LIBS:BOOL=OFF -DINSTALL:BOOL=ON -DPACKAGE:BOOL=ON -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake -DVS_DISABLE_FATAL_WARNINGS:BOOL=ON ../indra
$ MSBuild.exe Megapahit.slnx -p:Configuration=Release
@@ -152,7 +152,7 @@ $ start Megapahit-`cat newview/viewer_version.txt`-win64.exe
```
$ vcpkg install python3 freealut apr-util boost freetype glm hunspell libjpeg-turbo meshoptimizer minizip nanosvg nghttp2 openjpeg libvorbis libxml2[tools] xxhash
$ export LL_BUILD="/MD /O2 /Ob2 /std:c++20 /Zc:wchar_t- /Zi /GR /DLL_RELEASE=1 /DLL_RELEASE_FOR_DOWNLOAD=1 /DNDEBUG /D_SECURE_STL=0 /D_HAS_ITERATOR_DEBUGGING=0 /DWIN32 /D_WINDOWS /DLL_WINDOWS=1 /DUNICODE /D_UNICODE /DWINVER=0x0602 /D_WIN32_WINNT=0x0602"
-$ export PATH="$VCPKG_ROOT/downloads/tools/cmake-4.3.2-windows/cmake-4.3.2-windows-x86_64/bin:$VCPKG_ROOT/installed/x64-windows/tools/libxml2:/c/Program Files (x86)/Microsoft Visual Studio/18/BuildTools/MSBuild/Current/Bin:$PATH"
+$ export PATH="$VCPKG_ROOT/downloads/tools/cmake-4.3.3-windows/cmake-4.3.3-windows-x86_64/bin:$VCPKG_ROOT/installed/x64-windows/tools/libxml2:/c/Program Files (x86)/Microsoft Visual Studio/18/BuildTools/MSBuild/Current/Bin:$PATH"
$ export PYTHON="$VCPKG_ROOT/installed/x64-windows/tools/python3"
$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSE_OPENAL:BOOL=ON -DUSE_FMODSTUDIO:BOOL=OFF -DENABLE_MEDIA_PLUGINS:BOOL=ON -DLL_TESTS:BOOL=OFF -DNDOF:BOOL=ON -DROOT_PROJECT_NAME:STRING=Megapahit -DVIEWER_CHANNEL:STRING=Megapahit -DVIEWER_BINARY_NAME:STRING=Megapahit -DBUILD_SHARED_LIBS:BOOL=OFF -DINSTALL:BOOL=ON -DPACKAGE:BOOL=ON -DCMAKE_TOOLCHAIN_FILE:FILEPATH=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake -DVS_DISABLE_FATAL_WARNINGS:BOOL=ON ../indra
$ MSBuild.exe Megapahit.slnx -p:Configuration=Release
diff --git a/autobuild.xml b/autobuild.xml
index 571da61367..7184b72acb 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -52,7 +52,7 @@
<key>hash_algorithm</key>
<string>sha1</string>
<key>url</key>
- <string>https://github.com/secondlife/3p-fltk/releases/download/v1.3.9-r1/fltk-1.3.9.8556992788-linux64-8556992788.tar.zst</string>
+ <string>https://megapahit.net/downloads/fltk-1.4.3-linux64.tar.zst</string>
</map>
<key>name</key>
<string>linux</string>
@@ -823,6 +823,20 @@
<key>source_type</key>
<string>git</string>
</map>
+ <key>glu</key>
+ <map>
+ <key>platforms</key>
+ <map>
+ <key>linux64</key>
+ <map>
+ <key>archive</key>
+ <map>
+ <key>url</key>
+ <string>https://megapahit.net/downloads/glu-9.0.2-linux64.tar.zst</string>
+ </map>
+ </map>
+ </map>
+ </map>
<key>gstreamer</key>
<map>
<key>platforms</key>
@@ -2609,6 +2623,14 @@ 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>url</key>
+ <string>https://megapahit.net/downloads/vlc-bin-3.0.23-linux64.tar.zst</string>
+ </map>
+ </map>
<key>windows64</key>
<map>
<key>archive</key>
diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake
index 90ca9866bb..4b007ceec9 100644
--- a/indra/cmake/00-Common.cmake
+++ b/indra/cmake/00-Common.cmake
@@ -154,7 +154,7 @@ if (LINUX OR CMAKE_SYSTEM_NAME MATCHES "FreeBSD")
--param asan-stack=0
)
add_link_options(-fsanitize=address)
- else()
+ elseif( NOT USE_FLATPAK )
add_compile_definitions( _FORTIFY_SOURCE=2 )
endif()
diff --git a/indra/cmake/APR.cmake b/indra/cmake/APR.cmake
index 4ce0d47f7f..b7ada1cfb1 100644
--- a/indra/cmake/APR.cmake
+++ b/indra/cmake/APR.cmake
@@ -5,21 +5,22 @@ include_guard()
add_library( ll::apr INTERFACE IMPORTED )
-if (WINDOWS)
- target_include_directories(ll::apr SYSTEM INTERFACE ${prefix_result}/../include)
- target_link_directories(ll::apr INTERFACE ${prefix_result})
- target_link_libraries(ll::apr INTERFACE libapr-1 libaprutil-1)
-else ()
- include(FindPkgConfig)
- pkg_check_modules(Apr REQUIRED apr-1 apr-util-1)
- target_include_directories(ll::apr SYSTEM INTERFACE ${Apr_INCLUDE_DIRS})
- target_link_directories(ll::apr INTERFACE ${Apr_LIBRARY_DIRS})
- target_link_libraries(ll::apr INTERFACE ${Apr_LIBRARIES})
+if (NOT USE_FLATPAK)
+ if (WINDOWS)
+ target_include_directories(ll::apr SYSTEM INTERFACE ${prefix_result}/../include)
+ target_link_directories(ll::apr INTERFACE ${prefix_result})
+ target_link_libraries(ll::apr INTERFACE libapr-1 libaprutil-1)
+ else ()
+ include(FindPkgConfig)
+ pkg_check_modules(Apr REQUIRED apr-1 apr-util-1)
+ target_include_directories(ll::apr SYSTEM INTERFACE ${Apr_INCLUDE_DIRS})
+ target_link_directories(ll::apr INTERFACE ${Apr_LIBRARY_DIRS})
+ target_link_libraries(ll::apr INTERFACE ${Apr_LIBRARIES})
+ endif ()
+ return ()
endif ()
-return ()
-
-use_system_binary( apr apr-util )
+#use_system_binary( apr apr-util )
use_prebuilt_binary(apr_suite)
if (WINDOWS)
diff --git a/indra/cmake/Boost.cmake b/indra/cmake/Boost.cmake
index 3f9134cb8f..a6e60aa95b 100644
--- a/indra/cmake/Boost.cmake
+++ b/indra/cmake/Boost.cmake
@@ -28,27 +28,29 @@ elseif (WINDOWS)
message(WARNING "Could not detect Boost suffix via glob; using fallback '${sfx}'. "
"Check that vcpkg installed boost into ${prefix_result}.")
endif ()
-else ()
+elseif (NOT USE_FLATPAK)
find_package( Boost )
endif ()
-target_link_libraries( ll::boost INTERFACE
- boost_context${sfx}
- boost_fiber${sfx}
- boost_filesystem${sfx}
- boost_program_options${sfx}
- boost_thread${sfx}
- boost_url${sfx}
- )
-if (WINDOWS)
- target_link_libraries( ll::boost INTERFACE boost_json${sfx})
-else ()
- target_link_libraries( ll::boost INTERFACE boost_regex${sfx})
-endif ()
-if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES fedora) OR DARWIN)
- target_link_libraries( ll::boost INTERFACE boost_system${sfx})
+if (NOT USE_FLATPAK)
+ target_link_libraries( ll::boost INTERFACE
+ boost_context${sfx}
+ boost_fiber${sfx}
+ boost_filesystem${sfx}
+ boost_program_options${sfx}
+ boost_thread${sfx}
+ boost_url${sfx}
+ )
+ if (WINDOWS)
+ target_link_libraries( ll::boost INTERFACE boost_json${sfx})
+ else ()
+ target_link_libraries( ll::boost INTERFACE boost_regex${sfx})
+ endif ()
+ if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES fedora) OR DARWIN)
+ target_link_libraries( ll::boost INTERFACE boost_system${sfx})
+ endif ()
+ target_compile_definitions( ll::boost INTERFACE BOOST_BIND_GLOBAL_PLACEHOLDERS )
+ return()
endif ()
-target_compile_definitions( ll::boost INTERFACE BOOST_BIND_GLOBAL_PLACEHOLDERS )
-return()
if( USE_CONAN )
target_link_libraries( ll::boost INTERFACE CONAN_PKG::boost )
@@ -163,3 +165,5 @@ target_link_libraries(ll::boost INTERFACE
if (LINUX)
target_link_libraries(ll::boost INTERFACE rt)
endif (LINUX)
+
+target_include_directories(ll::boost SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include)
diff --git a/indra/cmake/CEFPlugin.cmake b/indra/cmake/CEFPlugin.cmake
index 117c83353e..1fc28ad415 100644
--- a/indra/cmake/CEFPlugin.cmake
+++ b/indra/cmake/CEFPlugin.cmake
@@ -1,7 +1,6 @@
# -*- cmake -*-
include(Linking)
include(Prebuilt)
-include(UnixInstall)
include_guard()
add_library( ll::cef INTERFACE IMPORTED )
@@ -30,45 +29,51 @@ if (${LINUX_DISTRO} MATCHES arch)
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
)
endif ()
- if (NOT EXISTS ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10.tar.gz)
+ if (NOT EXISTS ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel.tar.gz)
file(DOWNLOAD
- https://github.com/secondlife/dullahan/archive/refs/tags/v1.30.0-CEF_147.0.10.tar.gz
- ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10.tar.gz
+ https://github.com/secondlife/dullahan/archive/refs/tags/v1.40.0-CEF_150.0.13.accel.tar.gz
+ ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel.tar.gz
)
endif ()
file(ARCHIVE_EXTRACT
- INPUT ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10.tar.gz
+ INPUT ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel.tar.gz
DESTINATION ${CMAKE_BINARY_DIR}
)
try_compile(DULLAHAN_RESULT
PROJECT dullahan
- SOURCE_DIR ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10
- BINARY_DIR ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10
+ SOURCE_DIR ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel
+ BINARY_DIR ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel
CMAKE_FLAGS
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX:PATH=${LIBS_PREBUILT_DIR}
-DCMAKE_INSTALL_LIBDIR:PATH=${ARCH_PREBUILT_DIRS_RELEASE}
-DCEF_WRAPPER_DIR:PATH=/usr/include/cef
- -DCEF_WRAPPER_BUILD_DIR:PATH=${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10
- -DCEF_LIBRARY_RELEASE:FILEPATH=${INSTALL_PREFIX}/${_LIB}/cef/libcef.so
+ -DCEF_WRAPPER_BUILD_DIR:PATH=${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel
+ -DCEF_LIBRARY_RELEASE:FILEPATH=${INSTALL_PREFIX}/lib/cef/libcef.so
-DCEF_DLL_LIBRARY_RELEASE:FILEPATH=${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
"-DCMAKE_CXX_FLAGS:STRING=-I/usr/include/cef -I/usr/src/cef -DWRAPPING_CEF_SHARED"
)
if (${DULLAHAN_RESULT})
file(MAKE_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release)
file(
- COPY ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10/dullahan_host
+ COPY ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel/dullahan_host
DESTINATION ${LIBS_PREBUILT_DIR}/bin/release
)
+ if (CMAKE_BUILD_TYPE MATCHES Release)
+ execute_process(
+ COMMAND ${CMAKE_STRIP} dullahan_host
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release
+ )
+ endif ()
file(
- COPY ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10/libdullahan.a
+ COPY ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel/libdullahan.a
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
)
file(MAKE_DIRECTORY ${LIBS_PREBUILT_DIR}/include/cef)
file(
COPY
- ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10/src/dullahan.h
- ${CMAKE_BINARY_DIR}/dullahan-1.30.0-CEF_147.0.10/src/dullahan_version.h
+ ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel/src/dullahan.h
+ ${CMAKE_BINARY_DIR}/dullahan-1.40.0-CEF_150.0.13.accel/src/dullahan_version.h
DESTINATION ${LIBS_PREBUILT_DIR}/include/cef
)
file(WRITE ${PREBUILD_TRACKING_DIR}/dullahan_installed "0")
@@ -118,7 +123,7 @@ elseif (${LINUX_DISTRO} MATCHES fedora)
-DCMAKE_INSTALL_LIBDIR:PATH=${ARCH_PREBUILT_DIRS_RELEASE}
-DCEF_WRAPPER_DIR:PATH=/usr/include/cef
-DCEF_WRAPPER_BUILD_DIR:PATH=${CMAKE_BINARY_DIR}/dullahan-1.29.0-CEF_146.0.12
- -DCEF_LIBRARY_RELEASE:FILEPATH=${INSTALL_PREFIX}/${_LIB}/cef/libcef.so
+ -DCEF_LIBRARY_RELEASE:FILEPATH=${INSTALL_PREFIX}/lib${ADDRESS_SIZE}/cef/libcef.so
-DCEF_DLL_LIBRARY_RELEASE:FILEPATH=${ARCH_PREBUILT_DIRS_RELEASE}/libcef_dll_wrapper.a
"-DCMAKE_CXX_FLAGS:STRING=-I/usr/include/cef -I/usr/src/cef-146.0.11 -DWRAPPING_CEF_SHARED"
)
@@ -128,6 +133,12 @@ elseif (${LINUX_DISTRO} MATCHES fedora)
COPY ${CMAKE_BINARY_DIR}/dullahan-1.29.0-CEF_146.0.12/dullahan_host
DESTINATION ${LIBS_PREBUILT_DIR}/bin/release
)
+ if (CMAKE_BUILD_TYPE MATCHES Release)
+ execute_process(
+ COMMAND ${CMAKE_STRIP} dullahan_host
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release
+ )
+ endif ()
file(
COPY ${CMAKE_BINARY_DIR}/dullahan-1.29.0-CEF_146.0.12/libdullahan.a
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
@@ -173,11 +184,29 @@ elseif (CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)
-DPROJECT_ARCH:STRING=${CMAKE_SYSTEM_PROCESSOR}
)
if (${DULLAHAN_RESULT})
+ if (CMAKE_BUILD_TYPE MATCHES Release)
+ execute_process(
+ COMMAND ${CMAKE_STRIP}
+ chrome-sandbox
+ libEGL.so
+ libGLESv2.so
+ libcef.so
+ libvk_swiftshader.so
+ libvulkan.so.1
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/dullahan-1.24.0-CEF_139.0.40/_deps/cef_prebuild-src/${CMAKE_BUILD_TYPE}
+ )
+ endif ()
execute_process(
COMMAND ${CMAKE_MAKE_PROGRAM} install
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/dullahan-1.24.0-CEF_139.0.40
OUTPUT_VARIABLE dullahan_installed
)
+ if (CMAKE_BUILD_TYPE MATCHES Release)
+ execute_process(
+ COMMAND ${CMAKE_STRIP} dullahan_host
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release
+ )
+ endif ()
file(
COPY
${CMAKE_BINARY_DIR}/dullahan-1.24.0-CEF_139.0.40/src/dullahan.h
@@ -190,20 +219,6 @@ elseif (CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)
else ()
use_prebuilt_binary(dullahan)
endif ()
-
-execute_process(
- COMMAND patchelf --set-rpath ${INSTALL_LIBRARY_DIR} bin/release/dullahan_host
- WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}
-)
-
-if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora))
- target_include_directories( ll::cef SYSTEM INTERFACE /usr/include/cef/include)
- execute_process(
- COMMAND patchelf --add-rpath ${INSTALL_PREFIX}/${_LIB}/cef bin/release/dullahan_host
- WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}
- )
-endif ()
-
target_include_directories( ll::cef SYSTEM INTERFACE ${LIBS_PREBUILT_DIR}/include/cef)
if (WINDOWS)
@@ -268,10 +283,34 @@ elseif (DARWIN)
-output libdullahan.a
WORKING_DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE}
)
-
elseif (LINUX)
+ if (NOT USE_FLATPAK)
+ execute_process(
+ COMMAND patchelf --set-rpath ${INSTALL_LIBRARY_DIR} dullahan_host
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release
+ )
+ endif ()
if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora))
- target_link_directories( ll::cef INTERFACE ${INSTALL_PREFIX}/${_LIB}/cef )
+ target_include_directories( ll::cef SYSTEM INTERFACE /usr/include/cef/include)
+ if (${LINUX_DISTRO} MATCHES fedora)
+ set(LIB_SUFFIX ${ADDRESS_SIZE})
+ endif ()
+ target_link_directories( ll::cef INTERFACE ${INSTALL_PREFIX}/lib${LIB_SUFFIX}/cef )
+ execute_process(
+ COMMAND patchelf --add-rpath ${INSTALL_PREFIX}/lib${LIB_SUFFIX}/cef dullahan_host
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}/bin/release
+ )
+ elseif (CMAKE_SYSTEM_PROCESSOR MATCHES x86_64 AND (CMAKE_BUILD_TYPE MATCHES Release))
+ execute_process(
+ COMMAND ${CMAKE_STRIP}
+ bin/release/chrome-sandbox
+ bin/release/dullahan_host
+ lib/release/libEGL.so
+ lib/release/libGLESv2.so
+ lib/release/libvk_swiftshader.so
+ lib/release/libvulkan.so.1
+ WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}
+ )
endif ()
target_link_libraries( ll::cef INTERFACE
libdullahan.a
diff --git a/indra/cmake/Discord.cmake b/indra/cmake/Discord.cmake
index 68e6f59ecb..28d32cd668 100644
--- a/indra/cmake/Discord.cmake
+++ b/indra/cmake/Discord.cmake
@@ -9,7 +9,7 @@ target_compile_definitions(ll::discord_sdk INTERFACE LL_DISCORD=1)
if (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/discord_sdk_installed OR NOT ${discord_sdk_installed} EQUAL 0)
file(ARCHIVE_EXTRACT
- INPUT $ENV{HOME}/Downloads/DiscordSocialSdk-1.9.15780.zip
+ INPUT $ENV{HOME}/Downloads/DiscordSocialSdk-1.9.17379.zip
DESTINATION ${CMAKE_BINARY_DIR}
)
file(MAKE_DIRECTORY ${LIBS_PREBUILT_DIR}/include/discord_sdk)
@@ -45,6 +45,12 @@ if (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKIN
COPY ${CMAKE_BINARY_DIR}/discord_social_sdk/lib/release${DISCORD_PLATFORM}/${LIBRARY_PREFIX}discord_partner_sdk.${LIBRARY_EXTENSION}
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
)
+ if (CMAKE_BUILD_TYPE MATCHES Release AND LINUX)
+ execute_process(
+ COMMAND ${CMAKE_STRIP} libdiscord_partner_sdk.so
+ WORKING_DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE}
+ )
+ endif ()
endif ()
file(WRITE ${PREBUILD_TRACKING_DIR}/discord_sdk_installed "0")
endif ()
diff --git a/indra/cmake/FMODSTUDIO.cmake b/indra/cmake/FMODSTUDIO.cmake
index ad8dc38c70..ec0b8a07d6 100644
--- a/indra/cmake/FMODSTUDIO.cmake
+++ b/indra/cmake/FMODSTUDIO.cmake
@@ -34,7 +34,7 @@ if (USE_FMODSTUDIO)
file(MAKE_DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE})
if (DARWIN)
execute_process(
- COMMAND hdiutil attach -noverify fmodstudioapi20234mac-installer.dmg
+ COMMAND hdiutil attach -noverify fmodstudioapi20235mac-installer.dmg
WORKING_DIRECTORY $ENV{HOME}/Downloads
)
file(
@@ -64,36 +64,36 @@ if (USE_FMODSTUDIO)
file(WRITE ${PREBUILD_TRACKING_DIR}/fmodstudio_installed "${fmodstudio_installed}")
else ()
file(ARCHIVE_EXTRACT
- INPUT $ENV{HOME}/Downloads/fmodstudioapi20234linux.tar.gz
+ INPUT $ENV{HOME}/Downloads/fmodstudioapi20235linux.tar.gz
DESTINATION ${CMAKE_BINARY_DIR}
)
file(
COPY
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod.hpp
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_codec.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_common.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_dsp.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_dsp_effects.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_errors.h
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/inc/fmod_output.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod.hpp
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_codec.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_common.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_dsp.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_dsp_effects.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_errors.h
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/inc/fmod_output.h
DESTINATION ${LIBS_PREBUILT_DIR}/include/fmodstudio
)
if (CMAKE_SYSTEM_PROCESSOR MATCHES aarch64)
file(
COPY
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/arm64/libfmod.so
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/arm64/libfmod.so.13
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/arm64/libfmod.so.13.34
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/arm64/libfmod.so
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/arm64/libfmod.so.13
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/arm64/libfmod.so.13.35
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
FOLLOW_SYMLINK_CHAIN
)
else ()
file(
COPY
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so.13
- ${CMAKE_BINARY_DIR}/fmodstudioapi20234linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so.13.34
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so.13
+ ${CMAKE_BINARY_DIR}/fmodstudioapi20235linux/api/core/lib/${CMAKE_SYSTEM_PROCESSOR}/libfmod.so.13.35
DESTINATION ${ARCH_PREBUILT_DIRS_RELEASE}
FOLLOW_SYMLINK_CHAIN
)
diff --git a/indra/cmake/GLM.cmake b/indra/cmake/GLM.cmake
index e4c6796f6c..d804774ff6 100644
--- a/indra/cmake/GLM.cmake
+++ b/indra/cmake/GLM.cmake
@@ -4,7 +4,7 @@ include(Prebuilt)
add_library( ll::glm INTERFACE IMPORTED )
#use_system_binary( glm )
-if (${LINUX_DISTRO} MATCHES debian)
+if (USE_FLATPAK OR (${LINUX_DISTRO} MATCHES debian) OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64 OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64))
use_prebuilt_binary(glm)
elseif (NOT WINDOWS)
find_package( glm REQUIRED )
diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake
index 4708834653..a574bfadaa 100644
--- a/indra/cmake/LLPrimitive.cmake
+++ b/indra/cmake/LLPrimitive.cmake
@@ -18,57 +18,96 @@ if( USE_CONAN )
"${CONAN_INCLUDE_DIRS_COLLADADOM}/collada-dom/1.4/" )
endif()
-if (TRUE)
- include(FindPkgConfig)
- pkg_check_modules(Minizip REQUIRED minizip)
- if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES gentoo) OR DARWIN)
+#use_system_binary( colladadom )
+
+#use_prebuilt_binary(colladadom)
+if (USE_FLATPAK)
+use_prebuilt_binary(minizip-ng) # needed for colladadom
+#use_prebuilt_binary(libxml2)
+
+find_library(MINIZIPNG_LIBRARY
+ NAMES
+ minizip.lib
+ libminizip.a
+ PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
+
+target_link_libraries(ll::minizip-ng INTERFACE ${MINIZIPNG_LIBRARY})
+endif ()
+
+if (FALSE)
+find_library(LIBXML2_LIBRARY
+ NAMES
+ libxml2.lib
+ libxml2.a
+ PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
+
+target_link_libraries(ll::libxml INTERFACE ${LIBXML2_LIBRARY})
+
+if (WINDOWS)
+ target_link_libraries( ll::libxml INTERFACE Bcrypt.lib)
+endif()
+endif (FALSE)
+
+include(FindPkgConfig)
+if (NOT USE_FLATPAK)
+ pkg_search_module(Minizip REQUIRED minizip)
+endif ()
+if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES gentoo) OR DARWIN OR WINDOWS)
set(Minizip_INCLUDE_DIRS ${Minizip_INCLUDE_DIRS}/minizip)
- endif ()
- pkg_check_modules(Libxml2 REQUIRED libxml-2.0)
- target_link_libraries( ll::minizip-ng INTERFACE ${Minizip_LIBRARIES} )
- target_link_libraries( ll::libxml INTERFACE ${Libxml2_LIBRARIES} )
- if (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/colladadom_installed OR NOT ${colladadom_installed} EQUAL 0)
+elseif (USE_FLATPAK)
+ set(Minizip_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/minizip-ng)
+ set(Minizip_LIBRARY_DIRS ${ARCH_PREBUILT_DIRS_RELEASE})
+endif ()
+pkg_search_module(Libxml2 REQUIRED libxml-2.0)
+target_link_libraries( ll::minizip-ng INTERFACE ${Minizip_LIBRARIES} )
+target_link_libraries( ll::libxml INTERFACE ${Libxml2_LIBRARIES} )
+if (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/colladadom_installed OR NOT ${colladadom_installed} EQUAL 0)
if (NOT EXISTS ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11.tar.gz)
- file(DOWNLOAD
- https://github.com/secondlife/3p-colladadom/archive/refs/tags/v2.3-r11.tar.gz
- ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11.tar.gz
+ file(DOWNLOAD
+ https://github.com/secondlife/3p-colladadom/archive/refs/tags/v2.3-r11.tar.gz
+ ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11.tar.gz
)
endif ()
file(ARCHIVE_EXTRACT
- INPUT ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11.tar.gz
- DESTINATION ${CMAKE_BINARY_DIR}
+ INPUT ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11.tar.gz
+ DESTINATION ${CMAKE_BINARY_DIR}
)
if (WINDOWS OR CMAKE_COMMAND MATCHES /usr/bin/cmake)
- execute_process(
- COMMAND sed -i "s/include_directories/cmake_minimum_required(VERSION 3.28)\\ninclude_directories/" CMakeLists.txt
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ execute_process(
+ COMMAND sed -i "s/include_directories/cmake_minimum_required(VERSION 3.28)\\ninclude_directories/" CMakeLists.txt
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
)
else ()
- execute_process(
- COMMAND sed -i "" -e "s/include_directories/cmake_minimum_required(VERSION 3.28)\\ninclude_directories/" CMakeLists.txt
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ execute_process(
+ COMMAND sed -i "" -e "s/include_directories/cmake_minimum_required(VERSION 3.28)\\ninclude_directories/" CMakeLists.txt
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
)
endif ()
if (WINDOWS)
- execute_process(
- COMMAND sed -i "s/SHARED/STATIC/" 1.4/CMakeLists.txt
- COMMAND sed -i "/#include <cstdarg>/a #define WIN32" dae/daeUtils.cpp
- COMMAND sed -i "/using namespace cdom;/a namespace boost{void boost::throw_exception(class std::exception const &){}}" dae/daeURI.cpp
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src
+ execute_process(
+ COMMAND sed -i "s/SHARED/STATIC/" 1.4/CMakeLists.txt
+ COMMAND sed -i "/#include <cstdarg>/a #define WIN32" dae/daeUtils.cpp
+ COMMAND sed -i "/using namespace cdom;/a namespace boost{void boost::throw_exception(class std::exception const &){}}" dae/daeURI.cpp
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src
+ )
+ elseif (CMAKE_COMMAND MATCHES /usr/bin/cmake)
+ execute_process(
+ COMMAND sed -i "s/SHARED/STATIC/" src/1.4/CMakeLists.txt
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
)
else ()
- execute_process(
- COMMAND sed -i "" -e "s/SHARED/STATIC/" src/1.4/CMakeLists.txt
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ execute_process(
+ COMMAND sed -i "" -e "s/SHARED/STATIC/" src/1.4/CMakeLists.txt
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
)
endif ()
if (DARWIN)
- set(BOOST_CFLAGS -I${Libxml2_LIBRARY_DIRS}exec/boost/1.88/include)
- set(BOOST_LIBS -L${Minizip_LIBRARY_DIRS}exec/boost/1.88/lib)
- set(BOOST_LIBRARY_SUFFIX -mt)
+ set(BOOST_CFLAGS -I${Libxml2_LIBRARY_DIRS}exec/boost/1.88/include)
+ set(BOOST_LIBS -L${Minizip_LIBRARY_DIRS}exec/boost/1.88/lib)
+ set(BOOST_LIBRARY_SUFFIX -mt)
elseif (WINDOWS)
- set(BOOST_CFLAGS -I${prefix_result}/../include)
- set(BOOST_LIBS -L${prefix_result})
+ set(BOOST_CFLAGS -I${prefix_result}/../include)
+ set(BOOST_LIBS -L${prefix_result})
# Detect actual toolset/version suffix from vcpkg-installed libs.
file(GLOB _boost_context_libs "${prefix_result}/boost_context-*.lib")
if (_boost_context_libs)
@@ -84,98 +123,71 @@ if (TRUE)
message(WARNING "Could not detect Boost suffix via glob in LLPrimitive; using fallback.")
endif ()
elseif (CMAKE_SYSTEM_NAME MATCHES FreeBSD)
- set(BOOST_CFLAGS -I/usr/local/include)
- execute_process(
- COMMAND sed -i "" -e "s/endif 0/endif/" dae/daeUtils.cpp
- COMMAND sed -i "" -e "s/linux/FreeBSD/" dae/daeUtils.cpp
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src
+ set(BOOST_CFLAGS -I/usr/local/include)
+ execute_process(
+ COMMAND sed -i "" -e "s/endif 0/endif/" dae/daeUtils.cpp
+ COMMAND sed -i "" -e "s/linux/FreeBSD/" dae/daeUtils.cpp
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src
)
+ elseif (USE_FLATPAK)
+ set(BOOST_CFLAGS -I${LIBS_PREBUILT_DIR}/include)
+ set(BOOST_LIBS -L${ARCH_PREBUILT_DIRS_RELEASE})
endif ()
file(MAKE_DIRECTORY ${LIBS_PREBUILT_DIR}/include/collada/1.4)
try_compile(COLLADADOM_RESULT
- PROJECT colladadom
- SOURCE_DIR ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
- BINARY_DIR ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
- TARGET collada14dom
- CMAKE_FLAGS
- -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
- -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
- -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET}
- -DCMAKE_INSTALL_PREFIX:PATH=${LIBS_PREBUILT_DIR}
- -DCMAKE_CXX_STANDARD:STRING=17
- -DCMAKE_CXX_FLAGS:STRING=-I${Minizip_INCLUDE_DIRS}
- -DBoost_CFLAGS:STRING=${BOOST_CFLAGS}
- -DEXTRA_COMPILE_FLAGS:STRING=-I${Libxml2_INCLUDE_DIRS}
- "-DCMAKE_SHARED_LINKER_FLAGS:STRING=-L${Minizip_LIBRARY_DIRS} ${BOOST_LIBS}"
- -DBoost_FILESYSTEM_LIBRARY:STRING=boost_filesystem${BOOST_LIBRARY_SUFFIX}
- -DBoost_SYSTEM_LIBRARY:STRING=boost_system${BOOST_LIBRARY_SUFFIX}
- -DZLIB_LIBRARIES:STRING=${Libxml2_LIBRARIES}
- -DOPT_COLLADA14:BOOL=ON
- -DCOLLADA_DOM_INCLUDE_INSTALL_DIR:PATH=${LIBS_PREBUILT_DIR}/include/collada
+ PROJECT colladadom
+ SOURCE_DIR ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ BINARY_DIR ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ TARGET collada14dom
+ CMAKE_FLAGS
+ -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
+ -DCMAKE_OSX_ARCHITECTURES:STRING=${CMAKE_OSX_ARCHITECTURES}
+ -DCMAKE_OSX_DEPLOYMENT_TARGET:STRING=${CMAKE_OSX_DEPLOYMENT_TARGET}
+ -DCMAKE_INSTALL_PREFIX:PATH=${LIBS_PREBUILT_DIR}
+ -DCMAKE_CXX_STANDARD:STRING=17
+ -DCMAKE_CXX_FLAGS:STRING=-I${Minizip_INCLUDE_DIRS}
+ -DBoost_CFLAGS:STRING=${BOOST_CFLAGS}
+ -DEXTRA_COMPILE_FLAGS:STRING=-I${Libxml2_INCLUDE_DIRS}
+ "-DCMAKE_SHARED_LINKER_FLAGS:STRING=-L${Minizip_LIBRARY_DIRS} ${BOOST_LIBS}"
+ -DBoost_FILESYSTEM_LIBRARY:STRING=boost_filesystem${BOOST_LIBRARY_SUFFIX}
+ -DBoost_SYSTEM_LIBRARY:STRING=boost_system${BOOST_LIBRARY_SUFFIX}
+ -DZLIB_LIBRARIES:STRING=${Libxml2_LIBRARIES}
+ -DOPT_COLLADA14:BOOL=ON
+ -DCOLLADA_DOM_INCLUDE_INSTALL_DIR:PATH=${LIBS_PREBUILT_DIR}/include/collada
)
if (WINDOWS)
- execute_process(
- COMMAND MSBuild.exe ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/Project.slnx -p:Configuration=${CMAKE_BUILD_TYPE}
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
- OUTPUT_VARIABLE colladadom_installed
+ execute_process(
+ COMMAND MSBuild.exe ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/Project.slnx -p:Configuration=${CMAKE_BUILD_TYPE}
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ OUTPUT_VARIABLE colladadom_installed
)
- file(REMOVE_RECURSE ${LIBS_PREBUILT_DIR}/include/collada)
- file(
- COPY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/include
- DESTINATION ${LIBS_PREBUILT_DIR}/include
+ file(REMOVE_RECURSE ${LIBS_PREBUILT_DIR}/include/collada)
+ file(
+ COPY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/include
+ DESTINATION ${LIBS_PREBUILT_DIR}/include
)
- file(RENAME
- ${LIBS_PREBUILT_DIR}/include/include
- ${LIBS_PREBUILT_DIR}/include/collada
+ file(RENAME
+ ${LIBS_PREBUILT_DIR}/include/include
+ ${LIBS_PREBUILT_DIR}/include/collada
)
- file(MAKE_DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE})
- file(RENAME
- ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src/1.4/${CMAKE_BUILD_TYPE}/collada14dom.lib
- ${ARCH_PREBUILT_DIRS_RELEASE}/libcollada14dom23-s.lib
+ file(MAKE_DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE})
+ file(RENAME
+ ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11/src/1.4/${CMAKE_BUILD_TYPE}/collada14dom.lib
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libcollada14dom23-s.lib
)
elseif (${COLLADADOM_RESULT})
- execute_process(
- COMMAND ${CMAKE_MAKE_PROGRAM} install
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
- OUTPUT_VARIABLE colladadom_installed
+ execute_process(
+ COMMAND ${CMAKE_MAKE_PROGRAM} install
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/3p-colladadom-2.3-r11
+ OUTPUT_VARIABLE colladadom_installed
)
- file(RENAME
- ${ARCH_PREBUILT_DIRS}/libcollada14dom.a
- ${ARCH_PREBUILT_DIRS_RELEASE}/libcollada14dom.a
+ file(RENAME
+ ${ARCH_PREBUILT_DIRS}/libcollada14dom.a
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libcollada14dom.a
)
endif ()
file(WRITE ${PREBUILD_TRACKING_DIR}/colladadom_installed "${colladadom_installed}")
- endif ()
-
-else (TRUE)
-
-use_system_binary( colladadom )
-
-use_prebuilt_binary(colladadom)
-use_prebuilt_binary(minizip-ng) # needed for colladadom
-use_prebuilt_binary(libxml2)
-
-find_library(MINIZIPNG_LIBRARY
- NAMES
- minizip.lib
- libminizip.a
- PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
-
-target_link_libraries(ll::minizip-ng INTERFACE ${MINIZIPNG_LIBRARY})
-
-find_library(LIBXML2_LIBRARY
- NAMES
- libxml2.lib
- libxml2.a
- PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
-
-target_link_libraries(ll::libxml INTERFACE ${LIBXML2_LIBRARY})
-
-if (WINDOWS)
- target_link_libraries( ll::libxml INTERFACE Bcrypt.lib)
-endif()
-
-endif (TRUE)
+endif ()
target_include_directories( ll::colladadom SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include/collada
diff --git a/indra/cmake/LibVLCPlugin.cmake b/indra/cmake/LibVLCPlugin.cmake
index 981f020745..e8cd051021 100644
--- a/indra/cmake/LibVLCPlugin.cmake
+++ b/indra/cmake/LibVLCPlugin.cmake
@@ -27,11 +27,14 @@ if (DARWIN)
target_include_directories( ll::libvlc SYSTEM INTERFACE /Volumes/VLC\ media\ player/VLC.app/Contents/MacOS/include)
target_link_directories( ll::libvlc INTERFACE /Volumes/VLC\ media\ player/VLC.app/Contents/MacOS/lib)
target_link_libraries( ll::libvlc INTERFACE vlc vlccore )
-elseif (WINDOWS)
+elseif (WINDOWS OR USE_FLATPAK)
use_prebuilt_binary(vlc-bin)
+ if (WINDOWS)
+ set(LIB_SUFFIX lib)
+ endif ()
target_link_libraries( ll::libvlc INTERFACE
- libvlc.lib
- libvlccore.lib
+ ${LIB_SUFFIX}vlc
+ ${LIB_SUFFIX}vlccore
)
else ()
include(FindPkgConfig)
diff --git a/indra/cmake/Meshoptimizer.cmake b/indra/cmake/Meshoptimizer.cmake
index 225f44b1fb..e65d0cac71 100644
--- a/indra/cmake/Meshoptimizer.cmake
+++ b/indra/cmake/Meshoptimizer.cmake
@@ -16,20 +16,20 @@ if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu) OR CMAKE_
elseif (LINUX AND CMAKE_SYSTEM_PROCESSOR MATCHES x86_64 AND NOT (${LINUX_DISTRO} MATCHES gentoo))
use_prebuilt_binary(meshoptimizer)
elseif (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/meshoptimizer_installed OR NOT ${meshoptimizer_installed} EQUAL 0)
- if (NOT EXISTS ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1.tar.gz)
+ if (NOT EXISTS ${CMAKE_BINARY_DIR}/meshoptimizer-1.2.tar.gz)
file(DOWNLOAD
- https://github.com/zeux/meshoptimizer/archive/refs/tags/v1.0.1.tar.gz
- ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1.tar.gz
+ https://github.com/zeux/meshoptimizer/archive/refs/tags/v1.2.tar.gz
+ ${CMAKE_BINARY_DIR}/meshoptimizer-1.2.tar.gz
)
endif ()
file(ARCHIVE_EXTRACT
- INPUT ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1.tar.gz
+ INPUT ${CMAKE_BINARY_DIR}/meshoptimizer-1.2.tar.gz
DESTINATION ${CMAKE_BINARY_DIR}
)
try_compile(MESHOPTIMIZER_RESULT
PROJECT meshoptimizer
- SOURCE_DIR ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1
- BINARY_DIR ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1
+ SOURCE_DIR ${CMAKE_BINARY_DIR}/meshoptimizer-1.2
+ BINARY_DIR ${CMAKE_BINARY_DIR}/meshoptimizer-1.2
TARGET meshoptimizer
CMAKE_FLAGS
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
@@ -42,7 +42,7 @@ elseif (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRA
if (${MESHOPTIMIZER_RESULT})
execute_process(
COMMAND ${CMAKE_MAKE_PROGRAM} install
- WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/meshoptimizer-1.0.1
+ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/meshoptimizer-1.2
OUTPUT_VARIABLE meshoptimizer_installed
)
file(WRITE ${PREBUILD_TRACKING_DIR}/meshoptimizer_installed "${meshoptimizer_installed}")
diff --git a/indra/cmake/OPENAL.cmake b/indra/cmake/OPENAL.cmake
index 1b7f9b9071..dcb74ad36d 100644
--- a/indra/cmake/OPENAL.cmake
+++ b/indra/cmake/OPENAL.cmake
@@ -18,19 +18,26 @@ endif()
if (USE_OPENAL)
add_library( ll::openal INTERFACE IMPORTED )
-
- target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1)
- include(FindPkgConfig)
- pkg_check_modules(Openal REQUIRED freealut)
- target_include_directories(ll::openal SYSTEM INTERFACE ${Openal_INCLUDE_DIRS})
- target_link_directories(ll::openal INTERFACE ${Openal_LIBRARY_DIRS})
- target_link_libraries(ll::openal INTERFACE ${Openal_LIBRARIES})
- return ()
-
+ if (USE_FLATPAK)
target_include_directories( ll::openal SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/AL")
+ endif ()
target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1)
+ if (USE_FLATPAK)
use_prebuilt_binary(openal)
+ file(REMOVE
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so.1
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so.1.24.2
+ ${LIBS_PREBUILT_DIR}/include/AL/al.h
+ ${LIBS_PREBUILT_DIR}/include/AL/alc.h
+ ${LIBS_PREBUILT_DIR}/include/AL/alext.h
+ ${LIBS_PREBUILT_DIR}/include/AL/efx-creative.h
+ ${LIBS_PREBUILT_DIR}/include/AL/efx-presets.h
+ ${LIBS_PREBUILT_DIR}/include/AL/efx.h
+ )
+ endif ()
+ if (FALSE)
find_library(OPENAL_LIBRARY
NAMES
OpenAL32
@@ -38,7 +45,11 @@ if (USE_OPENAL)
libopenal.dylib
libopenal.so
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
+ endif ()
+ include(FindPkgConfig)
+ if (USE_FLATPAK)
+ pkg_search_module(Openal REQUIRED openal)
find_library(ALUT_LIBRARY
NAMES
alut
@@ -47,5 +58,12 @@ if (USE_OPENAL)
PATHS "${ARCH_PREBUILT_DIRS_RELEASE}" REQUIRED NO_DEFAULT_PATH)
target_link_libraries(ll::openal INTERFACE ${OPENAL_LIBRARY} ${ALUT_LIBRARY})
+ else ()
+ pkg_search_module(Openal REQUIRED freealut)
+ endif ()
+
+ target_include_directories(ll::openal SYSTEM INTERFACE ${Openal_INCLUDE_DIRS})
+ target_link_directories(ll::openal INTERFACE ${Openal_LIBRARY_DIRS})
+ target_link_libraries(ll::openal INTERFACE ${Openal_LIBRARIES})
endif ()
diff --git a/indra/cmake/OpenGL.cmake b/indra/cmake/OpenGL.cmake
index bf7cd8366a..5e00eff3b8 100644
--- a/indra/cmake/OpenGL.cmake
+++ b/indra/cmake/OpenGL.cmake
@@ -4,3 +4,8 @@ include(Variables)
include(Prebuilt)
include(FindOpenGL)
+if (USE_FLATPAK)
+ add_library(ll::glu INTERFACE IMPORTED)
+ use_prebuilt_binary(glu)
+ target_link_libraries(ll::glu INTERFACE GLU)
+endif ()
diff --git a/indra/cmake/UI.cmake b/indra/cmake/UI.cmake
index dc8d84217a..24dc121533 100644
--- a/indra/cmake/UI.cmake
+++ b/indra/cmake/UI.cmake
@@ -6,16 +6,19 @@ include(GLIB)
add_library( ll::uilibraries INTERFACE IMPORTED )
if (LINUX OR CMAKE_SYSTEM_NAME MATCHES FreeBSD)
+ if (USE_FLATPAK)
+ use_prebuilt_binary(fltk)
+ endif ()
target_compile_definitions(ll::uilibraries INTERFACE LL_FLTK=1 LL_X11=1 )
if( USE_CONAN )
return()
endif()
- if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
+ if (USE_FLATPAK OR (${LINUX_DISTRO} MATCHES debian) OR (${LINUX_DISTRO} MATCHES ubuntu))
include(FindPkgConfig)
- pkg_check_modules(Cairo REQUIRED cairo)
- target_include_directories(ll::uilibraries SYSTEM INTERFACE ${Cairo_INCLUDE_DIRS})
+ pkg_check_modules(CAIRO REQUIRED cairo)
+ target_include_directories(ll::uilibraries SYSTEM INTERFACE ${CAIRO_INCLUDE_DIRS})
endif ()
target_link_libraries( ll::uilibraries INTERFACE
@@ -51,8 +54,29 @@ if( WINDOWS )
)
endif()
-if (FALSE)
+if (USE_FLATPAK)
target_include_directories( ll::uilibraries SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include
)
+ pkg_check_modules(CAIRO-XLIB REQUIRED cairo-xlib)
+ pkg_check_modules(DBUS-1 REQUIRED dbus-1)
+ pkg_check_modules(LIBDECOR-0 REQUIRED libdecor-0)
+ pkg_check_modules(PANGO REQUIRED pango)
+ pkg_check_modules(PANGOCAIRO REQUIRED pangocairo)
+ pkg_check_modules(WAYLAND-CLIENT REQUIRED wayland-client)
+ pkg_check_modules(WAYLAND-CURSOR REQUIRED wayland-cursor)
+ pkg_check_modules(XKBCOMMON REQUIRED xkbcommon)
+ pkg_check_modules(XKBCOMMON-X11 REQUIRED xkbcommon-x11)
+ target_link_libraries(ll::uilibraries INTERFACE
+ ${CAIRO_LIBRARIES}
+ ${CAIRO-XLIB_LIBRARIES}
+ ${DBUS-1_LIBRARIES}
+ ${LIBDECOR-0_LIBRARIES}
+ ${PANGO_LIBRARIES}
+ ${PANGOCAIRO_LIBRARIES}
+ ${WAYLAND-CLIENT_LIBRARIES}
+ ${WAYLAND-CURSOR_LIBRARIES}
+ ${XKBCOMMON_LIBRARIES}
+ ${XKBCOMMON-X11_LIBRARIES}
+ )
endif ()
diff --git a/indra/cmake/UnixInstall.cmake b/indra/cmake/UnixInstall.cmake
index b82cbbcc2f..34c3ed0ec9 100644
--- a/indra/cmake/UnixInstall.cmake
+++ b/indra/cmake/UnixInstall.cmake
@@ -6,23 +6,25 @@ set(INSTALL OFF CACHE BOOL
"Generate install target.")
if (INSTALL)
- if (CMAKE_SYSTEM_NAME MATCHES FreeBSD)
+ if (USE_FLATPAK OR CMAKE_SYSTEM_NAME MATCHES FreeBSD)
set(INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH
"Top-level installation directory.")
- else (CMAKE_SYSTEM_NAME MATCHES FreeBSD)
+ else ()
set(INSTALL_PREFIX /usr CACHE PATH
"Top-level installation directory.")
- endif (CMAKE_SYSTEM_NAME MATCHES FreeBSD)
+ endif ()
- if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
- set(_LIB lib/${ARCH}-linux-gnu)
+ if (USE_FLATPAK)
+ set(_LIB lib)
+ elseif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
+ set(_LIB lib/${ARCH}-linux-gnu/${VIEWER_BINARY_NAME})
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
- set(_LIB lib${ADDRESS_SIZE})
+ set(_LIB lib${ADDRESS_SIZE}/${VIEWER_BINARY_NAME})
else ()
- set(_LIB lib)
+ set(_LIB lib/${VIEWER_BINARY_NAME})
endif ()
- set(INSTALL_LIBRARY_DIR ${INSTALL_PREFIX}/${_LIB}/${VIEWER_BINARY_NAME} CACHE PATH
+ set(INSTALL_LIBRARY_DIR ${INSTALL_PREFIX}/${_LIB} CACHE PATH
"Installation directory for dynamic library files and their resources.")
set(INSTALL_SHARE_DIR ${INSTALL_PREFIX}/share CACHE PATH
@@ -35,13 +37,17 @@ if (INSTALL)
set(APP_SHARE_DIR ${INSTALL_SHARE_DIR}/${VIEWER_BINARY_NAME}
CACHE PATH
"Installation directory for read-only data files.")
- if (${LINUX_DISTRO} MATCHES arch)
+ if (USE_FLATPAK)
+ set(APP_LIBEXEC_DIR ${INSTALL_PREFIX}/libexec
+ CACHE PATH
+ "Installation directory for non-manual executables.")
+ elseif (${LINUX_DISTRO} MATCHES arch)
set(APP_LIBEXEC_DIR ${INSTALL_PREFIX}/lib/${VIEWER_BINARY_NAME}
CACHE PATH
"Installation directory for non-manual executables.")
- else (${LINUX_DISTRO} MATCHES arch)
+ else ()
set(APP_LIBEXEC_DIR ${INSTALL_PREFIX}/libexec/${VIEWER_BINARY_NAME}
CACHE PATH
"Installation directory for non-manual executables.")
- endif (${LINUX_DISTRO} MATCHES arch)
+ endif ()
endif (INSTALL)
diff --git a/indra/cmake/ViewerMiscLibs.cmake b/indra/cmake/ViewerMiscLibs.cmake
index 65b8e5cfc0..aece8f834c 100644
--- a/indra/cmake/ViewerMiscLibs.cmake
+++ b/indra/cmake/ViewerMiscLibs.cmake
@@ -16,7 +16,7 @@ endif()
use_prebuilt_binary(slvoice)
endif (FALSE)
-if (DARWIN)
+if (DARWIN OR USE_FLATPAK)
use_prebuilt_binary(nanosvg)
endif ()
use_prebuilt_binary(viewer-fonts)
diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt
index 0aaa7433ce..1f7b3163c6 100644
--- a/indra/llcommon/CMakeLists.txt
+++ b/indra/llcommon/CMakeLists.txt
@@ -303,7 +303,7 @@ elseif ($ENV{MSYSTEM_CARCH} MATCHES aarch64)
target_include_directories(llcommon PUBLIC ${prefix_result}/../include/sse2neon)
endif ()
-if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu) OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed))
+if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu) OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64 OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64))
target_include_directories(llcommon PUBLIC ${LIBS_PREBUILT_DIR}/include)
endif ()
diff --git a/indra/llplugin/llpluginclassmedia.cpp b/indra/llplugin/llpluginclassmedia.cpp
index 34f1b83b6d..39f3bdce6d 100644
--- a/indra/llplugin/llpluginclassmedia.cpp
+++ b/indra/llplugin/llpluginclassmedia.cpp
@@ -1015,7 +1015,7 @@ void LLPluginClassMedia::enableMediaPluginDebugging( bool enable )
sendMessage( message );
}
-#if LL_LINUX
+#if LL_LINUX || __FreeBSD__
void LLPluginClassMedia::enablePipeWireVolumeCatcher( bool enable )
{
LLPluginMessage message(LLPLUGIN_MESSAGE_CLASS_MEDIA, "enable_pipewire_volume_catcher");
diff --git a/indra/llplugin/llpluginclassmedia.h b/indra/llplugin/llpluginclassmedia.h
index 91901719d3..944108aa10 100644
--- a/indra/llplugin/llpluginclassmedia.h
+++ b/indra/llplugin/llpluginclassmedia.h
@@ -134,7 +134,7 @@ public:
// Text may be unicode (utf8 encoded)
bool textInput(const std::string &text, MASK modifiers, LLSD native_key_data);
-#if LL_LINUX
+#if LL_LINUX || __FreeBSD__
void enablePipeWireVolumeCatcher( bool enable );
#endif
diff --git a/indra/llplugin/slplugin/CMakeLists.txt b/indra/llplugin/slplugin/CMakeLists.txt
index 38f4c92b09..f7adb9404b 100644
--- a/indra/llplugin/slplugin/CMakeLists.txt
+++ b/indra/llplugin/slplugin/CMakeLists.txt
@@ -61,6 +61,13 @@ elseif (DARWIN)
)
endif ()
+if (CMAKE_BUILD_TYPE MATCHES Release AND (CMAKE_CXX_COMPILER_ID STREQUAL Clang OR CMAKE_CXX_COMPILER_ID MATCHES GNU))
+ add_custom_command(
+ TARGET ${PROJECT_NAME} POST_BUILD
+ COMMAND ${CMAKE_STRIP} ${PROJECT_NAME}
+ )
+endif ()
+
if (BUILD_SHARED_LIBS)
set_target_properties(SLPlugin PROPERTIES LINK_FLAGS_RELEASE
"${LINK_FLAGS_RELEASE} -Wl,--allow-shlib-undefined")
@@ -69,6 +76,8 @@ endif ()
if (INSTALL)
if (DARWIN OR WINDOWS)
install(TARGETS ${PROJECT_NAME} DESTINATION .)
+ elseif (USE_FLATPAK)
+ install(TARGETS ${PROJECT_NAME} DESTINATION libexec)
elseif (${LINUX_DISTRO} MATCHES arch)
install(TARGETS ${PROJECT_NAME} DESTINATION lib/${VIEWER_BINARY_NAME})
else ()
diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt
index 6de5685517..d7a1d76630 100644
--- a/indra/llrender/CMakeLists.txt
+++ b/indra/llrender/CMakeLists.txt
@@ -103,7 +103,12 @@ target_link_libraries(llrender
llwindow
ll::freetype
OpenGL::GL
- OpenGL::GLU
)
+if (USE_FLATPAK)
+ target_link_libraries(${PROJECT_NAME} ll::glu)
+else ()
+ target_link_libraries(${PROJECT_NAME} OpenGL::GLU)
+endif ()
+
include(LibraryInstall)
diff --git a/indra/llwebrtc/CMakeLists.txt b/indra/llwebrtc/CMakeLists.txt
index 1c53b0263c..6fb4616087 100644
--- a/indra/llwebrtc/CMakeLists.txt
+++ b/indra/llwebrtc/CMakeLists.txt
@@ -69,6 +69,14 @@ ADD_CUSTOM_COMMAND(TARGET llwebrtc POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different
$<TARGET_FILE:llwebrtc>
${SHARED_LIB_STAGING_DIR})
+
+if (CMAKE_BUILD_TYPE MATCHES Release AND (CMAKE_CXX_COMPILER_ID STREQUAL Clang OR CMAKE_CXX_COMPILER_ID MATCHES GNU))
+ add_custom_command(
+ TARGET ${PROJECT_NAME} POST_BUILD
+ COMMAND ${CMAKE_STRIP} lib${PROJECT_NAME}.so
+ )
+endif ()
+
# Add tests
if (LL_TESTS)
endif (LL_TESTS)
@@ -76,6 +84,8 @@ endif (LL_TESTS)
if (INSTALL)
if (DARWIN)
set(_LIB ../Frameworks)
+ elseif (USE_FLATPAK)
+ set(_LIB lib)
elseif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
set(_LIB lib/${ARCH}-linux-gnu/${VIEWER_BINARY_NAME})
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
diff --git a/indra/llwindow/llkeyboardmacosx.cpp b/indra/llwindow/llkeyboardmacosx.cpp
index 89ff7c6d3f..101e035135 100644
--- a/indra/llwindow/llkeyboardmacosx.cpp
+++ b/indra/llwindow/llkeyboardmacosx.cpp
@@ -32,9 +32,32 @@
#include "llwindowmacosx-objc.h"
+#include <CoreServices/CoreServices.h> // Required for TIS functions
+#include <Carbon/Carbon.h>
+
LLKeyboardMacOSX::LLKeyboardMacOSX()
{
// Virtual keycode mapping table. Yes, this was as annoying to generate as it looks.
+
+ bool isAzerty = false;
+
+ TISInputSourceRef source = TISCopyCurrentKeyboardLayoutInputSource();
+ if (source)
+ {
+ CFStringRef inputSourceID = (CFStringRef)TISGetInputSourceProperty(source, kTISPropertyInputSourceID);
+ if (inputSourceID)
+ {
+ char buf[128];
+ // Convert CFString to a C-string for easy comparison
+ if (CFStringGetCString(inputSourceID, buf, sizeof(buf), kCFStringEncodingUTF8))
+ {
+ // On macOS, AZERTY layouts are identified by "French" in their Input Source ID
+ isAzerty = (strstr(buf, "French") != nullptr);
+ }
+ }
+ CFRelease(source);
+ }
+
mTranslateKeyMap[0x00] = 'A';
mTranslateKeyMap[0x01] = 'S';
mTranslateKeyMap[0x02] = 'D';
@@ -52,6 +75,7 @@ LLKeyboardMacOSX::LLKeyboardMacOSX()
mTranslateKeyMap[0x0f] = 'R';
mTranslateKeyMap[0x10] = 'Y';
mTranslateKeyMap[0x11] = 'T';
+
mTranslateKeyMap[0x12] = '1';
mTranslateKeyMap[0x13] = '2';
mTranslateKeyMap[0x14] = '3';
@@ -132,6 +156,16 @@ LLKeyboardMacOSX::LLKeyboardMacOSX()
mTranslateKeyMap[0x7d] = KEY_DOWN;
mTranslateKeyMap[0x7e] = KEY_UP;
+ // azerty fix
+ if(isAzerty)
+ {
+ LL_WARNS() << "keyboard is AZERTY" << LL_ENDL;
+ mTranslateKeyMap[0x00] = 'Q';
+ mTranslateKeyMap[0x06] = 'W';
+ mTranslateKeyMap[0x0c] = 'A';
+ mTranslateKeyMap[0x0d] = 'Z';
+ }
+
// Build inverse map
std::map<U16, KEY>::iterator iter;
for (iter = mTranslateKeyMap.begin(); iter != mTranslateKeyMap.end(); iter++)
diff --git a/indra/media_plugins/cef/CMakeLists.txt b/indra/media_plugins/cef/CMakeLists.txt
index 4736eef420..1a4d61616c 100644
--- a/indra/media_plugins/cef/CMakeLists.txt
+++ b/indra/media_plugins/cef/CMakeLists.txt
@@ -52,7 +52,10 @@ if (LINUX)
list(APPEND media_plugin_cef_SOURCE_FILES ${LINUX_VOLUME_CATCHER})
set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--build-id")
if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora))
- set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH};${INSTALL_PREFIX}/${_LIB}/cef)
+ if (${LINUX_DISTRO} MATCHES fedora)
+ set(LIB_SUFFIX ${ADDRESS_SIZE})
+ endif ()
+ set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH};${INSTALL_PREFIX}/lib${LIB_SUFFIX}/cef)
endif ()
list(APPEND media_plugin_cef_LINK_LIBRARIES llwindow )
elseif (DARWIN)
@@ -130,6 +133,13 @@ if (DARWIN)
endif (DARWIN)
+if (CMAKE_BUILD_TYPE MATCHES Release AND (CMAKE_CXX_COMPILER_ID STREQUAL Clang OR CMAKE_CXX_COMPILER_ID MATCHES GNU))
+ add_custom_command(
+ TARGET ${PROJECT_NAME} POST_BUILD
+ COMMAND ${CMAKE_STRIP} lib${PROJECT_NAME}.so
+ )
+endif ()
+
if (INSTALL)
if (DARWIN)
set(_LIB SLPlugin.app/Contents/Frameworks)
@@ -147,14 +157,23 @@ if (INSTALL)
DESTINATION ${_LIB}
)
elseif (LINUX)
- if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
+ if (USE_FLATPAK)
+ set(_LIB lib)
+ elseif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
set(_LIB lib/${ARCH}-linux-gnu/${VIEWER_BINARY_NAME})
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
set(_LIB lib${ADDRESS_SIZE}/${VIEWER_BINARY_NAME})
else ()
set(_LIB lib/${VIEWER_BINARY_NAME})
endif ()
- if (${LINUX_DISTRO} MATCHES arch)
+ if (USE_FLATPAK)
+ install(
+ PROGRAMS
+ ${AUTOBUILD_INSTALL_DIR}/bin/release/chrome-sandbox
+ ${AUTOBUILD_INSTALL_DIR}/bin/release/dullahan_host
+ DESTINATION libexec
+ )
+ elseif (${LINUX_DISTRO} MATCHES arch)
install(
PROGRAMS ${AUTOBUILD_INSTALL_DIR}/bin/release/dullahan_host
DESTINATION lib/${VIEWER_BINARY_NAME}
@@ -173,26 +192,15 @@ if (INSTALL)
)
endif ()
if (NOT (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora)))
- file(MAKE_DIRECTORY ${AUTOBUILD_INSTALL_DIR}/lib/release/${VIEWER_BINARY_NAME})
- file(CREATE_LINK
- "../libGLESv2.so"
- "${AUTOBUILD_INSTALL_DIR}/lib/release/${VIEWER_BINARY_NAME}/libGLESv2.so"
- SYMBOLIC
- )
- file(CREATE_LINK
- "../libvulkan.so.1"
- "${AUTOBUILD_INSTALL_DIR}/lib/release/${VIEWER_BINARY_NAME}/libvulkan.so.1"
- SYMBOLIC
- )
install(
FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libEGL.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libGLESv2.so
${ARCH_PREBUILT_DIRS_RELEASE}/libcef.so
${ARCH_PREBUILT_DIRS_RELEASE}/libvk_swiftshader.so
- ${ARCH_PREBUILT_DIRS_RELEASE}/libEGL.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvulkan.so.1
${ARCH_PREBUILT_DIRS_RELEASE}/v8_context_snapshot.bin
${ARCH_PREBUILT_DIRS_RELEASE}/vk_swiftshader_icd.json
- ${ARCH_PREBUILT_DIRS_RELEASE}/${VIEWER_BINARY_NAME}/libGLESv2.so
- ${ARCH_PREBUILT_DIRS_RELEASE}/${VIEWER_BINARY_NAME}/libvulkan.so.1
${AUTOBUILD_INSTALL_DIR}/resources/chrome_100_percent.pak
${AUTOBUILD_INSTALL_DIR}/resources/chrome_200_percent.pak
${AUTOBUILD_INSTALL_DIR}/resources/icudtl.dat
diff --git a/indra/media_plugins/libvlc/CMakeLists.txt b/indra/media_plugins/libvlc/CMakeLists.txt
index 96790a8037..24174a6ef0 100644
--- a/indra/media_plugins/libvlc/CMakeLists.txt
+++ b/indra/media_plugins/libvlc/CMakeLists.txt
@@ -72,6 +72,13 @@ if (DARWIN)
endif (DARWIN)
+if (CMAKE_BUILD_TYPE MATCHES Release AND (CMAKE_CXX_COMPILER_ID STREQUAL Clang OR CMAKE_CXX_COMPILER_ID MATCHES GNU))
+ add_custom_command(
+ TARGET ${PROJECT_NAME} POST_BUILD
+ COMMAND ${CMAKE_STRIP} lib${PROJECT_NAME}.so
+ )
+endif ()
+
if (INSTALL)
if (DARWIN)
set(_LIB SLPlugin.app/Contents/Frameworks)
@@ -87,6 +94,22 @@ if (INSTALL)
/Volumes/VLC\ media\ player/VLC.app/Contents/MacOS/lib/libvlccore.dylib
DESTINATION ${_LIB}/plugins
)
+ elseif (USE_FLATPAK)
+ set(_LIB lib)
+ install(
+ DIRECTORY ${ARCH_PREBUILT_DIRS_RELEASE}/vlc
+ DESTINATION ${_LIB}
+ )
+ install(
+ FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlc.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlc.so.5
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlc.so.5.6.1
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlccore.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlccore.so.9
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvlccore.so.9.0.1
+ DESTINATION ${_LIB}
+ )
elseif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
set(_LIB lib/${ARCH}-linux-gnu/${VIEWER_BINARY_NAME})
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt
index e070fb3da3..6ff0b3977a 100644
--- a/indra/newview/CMakeLists.txt
+++ b/indra/newview/CMakeLists.txt
@@ -1874,6 +1874,13 @@ else ()
)
endif ()
+if (CMAKE_BUILD_TYPE MATCHES Release AND (CMAKE_CXX_COMPILER_ID STREQUAL Clang OR CMAKE_CXX_COMPILER_ID MATCHES GNU))
+ add_custom_command(
+ TARGET ${VIEWER_BINARY_NAME} POST_BUILD
+ COMMAND ${CMAKE_STRIP} ${VIEWER_BINARY_NAME}
+ )
+endif ()
+
if(USE_PRECOMPILED_HEADERS)
target_precompile_headers( ${VIEWER_BINARY_NAME} PRIVATE llviewerprecompiledheaders.h )
endif(USE_PRECOMPILED_HEADERS)
@@ -2202,15 +2209,15 @@ endif ()
if (ENABLE_MEDIA_PLUGINS)
target_link_libraries(${VIEWER_BINARY_NAME} ll::libvlc )
+ if (NOT (CMAKE_SYSTEM_NAME MATCHES FreeBSD))
+ target_link_libraries(${VIEWER_BINARY_NAME} ll::cef )
+ endif ()
# Tell the viewer source which media-library version headers are
# actually available in this build, so version reporting in
# llappviewer.cpp is gated on the build configuration rather than on
# a CPU/compiler macro. Mirrors the link availability above exactly.
target_compile_definitions(${VIEWER_BINARY_NAME} PRIVATE LL_VLC=1)
- if (DARWIN OR LINUX)
- target_link_libraries(${VIEWER_BINARY_NAME} ll::cef )
- target_compile_definitions(${VIEWER_BINARY_NAME} PRIVATE LL_CEF=1)
- endif ()
+ target_compile_definitions(${VIEWER_BINARY_NAME} PRIVATE LL_CEF=1)
endif ()
if (USE_DISCORD)
@@ -2380,10 +2387,10 @@ if (LINUX)
set(CPACK_DEBIAN_PACKAGE_SECTION net
CACHE STRING "Debian package section.")
if (${LINUX_DISTRO} MATCHES debian)
- set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.83.0, libboost-filesystem1.83.0, libboost-program-options1.83.0, libboost-regex1.83.0, libboost-thread1.83.0, libboost-url1.83.0, libexpat1, libfltk1.4, libgles-dev, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
+ set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.83.0, libboost-filesystem1.83.0, libboost-program-options1.83.0, libboost-regex1.83.0, libboost-thread1.83.0, libboost-url1.83.0, libexpat1, libfltk1.4, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
CACHE STRING "Debian package dependencies.")
else ()
- set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.90.0, libboost-filesystem1.90.0, libboost-program-options1.90.0, libboost-regex1.90.0, libboost-thread1.90.0, libboost-url1.90.0, libexpat1, libfltk1.4, libgles-dev, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
+ set(CPACK_DEBIAN_PACKAGE_DEPENDS "libalut0, libaprutil1t64, libboost-fiber1.90.0, libboost-filesystem1.90.0, libboost-program-options1.90.0, libboost-regex1.90.0, libboost-thread1.90.0, libboost-url1.90.0, libexpat1, libfltk1.4, libglu1-mesa, libhunspell-1.7-0, libmeshoptimizer2d, libminizip1t64, libnghttp2-14, libnspr4, libnss3, libopenjp2-7, libsdl2-2.0-0, libvlc5, libvorbisenc2, libvorbisfile3, vlc-plugin-base"
CACHE STRING "Debian package dependencies.")
endif ()
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed))
diff --git a/indra/newview/FixBundle.cmake.in b/indra/newview/FixBundle.cmake.in
index d915cac35b..1d4192c94c 100644
--- a/indra/newview/FixBundle.cmake.in
+++ b/indra/newview/FixBundle.cmake.in
@@ -94,17 +94,14 @@ file(CREATE_LINK
"${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks/libicuuc.78.dylib"
SYMBOLIC
)
-if(@ENABLE_MEDIA_PLUGINS@)
file(CREATE_LINK
"../../../../Frameworks/Chromium Embedded Framework.framework"
"${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks/Chromium Embedded Framework.framework"
SYMBOLIC
)
-endif()
fixup_bundle(${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/MacOS/${VIEWER_CHANNEL} "" "${dirs}")
-if(@ENABLE_MEDIA_PLUGINS@)
file(CHMOD
"${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper.app/Contents/MacOS/DullahanHelper"
"${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper (Alerts).app/Contents/MacOS/DullahanHelper (Alerts)"
@@ -113,9 +110,7 @@ file(CHMOD
"${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper (Renderer).app/Contents/MacOS/DullahanHelper (Renderer)"
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
)
-endif()
-if(@ENABLE_MEDIA_PLUGINS@)
execute_process(
COMMAND hdiutil detach /Volumes/VLC\ media\ player
COMMAND lipo libalut.0.dylib
@@ -163,9 +158,9 @@ execute_process(
COMMAND lipo libbz2.1.0.8.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libbz2.1.0.8.dylib
- COMMAND lipo libexpat.1.12.1.dylib
+ COMMAND lipo libexpat.1.12.2.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
- -output libexpat.1.12.1.dylib
+ -output libexpat.1.12.2.dylib
COMMAND lipo libfreetype.6.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libfreetype.6.dylib
@@ -238,443 +233,3 @@ execute_process(
WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Frameworks
ERROR_QUIET
)
-endif()
-
-message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Running a native self-built viewer on it without correct codesigning would lead to a crash. Also, codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libEGL.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libGLESv2.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libcef_sandbox.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libvk_swiftshader.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework
- Frameworks/libalut.0.dylib
- Frameworks/libapr-1.0.dylib
- Frameworks/libaprutil-1.0.dylib
- Frameworks/libboost_atomic-mt.dylib
- Frameworks/libboost_context-mt.dylib
- Frameworks/libboost_fiber-mt.dylib
- Frameworks/libboost_filesystem-mt.dylib
- Frameworks/libboost_program_options-mt.dylib
- Frameworks/libboost_regex-mt.dylib
- Frameworks/libboost_system-mt.dylib
- Frameworks/libboost_thread-mt.dylib
- Frameworks/libboost_url-mt.dylib
- Frameworks/libbrotlicommon.1.2.0.dylib
- Frameworks/libbrotlidec.1.2.0.dylib
- Frameworks/libbz2.1.0.8.dylib
- Frameworks/libdiscord_partner_sdk.dylib
- Frameworks/libexpat.1.12.1.dylib
- Frameworks/libfreetype.6.dylib
- Frameworks/libhunspell-1.7.0.dylib
- Frameworks/libiconv.2.dylib
- Frameworks/libicudata.78.3.dylib
- Frameworks/libicui18n.78.3.dylib
- Frameworks/libicuuc.78.3.dylib
- Frameworks/libjpeg.8.3.2.dylib
- Frameworks/libllwebrtc.dylib
- Frameworks/libminizip.1.dylib
- Frameworks/libncurses.6.dylib
- Frameworks/libndofdev.dylib
- Frameworks/libnghttp2.14.dylib
- Frameworks/libogg.0.dylib
- Frameworks/libopenal.1.25.1.dylib
- Frameworks/libopenjp2.2.5.4.dylib
- Frameworks/libpng16.16.dylib
- Frameworks/libvlc.5.dylib
- Frameworks/libvlccore.9.dylib
- Frameworks/libvorbis.0.dylib
- Frameworks/libvorbisenc.2.dylib
- Frameworks/libvorbisfile.3.dylib
- Frameworks/libxml2.16.dylib
- Frameworks/libz.1.3.2.dylib
- Resources/libndofdev.dylib
- Resources/SLPlugin.app/Contents/Frameworks/media_plugin_cef.dylib
- Resources/SLPlugin.app/Contents/Frameworks/media_plugin_libvlc.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_concat_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_imem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_mms_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_file_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_http_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_livehttp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_rist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_shout_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_srt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_udp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_realrtsp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_srt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadaptive_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsfsstorage_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsvorepository_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadjust_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadpcm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaes3_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libafile_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaiff_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libalphamask_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libamem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libanaglyph_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libantiflicker_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaom_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaraw_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libarchive_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaribsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libasf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libattachment_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libau_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudio_format_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_a_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_v_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudioscrobbler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiotoolboxmidi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libauhal_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavaudiocapture_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcapture_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcodec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libball_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libblend_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libblendbench_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluescreen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-awt-j2se-1.4.0.jar
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-j2se-1.4.0.jar
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbonjour_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_block_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_read_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcanvas_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaopengllayer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdda_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libchain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libchorus_flanger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libci_filters_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libclone_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcolorthres_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcompressor_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libconsole_logger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcroppadd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvdsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdav1d_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdcp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libddummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdecomp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdeinterlace_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_cdg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_chromecast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_stl_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemuxdump_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdiracsys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdirectory_demux_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdmxmus_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdolby_surround_decoder_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvbsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdnav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdread_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdynamicoverlay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libedgedetection_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libedummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libequalizer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liberase_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libes_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libexport_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libextract_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfaad_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_keystore_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_logger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfilesystem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfingerprinter_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflacsys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflaschen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfloat_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfolder_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreetype_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreeze_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libftp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libg711_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgaussianblur_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgestures_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libglconv_cvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgme_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgnutls_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgoom_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradfun_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradient_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrey_yuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libh26x_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhds_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libheadphone_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhotkeys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhqdn3d_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_10_p010_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_nv12_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_i420_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libidummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libimage_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libimem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinflate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinteger_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinvert_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkaraoke_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkeychain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibass_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibbluray_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblive555_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblpcm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblua_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmacosx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmad_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmagnify_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmarq_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmediadirs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmemory_keystore_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmirror_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmkv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmod_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmono_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmosaic_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotion_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotionblur_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotiondetect_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmp4_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpg123_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpgv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_asf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_avi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mp4_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mpjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ogg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_wav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libncurses_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnetsync_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnfs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnormvol_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnoseek_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsspeechsynthesizer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libogg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboggspots_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldmovie_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldrc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libopus_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libosx_notifications_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_a52_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_av1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_copy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dirac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_flac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_h264_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_hevc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mlp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4audio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4video_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_vc1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libparam_eq_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libplaylist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpng_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpodcast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libposterize_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpostproc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libprefetch_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpsychedelic_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpuzzle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpva_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawaud_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawdv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libreal_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librecord_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libremap_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libremoteosd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libripple_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librotate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librss_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librtp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librtpvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librv32_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsamplerate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsap_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsatip_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscale_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_pitch_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscene_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libschroedinger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscreen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte18_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte27_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsdp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsecuretransport_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsepia_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsftp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsharpen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libshm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsimple_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libskiptags_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsmf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatialaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatializer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspdif_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_resampler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspudec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstats_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstereo_widen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstl_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_autodel_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_bridge_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromaprint_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromecast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_cycle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_delay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_description_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_display_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_duplicate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_es_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_gather_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_mosaic_bridge_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_record_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_rtp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_setid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_smem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_standard_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_stats_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_transcode_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdelay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubstx3g_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsusf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubtitle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsvcdsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libswscale_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsyslog_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libt140_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtaglib_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtcp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtelx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtextst_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtheora_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtimecode_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtospdif_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtransform_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtrivial_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtta_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libttml_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtwolame_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libty_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libudp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libugly_resampler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libuleaddvaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libupnp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvc1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvcd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdr_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvhs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvideotoolbox_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvisual_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlc.5.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlccore.9.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvmem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvobsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvoc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvod_rtsp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvorbis_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvout_macosx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwall_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwave_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwebvtt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx26410b_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx264_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx265_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libxa_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libxml_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuvp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i420_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i422_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libzvbi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Alerts\).app/Contents/MacOS/DullahanHelper\ \(Alerts\)
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(GPU\).app/Contents/MacOS/DullahanHelper\ \(GPU\)
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Plugin\).app/Contents/MacOS/DullahanHelper\ \(Plugin\)
- WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents
- )
-if(@ENABLE_MEDIA_PLUGINS@)
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- DullahanHelper.app
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- DullahanHelper\ \(Renderer\).app/Contents/MacOS/DullahanHelper\ \(Renderer\)
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --deep
- DullahanHelper\ \(Alerts\).app
- DullahanHelper\ \(GPU\).app
- DullahanHelper\ \(Plugin\).app
- WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- --deep
- DullahanHelper\ \(Renderer\).app
- WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
- )
-endif()
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- SLPlugin.app
- WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- -i net.${VIEWER_BINARY_NAME}.viewer
- ${VIEWER_CHANNEL}.app
- WORKING_DIRECTORY ${viewer_BINARY_DIR}
- )
diff --git a/indra/newview/FixPackage.cmake.in b/indra/newview/FixPackage.cmake.in
index 4ae777c2f4..26fd3ccff7 100644
--- a/indra/newview/FixPackage.cmake.in
+++ b/indra/newview/FixPackage.cmake.in
@@ -158,9 +158,9 @@ execute_process(
COMMAND lipo libbz2.1.0.8.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libbz2.1.0.8.dylib
- COMMAND lipo libexpat.1.12.1.dylib
+ COMMAND lipo libexpat.1.12.2.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
- -output libexpat.1.12.1.dylib
+ -output libexpat.1.12.2.dylib
COMMAND lipo libfreetype.6.dylib
-thin ${CMAKE_OSX_ARCHITECTURES}
-output libfreetype.6.dylib
@@ -233,439 +233,3 @@ execute_process(
WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Frameworks
ERROR_QUIET
)
-
-message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Running a native self-built viewer on it without correct codesigning would lead to a crash. Also, codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libEGL.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libGLESv2.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libcef_sandbox.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libvk_swiftshader.dylib
- Frameworks/Chromium\ Embedded\ Framework.framework
- Frameworks/libalut.0.dylib
- Frameworks/libapr-1.0.dylib
- Frameworks/libaprutil-1.0.dylib
- Frameworks/libboost_atomic-mt.dylib
- Frameworks/libboost_context-mt.dylib
- Frameworks/libboost_fiber-mt.dylib
- Frameworks/libboost_filesystem-mt.dylib
- Frameworks/libboost_program_options-mt.dylib
- Frameworks/libboost_regex-mt.dylib
- Frameworks/libboost_system-mt.dylib
- Frameworks/libboost_thread-mt.dylib
- Frameworks/libboost_url-mt.dylib
- Frameworks/libbrotlicommon.1.2.0.dylib
- Frameworks/libbrotlidec.1.2.0.dylib
- Frameworks/libbz2.1.0.8.dylib
- Frameworks/libdiscord_partner_sdk.dylib
- Frameworks/libexpat.1.12.1.dylib
- Frameworks/libfreetype.6.dylib
- Frameworks/libhunspell-1.7.0.dylib
- Frameworks/libiconv.2.dylib
- Frameworks/libicudata.78.3.dylib
- Frameworks/libicui18n.78.3.dylib
- Frameworks/libicuuc.78.3.dylib
- Frameworks/libjpeg.8.3.2.dylib
- Frameworks/libllwebrtc.dylib
- Frameworks/libminizip.1.dylib
- Frameworks/libncurses.6.dylib
- Frameworks/libndofdev.dylib
- Frameworks/libnghttp2.14.dylib
- Frameworks/libogg.0.dylib
- Frameworks/libopenal.1.25.1.dylib
- Frameworks/libopenjp2.2.5.4.dylib
- Frameworks/libpng16.16.dylib
- Frameworks/libvlc.5.dylib
- Frameworks/libvlccore.9.dylib
- Frameworks/libvorbis.0.dylib
- Frameworks/libvorbisenc.2.dylib
- Frameworks/libvorbisfile.3.dylib
- Frameworks/libxml2.16.dylib
- Frameworks/libz.1.3.2.dylib
- Resources/libndofdev.dylib
- Resources/SLPlugin.app/Contents/Frameworks/media_plugin_cef.dylib
- Resources/SLPlugin.app/Contents/Frameworks/media_plugin_libvlc.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_concat_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_imem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_mms_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_file_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_http_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_livehttp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_rist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_shout_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_srt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_udp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_realrtsp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_srt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadaptive_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsfsstorage_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsvorepository_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadjust_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadpcm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libadummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaes3_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libafile_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaiff_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libalphamask_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libamem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libanaglyph_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libantiflicker_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaom_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaraw_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libarchive_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaribsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libasf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libattachment_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libau_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudio_format_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_a_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_v_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudioscrobbler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiotoolboxmidi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libauhal_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavaudiocapture_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcapture_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcodec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libavi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libball_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libblend_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libblendbench_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluescreen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-awt-j2se-1.4.0.jar
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-j2se-1.4.0.jar
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libbonjour_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_block_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_read_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcanvas_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaopengllayer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdda_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libchain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libchorus_flanger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libci_filters_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libclone_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcolorthres_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcompressor_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libconsole_logger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcroppadd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvdsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdav1d_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdcp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libddummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdecomp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdeinterlace_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_cdg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_chromecast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_stl_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemuxdump_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdiracsys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdirectory_demux_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdmxmus_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdolby_surround_decoder_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvbsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdnav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdread_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libdynamicoverlay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libedgedetection_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libedummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libequalizer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liberase_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libes_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libexport_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libextract_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfaad_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_keystore_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_logger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfilesystem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfingerprinter_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflacsys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libflaschen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfloat_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfolder_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreetype_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreeze_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libftp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libg711_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgaussianblur_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgestures_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libglconv_cvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgme_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgnutls_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgoom_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradfun_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradient_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrey_yuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libh26x_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhds_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libheadphone_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhotkeys_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhqdn3d_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_10_p010_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_nv12_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_i420_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_mmx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_sse2_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libidummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libimage_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libimem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinflate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinteger_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libinvert_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkaraoke_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libkeychain_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibass_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibbluray_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblive555_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblpcm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liblua_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmacosx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmad_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmagnify_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmarq_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmediadirs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmemory_keystore_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmirror_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmkv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmod_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmono_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmosaic_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotion_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotionblur_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotiondetect_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmp4_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpg123_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpgv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_asf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_avi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mp4_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mpjpeg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ogg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_wav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libncurses_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnetsync_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnfs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnormvol_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnoseek_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsspeechsynthesizer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libnuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libogg_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboggspots_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldmovie_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldrc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libopus_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libosx_notifications_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_a52_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_av1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_copy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dirac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_flac_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_h264_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_hevc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mlp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4audio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4video_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_vc1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libparam_eq_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libplaylist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpng_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpodcast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libposterize_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpostproc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libprefetch_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libps_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpsychedelic_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpuzzle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libpva_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawaud_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawdv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libreal_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librecord_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libremap_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libremoteosd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libripple_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librist_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librotate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librss_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librtp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librtpvideo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/librv32_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsamplerate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsap_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsatip_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscale_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_pitch_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscene_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libschroedinger_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscreen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte18_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte27_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsdp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsecuretransport_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsepia_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsftp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsharpen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libshm_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsimple_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libskiptags_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsmf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatialaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatializer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspdif_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_resampler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libspudec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstats_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstereo_widen_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstl_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_autodel_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_bridge_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromaprint_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromecast_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_cycle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_delay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_description_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_display_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_dummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_duplicate_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_es_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_gather_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_mosaic_bridge_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_record_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_rtp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_setid_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_smem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_standard_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_stats_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_transcode_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdec_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdelay_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubstx3g_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsusf_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubtitle_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsvcdsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libswscale_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libsyslog_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libt140_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtaglib_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtcp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtelx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtextst_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtheora_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtimecode_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtospdif_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtransform_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtrivial_channel_mixer_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libts_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtta_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libttml_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libtwolame_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libty_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libudp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libugly_resampler_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libuleaddvaudio_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libupnp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvc1_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvcd_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdr_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdummy_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvhs_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvideotoolbox_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvisual_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlc.5.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlccore.9.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvmem_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvobsub_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvoc_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvod_rtsp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvorbis_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvout_macosx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libvpx_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwall_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwav_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwave_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libwebvtt_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx26410b_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx264_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libx265_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libxa_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libxml_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuv_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuvp_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i420_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i422_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/plugins/libzvbi_plugin.dylib
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper.app
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Alerts\).app/Contents/MacOS/DullahanHelper\ \(Alerts\)
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(GPU\).app/Contents/MacOS/DullahanHelper\ \(GPU\)
- Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Plugin\).app/Contents/MacOS/DullahanHelper\ \(Plugin\)
- WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- DullahanHelper\ \(Renderer\).app/Contents/MacOS/DullahanHelper\ \(Renderer\)
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --deep
- DullahanHelper\ \(Alerts\).app
- DullahanHelper\ \(GPU\).app
- DullahanHelper\ \(Plugin\).app
- WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- --deep
- DullahanHelper\ \(Renderer\).app
- WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- SLPlugin.app
- WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources
- )
-execute_process(
- COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
- --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
- -i net.${VIEWER_BINARY_NAME}.viewer
- ${CPACK_BUNDLE_NAME}.app
- WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}
- )
diff --git a/indra/newview/SignBundle.cmake.in b/indra/newview/SignBundle.cmake.in
new file mode 100644
index 0000000000..eb6ea1a35d
--- /dev/null
+++ b/indra/newview/SignBundle.cmake.in
@@ -0,0 +1,430 @@
+message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Running a native self-built viewer on it without correct codesigning would lead to a crash. Also, codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libEGL.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libGLESv2.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libcef_sandbox.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libvk_swiftshader.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework
+ Frameworks/libalut.0.dylib
+ Frameworks/libapr-1.0.dylib
+ Frameworks/libaprutil-1.0.dylib
+ Frameworks/libboost_atomic-mt.dylib
+ Frameworks/libboost_context-mt.dylib
+ Frameworks/libboost_fiber-mt.dylib
+ Frameworks/libboost_filesystem-mt.dylib
+ Frameworks/libboost_program_options-mt.dylib
+ Frameworks/libboost_regex-mt.dylib
+ Frameworks/libboost_system-mt.dylib
+ Frameworks/libboost_thread-mt.dylib
+ Frameworks/libboost_url-mt.dylib
+ Frameworks/libbrotlicommon.1.2.0.dylib
+ Frameworks/libbrotlidec.1.2.0.dylib
+ Frameworks/libbz2.1.0.8.dylib
+ Frameworks/libdiscord_partner_sdk.dylib
+ Frameworks/libexpat.1.12.2.dylib
+ Frameworks/libfreetype.6.dylib
+ Frameworks/libhunspell-1.7.0.dylib
+ Frameworks/libiconv.2.dylib
+ Frameworks/libicudata.78.3.dylib
+ Frameworks/libicui18n.78.3.dylib
+ Frameworks/libicuuc.78.3.dylib
+ Frameworks/libjpeg.8.3.2.dylib
+ Frameworks/libllwebrtc.dylib
+ Frameworks/libminizip.1.dylib
+ Frameworks/libncurses.6.dylib
+ Frameworks/libndofdev.dylib
+ Frameworks/libnghttp2.14.dylib
+ Frameworks/libogg.0.dylib
+ Frameworks/libopenal.1.25.1.dylib
+ Frameworks/libopenjp2.2.5.4.dylib
+ Frameworks/libpng16.16.dylib
+ Frameworks/libvlc.5.dylib
+ Frameworks/libvlccore.9.dylib
+ Frameworks/libvorbis.0.dylib
+ Frameworks/libvorbisenc.2.dylib
+ Frameworks/libvorbisfile.3.dylib
+ Frameworks/libxml2.16.dylib
+ Frameworks/libz.1.3.2.dylib
+ Resources/libndofdev.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/media_plugin_cef.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/media_plugin_libvlc.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_concat_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_imem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_mms_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_file_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_http_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_livehttp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_rist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_shout_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_srt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_udp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_realrtsp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_srt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadaptive_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsfsstorage_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsvorepository_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadjust_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadpcm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaes3_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libafile_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaiff_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libalphamask_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libamem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libanaglyph_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libantiflicker_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaom_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaraw_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libarchive_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaribsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libasf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libattachment_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libau_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudio_format_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_a_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_v_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudioscrobbler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiotoolboxmidi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libauhal_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavaudiocapture_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcapture_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcodec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libball_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libblend_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libblendbench_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluescreen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-awt-j2se-1.4.0.jar
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-j2se-1.4.0.jar
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbonjour_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_block_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_read_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcanvas_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaopengllayer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdda_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libchain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libchorus_flanger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libci_filters_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libclone_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcolorthres_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcompressor_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libconsole_logger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcroppadd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvdsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdav1d_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdcp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libddummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdecomp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdeinterlace_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_cdg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_chromecast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_stl_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemuxdump_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdiracsys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdirectory_demux_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdmxmus_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdolby_surround_decoder_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvbsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdnav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdread_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdynamicoverlay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libedgedetection_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libedummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libequalizer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liberase_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libes_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libexport_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libextract_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfaad_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_keystore_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_logger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfilesystem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfingerprinter_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflacsys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflaschen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfloat_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfolder_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreetype_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreeze_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libftp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libg711_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgaussianblur_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgestures_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libglconv_cvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgme_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgnutls_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgoom_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradfun_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradient_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrey_yuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libh26x_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhds_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libheadphone_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhotkeys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhqdn3d_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_10_p010_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_nv12_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_i420_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libidummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libimage_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libimem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinflate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinteger_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinvert_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkaraoke_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkeychain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibass_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibbluray_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblive555_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblpcm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblua_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmacosx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmad_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmagnify_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmarq_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmediadirs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmemory_keystore_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmirror_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmkv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmod_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmono_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmosaic_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotion_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotionblur_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotiondetect_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmp4_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpg123_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpgv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_asf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_avi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mp4_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mpjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ogg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_wav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libncurses_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnetsync_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnfs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnormvol_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnoseek_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsspeechsynthesizer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libogg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboggspots_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldmovie_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldrc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libopus_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libosx_notifications_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_a52_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_av1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_copy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dirac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_flac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_h264_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_hevc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mlp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4audio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4video_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_vc1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libparam_eq_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libplaylist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpng_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpodcast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libposterize_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpostproc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libprefetch_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpsychedelic_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpuzzle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpva_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawaud_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawdv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libreal_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librecord_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libremap_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libremoteosd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libripple_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librotate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librss_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librtp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librtpvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librv32_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsamplerate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsap_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsatip_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscale_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_pitch_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscene_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libschroedinger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscreen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte18_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte27_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsdp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsecuretransport_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsepia_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsftp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsharpen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libshm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsimple_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libskiptags_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsmf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatialaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatializer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspdif_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_resampler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspudec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstats_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstereo_widen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstl_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_autodel_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_bridge_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromaprint_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromecast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_cycle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_delay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_description_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_display_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_duplicate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_es_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_gather_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_mosaic_bridge_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_record_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_rtp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_setid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_smem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_standard_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_stats_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_transcode_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdelay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubstx3g_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsusf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubtitle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsvcdsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libswscale_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsyslog_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libt140_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtaglib_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtcp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtelx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtextst_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtheora_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtimecode_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtospdif_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtransform_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtrivial_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtta_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libttml_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtwolame_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libty_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libudp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libugly_resampler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libuleaddvaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libupnp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvc1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvcd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdr_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvhs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvideotoolbox_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvisual_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlc.5.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlccore.9.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvmem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvobsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvoc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvod_rtsp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvorbis_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvout_macosx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwall_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwave_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwebvtt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx26410b_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx264_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx265_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libxa_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libxml_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuvp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i420_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i422_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libzvbi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Alerts\).app/Contents/MacOS/DullahanHelper\ \(Alerts\)
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(GPU\).app/Contents/MacOS/DullahanHelper\ \(GPU\)
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Plugin\).app/Contents/MacOS/DullahanHelper\ \(Plugin\)
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ DullahanHelper.app
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ DullahanHelper\ \(Renderer\).app/Contents/MacOS/DullahanHelper\ \(Renderer\)
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --deep
+ DullahanHelper\ \(Alerts\).app
+ DullahanHelper\ \(GPU\).app
+ DullahanHelper\ \(Plugin\).app
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ --deep
+ DullahanHelper\ \(Renderer\).app
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ SLPlugin.app
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents/Resources
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ -i net.${VIEWER_BINARY_NAME}.viewer
+ ${VIEWER_CHANNEL}.app
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}
+ )
diff --git a/indra/newview/SignBundleMmxSse2.cmake.in b/indra/newview/SignBundleMmxSse2.cmake.in
new file mode 100644
index 0000000000..9d463337b0
--- /dev/null
+++ b/indra/newview/SignBundleMmxSse2.cmake.in
@@ -0,0 +1,11 @@
+message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_sse2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_sse2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_sse2_plugin.dylib
+ WORKING_DIRECTORY ${viewer_BINARY_DIR}/${VIEWER_CHANNEL}.app/Contents
+ )
diff --git a/indra/newview/SignPackage.cmake.in b/indra/newview/SignPackage.cmake.in
new file mode 100644
index 0000000000..9b5be4a7fd
--- /dev/null
+++ b/indra/newview/SignPackage.cmake.in
@@ -0,0 +1,430 @@
+message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Running a native self-built viewer on it without correct codesigning would lead to a crash. Also, codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libEGL.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libGLESv2.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libcef_sandbox.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework/Libraries/libvk_swiftshader.dylib
+ Frameworks/Chromium\ Embedded\ Framework.framework
+ Frameworks/libalut.0.dylib
+ Frameworks/libapr-1.0.dylib
+ Frameworks/libaprutil-1.0.dylib
+ Frameworks/libboost_atomic-mt.dylib
+ Frameworks/libboost_context-mt.dylib
+ Frameworks/libboost_fiber-mt.dylib
+ Frameworks/libboost_filesystem-mt.dylib
+ Frameworks/libboost_program_options-mt.dylib
+ Frameworks/libboost_regex-mt.dylib
+ Frameworks/libboost_system-mt.dylib
+ Frameworks/libboost_thread-mt.dylib
+ Frameworks/libboost_url-mt.dylib
+ Frameworks/libbrotlicommon.1.2.0.dylib
+ Frameworks/libbrotlidec.1.2.0.dylib
+ Frameworks/libbz2.1.0.8.dylib
+ Frameworks/libdiscord_partner_sdk.dylib
+ Frameworks/libexpat.1.12.2.dylib
+ Frameworks/libfreetype.6.dylib
+ Frameworks/libhunspell-1.7.0.dylib
+ Frameworks/libiconv.2.dylib
+ Frameworks/libicudata.78.3.dylib
+ Frameworks/libicui18n.78.3.dylib
+ Frameworks/libicuuc.78.3.dylib
+ Frameworks/libjpeg.8.3.2.dylib
+ Frameworks/libllwebrtc.dylib
+ Frameworks/libminizip.1.dylib
+ Frameworks/libncurses.6.dylib
+ Frameworks/libndofdev.dylib
+ Frameworks/libnghttp2.14.dylib
+ Frameworks/libogg.0.dylib
+ Frameworks/libopenal.1.25.1.dylib
+ Frameworks/libopenjp2.2.5.4.dylib
+ Frameworks/libpng16.16.dylib
+ Frameworks/libvlc.5.dylib
+ Frameworks/libvlccore.9.dylib
+ Frameworks/libvorbis.0.dylib
+ Frameworks/libvorbisenc.2.dylib
+ Frameworks/libvorbisfile.3.dylib
+ Frameworks/libxml2.16.dylib
+ Frameworks/libz.1.3.2.dylib
+ Resources/libndofdev.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/media_plugin_cef.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/media_plugin_libvlc.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_concat_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_imem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_mms_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_file_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_http_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_livehttp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_rist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_shout_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_srt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_output_udp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_realrtsp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaccess_srt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadaptive_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsfsstorage_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaddonsvorepository_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadjust_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadpcm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libadummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaes3_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libafile_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaiff_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libalphamask_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libamem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libanaglyph_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libantiflicker_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaom_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaraw_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libarchive_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaribsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libasf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libattachment_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libau_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudio_format_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_a_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiobargraph_v_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudioscrobbler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libaudiotoolboxmidi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libauhal_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavaudiocapture_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcapture_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavcodec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libavi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libball_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libblend_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libblendbench_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluescreen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-awt-j2se-1.4.0.jar
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbluray-j2se-1.4.0.jar
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libbonjour_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_block_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcache_read_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcanvas_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcaopengllayer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdda_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcdg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libchain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libchorus_flanger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libci_filters_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libclone_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcolorthres_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcompressor_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libconsole_logger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcroppadd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvdsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libcvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdav1d_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdcp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libddummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdecomp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdeinterlace_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_cdg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_chromecast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemux_stl_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdemuxdump_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdiracsys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdirectory_demux_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdmxmus_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdolby_surround_decoder_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvbsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdnav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdvdread_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libdynamicoverlay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libedgedetection_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libedummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libequalizer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liberase_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libes_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libexport_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libextract_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfaad_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_keystore_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfile_logger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfilesystem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfingerprinter_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflacsys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libflaschen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfloat_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfolder_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreetype_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libfreeze_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libftp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libg711_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgaussianblur_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgestures_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libglconv_cvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgme_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgnutls_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgoom_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradfun_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgradient_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libgrey_yuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libh26x_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhds_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libheadphone_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhotkeys_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhqdn3d_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libhttps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_10_p010_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_nv12_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_i420_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libidummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libimage_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libimem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinflate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinteger_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libinvert_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkaraoke_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libkeychain_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibass_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblibbluray_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblive555_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblogo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblpcm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liblua_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmacosx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmad_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmagnify_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmarq_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmediadirs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmemory_keystore_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmirror_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmkv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmod_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmono_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmosaic_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotion_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotionblur_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmotiondetect_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmp4_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpg123_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmpgv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_asf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_avi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mp4_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_mpjpeg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ogg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_ts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libmux_wav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libncurses_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnetsync_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnfs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnormvol_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnoseek_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsspeechsynthesizer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnsv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libnuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libogg_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboggspots_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldmovie_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/liboldrc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libopus_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libosx_notifications_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_a52_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_av1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_copy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dirac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_dts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_flac_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_h264_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_hevc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mlp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4audio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpeg4video_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_mpegvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpacketizer_vc1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libparam_eq_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libplaylist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpng_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpodcast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libposterize_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpostproc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libprefetch_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libps_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpsychedelic_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpuzzle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libpva_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawaud_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawdv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librawvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libreal_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librecord_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libremap_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libremoteosd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libripple_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librist_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librotate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librss_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librtp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librtpvideo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/librv32_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsamplerate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsap_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsatip_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscale_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_pitch_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscaletempo_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscene_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libschroedinger_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscreen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte18_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libscte27_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsdp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsecuretransport_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsepia_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsftp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsharpen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libshm_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsimple_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libskiptags_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsmf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatialaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspatializer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspdif_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspeex_resampler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libspudec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstats_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstereo_widen_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstl_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_autodel_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_bridge_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromaprint_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_chromecast_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_cycle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_delay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_description_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_display_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_dummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_duplicate_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_es_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_gather_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_mosaic_bridge_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_record_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_rtp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_setid_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_smem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_standard_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_stats_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libstream_out_transcode_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdec_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsdelay_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubstx3g_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubsusf_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsubtitle_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsvcdsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libswscale_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libsyslog_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libt140_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtaglib_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtcp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtelx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtextst_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtheora_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtimecode_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtospdif_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtransform_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtrivial_channel_mixer_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libts_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtta_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libttml_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libtwolame_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libty_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libudp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libugly_resampler_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libuleaddvaudio_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libupnp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvc1_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvcd_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdr_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvdummy_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvhs_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvideotoolbox_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvisual_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlc.5.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvlccore.9.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvmem_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvobsub_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvoc_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvod_rtsp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvorbis_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvout_macosx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libvpx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwall_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwav_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwave_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libwebvtt_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx26410b_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx264_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libx265_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libxa_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libxml_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuv_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuvp_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i420_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libyuy2_i422_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libzvbi_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Alerts\).app/Contents/MacOS/DullahanHelper\ \(Alerts\)
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(GPU\).app/Contents/MacOS/DullahanHelper\ \(GPU\)
+ Resources/SLPlugin.app/Contents/Frameworks/DullahanHelper\ \(Plugin\).app/Contents/MacOS/DullahanHelper\ \(Plugin\)
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ DullahanHelper.app
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ DullahanHelper\ \(Renderer\).app/Contents/MacOS/DullahanHelper\ \(Renderer\)
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --deep
+ DullahanHelper\ \(Alerts\).app
+ DullahanHelper\ \(GPU\).app
+ DullahanHelper\ \(Plugin\).app
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ --deep
+ DullahanHelper\ \(Renderer\).app
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources/SLPlugin.app/Contents/Frameworks
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ SLPlugin.app
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents/Resources
+ )
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ --entitlements ${CMAKE_SOURCE_DIR}/newview/slplugin.entitlements
+ -i net.${VIEWER_BINARY_NAME}.viewer
+ ${CPACK_BUNDLE_NAME}.app
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}
+ )
diff --git a/indra/newview/SignPackageMmxSse2.cmake.in b/indra/newview/SignPackageMmxSse2.cmake.in
new file mode 100644
index 0000000000..9a1c22cf68
--- /dev/null
+++ b/indra/newview/SignPackageMmxSse2.cmake.in
@@ -0,0 +1,11 @@
+message("By default, the situation is assumed to be the strictest, an Apple Silicon Mac with the default security settings. Codesigning requires administrative access. If you believe you're not in such a situation, you can remove the sudos in this file.")
+execute_process(
+ COMMAND sudo codesign -f -s ${SIGNING_IDENTITY} --timestamp -o runtime --runtime-version ${CMAKE_OSX_DEPLOYMENT_TARGET}
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_rgb_sse2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi420_yuy2_sse2_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_mmx_plugin.dylib
+ Resources/SLPlugin.app/Contents/Frameworks/plugins/libi422_yuy2_sse2_plugin.dylib
+ WORKING_DIRECTORY ${CMAKE_CACHEFILE_DIR}/_CPack_Packages/${CMAKE_SYSTEM_NAME}/Bundle/${CPACK_BUNDLE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_NAME}/${CPACK_BUNDLE_NAME}.app/Contents
+ )
diff --git a/indra/newview/ViewerInstall.cmake b/indra/newview/ViewerInstall.cmake
index 7717605f1f..273c0df3af 100644
--- a/indra/newview/ViewerInstall.cmake
+++ b/indra/newview/ViewerInstall.cmake
@@ -75,13 +75,37 @@ if (DARWIN)
${CMAKE_CURRENT_SOURCE_DIR}/FixPackage.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/FixBundle.cmake
)
- else (PACKAGE)
+ if (CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/SignPackageMmxSse2.cmake.in
+ ${CMAKE_CURRENT_BINARY_DIR}/SignBundleMmxSse2.cmake
+ )
+ endif ()
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/SignPackage.cmake.in
+ ${CMAKE_CURRENT_BINARY_DIR}/SignBundle.cmake
+ )
+ else ()
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/FixBundle.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/FixBundle.cmake
)
- endif (PACKAGE)
+ if (CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/SignBundleMmxSse2.cmake.in
+ ${CMAKE_CURRENT_BINARY_DIR}/SignBundleMmxSse2.cmake
+ )
+ endif ()
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/SignBundle.cmake.in
+ ${CMAKE_CURRENT_BINARY_DIR}/SignBundle.cmake
+ )
+ endif ()
install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/FixBundle.cmake)
+ if (CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
+ install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/SignBundleMmxSse2.cmake)
+ endif ()
+ install(SCRIPT ${CMAKE_CURRENT_BINARY_DIR}/SignBundle.cmake)
elseif (WINDOWS)
@@ -202,26 +226,39 @@ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${VIEWER_BINARY_NAME}
)
if (LINUX)
- if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
- set(_LIB lib/${ARCH}-linux-gnu)
+ if (USE_FLATPAK)
+ set(_LIB lib)
+ elseif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
+ set(_LIB lib/${ARCH}-linux-gnu/${VIEWER_BINARY_NAME})
elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
- set(_LIB lib${ADDRESS_SIZE})
+ set(_LIB lib${ADDRESS_SIZE}/${VIEWER_BINARY_NAME})
else ()
- set(_LIB lib)
+ set(_LIB lib/${VIEWER_BINARY_NAME})
endif ()
if (USE_DISCORD)
install(
FILES ${ARCH_PREBUILT_DIRS_RELEASE}/libdiscord_partner_sdk.so
- DESTINATION ${_LIB}/${VIEWER_BINARY_NAME}
+ DESTINATION ${_LIB}
+ )
+ endif ()
+ if (USE_FLATPAK AND USE_OPENAL)
+ install(
+ FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so.0
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so.0.0.0
+ DESTINATION ${_LIB}
)
endif ()
if (USE_FMODSTUDIO)
- install(FILES
- ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so
- ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so.13
- ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so.13.34
- DESTINATION ${_LIB}/${VIEWER_BINARY_NAME})
- endif (USE_FMODSTUDIO)
+ install(
+ FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so.13
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libfmod.so.13.35
+ DESTINATION ${_LIB}
+ )
+ endif ()
endif (LINUX)
install(DIRECTORY skins app_settings fonts
@@ -229,9 +266,43 @@ install(DIRECTORY skins app_settings fonts
PATTERN ".svn" EXCLUDE
)
+if (USE_FLATPAK)
+ file(
+ COPY ${CMAKE_CURRENT_SOURCE_DIR}/icons/hicolor
+ DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/48x48/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/48x48/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/64x64/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/64x64/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/96x96/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/96x96/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/128x128/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/128x128/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/256x256/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/256x256/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ file(RENAME
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/512x512/apps/${VIEWER_BINARY_NAME}.png
+ ${CMAKE_CURRENT_BINARY_DIR}/hicolor/512x512/apps/net.${VIEWER_BINARY_NAME}.Viewer.png
+ )
+ install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/hicolor
+ DESTINATION share/icons
+ )
+else ()
install(DIRECTORY icons/hicolor
DESTINATION share/icons
)
+endif ()
find_file(IS_ARTWORK_PRESENT NAMES have_artwork_bundle.marker
PATHS ${VIEWER_DIR}/newview/res)
@@ -268,8 +339,31 @@ install(FILES ${SCRIPTS_DIR}/messages/message_template.msg
DESTINATION share/${VIEWER_BINARY_NAME}/app_settings
)
+if (USE_FLATPAK)
+ file(COPY_FILE
+ ${CMAKE_CURRENT_SOURCE_DIR}/linux_tools/${VIEWER_BINARY_NAME}.desktop
+ ${CMAKE_CURRENT_BINARY_DIR}/net.${VIEWER_BINARY_NAME}.Viewer.desktop
+ )
+ execute_process(
+ COMMAND sed -i "s/Icon=megapahit/Icon=net.megapahit.Viewer/" net.${VIEWER_BINARY_NAME}.Viewer.desktop
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/net.${VIEWER_BINARY_NAME}.Viewer.desktop
+ DESTINATION share/applications
+ )
+ string(TIMESTAMP TODAY_DATE "%Y-%m-%d" UTC)
+ configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/net.megapahit.Viewer.metainfo.xml.in
+ ${CMAKE_CURRENT_BINARY_DIR}/net.megapahit.Viewer.metainfo.xml
+ )
+ install(
+ FILES ${CMAKE_CURRENT_BINARY_DIR}/net.megapahit.Viewer.metainfo.xml
+ DESTINATION share/metainfo
+ )
+else ()
install(FILES linux_tools/${VIEWER_BINARY_NAME}.desktop
DESTINATION share/applications
)
+endif ()
endif (DARWIN)
diff --git a/indra/newview/linux_tools/megapahit.desktop b/indra/newview/linux_tools/megapahit.desktop
index 091df71e11..69c9fcda49 100755
--- a/indra/newview/linux_tools/megapahit.desktop
+++ b/indra/newview/linux_tools/megapahit.desktop
@@ -7,4 +7,3 @@ Terminal=false
Type=Application
Categories=Network;
StartupNotify=true
-X-Desktop-File-Install-Version=3.0"
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index 719447b920..4c0de50223 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -3406,7 +3406,7 @@ LLSD LLAppViewer::getViewerInfo() const
url = LLTrans::getString("RELEASE_NOTES_BASE_URL");
if (!LLStringUtil::endsWith(url, "/"))
url += "/";
- url += LLURI::escape(versionInfo.getVersion()) + ".html";
+ url += "#" + LLURI::escape(versionInfo.getVersion()); // + ".html";
}
info["VIEWER_RELEASE_NOTES_URL"] = url;
diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp
index fb1426a235..c6b17fcb4e 100644
--- a/indra/newview/llavataractions.cpp
+++ b/indra/newview/llavataractions.cpp
@@ -34,6 +34,7 @@
#include "llnotifications.h"
#include "llnotificationsutil.h"
#include "roles_constants.h" // for GP_MEMBER_INVITE
+#include "llregionflags.h" // for ESTATE_ACCESS_BANNED_AGENT_ADD
#include "llagent.h"
#include "llappviewer.h" // for gLastVersionChannel
@@ -625,6 +626,34 @@ void LLAvatarActions::ejectAvatar(const LLUUID& id, bool ban_enabled)
}
// static
+void LLAvatarActions::estateKickAvatar(const LLUUID& id)
+{
+ LLAvatarName av_name;
+ LLSD payload;
+ payload["avatar_id"] = id;
+ LLSD args;
+ if (LLAvatarNameCache::get(id, &av_name))
+ {
+ args["EVIL_USER"] = av_name.getCompleteName();
+ }
+ LLNotificationsUtil::add("EstateKickUser", args, payload, handleEstateKickAvatar);
+}
+
+// static
+void LLAvatarActions::estateBanAvatar(const LLUUID& id)
+{
+ LLAvatarName av_name;
+ LLSD payload;
+ payload["avatar_id"] = id;
+ LLSD args;
+ if (LLAvatarNameCache::get(id, &av_name))
+ {
+ args["AVATAR_NAME"] = av_name.getCompleteName();
+ }
+ LLNotificationsUtil::add("EstateBanUser", args, payload, handleEstateBanAvatar);
+}
+
+// static
void LLAvatarActions::freeze(const LLUUID& id)
{
LLSD payload;
@@ -1425,6 +1454,62 @@ bool LLAvatarActions::handleEjectAvatar(const LLSD& notification, const LLSD& re
return false;
}
+bool LLAvatarActions::handleEstateKickAvatar(const LLSD& notification, const LLSD& response)
+{
+ S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
+ if (option == 0)
+ {
+ LLUUID avatar_id = notification["payload"]["avatar_id"].asUUID();
+ LLMessageSystem* msg = gMessageSystem;
+ msg->newMessage("EstateOwnerMessage");
+ msg->nextBlockFast(_PREHASH_AgentData);
+ msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
+ msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
+ msg->addUUIDFast(_PREHASH_TransactionID, LLUUID::null);
+ msg->nextBlock("MethodData");
+ msg->addString("Method", "kickestate");
+ msg->addUUID("Invoice", LLUUID::generateNewID());
+ msg->nextBlock("ParamList");
+ msg->addString("Parameter", avatar_id.asString());
+ gAgent.sendReliableMessage();
+ }
+ return false;
+}
+
+bool LLAvatarActions::handleEstateBanAvatar(const LLSD& notification, const LLSD& response)
+{
+ S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
+ if (option == 0)
+ {
+ LLUUID avatar_id = notification["payload"]["avatar_id"].asUUID();
+ LLMessageSystem* msg = gMessageSystem;
+ msg->newMessage("EstateOwnerMessage");
+ msg->nextBlockFast(_PREHASH_AgentData);
+ msg->addUUIDFast(_PREHASH_AgentID, gAgent.getID());
+ msg->addUUIDFast(_PREHASH_SessionID, gAgent.getSessionID());
+ msg->addUUIDFast(_PREHASH_TransactionID, LLUUID::null);
+ msg->nextBlock("MethodData");
+ msg->addString("Method", "estateaccessdelta");
+ msg->addUUID("Invoice", LLUUID::generateNewID());
+
+ std::string buf;
+ gAgent.getID().toString(buf);
+ msg->nextBlock("ParamList");
+ msg->addString("Parameter", buf);
+
+ buf = llformat("%u", (U32)ESTATE_ACCESS_BANNED_AGENT_ADD);
+ msg->nextBlock("ParamList");
+ msg->addString("Parameter", buf);
+
+ avatar_id.toString(buf);
+ msg->nextBlock("ParamList");
+ msg->addString("Parameter", buf);
+
+ gAgent.sendReliableMessage();
+ }
+ return false;
+}
+
bool LLAvatarActions::handleFreeze(const LLSD& notification, const LLSD& response)
{
S32 option = LLNotification::getSelectedOption(notification, response);
diff --git a/indra/newview/llavataractions.h b/indra/newview/llavataractions.h
index 1f5a42ed22..bc4eb6fa60 100644
--- a/indra/newview/llavataractions.h
+++ b/indra/newview/llavataractions.h
@@ -192,6 +192,10 @@ public:
static void freezeAvatar(const LLUUID& id);
static void ejectAvatar(const LLUUID& id, bool ban_enabled = false);
+
+ static void estateKickAvatar(const LLUUID& id);
+
+ static void estateBanAvatar(const LLUUID& id);
/**
* Kick avatar off grid
*/
@@ -263,6 +267,8 @@ private:
static bool handlePay(const LLSD& notification, const LLSD& response, LLUUID avatar_id);
static bool handleFreezeAvatar(const LLSD& notification, const LLSD& response);
static bool handleEjectAvatar(const LLSD& notification, const LLSD& response);
+ static bool handleEstateKickAvatar(const LLSD& notification, const LLSD& response);
+ static bool handleEstateBanAvatar(const LLSD& notification, const LLSD& response);
static bool handleKick(const LLSD& notification, const LLSD& response);
static bool handleFreeze(const LLSD& notification, const LLSD& response);
static bool handleUnfreeze(const LLSD& notification, const LLSD& response);
diff --git a/indra/newview/lllogininstance.cpp b/indra/newview/lllogininstance.cpp
index 0358233637..21cf2a1837 100644
--- a/indra/newview/lllogininstance.cpp
+++ b/indra/newview/lllogininstance.cpp
@@ -387,7 +387,7 @@ void LLLoginInstance::handleLoginFailure(const LLSD& event)
relnotes = LLTrans::getString("RELEASE_NOTES_BASE_URL");
if (!LLStringUtil::endsWith(relnotes, "/"))
relnotes += "/";
- relnotes += LLURI::escape(login_version) + ".html";
+ relnotes += "#" + LLURI::escape(login_version); // + ".html";
}
if (gViewerWindow)
diff --git a/indra/newview/llpanelpeoplemenus.cpp b/indra/newview/llpanelpeoplemenus.cpp
index 794ae4ad44..537ea28a4d 100644
--- a/indra/newview/llpanelpeoplemenus.cpp
+++ b/indra/newview/llpanelpeoplemenus.cpp
@@ -84,11 +84,14 @@ LLContextMenu* PeopleContextMenu::createMenu()
registrar.add("Avatar.Calllog", boost::bind(&LLAvatarActions::viewChatHistory, id));
registrar.add("Avatar.Freeze", boost::bind(&LLAvatarActions::freezeAvatar, id));
registrar.add("Avatar.Eject", boost::bind(&PeopleContextMenu::eject, this));
+ registrar.add("Avatar.EstateKick", boost::bind(&LLAvatarActions::estateKickAvatar, id));
+ registrar.add("Avatar.EstateBan", boost::bind(&LLAvatarActions::estateBanAvatar, id));
enable_registrar.add("Avatar.EnableItem", boost::bind(&PeopleContextMenu::enableContextMenuItem, this, _2));
enable_registrar.add("Avatar.CheckItem", boost::bind(&PeopleContextMenu::checkContextMenuItem, this, _2));
enable_registrar.add("Avatar.EnableFreezeEject", boost::bind(&PeopleContextMenu::enableFreezeEject, this, _2));
+ enable_registrar.add("Avatar.EnableEstateEjectBan", boost::bind(&PeopleContextMenu::enableEstateEjectBan, this, _2));
// create the context menu from the XUI
menu = createFromFile("menu_people_nearby.xml");
@@ -318,6 +321,17 @@ bool PeopleContextMenu::enableFreezeEject(const LLSD& userdata)
return new_value;
}
+bool PeopleContextMenu::enableEstateEjectBan(const LLSD& userdata)
+{
+ if (gAgent.getID() == mUUIDs.front() || mUUIDs.size() != 1)
+ return false;
+
+ LLViewerRegion* region = gAgent.getRegion();
+ if (!region) return false;
+ if (gAgent.isGodlike()) return true;
+ return region->getOwner() == gAgent.getID() || region->isEstateManager();
+}
+
void PeopleContextMenu::requestTeleport()
{
// boost::bind cannot recognize overloaded method LLAvatarActions::teleportRequest(),
@@ -419,6 +433,8 @@ void NearbyPeopleContextMenu::buildContextMenu(class LLMenuGL& menu, U32 flags)
items.push_back(std::string("block_unblock"));
items.push_back(std::string("freeze"));
items.push_back(std::string("eject"));
+ items.push_back(std::string("estate_eject"));
+ items.push_back(std::string("estate_ban"));
}
hide_context_entries(menu, items, disabled_items);
diff --git a/indra/newview/llpanelpeoplemenus.h b/indra/newview/llpanelpeoplemenus.h
index ad38cebc31..ad6a26c645 100644
--- a/indra/newview/llpanelpeoplemenus.h
+++ b/indra/newview/llpanelpeoplemenus.h
@@ -47,6 +47,7 @@ private:
bool enableContextMenuItem(const LLSD& userdata);
bool checkContextMenuItem(const LLSD& userdata);
bool enableFreezeEject(const LLSD& userdata);
+ bool enableEstateEjectBan(const LLSD& userdata);
void offerTeleport();
void eject();
void startConference();
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index 66ca722b88..b491701a36 100644
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -1873,7 +1873,7 @@ LLPluginClassMedia* LLViewerMediaImpl::newSourceFromMediaType(std::string media_
bool media_plugin_debugging_enabled = gSavedSettings.getBOOL("MediaPluginDebugging");
media_source->enableMediaPluginDebugging( media_plugin_debugging_enabled || clean_browser);
-#if LL_LINUX
+#if LL_LINUX || __FreeBSD__
bool media_plugin_pipewire_volume_catcher = gSavedSettings.getBOOL("MediaPluginPipeWireVolumeCatcher");
media_source->enablePipeWireVolumeCatcher( media_plugin_pipewire_volume_catcher );
#endif
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index 833a3cde6f..1b1d703f38 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -4065,6 +4065,44 @@ void handle_avatar_eject(const LLSD& avatar_id)
}
}
+void handle_avatar_estate_kick(const LLSD& avatar_id)
+{
+ LLUUID id = avatar_id.asUUID();
+ if (id.isNull())
+ {
+ LLVOAvatar* avatar = find_avatar_from_object(
+ LLSelectMgr::getInstance()->getSelection()->getPrimaryObject());
+ if (avatar) id = avatar->getID();
+ }
+ if (id.notNull())
+ {
+ LLAvatarActions::estateKickAvatar(id);
+ }
+}
+
+void handle_avatar_estate_ban(const LLSD& avatar_id)
+{
+ LLUUID id = avatar_id.asUUID();
+ if (id.isNull())
+ {
+ LLVOAvatar* avatar = find_avatar_from_object(
+ LLSelectMgr::getInstance()->getSelection()->getPrimaryObject());
+ if (avatar) id = avatar->getID();
+ }
+ if (id.notNull())
+ {
+ LLAvatarActions::estateBanAvatar(id);
+ }
+}
+
+bool enable_estate_eject_ban(const LLSD& avatar_id)
+{
+ LLViewerRegion* region = gAgent.getRegion();
+ if (!region) return false;
+ if (gAgent.isGodlike()) return true;
+ return region->getOwner() == gAgent.getID() || region->isEstateManager();
+}
+
bool my_profile_visible()
{
LLFloater* floaterp = LLAvatarActions::getProfileFloater(gAgentID);
@@ -10358,6 +10396,9 @@ void initialize_menus()
view_listener_t::addMenu(new LLAvatarVisibleDebug(), "Avatar.VisibleDebug");
view_listener_t::addMenu(new LLAvatarInviteToGroup(), "Avatar.InviteToGroup");
commit.add("Avatar.Eject", boost::bind(&handle_avatar_eject, LLSD()));
+ commit.add("Avatar.EstateKick", boost::bind(&handle_avatar_estate_kick, _2));
+ commit.add("Avatar.EstateBan", boost::bind(&handle_avatar_estate_ban, _2));
+ enable.add("Avatar.EnableEstateEjectBan", boost::bind(&enable_estate_eject_ban, _2));
commit.add("Avatar.ShowInspector", boost::bind(&handle_avatar_show_inspector));
view_listener_t::addMenu(new LLAvatarSendIM(), "Avatar.SendIM");
view_listener_t::addMenu(new LLAvatarCall(), "Avatar.Call");
diff --git a/indra/newview/net.megapahit.Viewer.metainfo.xml.in b/indra/newview/net.megapahit.Viewer.metainfo.xml.in
new file mode 100644
index 0000000000..deeaa9c140
--- /dev/null
+++ b/indra/newview/net.megapahit.Viewer.metainfo.xml.in
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="desktop-application">
+ <id>net.megapahit.Viewer</id>
+ <launchable type="desktop-id">net.megapahit.Viewer.desktop</launchable>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>LGPL-2.1</project_license>
+ <name>Megapahit</name>
+ <developer id="net.megapahit">
+ <name>Megapahit</name>
+ </developer>
+ <summary>A fork of the Second Life viewer</summary>
+ <description>
+ <p>An entrance to virtual empires in only megabytes. A shelter for the metaverse refugees, especially those from less supported operating systems.</p>
+ </description>
+ <url type="homepage">https://megapahit.net/</url>
+ <url type="vcs-browser">https://megapahit.org</url>
+ <url type="bugtracker">https://megapahit.com</url>
+ <releases>
+ <release version="${VIEWER_VERSION_MAJOR}.${VIEWER_VERSION_MINOR}.${VIEWER_VERSION_PATCH}.${VIEWER_VERSION_REVISION}" date="${TODAY_DATE}" />
+ </releases>
+</component>
diff --git a/indra/newview/rlvhandler.cpp b/indra/newview/rlvhandler.cpp
index 2cc06b3bbc..d66e304b7e 100644
--- a/indra/newview/rlvhandler.cpp
+++ b/indra/newview/rlvhandler.cpp
@@ -393,6 +393,10 @@ ECmdRet ForceHandler<EBehaviour::Detach>::onCommand(const RlvCommand& rlvCmd)
folderID = findDescendentCategoryIDByName(folderID, option);
LLAppearanceMgr::instance().takeOffOutfit(folderID);
}
+ else
+ {
+ LLAppearanceMgr::instance().removeItemFromAvatar(gObjectList.findObject(LLUUID(option))->getAttachmentItemID());
+ }
}
return ECmdRet::Succeeded;
}
diff --git a/indra/newview/skins/default/xui/en/menu_avatar_other.xml b/indra/newview/skins/default/xui/en/menu_avatar_other.xml
index fc4ffde947..f86e9160ed 100644
--- a/indra/newview/skins/default/xui/en/menu_avatar_other.xml
+++ b/indra/newview/skins/default/xui/en/menu_avatar_other.xml
@@ -90,6 +90,22 @@
function="Avatar.EnableFreezeEject"/>
</menu_item_call>
<menu_item_call
+ label="Estate Eject"
+ name="EstateEject...">
+ <menu_item_call.on_click
+ function="Avatar.EstateKick" />
+ <menu_item_call.on_visible
+ function="Avatar.EnableEstateEjectBan"/>
+ </menu_item_call>
+ <menu_item_call
+ label="Estate Ban"
+ name="EstateBan...">
+ <menu_item_call.on_click
+ function="Avatar.EstateBan" />
+ <menu_item_call.on_visible
+ function="Avatar.EnableEstateEjectBan"/>
+ </menu_item_call>
+ <menu_item_call
label="Debug Textures"
name="Debug...">
<menu_item_call.on_click
diff --git a/indra/newview/skins/default/xui/en/menu_people_nearby.xml b/indra/newview/skins/default/xui/en/menu_people_nearby.xml
index b7a296bf31..8d73eee60a 100644
--- a/indra/newview/skins/default/xui/en/menu_people_nearby.xml
+++ b/indra/newview/skins/default/xui/en/menu_people_nearby.xml
@@ -169,4 +169,20 @@
<menu_item_call.on_visible
function="Avatar.EnableFreezeEject"/>
</menu_item_call>
+ <menu_item_call
+ label="Estate Eject"
+ name="estate_eject">
+ <menu_item_call.on_click
+ function="Avatar.EstateKick" />
+ <menu_item_call.on_visible
+ function="Avatar.EnableEstateEjectBan"/>
+ </menu_item_call>
+ <menu_item_call
+ label="Estate Ban"
+ name="estate_ban">
+ <menu_item_call.on_click
+ function="Avatar.EstateBan" />
+ <menu_item_call.on_visible
+ function="Avatar.EnableEstateEjectBan"/>
+ </menu_item_call>
</context_menu>
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index facf9b7e46..65f26d50e7 100644
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -5404,6 +5404,18 @@ Kick [EVIL_USER] from this estate?
<notification
icon="alertmodal.tga"
+ name="EstateBanUser"
+ type="alertmodal">
+Ban [AVATAR_NAME] from this estate?
+ <tag>confirm</tag>
+ <usetemplate
+ name="okcancelbuttons"
+ notext="Cancel"
+ yestext="Ban"/>
+ </notification>
+
+ <notification
+ icon="alertmodal.tga"
name="EstateChangeCovenant"
type="alertmodal">
Are you sure you want to change the Estate Covenant?