Date: Sunday, November 13, 2022 @ 14:53:26
Author: arojas
Revision: 1347279
archrelease: copy trunk to community-staging-x86_64
Added:
pcsx2/repos/community-staging-x86_64/
pcsx2/repos/community-staging-x86_64/PKGBUILD
(from rev 1347278, pcsx2/trunk/PKGBUILD)
pcsx2/repos/community-staging-x86_64/pcsx2-desktop-file.patch
(from rev 1347278, pcsx2/trunk/pcsx2-desktop-file.patch)
pcsx2/repos/community-staging-x86_64/pcsx2-resources-directory.patch
(from rev 1347278, pcsx2/trunk/pcsx2-resources-directory.patch)
pcsx2/repos/community-staging-x86_64/pcsx2-system-libs.patch
(from rev 1347278, pcsx2/trunk/pcsx2-system-libs.patch)
pcsx2/repos/community-staging-x86_64/pcsx2.install
(from rev 1347278, pcsx2/trunk/pcsx2.install)
---------------------------------+
PKGBUILD | 136 ++++++++++++++++++++++++++++++++++++++
pcsx2-desktop-file.patch | 54 +++++++++++++++
pcsx2-resources-directory.patch | 66 ++++++++++++++++++
pcsx2-system-libs.patch | 25 ++++++
pcsx2.install | 11 +++
5 files changed, 292 insertions(+)
Copied: pcsx2/repos/community-staging-x86_64/PKGBUILD (from rev 1347278,
pcsx2/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2022-11-13 14:53:26 UTC (rev 1347279)
@@ -0,0 +1,136 @@
+# Maintainer: Maxime Gauduin <[email protected]>
+# Contributor: josephgbr <[email protected]>
+# Contributor: vEX <[email protected]>
+
+pkgname=pcsx2
+pkgver=1.7.3546
+pkgrel=2
+pkgdesc='A Sony PlayStation 2 emulator'
+arch=(x86_64)
+url=https://www.pcsx2.net
+license=(
+ GPL2
+ GPL3
+ LGPL2.1
+ LGPL3
+)
+depends=(
+ glibc
+ libaio.so
+ libasound.so
+ libfmt.so
+ libgl
+ libharfbuzz.so
+ libpcap.so
+ libpng
+ libpulse.so
+ libryml.so
+ libsamplerate.so
+ libudev.so
+ libx11
+ libxcb
+ libxrandr
+ libzip.so
+ libzstd.so
+ qt6-base
+ sdl2
+ soundtouch
+ xz
+ zlib
+)
+makedepends=(
+ cmake
+ git
+ glslang
+ ninja
+ png++
+ qt6-tools
+ qt6-wayland
+ vulkan-headers
+ zstd
+)
+optdepends=('qt6-wayland: Wayland support')
+_tag=4975f7f0989015330087a0ff6073d4bfa133a5a0
+source=(
+ git+https://github.com/PCSX2/pcsx2.git#tag=${_tag}
+ git+https://github.com/biojppm/c4core.git
+ git+https://github.com/fastfloat/fast_float.git
+ git+https://github.com/KhronosGroup/glslang.git
+ git+https://github.com/rtissera/libchdr.git
+ git+https://github.com/biojppm/rapidyaml.git
+ git+https://github.com/RetroAchievements/rcheevos.git
+ pcsx2-system-libs.patch
+ pcsx2-resources-directory.patch
+ pcsx2-desktop-file.patch
+)
+b2sums=('SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+ 'SKIP'
+
'29c8f279f96c67b3a35eb39440c6dfa134ef1cda36026f69f7b9931c59700e61431d7b38002bd811f6e38089296128a16c737e1c0eb2120b342790089c1e4017'
+
'51a0feb8e0cc060e8e04c9bda5400b6ab91f043c76c9fde1b26a0f909652f9a0fa57265e02fa24fcc5d18f01a04b8b0781d6640b6be2bbd6ec4cdb568b1230d3'
+
'6d5ceb6db92e60c97d8beaf3159305ec1b61b5d0ef8968895235af19db2176699144c6088fbb88e32d3feb35545cf8aa5afb31fdf2e4f1c3746a3c3dd68d2cf6')
+install=pcsx2.install
+
+prepare() {
+ cd pcsx2
+ git apply -3 ../pcsx2-system-libs.patch
+ git apply -3 ../pcsx2-resources-directory.patch
+ git apply -3 ../pcsx2-desktop-file.patch
+ git config --global protocol.file.allow always
+ local submodule
+ for submodule in
3rdparty/{glslang/glslang,libchdr/libchdr,rapidyaml/rapidyaml,rcheevos/rcheevos};
do
+ git submodule init ${submodule}
+ git submodule set-url ${submodule} "${srcdir}/${submodule##*/}"
+ git submodule update ${submodule}
+ done
+ cd 3rdparty/rapidyaml/rapidyaml
+ for submodule in ext/c4core; do
+ git submodule init ${submodule}
+ git submodule set-url ${submodule} "${srcdir}/${submodule##*/}"
+ git submodule update ${submodule}
+ done
+ cd ext/c4core
+ for submodule in src/c4/ext/fast_float; do
+ git submodule init ${submodule}
+ git submodule set-url ${submodule} "${srcdir}/${submodule##*/}"
+ git submodule update ${submodule}
+ done
+}
+
+pkgver() {
+ cd pcsx2
+ git describe --tags | sed 's/^v//'
+}
+
+build() {
+ CFLAGS+=" -flto=$(nproc)"
+ CXXFLAGS+=" -flto=$(nproc)"
+ cmake -S pcsx2 -B build -G Ninja \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_INTERPROCEDURAL_OPTIMIZATION=ON \
+ -DDISABLE_ADVANCE_SIMD=ON \
+ -DDISABLE_BUILD_DATE=ON \
+ -DDISABLE_PCSX2_WRAPPER=ON \
+ -DDISABLE_SETCAP=ON \
+ -DENABLE_TESTS=OFF \
+ -DPACKAGE_MODE=ON \
+ -DQT_BUILD=ON \
+ -DUSE_SYSTEM_LIBS=ON \
+ -DUSE_VTUNE=OFF \
+ -DWAYLAND_API=ON \
+ -DX11_API=ON \
+ -DXDG_STD=ON \
+ -Wno-dev
+ cmake --build build
+}
+
+package() {
+ DESTDIR="${pkgdir}" cmake --install build
+}
+
+# vim: ts=2 sw=2 et:
Copied: pcsx2/repos/community-staging-x86_64/pcsx2-desktop-file.patch (from rev
1347278, pcsx2/trunk/pcsx2-desktop-file.patch)
===================================================================
--- community-staging-x86_64/pcsx2-desktop-file.patch
(rev 0)
+++ community-staging-x86_64/pcsx2-desktop-file.patch 2022-11-13 14:53:26 UTC
(rev 1347279)
@@ -0,0 +1,54 @@
+From ee42d04c5d73b2e8f037cc18aceb044b2e87a5fb Mon Sep 17 00:00:00 2001
+From: kenshen112 <[email protected]>
+Date: Mon, 29 Aug 2022 16:43:14 -0700
+Subject: [PATCH 2/2] Added QT Desktop file
+
+---
+ CMakeLists.txt | 10 ++++++++++
+ linux_various/PCSX2.desktop.in | 2 +-
+ 2 files changed, 11 insertions(+), 1 deletion(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 91a2c6756..8f18ecb99 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -15,6 +15,9 @@ set(TOP_CMAKE_WAS_SOURCED TRUE)
+ # set module path
+ set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
+
++#set executable name
++set(EXECUTEABLE "pcsx2")
++
+ # include some generic functions to ensure correctness of the env
+ include(Pcsx2Utils)
+
+@@ -66,6 +69,13 @@ if(PACKAGE_MODE)
+ else()
+ set(PCSX2_MENU_CATEGORIES "Game;Emulator;")
+ endif()
++
++ if(QT_BUILD)
++ set(EXECUTEABLE "pcsx2-qt")
++ else()
++ set(EXECUTEABLE "pcsx2")
++ endif()
++
+ configure_file("${CMAKE_SOURCE_DIR}/linux_various/PCSX2.desktop.in"
"${CMAKE_BINARY_DIR}/linux_various/PCSX2.desktop" @ONLY)
+
+ INSTALL(FILES "${CMAKE_BINARY_DIR}/linux_various/PCSX2.desktop"
DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/applications")
+diff --git a/linux_various/PCSX2.desktop.in b/linux_various/PCSX2.desktop.in
+index 9dbc8f2d1..321453975 100644
+--- a/linux_various/PCSX2.desktop.in
++++ b/linux_various/PCSX2.desktop.in
+@@ -9,7 +9,7 @@ GenericName[zh_CN]=PlayStation 2 模拟器
+ Comment=Sony PlayStation 2 emulator
+ Comment[ru]=Эмулятор Sony PlayStation 2
+ Comment[zh_CN]=索尼 PlayStation 2 模拟器
+-Exec=env GDK_BACKEND=x11 MESA_NO_ERROR=1 pcsx2
++Exec=env GDK_BACKEND=x11 QT_QPA_PLATFORM=xcb MESA_NO_ERROR=1 @EXECUTEABLE@
+ Icon=PCSX2
+ Keywords=game;emulator;
+ Categories=@PCSX2_MENU_CATEGORIES@
+--
+2.37.3
+
Copied: pcsx2/repos/community-staging-x86_64/pcsx2-resources-directory.patch
(from rev 1347278, pcsx2/trunk/pcsx2-resources-directory.patch)
===================================================================
--- community-staging-x86_64/pcsx2-resources-directory.patch
(rev 0)
+++ community-staging-x86_64/pcsx2-resources-directory.patch 2022-11-13
14:53:26 UTC (rev 1347279)
@@ -0,0 +1,66 @@
+From 5df445e8989eecd8796ee3bbfa74c3f0997cf26d Mon Sep 17 00:00:00 2001
+From: kenshen112 <[email protected]>
+Date: Sun, 22 May 2022 16:44:51 -0700
+Subject: [PATCH 1/2] QtHost.cpp: Fixed Resources dir
+
+Fixed location of Resources Dir to proper usr/share location
+
+Fixed CMake to enable package mode
+---
+ .gitignore | 1 +
+ pcsx2-qt/CMakeLists.txt | 4 ++--
+ pcsx2/Frontend/CommonHost.cpp | 8 +++++---
+ 3 files changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/.gitignore b/.gitignore
+index b3091f88f..64b010d33 100644
+--- a/.gitignore
++++ b/.gitignore
+@@ -75,6 +75,7 @@ oprofile_data/
+ /bin/**/*.lib
+ /bin/**/*.pdb
+ /bin/pcsx2
++/bin/pcsx2-qt
+ /bin/PCSX2-linux.sh
+ /bin/*ReplayLoader
+ /bin/GS*.txt
+diff --git a/pcsx2-qt/CMakeLists.txt b/pcsx2-qt/CMakeLists.txt
+index 619cc3932..e44581147 100644
+--- a/pcsx2-qt/CMakeLists.txt
++++ b/pcsx2-qt/CMakeLists.txt
+@@ -4,8 +4,8 @@ set(CMAKE_AUTOUIC ON)
+
+ add_executable(pcsx2-qt)
+
+-if (PACKAGE_MODE)
+- message(FATAL_ERROR "Package mode is not supported for Qt builds.")
++if(PACKAGE_MODE)
++ install(TARGETS pcsx2-qt DESTINATION ${CMAKE_INSTALL_BINDIR})
+ else()
+ install(TARGETS pcsx2-qt DESTINATION ${CMAKE_SOURCE_DIR}/bin)
+ endif()
+diff --git a/pcsx2/Frontend/CommonHost.cpp b/pcsx2/Frontend/CommonHost.cpp
+index c6c536182..980d2b887 100644
+--- a/pcsx2/Frontend/CommonHost.cpp
++++ b/pcsx2/Frontend/CommonHost.cpp
+@@ -110,12 +110,14 @@ void CommonHost::SetAppRoot()
+
+ void CommonHost::SetResourcesDirectory()
+ {
+-#ifndef __APPLE__
++#ifdef __APPLE__
++ // On macOS, this is in the bundle resources directory.
++ EmuFolders::Resources =
Path::Canonicalize(Path::Combine(EmuFolders::AppRoot, "../Resources"));
++#elif !defined(PCSX2_APP_DATADIR)
+ // On Windows/Linux, these are in the binary directory.
+ EmuFolders::Resources = Path::Combine(EmuFolders::AppRoot, "resources");
+ #else
+- // On macOS, this is in the bundle resources directory.
+- EmuFolders::Resources =
Path::Canonicalize(Path::Combine(EmuFolders::AppRoot, "../Resources"));
++ EmuFolders::Resources =
Path::Canonicalize(Path::Combine(EmuFolders::AppRoot, PCSX2_APP_DATADIR
"/resources"));
+ #endif
+ }
+
+--
+2.37.3
+
Copied: pcsx2/repos/community-staging-x86_64/pcsx2-system-libs.patch (from rev
1347278, pcsx2/trunk/pcsx2-system-libs.patch)
===================================================================
--- community-staging-x86_64/pcsx2-system-libs.patch
(rev 0)
+++ community-staging-x86_64/pcsx2-system-libs.patch 2022-11-13 14:53:26 UTC
(rev 1347279)
@@ -0,0 +1,25 @@
+diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
+index 1e4e07333..2e31bcf99 100644
+--- a/cmake/SearchForStuff.cmake
++++ b/cmake/SearchForStuff.cmake
+@@ -249,7 +249,6 @@ add_subdirectory(3rdparty/imgui EXCLUDE_FROM_ALL)
+
+ if(USE_VULKAN)
+ add_subdirectory(3rdparty/glslang EXCLUDE_FROM_ALL)
+- add_subdirectory(3rdparty/vulkan-headers EXCLUDE_FROM_ALL)
+ endif()
+
+ if(CUBEB_API)
+diff --git a/common/CMakeLists.txt b/common/CMakeLists.txt
+index 69a2728f3..5a9857d42 100644
+--- a/common/CMakeLists.txt
++++ b/common/CMakeLists.txt
+@@ -135,7 +135,7 @@ target_sources(common PRIVATE
+
+ if(USE_VULKAN)
+ target_link_libraries(common PUBLIC
+- Vulkan-Headers glslang
++ glslang
+ )
+ target_sources(common PRIVATE
+ Vulkan/ShaderCache.cpp
Copied: pcsx2/repos/community-staging-x86_64/pcsx2.install (from rev 1347278,
pcsx2/trunk/pcsx2.install)
===================================================================
--- community-staging-x86_64/pcsx2.install (rev 0)
+++ community-staging-x86_64/pcsx2.install 2022-11-13 14:53:26 UTC (rev
1347279)
@@ -0,0 +1,11 @@
+post_install() {
+ echo 'Enabling networking capabilities'
+ setcap 'CAP_NET_ADMIN+eip CAP_NET_RAW+eip' usr/bin/pcsx2-qt
+}
+
+post_upgrade() {
+ echo 'Enabling networking capabilities'
+ setcap 'CAP_NET_ADMIN+eip CAP_NET_RAW+eip' usr/bin/pcsx2-qt
+}
+
+# vim: ts=2 sw=2 et: