summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorErik Kundiman <erik@megapahit.org>2024-10-20 21:10:34 +0800
committerErik Kundiman <erik@megapahit.org>2024-10-20 21:10:34 +0800
commitbdd8da4c5e4a3c2d9d58b1d72eda73c9f452c825 (patch)
tree9528828c505403e8fb4af6886a261adf7c3c3cc5 /indra
parentceca01eb37ea7c56be87474b6488eecdf0b7c893 (diff)
Working Arch port but CEF & WebRTC are still broken
I've tried using FMOD instead, but CEF didn't work either. At first I used crow-misia's WebRTC build but it would cause a segmentation fault, but LL's build seems to break CEF. Gotta find a way so CM's build doesn't crash the viewer. PKGBUILD should be moved to indra/newview as an .in to be configured by CMake for dynamic version numbers, and adjust the instruction too to run makepkg -R from the folder where the generated PKGBUILD will be.
Diffstat (limited to 'indra')
-rw-r--r--indra/cmake/LibraryInstall.cmake2
-rw-r--r--indra/cmake/UnixInstall.cmake2
-rw-r--r--indra/cmake/WebRTC.cmake4
-rw-r--r--indra/llprimitive/llphysicsextensions/CMakeLists.txt2
-rw-r--r--indra/llwebrtc/CMakeLists.txt2
-rw-r--r--indra/media_plugins/cef/CMakeLists.txt4
-rw-r--r--indra/media_plugins/libvlc/CMakeLists.txt2
-rw-r--r--indra/newview/ViewerInstall.cmake2
8 files changed, 11 insertions, 9 deletions
diff --git a/indra/cmake/LibraryInstall.cmake b/indra/cmake/LibraryInstall.cmake
index b94841897c..e98d71f044 100644
--- a/indra/cmake/LibraryInstall.cmake
+++ b/indra/cmake/LibraryInstall.cmake
@@ -4,7 +4,7 @@ list(REMOVE_ITEM ${PROJECT_NAME}_HEADER_FILES CMakeLists.txt)
if (BUILD_SHARED_LIBS)
if (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else ()
set(_LIB lib)
diff --git a/indra/cmake/UnixInstall.cmake b/indra/cmake/UnixInstall.cmake
index 7aa05ff5a6..0751e1caa5 100644
--- a/indra/cmake/UnixInstall.cmake
+++ b/indra/cmake/UnixInstall.cmake
@@ -16,7 +16,7 @@ if (INSTALL)
if (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib)
diff --git a/indra/cmake/WebRTC.cmake b/indra/cmake/WebRTC.cmake
index eec4e2ce7a..3491a511f5 100644
--- a/indra/cmake/WebRTC.cmake
+++ b/indra/cmake/WebRTC.cmake
@@ -6,7 +6,7 @@ include_guard()
add_library( ll::webrtc INTERFACE IMPORTED )
target_include_directories( ll::webrtc SYSTEM INTERFACE "${LIBS_PREBUILT_DIR}/include/webrtc" "${LIBS_PREBUILT_DIR}/include/webrtc/third_party/abseil-cpp")
-if (${LINUX_DISTRO} MATCHES debian OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
+if (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES arch) OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
use_prebuilt_binary(webrtc)
elseif (NOT (WINDOWS OR CMAKE_SYSTEM_NAME MATCHES FreeBSD))
target_compile_definitions(ll::webrtc INTERFACE CM_WEBRTC=1)
@@ -75,7 +75,7 @@ elseif (NOT (WINDOWS OR CMAKE_SYSTEM_NAME MATCHES FreeBSD))
endif (CMAKE_OSX_ARCHITECTURES MATCHES arm64)
file(WRITE ${PREBUILD_TRACKING_DIR}/webrtc_installed "0")
endif (${PREBUILD_TRACKING_DIR}/sentinel_installed IS_NEWER_THAN ${PREBUILD_TRACKING_DIR}/webrtc_installed OR NOT ${webrtc_installed} EQUAL 0)
-endif (${LINUX_DISTRO} MATCHES debian OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
+endif (${LINUX_DISTRO} MATCHES debian OR (${LINUX_DISTRO} MATCHES arch) OR CMAKE_OSX_ARCHITECTURES MATCHES x86_64)
if (WINDOWS)
target_link_libraries( ll::webrtc INTERFACE webrtc.lib )
diff --git a/indra/llprimitive/llphysicsextensions/CMakeLists.txt b/indra/llprimitive/llphysicsextensions/CMakeLists.txt
index 258cea5dd7..d3fe503e8c 100644
--- a/indra/llprimitive/llphysicsextensions/CMakeLists.txt
+++ b/indra/llprimitive/llphysicsextensions/CMakeLists.txt
@@ -82,7 +82,7 @@ list(REMOVE_ITEM ${PROJECT_NAME}_HEADER_FILES
if (BUILD_SHARED_LIBS)
if (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else ()
set(_LIB lib)
diff --git a/indra/llwebrtc/CMakeLists.txt b/indra/llwebrtc/CMakeLists.txt
index 939dc96dda..7700eeb7c6 100644
--- a/indra/llwebrtc/CMakeLists.txt
+++ b/indra/llwebrtc/CMakeLists.txt
@@ -82,7 +82,7 @@ if (INSTALL)
set(_LIB ../Frameworks)
elseif (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else (DARWIN)
set(_LIB lib)
diff --git a/indra/media_plugins/cef/CMakeLists.txt b/indra/media_plugins/cef/CMakeLists.txt
index d6c4ab0ee6..4ca43e06b7 100644
--- a/indra/media_plugins/cef/CMakeLists.txt
+++ b/indra/media_plugins/cef/CMakeLists.txt
@@ -145,8 +145,10 @@ if (INSTALL)
elseif (LINUX)
if (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
+ else (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
+ set(_LIB lib)
endif (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
install(
PROGRAMS
diff --git a/indra/media_plugins/libvlc/CMakeLists.txt b/indra/media_plugins/libvlc/CMakeLists.txt
index cacc83bef4..6d005bb6d2 100644
--- a/indra/media_plugins/libvlc/CMakeLists.txt
+++ b/indra/media_plugins/libvlc/CMakeLists.txt
@@ -92,7 +92,7 @@ if (INSTALL)
)
elseif (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else (DARWIN)
set(_LIB lib)
diff --git a/indra/newview/ViewerInstall.cmake b/indra/newview/ViewerInstall.cmake
index e6d8f500a0..ab52c63a91 100644
--- a/indra/newview/ViewerInstall.cmake
+++ b/indra/newview/ViewerInstall.cmake
@@ -92,7 +92,7 @@ install(PROGRAMS linux_tools/launch_url.sh
if (LINUX)
if (EXISTS ${CMAKE_SYSROOT}/usr/lib/${ARCH}-linux-gnu)
set(_LIB lib/${ARCH}-linux-gnu)
- elseif (EXISTS /lib64)
+ elseif (EXISTS /lib64 AND NOT ${LINUX_DISTRO} MATCHES arch)
set(_LIB lib64)
else ()
set(_LIB lib)