summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD145
1 files changed, 58 insertions, 87 deletions
diff --git a/PKGBUILD b/PKGBUILD
index 739bb7afcf9a..ffe272ec9a4c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -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: