summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authordaurnimator2018-10-01 22:22:14 +1000
committerdaurnimator2018-10-01 22:31:02 +1000
commit9fa5fce60015904bef090492e94302d12112e22f (patch)
tree5d7c383de82b16989b0acfa795b8c23f7454d766
parent366515b133397d993e4f639ed7724b9e963c3f9a (diff)
downloadaur-9fa5fce60015904bef090492e94302d12112e22f.tar.gz
Overhaul and upgrade to 0.5.5
-rw-r--r--.SRCINFO67
-rw-r--r--PKGBUILD163
2 files changed, 165 insertions, 65 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 4625a27cf5ac..d5cd49b699ab 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,35 +1,54 @@
-# Generated by mksrcinfo v8
-# Thu Jun 2 13:43:39 UTC 2016
pkgbase = arcan
pkgdesc = Game Engine meets a Display Server meets a Multimedia Framework
- pkgver = 0.5.0.r25.g18d5347
+ pkgver = 0.5.5
pkgrel = 1
url = http://arcan-fe.com
- arch = i686
arch = x86_64
license = GPL
+ license = LGPL
license = BSD
makedepends = cmake
- makedepends = git
- depends = sdl
- depends = openal
- depends = mesa
- depends = freetype2
- depends = sqlite
- depends = luajit
- optdepends = ffmpeg
- optdepends = vlc
- optdepends = apr
- optdepends = xz
- options = !libtool
- options = !strip
- options = !makeflags
- options = !buildflags
- options = staticlibs
- source = git://github.com/letoram/arcan.git
- source = arcan.sh
- sha256sums = SKIP
- sha256sums = a62a2e44f96699e956f84fa47256aea3e2b60574d452a20c7f7565298779d6c0
+ makedepends = fuse3
+ makedepends = libvncserver
+ makedepends = lua51
+ makedepends = ruby
+ source = arcan-0.5.5.tar.gz::https://github.com/letoram/arcan/archive/0.5.5.tar.gz
+ sha256sums = 578ed860a99a02cf1cf963efac830eb8af08093e4322832b2be6554d8c922ff2
pkgname = arcan
+ depends = apr
+ depends = harfbuzz-icu
+ depends = libvncserver
+ depends = lua51
+ depends = openal
+ depends = sdl
+ depends = vlc
+
+pkgname = arcan-acfgfs
+ pkgdesc = Arcan virtual filesystem for working with the format that durden (and others) provide over a domain socket
+ depends = fuse3
+
+pkgname = arcan-aclip
+ pkgdesc = Arcan clipboard integration, similarly to how xclip works for Xorg
+ depends = arcan
+
+pkgname = arcan-aloadimage
+ pkgdesc = Arcan sandboxed image loader, supporting multi-process privilege separation, playlists and so on - similar to xloadimage
+ depends = arcan
+
+pkgname = arcan-leddec
+ pkgdesc = A simple skeleton that can be used for interfacing with custom LED controllers using Arcan
+ depends = arcan
+
+pkgname = arcan-ltui
+ pkgdesc = A patched version of the Lua interactive CLI that loads in the shmif-tui (text-user interfaces)
+ depends = arcan
+
+pkgname = arcan-shmmon
+ pkgdesc = Simple shmif- debugging aid for Arcan
+ depends = arcan
+
+pkgname = arcan-vrbridge
+ pkgdesc = Aggregates samples from VR related SDKs and binds into a single avatar in a way that integrates with the core engine VR path
+ depends = arcan
diff --git a/PKGBUILD b/PKGBUILD
index 1754d1347b52..0ac599e0db2c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,60 +1,141 @@
-# Mantainer Jens Staal <staal1978@gmail.com>
+# Maintainer: Daurnimator <quae@daurnimator.com>
+# Contributor: Jens Staal <staal1978@gmail.com>
-pkgname=arcan
-pkgver=0.5.0.r25.g18d5347
+## Known issue: cmake uses absolute paths which result in binaries containing
+## build root via __FILE__ macro
+
+pkgname=('arcan'
+ 'arcan-acfgfs'
+ 'arcan-aclip'
+ 'arcan-aloadimage'
+ 'arcan-leddec'
+ 'arcan-ltui'
+ 'arcan-shmmon'
+ 'arcan-vrbridge')
+pkgver=0.5.5
pkgrel=1
-pkgdesc="Game Engine meets a Display Server meets a Multimedia Framework"
-arch=('i686' 'x86_64')
-url="http://arcan-fe.com"
-license=('GPL' 'BSD')
+pkgdesc='Game Engine meets a Display Server meets a Multimedia Framework'
+arch=('x86_64')
+url='http://arcan-fe.com'
+license=('GPL' 'LGPL' 'BSD')
+makedepends=('cmake'
+ 'fuse3'
+ 'libvncserver'
+ 'lua51' # Doesn't compile against LuaJIT 2.1 due to deprecated ref API usage
+ # TODO: vrbridge wants openhmd
+ 'ruby')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/letoram/arcan/archive/$pkgver.tar.gz")
+sha256sums=('578ed860a99a02cf1cf963efac830eb8af08093e4322832b2be6554d8c922ff2')
+
+build() {
+ cd "$pkgbase-$pkgver"
-depends=('sdl' 'openal' 'mesa' 'freetype2' 'sqlite' 'luajit')
-optdepends=('ffmpeg' 'vlc' 'apr' 'xz')
-makedepends=('cmake' 'git')
+ # Build main library/application
+ mkdir -p build
+ env -C build cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DDISABLE_JIT=ON \
+ -DLUA_INCLUDE_DIR=/usr/include/lua5.1 \
+ -DDISTR_TAG=arch \
+ -DENGINE_BUILDTAG="$pkgver" \
+ -DDISABLE_HIJACK=OFF \
+ -DVIDEO_PLATFORM=sdl \
+ ../src
+ make -C build
-source=('git://github.com/letoram/arcan.git' 'arcan.sh')
+ # Build docs
+ ruby -C doc -Ku docgen.rb mangen
-sha256sums=('SKIP' 'a62a2e44f96699e956f84fa47256aea3e2b60574d452a20c7f7565298779d6c0')
+ # Build misc utils
+ ## waybridge is disabled on VIDEO_PLATFORM=sdl
+ ## leddec and ltui are missing install rules, so build with install RPATH
+ for tool in acfgfs aclip aloadimage leddec ltui shmmon vrbridge; do
+ env -C "src/tools/$tool" \
+ cmake \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DARCAN_SHMIF_INCLUDE_DIR=../../shmif \
+ -DARCAN_SHMIF_LIBRARY=../../../build/shmif/libarcan_shmif.so \
+ -DARCAN_TUI_INCLUDE_DIR=../../shmif \
+ -DARCAN_TUI_LIBRARY=../../../build/shmif/libarcan_tui.so \
+ -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
+ make -C "src/tools/$tool"
+ done
+}
-options=('!libtool' '!strip' '!makeflags' '!buildflags' 'staticlibs')
+package_arcan() {
+ depends=('apr'
+ 'harfbuzz-icu'
+ 'libvncserver'
+ 'lua51'
+ 'openal'
+ 'sdl'
+ 'vlc')
-pkgver() {
- cd "$srcdir"/$pkgname
+ cd "$pkgbase-$pkgver"
- if GITTAG="$(git describe --abbrev=0 --tags 2>/dev/null)"; then
- echo "$(sed -e "s/^${pkgname%%-git}//" -e 's/^[-_/a-zA-Z]\+//' -e 's/[-_+]/./g' <<< ${GITTAG}).r$(git rev-list --count ${GITTAG}..).g$(git log -1 --format="%h")"
- else
- echo "0.r$(git rev-list --count master).g$(git log -1 --format="%h")"
- fi
+ make -C build DESTDIR="$pkgdir" install
+ install -Dm644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
-prepare() {
- cd "$srcdir"/$pkgname
- rm -rf build
- mkdir build
+package_arcan-acfgfs() {
+ pkgdesc='Arcan virtual filesystem for working with the format that durden (and others) provide over a domain socket'
+ depends=('fuse3')
+
+ cd "$pkgbase-$pkgver"
+
+ make -C src/tools/acfgfs DESTDIR="$pkgdir" install
}
-build() {
- cd "$srcdir"/$pkgname/build
- # change Release to Debug if testing
- # video platform options
- # DVIDEO_PLATFORM=egl-dri, egl-nvidia, sdl, egl-gles, x11, x11-headless
- cmake -DCMAKE_BUILD_TYPE="Release" -DVIDEO_PLATFORM=sdl -DENABLE_LWA=ON -DISTR_TAG=arch -DDISABLE_HIJACK=OFF ../src
- make -j 12
+package_arcan-aclip() {
+ pkgdesc='Arcan clipboard integration, similarly to how 'xclip' works for Xorg'
+ depends=('arcan')
+
+ cd "$pkgbase-$pkgver"
+
+ make -C src/tools/aclip DESTDIR="$pkgdir" install
}
+package_arcan-aloadimage() {
+ pkgdesc='Arcan sandboxed image loader, supporting multi-process privilege separation, playlists and so on - similar to xloadimage'
+ depends=('arcan')
-package() {
- cd "$srcdir"/$pkgname/build
- cmake -E cmake_echo_color --cyan "Install the project..."
- DESTDIR="$pkgdir" cmake -DCMAKE_INSTALL_PREFIX="/usr" -P cmake_install.cmake
- #fix potential installation errors putting stuff in /usr/local
- cp -r "$pkgdir"/usr/local/* "$pkgdir"/usr/
- rm -rf "$pkgdir"/usr/local
- #install default environment variables
- mkdir -p "$pkgdir"/etc/profile.d
- cp "$srcdir"/arcan.sh "$pkgdir"/etc/profile.d/
+ cd "$pkgbase-$pkgver"
+
+ make -C src/tools/aloadimage DESTDIR="$pkgdir" install
}
+package_arcan-shmmon() {
+ pkgdesc='Simple shmif- debugging aid for Arcan'
+ depends=('arcan')
+
+ cd "$pkgbase-$pkgver"
+ make -C src/tools/shmmon DESTDIR="$pkgdir" install
+}
+package_arcan-vrbridge() {
+ pkgdesc='Aggregates samples from VR related SDKs and binds into a single avatar in a way that integrates with the core engine VR path'
+ depends=('arcan')
+
+ cd "$pkgbase-$pkgver"
+
+ make -C src/tools/vrbridge DESTDIR="$pkgdir" install
+}
+
+package_arcan-leddec() {
+ pkgdesc='A simple skeleton that can be used for interfacing with custom LED controllers using Arcan'
+ depends=('arcan')
+
+ cd "$pkgbase-$pkgver"
+
+ install -Dm755 src/tools/leddec/leddec "$pkgdir/usr/bin/arcan_leddec"
+}
+
+package_arcan-ltui() {
+ pkgdesc='A patched version of the Lua interactive CLI that loads in the shmif-tui (text-user interfaces)'
+ depends=('arcan')
+
+ cd "$pkgbase-$pkgver"
+
+ install -Dm755 src/tools/ltui/ltui "$pkgdir/usr/bin/arcan_ltui"
+}