summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 9ad73fc36f7aa048f30351e9b124f7b43e84b7d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# Maintainer: Christoph Schmidpeter <john.doe@example.com>
# Co-Maintainer: Mubashshir <ahmubashshir@gmail.com>
# Contributor: Iwan Timmer <irtimmer@gmail.com>
# from: git

pkgname=anbox-git
pkgver=r1358.84f0268
pkgrel=2
epoch=1
arch=('x86_64')
url="http://anbox.io/"
license=('GPL3')
pkgdesc="Running Android in a container"
depends=('lxc-git' 'sdl2_image' 'protobuf' 'anbox-image' 'libsystemd' 'boost-libs' 'sdbus-cpp')
replaces=('anbox-launchers')
conflicts=('anbox-launchers')
makedepends=('cmake' 'git' 'glm' 'boost' 'properties-cpp' 'gtest' 'python' 'systemd' 'dbus')
source=("git+https://github.com/anbox/anbox.git"
	"git+https://github.com/google/cpu_features.git"
	'lxc.patch::https://gitlab.alpinelinux.org/alpine/aports/-/raw/fc60972afd4ff0c096498e28557b9a16e801aa7f/community/anbox/lxc4.patch'
	'sdbus.patch::https://gitlab.alpinelinux.org/alpine/aports/-/raw/fc60972afd4ff0c096498e28557b9a16e801aa7f/community/anbox/no-bundled-sdbus.patch'
	'delayed-start.patch::https://gitlab.alpinelinux.org/alpine/aports/-/raw/70a1a8afb7b6ac37291d382e6e5cc7561fc88626/community/anbox/give-more-time-to-start.patch'
	'desktop-dir.patch'
	'anbox-container-manager.service'
	'anbox-session-manager.service'
	'99-anbox.rules'
	'anbox.conf'
	'anbox.desktop'
	'org.anbox.service'
	'dev-binderfs.mount'
	'anbox-bridge.network'
	'anbox-bridge.netdev')
sha256sums=('SKIP'
            'SKIP'
            'c1071203defdeaee56122913a6d7e67ac496c889a0c59cb889d94a58bc655bfa'
            '7c0626afaf1ce004ac2c57cd89db393f9a6ba21f1087001d15278a7bd79c8219'
            '253c211455ff0cfaa058a0b80eb41d58f84ee646c0c67dbcbcc888b5833009a7'
            'd1e2e3fa1299b423f1d98cbd3c591d853f1ce8646f508ef838fe714f986fc5b2'
            'be18c27f349560d46f7d7912b3b84d503e477fb643c55e4a7d6de9a84be93d0b'
            '1f22dbb5a3ca6925bbf62899cd0f0bbaa0b77c879adcdd12ff9d43adfa61b1d8'
            '210eb93342228168f7bb632c8b93d9bfda6f53f62459a6b74987fa1e17530475'
            '3e07dc524a827c1651857cce28a06c1565bc5188101c140ed213bbafedc5abff'
            '7332d09865be553a259a53819cebddd21f661c7a251d78c2f46acd75c66676b6'
            '74e2208e0c03e5f21be3ff54b58160a172e3768a80c41726c06b4ab8cc9288dd'
            'c7e9958a9cff1191dca0d50b0ea8392d7728490e56ffb38a475ba516a09a2109'
            '44899328725667041e6e84912da81c1d0147b708006eb2c2bb6503f271629ff0'
            '559190df4d6d595480b30d8b13b862081fc4aac52790e33eb24cf7fbcb8003b8')

pkgver() {
  cd "${pkgname%*-git}"
  ( set -o pipefail
    git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
    printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
  )
}

prepare() {
  cd "${pkgname%*-git}"

  # Don't build tests
  truncate -s 0 cmake/FindGMock.cmake
  truncate -s 0 tests/CMakeLists.txt
  sed -i '1i\#include <cstdint>' "$srcdir/anbox/src/anbox/input/manager.cpp"
  for each in lxc sdbus delayed-start desktop-dir;do
    patch -p1 < "$srcdir/$each.patch"
  done

  git submodule init
  git config submodule.external/cpu_features.url $srcdir/cpu_features
  git config --remove-section submodule.external/sdbus-cpp
  git submodule update
}

build() {
  cmake -B build -S "${pkgname%*-git}" \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_BUILD_TYPE=None \
    -DCMAKE_SKIP_INSTALL_RPATH=YES \
    -DCMAKE_SKIP_RPATH=YES \
    -Wno-dev
  make -C build
}

package() {
  make -C build DESTDIR="$pkgdir" install

  install -Dm 644 -t "$pkgdir/usr/lib/systemd/system"     anbox-container-manager.service dev-binderfs.mount
  install -Dm 644 -t "$pkgdir/usr/lib/systemd/user"       anbox-session-manager.service
  install -Dm 644    "$srcdir/anbox-bridge.network"       "$pkgdir/usr/lib/systemd/network/80-anbox-bridge.network"
  install -Dm 644    "$srcdir/anbox-bridge.netdev"        "$pkgdir/usr/lib/systemd/network/80-anbox-bridge.netdev"
  install -Dm 644 -t "$pkgdir/usr/lib/udev/rules.d"       99-anbox.rules
  install -Dm 644 -t "$pkgdir/usr/share/applications"     anbox.desktop
  install -Dm 644 -t "$pkgdir/usr/share/dbus-1/services"  org.anbox.service
  install -Dm 644    "${pkgname%*-git}/snap/gui/icon.png"        "$pkgdir/usr/share/pixmaps/anbox.png"
  install -Dm 644 -t "$pkgdir/usr/share/desktop-directories"     "${pkgname%*-git}/data/desktop/anbox-android.directory"
  install -Dm 644 -t "$pkgdir/etc/xdg/menus/applications-merged" "${pkgname%*-git}/data/desktop/anbox-android.menu"
}