diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 145 |
1 files changed, 58 insertions, 87 deletions
@@ -1,102 +1,73 @@ -# Maintainer: Maxime Gauduin <alucryd@archlinux.org> - -pkgname=libretro-citra-git -pkgver=r6961.37192ff3 +# Maintainer: Alexandre Bouvier <contact@amb.tf> +# Contributor: Maxime Gauduin <alucryd@archlinux.org> +_pkgname=libretro-citra +pkgname=$_pkgname-git +pkgver=r9304.d7e1612c1 pkgrel=1 -pkgdesc='Nintendo 3DS core' +pkgdesc="Nintendo 3DS core" arch=('x86_64') -url='https://github.com/libretro/citra' +url="https://github.com/libretro/citra" license=('GPL2') -groups=('libretro-unstable') -depends=('gcc-libs' 'glibc' 'libretro-core-info') -makedepends=('cmake' 'git') -provides=('libretro-citra') -conflicts=('libretro-citra') -source=('libretro-citra::git+https://github.com/libretro/citra.git' - 'citra-boost::git+https://github.com/citra-emu/ext-boost.git' - 'git+https://github.com/philsquared/Catch.git' - 'git+https://github.com/zeromq/cppzmq.git' - 'git+https://github.com/weidai11/cryptopp.git' - 'git+https://github.com/kinetiknz/cubeb.git' - 'git+https://github.com/discordapp/discord-rpc.git' - 'git+https://github.com/MerryMage/dynarmic.git' - 'git+https://github.com/lsalzman/enet.git' - 'git+https://github.com/fmtlib/fmt.git' - 'git+https://github.com/svn2github/inih.git' - 'citra-libressl::git+https://github.com/citra-emu/ext-libressl-portable.git' - 'git+https://github.com/zeromq/libzmq.git' - 'git+https://github.com/neobrain/nihstro.git' - 'git+https://github.com/arsenm/sanitizers-cmake.git' - 'citra-soundtouch::git+https://github.com/citra-emu/ext-soundtouch.git' - 'git+https://github.com/herumi/xbyak.git') -sha256sums=('SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP' - 'SKIP') +groups=('libretro') +depends=('crypto++' 'enet' 'gcc-libs' 'glibc' 'libretro-core-info') +makedepends=('boost' 'ffmpeg' 'git' 'zstd') +provides=("$_pkgname=${pkgver#r}") +conflicts=("$_pkgname") +source=( + "$_pkgname::git+$url.git" + 'citra-dynarmic::git+https://github.com/citra-emu/dynarmic.git' + 'citra-soundtouch::git+https://github.com/citra-emu/ext-soundtouch.git' + 'fmt::git+https://github.com/fmtlib/fmt.git' + 'libretro-nihstro::git+https://github.com/libretro-fork/nihstro.git' + 'lodepng::git+https://github.com/lvandeve/lodepng.git' + 'teakra::git+https://github.com/wwylele/teakra.git' + 'xbyak::git+https://github.com/herumi/xbyak.git' + 'use-system-libs.patch' +) +b2sums=( + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'SKIP' + 'a998c5a124daa79d2483aa97d0307140243a4184fa7eac523f4119152dda54910c11738fc82330ac192978b80b997b7c1e757213c411ee42c939d09dbb24e5d8' +) pkgver() { - cd libretro-citra - - echo "r$(git rev-list --count HEAD).$(git rev-parse --short HEAD)" + cd $_pkgname + printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)" } prepare() { - cd libretro-citra - - if [[ -d build ]]; then - rm -rf build - fi - mkdir build - - for submodule in externals/{catch,cppzmq,cryptopp/cryptopp,cubeb,discord-rpc,dynarmic,enet,fmt,inih/inih,libressl,libzmq,nihstro,xbyak}; do - git submodule init ${submodule} - git config submodule.${submodule}.url ../${submodule##*/} - git submodule update - done - for submodule in externals/{boost,soundtouch}; do - git submodule init ${submodule} - git config submodule.${submodule}.url ../citra-${submodule##*/} - git submodule update - done - - cd externals/cubeb - - for submodule in cmake/sanitizers-cmake; do - git submodule init ${submodule} - git config submodule.${submodule}.url ../../../${submodule##*/} - git submodule update - done + cd $_pkgname + git config submodule.dynarmic.url ../citra-dynarmic + git config submodule.fmt.url ../fmt + git config submodule.lodepng.url ../lodepng + git config submodule.nihstro.url ../libretro-nihstro + git config submodule.soundtouch.url ../citra-soundtouch + git config submodule.teakra.url ../teakra + git config submodule.xbyak.url ../xbyak + git -c protocol.file.allow=always submodule update + patch -Np1 < ../use-system-libs.patch + sed -i 's/-O[0123s]//;s/-Ofast//' Makefile + sed -i '/include <array>/i #include <algorithm>' src/common/logging/log.h + sed -i '/include <vector>/a #include <string>' src/core/frontend/mic.h } build() { - cd libretro-citra/build - - cmake .. \ - -DCMAKE_BUILD_TYPE='Release' \ - -DENABLE_LIBRETRO='ON' \ - -DENABLE_QT='OFF' \ - -DENABLE_SDL2='OFF' \ - -DENABLE_WEB_SERVICE='OFF' - make + make -C $_pkgname BUILD_DATE= HAVE_FFMPEG_STATIC=0 } package() { - cd libretro-citra/build - - install -Dm 644 src/citra_libretro/citra_libretro.so -t "${pkgdir}"/usr/lib/libretro/ + depends+=( + 'libavcodec.so' + 'libavutil.so' + 'libboost_serialization.so' + 'libzstd.so' + ) + # shellcheck disable=SC2154 + install -D -t "$pkgdir"/usr/lib/libretro $_pkgname/citra_libretro.so } - -# vim: ts=2 sw=2 et: |