diff options
-rwxr-xr-x | .gitignore | 6 | ||||
-rw-r--r-- | PKGBUILD | 14 | ||||
-rw-r--r-- | README.md | 6 | ||||
-rw-r--r-- | indra/cmake/LibraryInstall.cmake | 2 | ||||
-rw-r--r-- | indra/cmake/UnixInstall.cmake | 2 | ||||
-rw-r--r-- | indra/cmake/WebRTC.cmake | 4 | ||||
-rw-r--r-- | indra/llprimitive/llphysicsextensions/CMakeLists.txt | 2 | ||||
-rw-r--r-- | indra/llwebrtc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | indra/media_plugins/cef/CMakeLists.txt | 4 | ||||
-rw-r--r-- | indra/media_plugins/libvlc/CMakeLists.txt | 2 | ||||
-rw-r--r-- | indra/newview/ViewerInstall.cmake | 2 |
11 files changed, 34 insertions, 12 deletions
diff --git a/.gitignore b/.gitignore index d2587ec49c..cf76d037e4 100755 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ *.depend *.stamp *.rc +*.pkg.tar.zst *~ @@ -20,7 +21,7 @@ CMakeCache.txt cmake_install.cmake LICENSES -build/ +pkg/ build-darwin-* build-freebsd-* build-linux-* @@ -94,3 +95,6 @@ web/secondlife.com.* .env .vscode +.BUILDINFO +.MTREE +.PKGINFO diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000000..74d9ef460f --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,14 @@ +# Maintainer: Erik Kundiman <erik@megapahit.net> +pkgname=megapahit +pkgver=7.1.10 +pkgrel=52697 +pkgdesc="A fork of the Second Life viewer" +arch=('x86_64') +url="https://megapahit.net" +license=('LGPL-2.1') +depends=(freealut apr-util boost-libs fltk glu hunspell libnghttp2 sdl2 uriparser vlc libvorbis) + +package() { + cd "$startdir/build-linux-x86_64" + make DESTDIR="$pkgdir/" install +} @@ -119,10 +119,12 @@ $ make -j`nproc` ### Arch ``` -$ sudo pacman -S cmake pkgconf freealut apr-util boost-libs fltk glm hunspell minizip nanosvg libnghttp2 pcre libpipewire sdl2 uriparser vlc libvorbis xxhash +$ sudo pacman -S cmake base-devel python freealut apr-util boost fltk glm glu hunspell minizip nanosvg libnghttp2 pcre libpipewire sdl2 uriparser vlc libvorbis xxhash $ export LL_BUILD="-O3 -std=c++17 -fPIC -DLL_LINUX=1" -$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSESYSTEMLIBS:BOOL=ON -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=OFF ../indra +$ cmake -DCMAKE_BUILD_TYPE:STRING=Release -DADDRESS_SIZE:STRING=64 -DUSESYSTEMLIBS:BOOL=ON -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=OFF -DCMAKE_INSTALL_PREFIX:PATH=/usr ../indra $ make -j`nproc` +$ cd .. +$ makepkg -R ``` ### Windows 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) |