summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authoreugene2024-04-18 13:21:48 +0300
committereugene2024-04-18 13:21:48 +0300
commitbb9ac2ebf754d6a73a4485a902c23c03018c9f7b (patch)
tree6ace2a7a1ded3bdfe95f87e3b745b461259f5353
parent038d00a0c8f935fe06cba94766ca0e98927273e6 (diff)
downloadaur-bb9ac2ebf754d6a73a4485a902c23c03018c9f7b.tar.gz
remove shaderc-non-semantic-debug from depends
-rw-r--r--.SRCINFO21
-rw-r--r--PKGBUILD82
2 files changed, 84 insertions, 19 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 1ae34a583d17..39786d027f0f 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = duckstation-git
pkgdesc = A Sony PlayStation (PSX) emulator, focusing on playability, speed, and long-term maintainability (git version)
- pkgver = 0.1.r6649.g9fd2994
+ pkgver = 0.1.r6674.gd918705
pkgrel = 1
url = https://github.com/stenzek/duckstation
arch = x86_64
@@ -21,23 +21,32 @@ pkgbase = duckstation-git
makedepends = sndio
makedepends = ninja
makedepends = jack
+ makedepends = python
depends = sh
depends = glibc
depends = gcc-libs
depends = sdl2
depends = qt6-base
- depends = shaderc-non-semantic-debug
depends = libwebp
+ depends = libwebp.so
depends = libjpeg-turbo
+ depends = libjpeg.so
depends = libpng
+ depends = libpng16.so
depends = libxrandr
depends = libx11
depends = freetype2
+ depends = libfreetype.so
depends = zstd
+ depends = libzstd.so
depends = zlib
+ depends = libz.so
depends = dbus
+ depends = libdbus-1.so
depends = curl
+ depends = libcurl.so
depends = systemd-libs
+ depends = libudev.so
depends = hicolor-icon-theme
optdepends = qt6-wayland: Wayland support
optdepends = libpulse: Pulseaudio support
@@ -47,9 +56,17 @@ pkgbase = duckstation-git
provides = duckstation
conflicts = duckstation
source = git+https://github.com/stenzek/duckstation.git
+ source = git+https://github.com/google/shaderc.git#tag=v2024.0
+ source = git+https://github.com/KhronosGroup/glslang.git#commit=d73712b8f6c9047b09e99614e20d456d5ada2390
+ source = git+https://github.com/KhronosGroup/SPIRV-Headers.git#commit=8b246ff75c6615ba4532fe4fde20f1be090c3764
+ source = git+https://github.com/KhronosGroup/SPIRV-Tools.git#commit=04896c462d9f3f504c99a4698605b6524af813c1
source = duckstation-qt.desktop
source = duckstation-qt.sh
sha256sums = SKIP
+ sha256sums = c1f935c1e0338e274cea4f106fc3b13e02f4150e504a255ddb18221bd80bb416
+ sha256sums = 8c97fbe90abb311903b29d1fec8799e6e8a618ed2b69de6833dfed9252c85dad
+ sha256sums = bbbdf1f65d11a5e6a1f03da5804e555af9c027e76f9dd22135a092f88b8a9b2b
+ sha256sums = 56bb21ba0a74b6a489398d5a6d429d7e38346ef67c21ee6df00395c990224701
sha256sums = ec2d7358f81598390a8ceca2d1974be3e5f7c45602b550c89a1e9323ab45474b
sha256sums = 221a8fc0d1f0cebdf281acc26484e98ebbb59f876e12fdef3f03cf91380e31f5
diff --git a/PKGBUILD b/PKGBUILD
index f7fe7998d5c6..2a3fd382295a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
pkgname=duckstation-git
_pkgname=duckstation
-pkgver=0.1.r6649.g9fd2994
+pkgver=0.1.r6674.gd918705
pkgdesc='A Sony PlayStation (PSX) emulator, focusing on playability, speed, and long-term maintainability (git version)'
pkgrel=1
arch=(x86_64 aarch64)
@@ -14,19 +14,19 @@ depends=(
gcc-libs
sdl2
qt6-base
- shaderc-non-semantic-debug
- libwebp
- libjpeg-turbo
- libpng
+ libwebp libwebp.so
+ libjpeg-turbo libjpeg.so
+ libpng libpng16.so
libxrandr
libx11
- freetype2
- zstd
- zlib
- dbus
- curl
- systemd-libs
- hicolor-icon-theme)
+ freetype2 libfreetype.so
+ zstd libzstd.so
+ zlib libz.so
+ dbus libdbus-1.so
+ curl libcurl.so
+ systemd-libs libudev.so
+ hicolor-icon-theme
+)
makedepends=(
git
cmake
@@ -42,7 +42,9 @@ makedepends=(
alsa-lib
sndio
ninja
- jack)
+ jack
+ python
+)
optdepends=(
'qt6-wayland: Wayland support'
'libpulse: Pulseaudio support'
@@ -52,12 +54,23 @@ optdepends=(
)
provides=('duckstation')
conflicts=('duckstation')
-source=(git+"$url".git
+source=(
+ git+"$url".git
+ git+https://github.com/google/shaderc.git#tag=v2024.0
+ git+https://github.com/KhronosGroup/glslang.git#commit=d73712b8f6c9047b09e99614e20d456d5ada2390
+ git+https://github.com/KhronosGroup/SPIRV-Headers.git#commit=8b246ff75c6615ba4532fe4fde20f1be090c3764
+ git+https://github.com/KhronosGroup/SPIRV-Tools.git#commit=04896c462d9f3f504c99a4698605b6524af813c1
duckstation-qt.desktop
duckstation-qt.sh)
-sha256sums=('SKIP'
- 'ec2d7358f81598390a8ceca2d1974be3e5f7c45602b550c89a1e9323ab45474b'
- '221a8fc0d1f0cebdf281acc26484e98ebbb59f876e12fdef3f03cf91380e31f5')
+sha256sums=(
+ 'SKIP'
+ 'c1f935c1e0338e274cea4f106fc3b13e02f4150e504a255ddb18221bd80bb416'
+ '8c97fbe90abb311903b29d1fec8799e6e8a618ed2b69de6833dfed9252c85dad'
+ 'bbbdf1f65d11a5e6a1f03da5804e555af9c027e76f9dd22135a092f88b8a9b2b'
+ '56bb21ba0a74b6a489398d5a6d429d7e38346ef67c21ee6df00395c990224701'
+ 'ec2d7358f81598390a8ceca2d1974be3e5f7c45602b550c89a1e9323ab45474b'
+ '221a8fc0d1f0cebdf281acc26484e98ebbb59f876e12fdef3f03cf91380e31f5'
+)
pkgver() {
cd "$srcdir/$_pkgname"
@@ -65,6 +78,39 @@ pkgver() {
}
build() {
+ echo "Building shaderc..."
+ cd "$srcdir/shaderc"
+ pushd third_party
+ ln -sf ../../glslang ./
+ ln -sf ../../SPIRV-Headers ./spirv-headers
+ ln -sf ../../SPIRV-Tools ./spirv-tools
+ popd
+ git apply "$srcdir/$_pkgname/scripts/shaderc-changes.patch" \
+ --exclude=CMakeLists.txt \
+ --exclude=libshaderc/CMakeLists.txt \
+ --exclude third_party/CMakeLists.txt
+
+ cmake -B build \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_PREFIX_PATH="$srcdir/deps" \
+ -DCMAKE_INSTALL_PREFIX="$srcdir/deps" \
+ -DSHADERC_SKIP_TESTS=ON \
+ -DSHADERC_SKIP_EXAMPLES=ON \
+ -DSHADERC_SKIP_COPYRIGHT_CHECK=ON \
+ -G Ninja
+ cmake --build build --parallel
+ cmake --install build
+
+ echo "Building duckstation..."
+ cd "$srcdir"
+
+ # preparation for find shaderc as static
+ sed -e 's|shaderc_shared|shaderc_combined|g' \
+ -e 's|PUBLIC Shaderc|PRIVATE Shaderc|g' \
+ -i duckstation/CMakeModules/FindShaderc.cmake \
+ -i duckstation/src/util/CMakeLists.txt
+ sed '/INTERFACE_COMPILE/d' -i duckstation/CMakeModules/FindShaderc.cmake
+
cmake -B build -S duckstation \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_COMPILER=clang \
@@ -75,6 +121,8 @@ build() {
-DCMAKE_MODULE_LINKER_FLAGS_INIT="-fuse-ld=lld" \
-DCMAKE_SHARED_LINKER_FLAGS_INIT="-fuse-ld=lld" \
-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
+ -DCMAKE_PREFIX_PATH="$srcdir/deps" \
+ -DCMAKE_SKIP_RPATH=ON \
-DBUILD_NOGUI_FRONTEND=OFF \
-DBUILD_QT_FRONTEND=ON \
-G Ninja \