diff options
author | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2019-09-26 14:36:15 -0700 |
---|---|---|
committer | jc_gargma <jc_gargma@iserlohn-fortress.net> | 2019-09-26 14:36:15 -0700 |
commit | ce73d7f0bf582433ee67a142d7ce478bb8f286a8 (patch) | |
tree | 1678eff5a5dbe8c4128bd5d60c8b24b3594efa41 | |
download | mgba-ce73d7f0bf582433ee67a142d7ce478bb8f286a8.tar.xz |
Initial commit
-rw-r--r-- | PKGBUILD | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..60fdfd8 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,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.7.2 +pkgrel=1.2 +arch=('x86_64') +url='http://mgba.io' +license=('custom:MPL2') +makedepends=('cmake' 'qt5-multimedia' 'sdl2' 'zlib' 'libpng' 'libzip' 'libedit' + 'ffmpeg' 'libmagick' 'desktop-file-utils' 'qt5-tools') +source=($pkgbase-$pkgver.tar.gz::https://github.com/mgba-emu/mgba/archive/$pkgver.tar.gz) +md5sums=('bbb924250c0929907945c5461c502790') + +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' 'libmagick') + + 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 +} |