Skip to content
Snippets Groups Projects
Commit 4d4461fd authored by Bart Ribbers's avatar Bart Ribbers
Browse files

testing/yuzu: new aport

parent 419cae0c
No related branches found
No related tags found
No related merge requests found
# Contributor: Bart Ribbers <bribbers@disroot.org>
# Maintainer: Bart Ribbers <bribbers@disroot.org>
# The game compatibility list can be downloaded from
# https://api.yuzu-emu.org/gamedb
# Make sure to get the latest version when increasing the pkgver
# and save it as compatibility_list.json on dev.a.o/archive/yuzu
pkgname=yuzu
pkgver=0_git20220821
pkgrel=0
_commit="7fab7b829cf53c0f64ef43fb36418657b4acd8dd"
_commit_cpp_httplib="305a7abcb9b4e9e349843c6d563212e6c1bbbf21"
_commit_cpp_jwt="e12ef06218596b52d9b5d6e1639484866a8e7067"
_commit_cubeb="75d9d125ee655ef80f3bfcd97ae5a805931042b8"
_commit_dynarmic="e49fee0ca11517a39d3da65e5dc09e4d0cc3d020"
_commit_enet="39a72ab1990014eb399cee9d538fd529df99c6a0"
_commit_inih="1e80a47dffbda813604f0913e2ad68c7054c14e4"
_commit_libressl="8929f818fd748fd31a34fec7c04558399e13014a"
_commit_mbedtls="8c88150ca139e06aa2aae8349df8292a88148ea1"
_commit_sanitizers_cmake="aab6948fa863bc1cbe5d0850bc46b9ef02ed4c1a"
_commit_sirit="aa292d56650bc28f2b2d75973fab2e61d0136f9c"
_commit_spirv_headers="a3fdfe81465d57efc97cfd28ac6c8190fb31a6c8"
_commit_vulkan_headers="33d4dd987fc8fc6475ff9ca2b4f0c3cc6e793337"
_commit_xbyak="c306b8e5786eeeb87b8925a8af5c3bf057ff5a90"
pkgdesc="Nintendo Switch Emulator"
url="https://yuzu-emu.org/"
# ppc64le, s390x and riscv64 blocked by qt5-qtwebengine
arch="all !ppc64le !s390x !riscv64"
license="GPL-2.0-or-later"
makedepends="
boost-dev
catch2
clang
cmake
directfb-dev
doxygen
ffmpeg-dev
fmt-dev
glslang
graphviz
libusb-dev
lz4-dev
nlohmann-json
opus-dev
qt5-qtbase-dev
qt5-qtmultimedia-dev
qt5-qttools-dev
qt5-qtwebengine-dev
robin-map
samurai
sdl2-dev>=2.24.0
speexdsp-dev
zlib-dev
zstd-dev
"
source="https://github.com/yuzu-emu/yuzu/archive/$_commit/yuzu-$_commit.tar.gz
https://github.com/KhronosGroup/SPIRV-Headers/archive/$_commit_spirv_headers/SPIRV-Headers-$_commit_spirv_headers.tar.gz
https://github.com/KhronosGroup/Vulkan-Headers/archive/$_commit_vulkan_headers/Vulkan-Headers-$_commit_vulkan_headers.tar.gz
https://github.com/ReinUsesLisp/sirit/archive/$_commit_sirit/sirit-$_commit_sirit.tar.gz
https://github.com/arsenm/sanitizers-cmake/archive/$_commit_sanitizers_cmake/sanitizers-cmake-$_commit_sanitizers_cmake.tar.gz
https://github.com/arun11299/cpp-jwt/archive/$_commit_cpp_jwt/cpp-jwt-$_commit_cpp_jwt.tar.gz
https://github.com/benhoyt/inih/archive/$_commit_inih/inih-$_commit_inih.tar.gz
https://github.com/citra-emu/ext-libressl-portable/archive/$_commit_libressl/libressl-$_commit_libressl.tar.gz
https://github.com/herumi/xbyak/archive/$_commit_xbyak/xbyak-$_commit_xbyak.tar.gz
https://github.com/lsalzman/enet/archive/$_commit_enet/enet-$_commit_enet.tar.gz
https://github.com/merryhime/dynarmic/archive/$_commit_dynarmic/dynarmic-$_commit_dynarmic.tar.gz
https://github.com/mozilla/cubeb/archive/$_commit_cubeb/cubeb-$_commit_cubeb.tar.gz
https://github.com/yhirose/cpp-httplib/archive/$_commit_cpp_httplib/cpp-httplib-$_commit_cpp_httplib.tar.gz
https://github.com/yuzu-emu/mbedtls/archive/$_commit_mbedtls/mbedtls-$_commit_mbedtls.tar.gz
https://dev.alpinelinux.org/archive/yuzu/compatibility_list.json
"
builddir="$srcdir/$pkgname-$_commit"
prepare() {
rmdir \
externals/Vulkan-Headers \
externals/cpp-httplib \
externals/cpp-jwt \
externals/cubeb \
externals/dynarmic \
externals/enet \
externals/inih/inih \
externals/libressl \
externals/mbedtls \
externals/sirit \
externals/xbyak
mv "$srcdir/Vulkan-Headers-$_commit_vulkan_headers" externals/Vulkan-Headers
mv "$srcdir/cpp-httplib-$_commit_cpp_httplib" externals/cpp-httplib
mv "$srcdir/cpp-jwt-$_commit_cpp_jwt" externals/cpp-jwt
mv "$srcdir/cubeb-$_commit_cubeb" externals/cubeb
mv "$srcdir/dynarmic-$_commit_dynarmic" externals/dynarmic
mv "$srcdir/enet-$_commit_enet" externals/enet
mv "$srcdir/ext-libressl-portable-$_commit_libressl" externals/libressl
mv "$srcdir/inih-$_commit_inih" externals/inih/inih
mv "$srcdir/mbedtls-$_commit_mbedtls" externals/mbedtls
mv "$srcdir/sirit-$_commit_sirit" externals/sirit
mv "$srcdir/xbyak-$_commit_xbyak" externals/xbyak
rmdir \
externals/cubeb/cmake/sanitizers-cmake \
externals/sirit/externals/SPIRV-Headers
mv "$srcdir/sanitizers-cmake-$_commit_sanitizers_cmake" externals/cubeb/cmake/sanitizers-cmake
mv "$srcdir/SPIRV-Headers-$_commit_spirv_headers" externals/sirit/externals/SPIRV-Headers
# Trick the build system into thinking these are git submodules
mkdir \
externals/SDL/.git \
externals/Vulkan-Headers/.git \
externals/cpp-httplib/.git \
externals/cubeb/.git \
externals/discord-rpc/.git \
externals/dynarmic/.git \
externals/enet/.git \
externals/inih/inih/.git \
externals/libressl/.git \
externals/libusb/libusb/.git \
externals/mbedtls/.git \
externals/opus/opus/.git \
externals/sirit/.git \
externals/xbyak/.git \
externals/ffmpeg/ffmpeg/.git \
externals/vcpkg/.git \
externals/cpp-jwt/.git
default_prepare
mv "$srcdir"/compatibility_list.json "$builddir"/dist/compatibility_list/
}
build() {
cmake -B build -G Ninja \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DYUZU_USE_QT_WEB_ENGINE=ON \
-DYUZU_USE_EXTERNAL_SDL2=OFF \
-DDYNARMIC_NO_BUNDLED_ROBIN_MAP=ON \
-DYUZU_USE_BUNDLED_OPUS=OFF \
-DYUZU_USE_BUNDLED_FFMPEG=OFF \
-DYUZU_USE_BUNDLED_LIBUSB=OFF \
-DYUZU_USE_BUNDLED_QT=OFF \
-DENABLE_WEB_SERVICE=OFF \
-DUSE_DISCORD_PRESENCE=OFF \
-DENABLE_QT_TRANSLATION=ON \
-DENABLE_COMPATIBILITY_LIST_DOWNLOAD=OFF \
-DYUZU_ENABLE_COMPATIBILITY_REPORTING=ON \
-DTITLE_BAR_FORMAT_IDLE="$pkgname | $_commit {}" \
-DTITLE_BAR_FORMAT_RUNNING="$yuzu | $_commit | {}"
cmake --build build
}
check() {
cd build
CTEST_OUTPUT_ON_FAILURE=TRUE ctest
}
package() {
DESTDIR="$pkgdir" cmake --install build
}
sha512sums="
8b1af265dbb081d37fa2f550a941d3a23ea26a77e0bdac0249a65a8afc2cfb8dd1688f7f3ada41237b9419cf510df8b4ed7f6ddfbc7a0f5b73526f6336d99fe3 yuzu-7fab7b829cf53c0f64ef43fb36418657b4acd8dd.tar.gz
6f6031f4f070afa5fd87fe64e274ee8c207f8eda7319c147df64aaac48e200182c0f2f5be8b78a8687238b9016e3da7afc4195a8def1a26370ddb98dde3b1bb3 SPIRV-Headers-a3fdfe81465d57efc97cfd28ac6c8190fb31a6c8.tar.gz
d163216c4f49f8e4988240df7476fbfbf0913cc68e5cd5a1a3a06ee0ef44525dc43cf1fecd3e9f8079285cbb125e188b54d5bd5d566b0072cb8d6ff4b5f231c7 Vulkan-Headers-33d4dd987fc8fc6475ff9ca2b4f0c3cc6e793337.tar.gz
4424d1020a02877a2465d94ace0309cfc6952b0624ba248c113a5858e3749837d430fb5ec348953c140955ddf013a2a783f97b9594899a989905b08b82722a60 sirit-aa292d56650bc28f2b2d75973fab2e61d0136f9c.tar.gz
fda03b67b1c10b30e806d479589bc8a2be8405571861fea5535ec9bd8a389ab3c074c0ab1d1e6904b7cd8450291a3255b4a7dc5c55ca865d7745d2df9d62d590 sanitizers-cmake-aab6948fa863bc1cbe5d0850bc46b9ef02ed4c1a.tar.gz
3652c41e8ac42b5aed2a2c9294fb229bfc8126fe0cce5277a1724bae6b48aed9c1e9ff5498d33406be0a51d83068ca81813f6282d080e9af833d1517c388395d cpp-jwt-e12ef06218596b52d9b5d6e1639484866a8e7067.tar.gz
bf83c81062a1f25f2bee877509171243a35231880d360e705bcefa1375e1e598443ee07286bd713c80059674605d8702f9fcf12d23fe5441b1c23c9a314f103e inih-1e80a47dffbda813604f0913e2ad68c7054c14e4.tar.gz
0107159888a8918b97eda0d4f2491d8da84ba5ecf278f7eacbe363fd41c1297e3f2fb37a2bcec6cec5b303ba52131918fb798e96fdd2914f2ffbfef782d3c1f2 libressl-8929f818fd748fd31a34fec7c04558399e13014a.tar.gz
792146aefc2e3af9f412db383b4fcbd5e945f9814bde25cc18ea76a6f276c3bd6c38edb581074a2b48d11176a398cc6873556b5e2986449fe0417b7e46c09d95 xbyak-c306b8e5786eeeb87b8925a8af5c3bf057ff5a90.tar.gz
0b70357629c4a4863c46c6e9a0a11e11b550cd4da56df50a318e564d2132acd4f6ad13e0a9369559dbcb84378f13ec9f28f92a0fc2e6f540f6ea3a685b9c6474 enet-39a72ab1990014eb399cee9d538fd529df99c6a0.tar.gz
39704019e7439ab2605f47cf4a1e2037a0bba447ae9e02b90603425b9f0955dc75c4d8aa385d1e78d6a294969797bae46387a8516ef33b473468be41c27f7729 dynarmic-e49fee0ca11517a39d3da65e5dc09e4d0cc3d020.tar.gz
ede54f87721048015d653e884fb03f7dc0f82bb40787a362626d9a12257243f471083adc9646fd94b1d8f94983e849ce7672e33386b7a48c5c017de9c285e890 cubeb-75d9d125ee655ef80f3bfcd97ae5a805931042b8.tar.gz
0cd06301feccd2682f9b133f16c64c72e3f31dce29716ff3161a51138e0fcac12ebfb0f99ea1d121c239800a35d47a771bd2de525b43bae67f5aab1cf7d50d44 cpp-httplib-305a7abcb9b4e9e349843c6d563212e6c1bbbf21.tar.gz
be482d447a23105a94a429569f90274654a9b1ee6d311ea5c69de7b43915f98f41b8afde7ac9e0b8e5ec7c6f33954d9eacfdf209f19f67c82555ced504f4f3ca mbedtls-8c88150ca139e06aa2aae8349df8292a88148ea1.tar.gz
a66d619b1c7f851132d982df6626a13ed71b4631015209618d39d0a4d699d1e181297a2c2893f88603b6335ff9cc47b626ff3b4ff0e67366ae83e596e176c3fa compatibility_list.json
"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment