blob: edd42a268e80ed26276d661b843c7ea314fbe2f8 (
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
|
# Maintainer: Alexandre Bouvier <contact@amb.tf>
_pkgname=xemu
pkgname=$_pkgname-git
pkgver=0.8.58.r1.g687bf62
pkgrel=1
pkgdesc="Original Xbox emulator (fork of XQEMU)"
arch=('x86_64')
url="https://xemu.app/"
license=('GPL-2.0-only')
depends=(
'gcc-libs'
'glibc'
'glslang'
'hicolor-icon-theme'
'sdl2'
)
makedepends=(
'cmake'
'curl'
'git'
'glib2'
'glu'
'gtk3'
'libepoxy'
'libpcap'
'libsamplerate'
'libslirp'
'meson'
'nlohmann-json'
'python-yaml'
'tomlplusplus>=3.1'
'vulkan-headers'
'vulkan-icd-loader'
'xxhash>=0.8'
'zlib'
)
provides=("$_pkgname")
conflicts=("$_pkgname")
install=$_pkgname.install
source=("$_pkgname::git+https://github.com/xemu-project/xemu.git")
b2sums=('SKIP')
pkgver() {
cd $_pkgname
git describe --long --tags --abbrev=7 | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g'
}
prepare() {
cd $_pkgname
sed -i '/\[wrap-/a method=cmake' subprojects/{SPIRV-Reflect,VulkanMemoryAllocator,glslang,nv2a_vsh_cpu,volk}.wrap
meson subprojects download
mkdir -p ../build
python scripts/gen-license.py > XEMU_LICENSE
# fix bug with cmake subprojects
sed -i '/CPU_CFLAGS="-m64"/d' configure
}
build() {
cd build
../$_pkgname/configure \
--audio-drv-list="sdl" \
--disable-docs \
--disable-download \
--disable-werror \
--enable-pie \
--extra-cflags="-DXBOX=1" \
--ninja="$NINJA" \
--target-list="i386-softmmu" \
-Dbuildtype=plain
make qemu-system-i386
}
package() {
depends+=(
'libcurl.so'
'libepoxy.so'
'libgdk-3.so'
'libglib-2.0.so'
'libgobject-2.0.so'
'libgtk-3.so'
'libpcap.so'
'libsamplerate.so'
'libslirp.so'
'libtomlplusplus.so'
'libxxhash.so'
'libz.so'
)
cd $_pkgname
# shellcheck disable=SC2154
install -Dm755 ../build/qemu-system-i386 "$pkgdir"/usr/bin/$_pkgname
install -Dm644 ui/xemu.desktop "$pkgdir"/usr/share/applications/$_pkgname.desktop
for _size in 16 24 32 48 64 128 256 512; do
install -Dm644 ui/icons/xemu_${_size}x${_size}.png "$pkgdir"/usr/share/icons/hicolor/${_size}x${_size}/apps/$_pkgname.png
done
install -Dm644 ui/icons/xemu.svg "$pkgdir"/usr/share/icons/hicolor/scalable/apps/$_pkgname.svg
install -Dm644 XEMU_LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE.txt
}
|