blob: 3ab5955188de839146c47c2856b0d0fc063f822d (
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
|
# Maintainer: jc_gargma <jc_gargma@iserlohn-fortress.net>
# Maintainer (Arch): Jonathan Steel <jsteel at archlinux.org>
# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor (Arch): Duck Hunt <vaporeon@tfwno.gf>
# # I maintain this because:
# Arch version lacks additional optimization and hardening flags
pkgbase=mgba
pkgname=('libmgba' 'mgba-sdl' 'mgba-qt')
pkgver=0.8.2
pkgrel=1
arch=('x86_64')
url='http://mgba.io'
license=('custom:MPL2')
makedepends=('cmake' 'qt5-multimedia' 'sdl2' 'zlib' 'libpng' 'libzip' 'libedit'
'ffmpeg' 'imagemagick' 'desktop-file-utils' 'qt5-tools')
source=($pkgbase-$pkgver.tar.gz::https://github.com/mgba-emu/mgba/archive/$pkgver.tar.gz)
b2sums=('5a22d186b2732ba66698ac3fe47cd6ce841ca36ba856e5344948cf14a73aa9368658d94f0e6fb4fd78ae0a454c6d534182ecce221b3b24d62dde511c0aaa02a2')
prepare() {
[[ ! -d build ]] && mkdir build || rm -rf build
}
build() {
cd build
# -fPIE and -pie break compilation
export CFLAGS="$CFLAGS -O3 -flto=4 -fPIC"
export CXXFLAGS="$CXXFLAGS -O3 -flto=4 -fPIC"
cmake "$srcdir"/mgba-$pkgver -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=lib
make
}
package_libmgba() {
pkgdesc='Shared library of mGBA'
depends=('zlib' 'libpng' 'libzip' 'libedit' 'ffmpeg' 'imagemagick')
cmake -DCOMPONENT=libmgba mgba-$pkgver -DCMAKE_INSTALL_PREFIX="$pkgdir/usr" \
-P build/cmake_install.cmake
install -Dm644 mgba-$pkgver/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_mgba-sdl() {
pkgdesc='A Nintendo Gameboy Advance Emulator focusing on both speed and accuracy'
depends=('libmgba' 'sdl2')
cmake -DCOMPONENT=mgba-sdl mgba-$pkgver -DCMAKE_INSTALL_PREFIX="$pkgdir/usr" \
-P build/cmake_install.cmake
install -d "$pkgdir"/usr/share/licenses/$pkgname
ln -s /usr/share/licenses/libmgba/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
package_mgba-qt() {
pkgdesc='A Nintendo Gameboy Advance Emulator focusing on both speed and accuracy. Qt5 UI.'
depends=('libmgba' 'qt5-multimedia' 'sdl2')
cmake -DCOMPONENT=mgba-qt mgba-$pkgver -DCMAKE_INSTALL_PREFIX="$pkgdir/usr" \
-P build/cmake_install.cmake
desktop-file-install mgba-$pkgver/res/mgba-qt.desktop --dir "$pkgdir"/usr/share/applications/
install -Dm644 mgba-$pkgver/res/mgba-256.png "$pkgdir"/usr/share/pixmaps/mgba.png
install -d "$pkgdir"/usr/share/licenses/$pkgname
ln -s /usr/share/licenses/libmgba/LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}
|