mirror of
https://codeberg.org/guix/guix.git
synced 2025-10-02 02:15:12 +00:00
gnu: pcsxr: Update to 1.9.94-1.6666043.
* gnu/packages/emulators.scm (pcsxr): Update to 1.9.94-1.6666043. [configure-flags]: Prevent compile errors. [phases]: Remove 'ch-subdir. [source]<origin>: Change upstream and commit. <patches>: Add patches. [home-page]: Change from dead link to active GitHub page. * gnu/packages/patches/pcsxr-find-harfbuzz.patch: Add it. * gnu/packages/patches/pcsxr-fix-definitions.patch: Add it. * gnu/local.mk: Register them. Change-Id: I5ebc91b3fa44152057cf197c0ab018fa064241a4
This commit is contained in:
parent
a93f37fbf3
commit
8b1b192359
4 changed files with 172 additions and 11 deletions
|
@ -2036,6 +2036,8 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/pango-skip-libthai-test.patch \
|
%D%/packages/patches/pango-skip-libthai-test.patch \
|
||||||
%D%/packages/patches/password-store-tree-compat.patch \
|
%D%/packages/patches/password-store-tree-compat.patch \
|
||||||
%D%/packages/patches/pciutils-hurd64.patch \
|
%D%/packages/patches/pciutils-hurd64.patch \
|
||||||
|
%D%/packages/patches/pcsxr-find-harfbuzz.patch \
|
||||||
|
%D%/packages/patches/pcsxr-fix-definitions.patch \
|
||||||
%D%/packages/patches/pdl-2.019-glut-bitmap-fonts.patch \
|
%D%/packages/patches/pdl-2.019-glut-bitmap-fonts.patch \
|
||||||
%D%/packages/patches/pdl-2.100-reproducibility.patch \
|
%D%/packages/patches/pdl-2.100-reproducibility.patch \
|
||||||
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
|
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
|
||||||
|
|
|
@ -3571,20 +3571,22 @@ assembler, and debugger for the Intel 8085 microprocessor.
|
||||||
|
|
||||||
(define-public pcsxr
|
(define-public pcsxr
|
||||||
;; No release since 2017.
|
;; No release since 2017.
|
||||||
(let ((commit "6484236cb0281e8040ff6c8078c87899a3407534"))
|
(let ((commit "666604321bf2d3dd5e5f58b534cfce41e72ad7d1")
|
||||||
|
(revision "1"))
|
||||||
(package
|
(package
|
||||||
(name "pcsxr")
|
(name "pcsxr")
|
||||||
;; Version is tagged here: https://github.com/frealgagu/PCSX-Reloaded
|
;; From CMakeLists.txt.
|
||||||
(version "1.9.95")
|
(version (git-version "1.9.94" revision commit))
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method git-fetch)
|
(method git-fetch)
|
||||||
(uri (git-reference
|
(uri (git-reference
|
||||||
(url "https://github.com/pcsxr/PCSX-Reloaded")
|
(url "https://github.com/MaddTheSane/PCSX-Reloaded")
|
||||||
(commit commit)))
|
(commit commit)))
|
||||||
|
(patches (search-patches "pcsxr-find-harfbuzz.patch"
|
||||||
|
"pcsxr-fix-definitions.patch"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32 "0lcypcawnipm02m3wnjsrm9r10llabncx78ramk7iw03a646dngj"))
|
||||||
"138mayp7zi9v4l3lm5f6xxkds619w1fgg769zm8s45c84jbz7dza"))
|
|
||||||
(file-name (git-file-name name commit))))
|
(file-name (git-file-name name commit))))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -3593,11 +3595,10 @@ assembler, and debugger for the Intel 8085 microprocessor.
|
||||||
(list "-DSND_BACKEND=pulse"
|
(list "-DSND_BACKEND=pulse"
|
||||||
"-DENABLE_CCDDA='ON'"
|
"-DENABLE_CCDDA='ON'"
|
||||||
"-DUSE_LIBARCHIVE='ON'"
|
"-DUSE_LIBARCHIVE='ON'"
|
||||||
"-DUSE_LIBCDIO='ON'")
|
"-DUSE_LIBCDIO='ON'"
|
||||||
|
"-DCMAKE_C_FLAGS=-Wno-incompatible-pointer-types")
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'unpack 'cd-subdir
|
|
||||||
(lambda _ (chdir "pcsxr") #t))
|
|
||||||
(add-before 'configure 'fix-cdio-lookup
|
(add-before 'configure 'fix-cdio-lookup
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "cmake/FindCdio.cmake"
|
(substitute* "cmake/FindCdio.cmake"
|
||||||
|
@ -3623,7 +3624,7 @@ assembler, and debugger for the Intel 8085 microprocessor.
|
||||||
libxv
|
libxv
|
||||||
libarchive
|
libarchive
|
||||||
pulseaudio))
|
pulseaudio))
|
||||||
(home-page "https://archive.codeplex.com/?p=pcsxr")
|
(home-page "https://github.com/MaddTheSane/PCSX-Reloaded")
|
||||||
(synopsis "PlayStation emulator")
|
(synopsis "PlayStation emulator")
|
||||||
(description
|
(description
|
||||||
"A PlayStation emulator based on PCSX-df Project with bugfixes and
|
"A PlayStation emulator based on PCSX-df Project with bugfixes and
|
||||||
|
|
21
gnu/packages/patches/pcsxr-find-harfbuzz.patch
Normal file
21
gnu/packages/patches/pcsxr-find-harfbuzz.patch
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
The .cmake files this project includes don't play well with harfbuzz's internal .cmake file.
|
||||||
|
This patch works around the issues present in the project's CMake configuration.
|
||||||
|
|
||||||
|
diff --git a/cmake/FindPango.cmake b/cmake/FindPango.cmake
|
||||||
|
index 2a7da99d..c08fbaab 100644
|
||||||
|
--- a/cmake/FindPango.cmake
|
||||||
|
+++ b/cmake/FindPango.cmake
|
||||||
|
@@ -74,6 +74,13 @@ foreach(pango_dep ${Pango_DEPS})
|
||||||
|
set_property (TARGET "${Pango}" APPEND PROPERTY INTERFACE_LINK_LIBRARIES "${${pango_dep}}")
|
||||||
|
endforeach(pango_dep)
|
||||||
|
|
||||||
|
+if(NOT HARFBUZZ_INCLUDE_DIR)
|
||||||
|
+find_package(harfbuzz)
|
||||||
|
+endif()
|
||||||
|
+
|
||||||
|
+list(APPEND Pango_INCLUDE_DIRS ${HARFBUZZ_INCLUDE_DIR})
|
||||||
|
+set_property (TARGET "${Pango}" APPEND PROPERTY INTERFACE_LINK_LIBRARIES "harfbuzz::harfbuzz")
|
||||||
|
+
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
find_package_handle_standard_args(Pango
|
||||||
|
REQUIRED_VARS
|
137
gnu/packages/patches/pcsxr-fix-definitions.patch
Normal file
137
gnu/packages/patches/pcsxr-fix-definitions.patch
Normal file
|
@ -0,0 +1,137 @@
|
||||||
|
There are a lot of global variable definitions that aren't valid on modern compilers. According to upstream's Dockerfile,
|
||||||
|
this project is meant to compile with GCC 6! So there are some declarations that need to be changed.
|
||||||
|
|
||||||
|
diff --git a/gui/Linux.h b/gui/Linux.h
|
||||||
|
index 2a939050..99404d93 100644
|
||||||
|
--- a/gui/Linux.h
|
||||||
|
+++ b/gui/Linux.h
|
||||||
|
@@ -44,8 +44,8 @@
|
||||||
|
|
||||||
|
extern gboolean UseGui;
|
||||||
|
extern int StatesC;
|
||||||
|
-char cfgfile[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
|
||||||
|
-char cfgfile_basename[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
|
||||||
|
+extern char cfgfile[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
|
||||||
|
+extern char cfgfile_basename[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
|
||||||
|
|
||||||
|
int LoadConfig();
|
||||||
|
void SaveConfig();
|
||||||
|
diff --git a/gui/LnxMain.c b/gui/LnxMain.c
|
||||||
|
index d6dd9316..02002bc1 100644
|
||||||
|
--- a/gui/LnxMain.c
|
||||||
|
+++ b/gui/LnxMain.c
|
||||||
|
@@ -49,6 +49,9 @@ enum {
|
||||||
|
|
||||||
|
gboolean UseGui = TRUE;
|
||||||
|
|
||||||
|
+char cfgfile[MAXPATHLEN] = {0};
|
||||||
|
+char cfgfile_basename[MAXPATHLEN] = {0};
|
||||||
|
+
|
||||||
|
static void CreateMemcard(char *filename, char *conf_mcd) {
|
||||||
|
gchar *mcd;
|
||||||
|
struct stat buf;
|
||||||
|
diff --git a/plugins/bladesio1/sio1.c b/plugins/bladesio1/sio1.c
|
||||||
|
index 17ac4b65..c6fd585a 100644
|
||||||
|
--- a/plugins/bladesio1/sio1.c
|
||||||
|
+++ b/plugins/bladesio1/sio1.c
|
||||||
|
@@ -55,8 +55,6 @@ static const unsigned char build = 1;
|
||||||
|
|
||||||
|
static void (CALLBACK *irqCallback)(void) = 0;
|
||||||
|
|
||||||
|
-Settings settings;
|
||||||
|
-
|
||||||
|
/* sio status flags.
|
||||||
|
*/
|
||||||
|
enum {
|
||||||
|
diff --git a/plugins/dfinput/pad.h b/plugins/dfinput/pad.h
|
||||||
|
index 8337fe7e..6d44851d 100644
|
||||||
|
--- a/plugins/dfinput/pad.h
|
||||||
|
+++ b/plugins/dfinput/pad.h
|
||||||
|
@@ -151,7 +151,7 @@ typedef struct tagKeyDef {
|
||||||
|
enum { ANALOG_XP = 0, ANALOG_XM, ANALOG_YP, ANALOG_YM };
|
||||||
|
|
||||||
|
#if SDL_VERSION_ATLEAST(2,0,0)
|
||||||
|
-SDL_GameControllerButton controllerMap[DKEY_TOTAL];
|
||||||
|
+extern SDL_GameControllerButton controllerMap[DKEY_TOTAL];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef struct tagPadDef {
|
||||||
|
diff --git a/plugins/dfnet/cfg.c b/plugins/dfnet/cfg.c
|
||||||
|
index 921efbe3..1057426a 100644
|
||||||
|
--- a/plugins/dfnet/cfg.c
|
||||||
|
+++ b/plugins/dfnet/cfg.c
|
||||||
|
@@ -11,6 +11,8 @@
|
||||||
|
|
||||||
|
#include "dfnet.h"
|
||||||
|
|
||||||
|
+Config conf;
|
||||||
|
+
|
||||||
|
#define CFG_FILENAME "dfnet.cfg"
|
||||||
|
|
||||||
|
void SaveConf() {
|
||||||
|
diff --git a/plugins/dfnet/dfnet.c b/plugins/dfnet/dfnet.c
|
||||||
|
index 6c6ec5f9..ddc92169 100644
|
||||||
|
--- a/plugins/dfnet/dfnet.c
|
||||||
|
+++ b/plugins/dfnet/dfnet.c
|
||||||
|
@@ -24,6 +24,9 @@ const unsigned char build = 3; // increase that with each version
|
||||||
|
|
||||||
|
static char *libraryName = N_("Socket Driver");
|
||||||
|
|
||||||
|
+fd_set rset;
|
||||||
|
+fd_set wset;
|
||||||
|
+
|
||||||
|
unsigned long CALLBACK PSEgetLibType(void) {
|
||||||
|
return PSE_LT_NET;
|
||||||
|
}
|
||||||
|
diff --git a/plugins/dfnet/dfnet.h b/plugins/dfnet/dfnet.h
|
||||||
|
index 937814f5..e2699ad3 100644
|
||||||
|
--- a/plugins/dfnet/dfnet.h
|
||||||
|
+++ b/plugins/dfnet/dfnet.h
|
||||||
|
@@ -56,7 +56,7 @@ __private_extern char* PLUGLOC(char* toloc);
|
||||||
|
|
||||||
|
typedef void* HWND;
|
||||||
|
|
||||||
|
-struct timeval tm;
|
||||||
|
+extern struct timeval tm;
|
||||||
|
|
||||||
|
#define CALLBACK
|
||||||
|
|
||||||
|
@@ -70,24 +70,24 @@ typedef struct {
|
||||||
|
char ipAddress[32];
|
||||||
|
} Config;
|
||||||
|
|
||||||
|
-Config conf;
|
||||||
|
+extern Config conf;
|
||||||
|
|
||||||
|
void LoadConf(void);
|
||||||
|
void SaveConf(void);
|
||||||
|
|
||||||
|
-int sock;
|
||||||
|
-char *PadSendData;
|
||||||
|
-char *PadRecvData;
|
||||||
|
-char PadSendSize;
|
||||||
|
-char PadRecvSize;
|
||||||
|
-char PadSize[2];
|
||||||
|
-int PadCount;
|
||||||
|
-int PadCountMax;
|
||||||
|
-int PadInit;
|
||||||
|
-int Ping;
|
||||||
|
-volatile int WaitCancel;
|
||||||
|
-fd_set rset;
|
||||||
|
-fd_set wset;
|
||||||
|
+extern int sock;
|
||||||
|
+extern char *PadSendData;
|
||||||
|
+extern char *PadRecvData;
|
||||||
|
+extern char PadSendSize;
|
||||||
|
+extern char PadRecvSize;
|
||||||
|
+extern char PadSize[2];
|
||||||
|
+extern int PadCount;
|
||||||
|
+extern int PadCountMax;
|
||||||
|
+extern int PadInit;
|
||||||
|
+extern int Ping;
|
||||||
|
+extern volatile int WaitCancel;
|
||||||
|
+extern fd_set rset;
|
||||||
|
+extern fd_set wset;
|
||||||
|
|
||||||
|
long sockInit(void);
|
||||||
|
long sockShutdown(void);
|
Loading…
Add table
Add a link
Reference in a new issue