Registration is now invite-only. Any user can make an invite, you need to create it here and give resulting link to someone to register.
avatar
zombie has added c6aa56e4b9
Sync with Mageia and Update
view file @ c6aa56e4b9
... ... --- /dev/null
... ... +++ b/ppsspp-1.10.3-git-version.patch
... ... @@ -0,0 +1,36 @@
1
Index: ppsspp-1.10.3/git-version.cmake
2
===================================================================
3
--- ppsspp-1.10.3/git-version.cmake
4
+++ ppsspp-1.10.3/git-version.cmake	2020-10-23 14:19:31.399784382 +0200
5
@@ -1,30 +1,7 @@
6
 set(GIT_VERSION_FILE "${SOURCE_DIR}/git-version.cpp")
7
-set(GIT_VERSION "unknown")
8
+set(GIT_VERSION "unknown_version")
9
 set(GIT_VERSION_UPDATE "1")
10
 
11
-find_package(Git)
12
-if(GIT_FOUND AND EXISTS "${SOURCE_DIR}/.git/")
13
-	execute_process(COMMAND ${GIT_EXECUTABLE} describe --always
14
-		WORKING_DIRECTORY ${SOURCE_DIR}
15
-		RESULT_VARIABLE exit_code
16
-		OUTPUT_VARIABLE GIT_VERSION)
17
-	if(NOT ${exit_code} EQUAL 0)
18
-		message(WARNING "git describe failed, unable to include version.")
19
-	endif()
20
-	string(STRIP ${GIT_VERSION} GIT_VERSION)
21
-else()
22
-	message(WARNING "git not found, unable to include version.")
23
-endif()
24
-
25
-if(EXISTS ${GIT_VERSION_FILE})
26
-	# Don't update if marked not to update.
27
-	file(STRINGS ${GIT_VERSION_FILE} match
28
-		REGEX "PPSSPP_GIT_VERSION_NO_UPDATE 1")
29
-	if(NOT ${match} EQUAL "")
30
-		set(GIT_VERSION_UPDATE "0")
31
-	endif()
32
-endif()
33
-
34
 set(code_string "// This is a generated file.\n\n"
35
 	"const char *PPSSPP_GIT_VERSION = \"${GIT_VERSION}\"\;\n\n"
36
 	"// If you don't want this file to update/recompile, change to 1.\n"
view file @ c6aa56e4b9
... ... --- /dev/null
... ... +++ b/ppsspp-1.7.2-mga-system-rapidjson.patch
... ... @@ -0,0 +1,10 @@
1
diff --git a/ext/discord-rpc-build/CMakeLists.txt b/ext/discord-rpc-build/CMakeLists.txt
2
index a63ec8eec..62ef2c335 100644
3
--- a/ext/discord-rpc-build/CMakeLists.txt
4
+++ b/ext/discord-rpc-build/CMakeLists.txt
5
@@ -32,4 +32,4 @@ endif()
6
 
7
 add_library(discord-rpc STATIC ${ALL_SOURCE_FILES})
8
 
9
-target_include_directories(discord-rpc PUBLIC ../discord-rpc/src ../discord-rpc/include ../rapidjson/include)
10
+target_include_directories(discord-rpc PUBLIC ../discord-rpc/src ../discord-rpc/include /usr/include/rapidjson)
view file @ c6aa56e4b9
... ... --- /dev/null
... ... +++ b/ppsspp-1.7.2-mga-workaround-ffmpeg-3.1-or-later.patch
... ... @@ -0,0 +1,13 @@
1
diff --git a/Core/HW/MediaEngine.cpp b/Core/HW/MediaEngine.cpp
2
index 62832f65c..b35719238 100644
3
--- a/Core/HW/MediaEngine.cpp
4
+++ b/Core/HW/MediaEngine.cpp
5
@@ -303,7 +303,7 @@ bool MediaEngine::openContext(bool keepReadPos) {
6
 	}
7
 	av_dict_free(&open_opt);
8
 
9
-	if (!SetupStreams()) {
10
+	if (true /*!SetupStreams()*/) {
11
 		// Fallback to old behavior.
12
 		if (avformat_find_stream_info(m_pFormatCtx, NULL) < 0) {
13
 			closeContext();
... ... --- a/ppsspp.spec
... ... +++ b/ppsspp.spec
... ... @@ -1,54 +1,36 @@
1
# Internal ffmpeg works better because it's optimized for PPSSPP
2
%bcond_with system_ffmpeg
1
# This emulator doesn't require copyrighted data (e.g. console BIOS)
2
# to function, it can thus go in core.
3 3
4
%define lang_snapshot 25.09.2019
5
%define armips_snapshot 22.01.2019
6
%define discord_rpc_snapshot 30.07.2018
7
%define glslang_snapshot 18.06.2019
8
%define spriv_snapshot 19.06.2019
9
%define ffmpeg_snapshot 05.05.2019
4
Summary:        Sony PlayStation Portable (PSP) emulator
5
Name:           ppsspp
6
Version:        1.10.3
7
Release:        %mkrel 2
8
License:        GPLv2+
9
Group:          Emulators
10
Url:            https://www.ppsspp.org
11
# git clone https://github.com/hrydgard/ppsspp && cd ppsspp
12
# git submodule update --init --recursive assets/lang ext/SPIRV-Cross ext/armips ext/discord-rpc ext/glslang
13
# Edit .gitmodules to comment out the ones not use, or git archive-all will fail.
14
# git archive-all --prefix=ppsspp-%%{version}/ ppsspp-%%{version}.tar.xz
15
Source0:        %{name}-%{version}.tar.xz
16
Patch1:         ppsspp-1.10.3-git-version.patch
17
Patch2:         ppsspp-1.7.2-mga-system-rapidjson.patch
18
# Temporary hack to workaround https://github.com/hrydgard/ppsspp/issues/11490
19
Patch3:         ppsspp-1.7.2-mga-workaround-ffmpeg-3.1-or-later.patch
10 20
11
Summary:	Sony PlayStation Portable (PSP) emulator
12
Name:		ppsspp
13
Version:	1.9.4
14
Release:	1
15
License:	GPLv2+
16
Group:		Emulators
17
Url:		http://www.ppsspp.org
18
# From git by tag https://github.com/hrydgard/ppsspp
19
Source0:	%{name}-%{version}.tar.gz
20
# From git https://github.com/hrydgard/ppsspp-lang
21
Source2:	ppsspp-lang-%{lang_snapshot}.tar.bz2
22
# From git https://github.com/Kingcom/armips
23
Source3:	armips-%{armips_snapshot}.tar.bz2
24
# https://github.com/hrydgard/ppsspp-ffmpeg
25
Source4:	ppsspp-ffmpeg-%{ffmpeg_snapshot}.tar.bz2
26
# From git https://github.com/hrydgard/glslang
27
Source5:	glslang-%{glslang_snapshot}.tar.bz2
28
# From git https://github.com/KhronosGroup/SPIRV-Cross
29
Source7:	SPIRV-Cross-%{spriv_snapshot}.tar.bz2
30
# From git https://github.com/discordapp/discord-rpc
31
Source8:	discord-rpc-%{discord_rpc_snapshot}.tar.bz2
32
Patch0:		ppsspp-1.1.0-git-version.patch
33
Patch1:		ppsspp-1.4.0-datapath.patch
34
Patch2:		ppsspp-1.7.5-optflags.patch
35
Patch3:		ppsspp-1.4-cmake-version.patch
36
BuildRequires:	cmake
37
BuildRequires:	imagemagick
38
BuildRequires:	python3
39
%if %{with system_ffmpeg}
40
BuildRequires:	ffmpeg-devel
41
%endif
42
BuildRequires:	snappy-devel
43
BuildRequires:	pkgconfig(gl)
44
BuildRequires:	pkgconfig(glew)
45
BuildRequires:	pkgconfig(glu)
46
#Requires system libpng17, otherwise uses internal static build
47
BuildRequires:	pkgconfig(libpng)
48
BuildRequires:	pkgconfig(libzip)
49
BuildRequires:	pkgconfig(RapidJSON)
50
BuildRequires:	pkgconfig(sdl2)
51
BuildRequires:	pkgconfig(zlib)
21
BuildRequires:  cmake
22
BuildRequires:  imagemagick
23
BuildRequires:  ffmpeg-devel
24
BuildRequires:  pkgconfig(gl)
25
BuildRequires:  pkgconfig(glew)
26
# Needs libpng 1.7+, not packaged in mga7 for now
27
#BuildRequires:  pkgconfig(libpng) >= 1.7
28
BuildRequires:  pkgconfig(libzip)
29
BuildRequires:  pkgconfig(RapidJSON)
30
BuildRequires:  pkgconfig(sdl2)
31
BuildRequires:  pkgconfig(snappy)
32
BuildRequires:  pkgconfig(zlib)
33
# TODO: Try to unbundle glslang now that we package it.
52 34
53 35
%description
54 36
PPSSPP is a cross-platform Sony PlayStation Portable (PSP) emulator.
... ... @@ -58,91 +40,60 @@ them on Android too. It can even upscale textures that would otherwise be
40 40
too blurry as they were made for the small screen of the original PSP.
41 41
42 42
%files
43
%{_gamesbindir}/%{name}-sdl
43
%doc LICENSE.TXT README.md
44 44
%{_datadir}/applications/%{name}.desktop
45
%{_gamesbindir}/%{name}
46
%{_gamesdatadir}/%{name}/
45 47
%{_iconsdir}/hicolor/*/apps/%{name}.png
46
%{_gamesdatadir}/%{name}
47 48
48 49
#----------------------------------------------------------------------------
49 50
50 51
%prep
51 52
%setup -q
52
%patch0 -p1
53
%patch1 -p1
54
%patch2 -p1
55
%patch3 -p1
56
sed s,"unknown_version","%{version}",g -i git-version.cmake
53
%apply_patches
57 54
58
pushd assets
59
rm -rf lang
60
tar -xf %{SOURCE2}
61
mv ppsspp-lang-%{lang_snapshot} lang
62
popd
63
pushd ext
64
rm -rf armips
65
tar -xf %{SOURCE3}
66
mv armips-%{armips_snapshot} armips
67
rm -rf glslang
68
tar xf %{SOURCE5}
69
mv glslang-%{glslang_snapshot} glslang
70
rm -rf SPIRV-Cross
71
tar -xf %{SOURCE7}
72
mv SPIRV-Cross-%{spriv_snapshot} SPIRV-Cross
73
rm -rf discord-rpc
74
tar -xf %{SOURCE8}
75
mv discord-rpc-%{discord_rpc_snapshot} discord-rpc
76
popd
77
rm -rf ffmpeg
78
tar -xf %{SOURCE4}
79
mv ppsspp-ffmpeg-%{ffmpeg_snapshot} ffmpeg
55
# Fix version string
56
sed s,"unknown_version","%{version}-%{release}",g -i git-version.cmake
80 57
81
%build
82
%if %{without system_ffmpeg}
83
pushd ffmpeg
84
%ifarch %{ix86}
85
./linux_x86.sh
86
%else
87
./linux_x86-64.sh
88
%endif
89
popd
90
%endif
58
# Make sure those are not used
59
rm -rf ext/zlib
60
rm -rf ext/native/ext/libzip
61
#rm -rf ext/native/ext/libpng17
62
# We need to keep the CMakeLists.txt for USE_SYSTEM_SNAPPY and GLEW_FOUND
63
rm -rf ext/glew/{GL,*.c}
64
rm -rf ext/snappy/*.{cpp,h}
91 65
66
%build
67
export CFLAGS="-O2 -mtune=atom"
68
export CXXFLAGS="-O2 -mtune=atom"
92 69
%cmake \
93
	-DHEADLESS:BOOL=OFF \
94
	-DUSE_FFMPEG:BOOL=ON \
95
	-DBUILD_SHARED_LIBS:BOOL=OFF \
96
	-DBUILD_STATIC_LIBS:BOOL=ON \
97
%if %{with system_ffmpeg}
98
	-DUSE_SYSTEM_FFMPEG:BOOL=ON
99
%else
100
	-DUSE_SYSTEM_FFMPEG:BOOL=OFF
101
%endif
102
103
%make
70
  -DBUILD_SHARED_LIBS=OFF \
71
  -DHEADLESS=OFF \
72
  -DUSE_FFMPEG=ON \
73
  -DUSE_SYSTEM_FFMPEG=ON \
74
  -DUSE_SYSTEM_LIBZIP=ON \
75
  -DUSE_SYSTEM_SNAPPY=ON
76
%cmake_build
104 77
105 78
%install
106
mkdir -p %{buildroot}%{_gamesbindir}
107
install -m 0755 build/PPSSPPSDL %{buildroot}%{_gamesbindir}/%{name}-sdl
108
mkdir -p %{buildroot}%{_gamesdatadir}/%{name}
109
cp -r build/assets %{buildroot}%{_gamesdatadir}/%{name}
79
# no make install for ppsspp, only for its bundled deps
80
install -D -m755 %{_vpath_builddir}/PPSSPPSDL %{buildroot}%{_gamesbindir}/%{name}
110 81
111
# install menu entry
112
mkdir -p %{buildroot}%{_datadir}/applications/
113
cat > %{buildroot}%{_datadir}/applications/%{name}.desktop << EOF
82
install -d %{buildroot}%{_gamesdatadir}/%{name}
83
cp -a build/assets %{buildroot}%{_gamesdatadir}/%{name}
84
85
install -d %{buildroot}%{_datadir}/applications
86
cat << EOF > %{buildroot}%{_datadir}/applications/%{name}.desktop
114 87
[Desktop Entry]
115
Name=PPSSPP
116
Comment=Sony PSP emulator
117
Exec=%{_gamesbindir}/%{name}-sdl
118
Icon=%{name}
119
Terminal=false
120 88
Type=Application
89
Name=PPSSPP
90
GenericName=PSP Emulator
91
Comment=PlayStation Portable Simulator Suitable for Playing Portably (PPSSPP)
92
Exec=ppsspp %f
93
Icon=ppsspp
121 94
Categories=Game;Emulator;
122 95
EOF
123 96
124
# install menu icons
125
for N in 16 32 48 64 128;
126
do
127
convert icons/icon-114.png -scale ${N}x${N} $N.png;
128
install -D -m 0644 $N.png %{buildroot}%{_iconsdir}/hicolor/${N}x${N}/apps/%{name}.png
129
done
97
install -d %{buildroot}%{_iconsdir}
98
cp -a icons/hicolor %{buildroot}%{_iconsdir}
130 99
... ... --- /dev/null
... ... +++ b/ppsspp.spec~
... ... @@ -0,0 +1,97 @@
1
# This emulator doesn't require copyrighted data (e.g. console BIOS)
2
# to function, it can thus go in core.
3
4
Summary:        Sony PlayStation Portable (PSP) emulator
5
Name:           ppsspp
6
Version:        1.10.3
7
Release:        %mkrel 2
8
License:        GPLv2+
9
Group:          Emulators
10
Url:            https://www.ppsspp.org
11
# git clone https://github.com/hrydgard/ppsspp && cd ppsspp
12
# git submodule update --init --recursive assets/lang ext/SPIRV-Cross ext/armips ext/discord-rpc ext/glslang
13
# Edit .gitmodules to comment out the ones not use, or git archive-all will fail.
14
# git archive-all --prefix=ppsspp-%%{version}/ ppsspp-%%{version}.tar.xz
15
Source0:        %{name}-%{version}.tar.xz
16
Patch1:         ppsspp-1.10.3-git-version.patch
17
Patch2:         ppsspp-1.7.2-mga-system-rapidjson.patch
18
# Temporary hack to workaround https://github.com/hrydgard/ppsspp/issues/11490
19
Patch3:         ppsspp-1.7.2-mga-workaround-ffmpeg-3.1-or-later.patch
20
21
BuildRequires:  cmake
22
BuildRequires:  imagemagick
23
BuildRequires:  ffmpeg-devel
24
BuildRequires:  pkgconfig(gl)
25
BuildRequires:  pkgconfig(glew)
26
# Needs libpng 1.7+, not packaged in mga7 for now
27
#BuildRequires:  pkgconfig(libpng) >= 1.7
28
BuildRequires:  pkgconfig(libzip)
29
BuildRequires:  pkgconfig(RapidJSON)
30
BuildRequires:  pkgconfig(sdl2)
31
BuildRequires:  pkgconfig(snappy)
32
BuildRequires:  pkgconfig(zlib)
33
# TODO: Try to unbundle glslang now that we package it.
34
35
%description
36
PPSSPP is a cross-platform Sony PlayStation Portable (PSP) emulator.
37
38
PPSSPP can run your PSP games on your PC in full HD resolution, and play
39
them on Android too. It can even upscale textures that would otherwise be
40
too blurry as they were made for the small screen of the original PSP.
41
42
%files
43
%doc LICENSE.TXT README.md
44
%{_datadir}/applications/%{name}.desktop
45
%{_gamesbindir}/%{name}
46
%{_gamesdatadir}/%{name}/
47
%{_iconsdir}/hicolor/*/apps/%{name}.png
48
49
#----------------------------------------------------------------------------
50
51
%prep
52
%setup -q
53
%apply_patches
54
55
# Fix version string
56
sed s,"unknown_version","%{version}-%{release}",g -i git-version.cmake
57
58
# Make sure those are not used
59
rm -rf ext/zlib
60
rm -rf ext/native/ext/libzip
61
#rm -rf ext/native/ext/libpng17
62
# We need to keep the CMakeLists.txt for USE_SYSTEM_SNAPPY and GLEW_FOUND
63
rm -rf ext/glew/{GL,*.c}
64
rm -rf ext/snappy/*.{cpp,h}
65
66
%build
67
%cmake \
68
  -DBUILD_SHARED_LIBS=OFF \
69
  -DHEADLESS=OFF \
70
  -DUSE_FFMPEG=ON \
71
  -DUSE_SYSTEM_FFMPEG=ON \
72
  -DUSE_SYSTEM_LIBZIP=ON \
73
  -DUSE_SYSTEM_SNAPPY=ON
74
%cmake_build
75
76
%install
77
# no make install for ppsspp, only for its bundled deps
78
install -D -m755 %{_vpath_builddir}/PPSSPPSDL %{buildroot}%{_gamesbindir}/%{name}
79
80
install -d %{buildroot}%{_gamesdatadir}/%{name}
81
cp -a build/assets %{buildroot}%{_gamesdatadir}/%{name}
82
83
install -d %{buildroot}%{_datadir}/applications
84
cat << EOF > %{buildroot}%{_datadir}/applications/%{name}.desktop
85
[Desktop Entry]
86
Type=Application
87
Name=PPSSPP
88
GenericName=PSP Emulator
89
Comment=PlayStation Portable Simulator Suitable for Playing Portably (PPSSPP)
90
Exec=ppsspp %f
91
Icon=ppsspp
92
Categories=Game;Emulator;
93
EOF
94
95
install -d %{buildroot}%{_iconsdir}
96
cp -a icons/hicolor %{buildroot}%{_iconsdir}
97

Comments