summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--autobuild.xml22
-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.cmake15
-rw-r--r--indra/cmake/GLM.cmake2
-rw-r--r--indra/cmake/LLPrimitive.cmake8
-rw-r--r--indra/cmake/LibVLCPlugin.cmake9
-rw-r--r--indra/cmake/OPENAL.cmake16
-rw-r--r--indra/cmake/OpenGL.cmake5
-rw-r--r--indra/cmake/UI.cmake5
-rw-r--r--indra/cmake/UnixInstall.cmake28
-rw-r--r--indra/cmake/ViewerMiscLibs.cmake2
-rw-r--r--indra/llplugin/slplugin/CMakeLists.txt2
-rw-r--r--indra/llrender/CMakeLists.txt7
-rw-r--r--indra/llwebrtc/CMakeLists.txt2
-rw-r--r--indra/media_plugins/cef/CMakeLists.txt57
-rw-r--r--indra/media_plugins/libvlc/CMakeLists.txt16
-rw-r--r--indra/newview/ViewerInstall.cmake38
19 files changed, 210 insertions, 93 deletions
diff --git a/autobuild.xml b/autobuild.xml
index 571da61367..fe9f9d6aaa 100644
--- a/autobuild.xml
+++ b/autobuild.xml
@@ -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 2c71074eb8..2546ec7993 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 )
@@ -50,7 +49,7 @@ if (${LINUX_DISTRO} MATCHES arch)
-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.31.0-CEF_148.0.9
- -DCEF_LIBRARY_RELEASE:FILEPATH=${INSTALL_PREFIX}/${_LIB}/cef/libcef.so
+ -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"
)
@@ -118,7 +117,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"
)
@@ -198,8 +197,11 @@ execute_process(
if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora))
target_include_directories( ll::cef SYSTEM INTERFACE /usr/include/cef/include)
+ if (${LINUX_DISTRO} MATCHES fedora)
+ set(LIB_SUFFIX ${ADDRESS_SIZE})
+ endif ()
execute_process(
- COMMAND patchelf --add-rpath ${INSTALL_PREFIX}/${_LIB}/cef bin/release/dullahan_host
+ COMMAND patchelf --add-rpath ${INSTALL_PREFIX}/lib${LIB_SUFFIX}/cef bin/release/dullahan_host
WORKING_DIRECTORY ${LIBS_PREBUILT_DIR}
)
endif ()
@@ -271,7 +273,10 @@ elseif (DARWIN)
elseif (LINUX)
if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES fedora))
- target_link_directories( ll::cef INTERFACE ${INSTALL_PREFIX}/${_LIB}/cef )
+ if (${LINUX_DISTRO} MATCHES fedora)
+ set(LIB_SUFFIX ${ADDRESS_SIZE})
+ endif ()
+ target_link_directories( ll::cef INTERFACE ${INSTALL_PREFIX}/lib${LIB_SUFFIX}/cef )
endif ()
target_link_libraries( ll::cef INTERFACE
libdullahan.a
diff --git a/indra/cmake/GLM.cmake b/indra/cmake/GLM.cmake
index 957c220bc7..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 OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64 OR ($ENV{MSYSTEM_CARCH} MATCHES aarch64))
+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 523dbc37de..eb1f23b2a3 100644
--- a/indra/cmake/LLPrimitive.cmake
+++ b/indra/cmake/LLPrimitive.cmake
@@ -18,7 +18,7 @@ if( USE_CONAN )
"${CONAN_INCLUDE_DIRS_COLLADADOM}/collada-dom/1.4/" )
endif()
-if (TRUE)
+if (NOT USE_FLATPAK)
include(FindPkgConfig)
pkg_check_modules(Minizip REQUIRED minizip)
if (${LINUX_DISTRO} MATCHES arch OR (${LINUX_DISTRO} MATCHES gentoo) OR DARWIN OR WINDOWS)
@@ -147,9 +147,9 @@ if (TRUE)
file(WRITE ${PREBUILD_TRACKING_DIR}/colladadom_installed "${colladadom_installed}")
endif ()
-else (TRUE)
+else (NOT USE_FLATPAK)
-use_system_binary( colladadom )
+#use_system_binary( colladadom )
use_prebuilt_binary(colladadom)
use_prebuilt_binary(minizip-ng) # needed for colladadom
@@ -175,7 +175,7 @@ if (WINDOWS)
target_link_libraries( ll::libxml INTERFACE Bcrypt.lib)
endif()
-endif (TRUE)
+endif (NOT USE_FLATPAK)
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/OPENAL.cmake b/indra/cmake/OPENAL.cmake
index 1b7f9b9071..3a36c64fd3 100644
--- a/indra/cmake/OPENAL.cmake
+++ b/indra/cmake/OPENAL.cmake
@@ -19,13 +19,15 @@ 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 (NOT USE_FLATPAK)
+ 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 ()
+ endif ()
target_include_directories( ll::openal SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/AL")
target_compile_definitions( ll::openal INTERFACE LL_OPENAL=1)
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..a5e6971248 100644
--- a/indra/cmake/UI.cmake
+++ b/indra/cmake/UI.cmake
@@ -6,6 +6,9 @@ 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 )
@@ -51,7 +54,7 @@ if( WINDOWS )
)
endif()
-if (FALSE)
+if (USE_FLATPAK)
target_include_directories( ll::uilibraries SYSTEM INTERFACE
${LIBS_PREBUILT_DIR}/include
)
diff --git a/indra/cmake/UnixInstall.cmake b/indra/cmake/UnixInstall.cmake
index b82cbbcc2f..65170b5744 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)
- elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
+ if (USE_FLATPAK)
set(_LIB lib${ADDRESS_SIZE})
+ 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)
+ 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/llplugin/slplugin/CMakeLists.txt b/indra/llplugin/slplugin/CMakeLists.txt
index 38f4c92b09..2a6aa10165 100644
--- a/indra/llplugin/slplugin/CMakeLists.txt
+++ b/indra/llplugin/slplugin/CMakeLists.txt
@@ -69,6 +69,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..761aab8a7a 100644
--- a/indra/llwebrtc/CMakeLists.txt
+++ b/indra/llwebrtc/CMakeLists.txt
@@ -76,6 +76,8 @@ endif (LL_TESTS)
if (INSTALL)
if (DARWIN)
set(_LIB ../Frameworks)
+ elseif (USE_FLATPAK)
+ set(_LIB lib${ADDRESS_SIZE})
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/media_plugins/cef/CMakeLists.txt b/indra/media_plugins/cef/CMakeLists.txt
index 4736eef420..a3d36d0ed7 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)
@@ -147,14 +150,23 @@ if (INSTALL)
DESTINATION ${_LIB}
)
elseif (LINUX)
- if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES ubuntu))
+ if (USE_FLATPAK)
+ set(_LIB lib${ADDRESS_SIZE})
+ 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,17 +185,6 @@ 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}/libcef.so
@@ -191,8 +192,6 @@ if (INSTALL)
${ARCH_PREBUILT_DIRS_RELEASE}/libEGL.so
${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
@@ -203,6 +202,32 @@ if (INSTALL)
DIRECTORY ${AUTOBUILD_INSTALL_DIR}/resources/locales
DESTINATION ${_LIB}
)
+ if (USE_FLATPAK)
+ install(
+ FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libGLESv2.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libvulkan.so.1
+ DESTINATION ${_LIB}
+ )
+ else ()
+ 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}/${VIEWER_BINARY_NAME}/libGLESv2.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/${VIEWER_BINARY_NAME}/libvulkan.so.1
+ DESTINATION ${_LIB}
+ )
+ endif ()
endif ()
elseif (WINDOWS)
set(_LIB llplugin)
diff --git a/indra/media_plugins/libvlc/CMakeLists.txt b/indra/media_plugins/libvlc/CMakeLists.txt
index 96790a8037..3177b3298d 100644
--- a/indra/media_plugins/libvlc/CMakeLists.txt
+++ b/indra/media_plugins/libvlc/CMakeLists.txt
@@ -87,6 +87,22 @@ if (INSTALL)
/Volumes/VLC\ media\ player/VLC.app/Contents/MacOS/lib/libvlccore.dylib
DESTINATION ${_LIB}/plugins
)
+ elseif (USE_FLATPAK)
+ set(_LIB lib${ADDRESS_SIZE})
+ 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/ViewerInstall.cmake b/indra/newview/ViewerInstall.cmake
index 46b2967f2c..cce94b0d46 100644
--- a/indra/newview/ViewerInstall.cmake
+++ b/indra/newview/ViewerInstall.cmake
@@ -226,26 +226,42 @@ 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)
- elseif (${LINUX_DISTRO} MATCHES fedora OR (${LINUX_DISTRO} MATCHES opensuse-tumbleweed) OR (${LINUX_DISTRO} MATCHES gentoo))
+ if (USE_FLATPAK)
set(_LIB lib${ADDRESS_SIZE})
+ 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)
+ 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)
+ install(
+ FILES
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so.0
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libalut.so.0.0.0
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so.1
+ ${ARCH_PREBUILT_DIRS_RELEASE}/libopenal.so.1.24.2
+ 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.34
+ DESTINATION ${_LIB}
+ )
+ endif ()
endif (LINUX)
install(DIRECTORY skins app_settings fonts