[debian]:

* First version of the debian packaging system (only 32bits system)
* It is highly experimental so do not expect too much...



git-svn-id: http://pcsx2.googlecode.com/svn/trunk@3210 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
gregory.hainaut 2010-06-15 13:07:29 +00:00
parent ee1d7f137b
commit dce5ca9aca
39 changed files with 3844 additions and 0 deletions

View File

@ -0,0 +1,6 @@
pcsx2.snapshot for Debian
-------------------------
<possible notes regarding this package - if none, delete this file>
-- Gregory Hainaut <gregory.hainaut@gmail.com> Sat, 24 Apr 2010 23:11:10 +0200

View File

@ -0,0 +1,42 @@
######################################################################
# Patch
######################################################################
# Special debian
01_rename_binary_generated.patch
02_update_default_path.patch
# 03_central_userconfig_function.patch
03_xdg_homedir_support.patch
04_xdg_config_home.patch
05_move_data_to_config.patch
21_use_legacy_soundtouch_13.patch
# Seem to cause some regression
33_clean_fpic.patch
# Personal patch
43_fix_snapshot_path.patch
44_cpu_count.patch
50_zzogl_play.patch
55_cmake_opt_clean.patch
56_cmake_enable_opt1.patch
facility_for_my_personal_system.patch
old/
######################################################################
need libsoundtouch v1.5
* Finish the script to get svn snapshot and adapt if to svn. Script is working fine now
* policy bin2cpp tool ??
May be we could pregenerate the file in the upstream tar ball!!
* copyright and doc stuff
Lots of work to do here.
## 64 bit
nvidia-cg-toolkit: propably need a special package for 32 bits version
ia32-libs: add libportaudio, libsoundtouch, libglew
ia32-libs: add .so symlink for compilation
ia32-libs-gtk: add libwxbase2.8 and libwxgtk2.8 (warning a architecture dependant include file (in -dev package) is also needed)
ia32-libs-gtk: add .so symlink for compilation

View File

@ -0,0 +1,5 @@
pcsx2.snapshot (3208-1) unstable; urgency=low
* Initial release
-- Gregory Hainaut <gregory.hainaut@gmail.com> Thu, 13 May 2010 14:27:56 +0200

1
debian_unofficial/compat Normal file
View File

@ -0,0 +1 @@
7

93
debian_unofficial/control Normal file
View File

@ -0,0 +1,93 @@
# it would may be a good idea to use only 1 package for both pcsx2 and plugins. Both are required anyway.
Source: pcsx2.snapshot
Section: games
Priority: optional
Maintainer: Gregory Hainaut <gregory.hainaut@gmail.com>
Build-Depends: debhelper (>= 7.0.50), dpkg-dev (>= 1.15.7.1), cmake (>=2.8),
gcc-multilib [amd64], g++-multilib [amd64],
zlib1g-dev (>=1:1.2.3.4) | lib32z1-dev (>=1.2.3.4) [amd64],
libbz2-dev (>= 1.0.4),
libsdl1.2-dev,
libjpeg-dev,
libwxbase2.8-dev (>=2.8.0),
libwxgtk2.8-dev (>=2.8.0),
libgtk2.0-dev (>=2.10),
liba52-0.7.4-dev,
libasound2-dev | lib32asound2 [amd64],
portaudio19-dev,
# version not yet in debian
# libsoundtouch1-dev (>= 1.4),
# I patch the source (remove feature) to compile with version 1.3
libsoundtouch1-dev (>= 1.3),
libsparsehash-dev (>=1.6),
libx11-dev,
libxxf86vm-dev,
libglew1.5-dev (>=1.5.1),
libgl1-mesa-dev,
libglu1-mesa-dev,
# my nmu: add 32bits packages
# TODO repackage with a local in the name (to avoid conflict with debian real nmu)
nvidia-cg-toolkit (>= 2.1.0017.deb1) | nvidia-cg-toolkit (>= 2.1.0017.deb1+nmu2) [amd64],
ia32-libs (>= 20090808+nmu7) [amd64], ia32-libs-gtk (= 20100503+local1) [amd64]
Standards-Version: 3.8.4
Homepage: http://pcsx2.net/
Package: pcsx2
# Warning amd64 need additional ia32libs
Architecture: i386 amd64
Depends: ${shlibs:Depends}, ${misc:Depends}, pcsx2-data (>= ${binary:Version}), pcsx2-plugins (>= ${binary:Version})
Description: Playstation 2 emulator
PCSX2 is a PlayStation 2 emulator for Windows and
Linux, started by the same team that brought you PCSX
(a Sony PlayStation 1 emulator).
.
WARNING: it requieres a CPU with sse2 instructions. If your
CPU does not support this instruction set, it does not have
enough horse power to run this emulator anyway.
.
This package includes the main binary file.
Package: pcsx2-dbg
Section: devel
# Warning amd64 need additional ia32libs
Architecture: i386 amd64
Depends: ${misc:Depends}, pcsx2 (= ${binary:Version})
Description: Debug symbols for pcsx2
Package: pcsx2-data
Architecture: all
Depends: ${misc:Depends}
Recommends: pcsx2 (>= ${binary:Version}),
Description: data for pcsx2
PCSX2 is a PlayStation 2 emulator for Windows and
Linux, started by the same team that brought you PCSX
(a Sony PlayStation 1 emulator).
.
WARNING: it requieres a CPU with sse2 instructions. If your
CPU does not support this instruction set, it does not have
enough horse power to run this emulator anyway.
.
This package includes data files.
Package: pcsx2-plugins
# Warning amd64 need additional ia32libs
Architecture: i386 amd64
Depends: ${shlibs:Depends}, ${misc:Depends}, pcsx2 (>= ${binary:Version}), pcsx2-data (>= ${binary:Version})
Description: Various plugins for pcsx2
PCSX2 is a PlayStation 2 emulator for Windows and
Linux, started by the same team that brought you PCSX
(a Sony PlayStation 1 emulator).
.
WARNING: it requieres a CPU with sse2 instructions. If your
CPU does not support this instruction set, it does not have
enough horse power to run this emulator anyway.
.
This package includes the plugins of the emulator.
Package: pcsx2-plugins-dbg
Section: devel
# Warning amd64 need additional ia32libs
Architecture: i386 amd64
Depends: ${misc:Depends}, pcsx2-plugins (= ${binary:Version})
Description: Debug symbols for pcsx2-plugins

View File

@ -0,0 +1,44 @@
This work was packaged for Debian by:
Gregory Hainaut <gregory.hainaut@gmail.com> on Sat, 24 Apr 2010 23:11:10 +0200
It was downloaded from:
<http://pcsx2.googlecode.com/svn/>
Upstream Author(s):
<put author's name and email here>
<likewise for another author>
Copyright:
<Copyright (C) YYYY Firstname Lastname>
<likewise for another author>
License:
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
The Debian packaging is:
Copyright (C) 2010 Gregory Hainaut <gregory.hainaut@gmail.com>
and is licensed under the GPL version 3, see above.
# Please also look if there are files or directories which have a
# different copyright/license attached and list them here.

View File

@ -0,0 +1,109 @@
#!/bin/sh
######################################################################
# Global Parameter
######################################################################
# Svn parameter
if [ -n "$1" ] ; then
SVN_CO_VERSION=$1;
else
echo "Please provide the subversion version as fisrt parameter"
exit 1;
fi
SVN_TRUNK="http://pcsx2.googlecode.com/svn/trunk"
# Debian name of package and tarball
PKG_NAME="pcsx2.snapshot-${SVN_CO_VERSION}"
TAR_NAME="pcsx2.snapshot_${SVN_CO_VERSION}.orig.tar"
# Directory
TMP_DIR=/tmp
ROOT_DIR=${TMP_DIR}/subversion_pcsx2_${SVN_CO_VERSION}
NEW_DIR=${TMP_DIR}/$PKG_NAME
######################################################################
# Basic function
######################################################################
get_svn_dir()
{
for directory in $* ; do
# Print the directory without /
echo " $directory" | sed -e 's/\//\ /g'
if [ -e `basename ${directory}` ] ; then
# Directory already exist so only update
svn up --quiet ${SVN_TRUNK}/${directory} -r $SVN_CO_VERSION;
else
svn co --quiet ${SVN_TRUNK}/${directory} -r $SVN_CO_VERSION;
fi
done
}
get_svn_file()
{
for file in $* ; do
if [ ! -e `basename ${file}` ] ; then
# Versionning information are not support for a single file
# so you can not use svn co
svn export --quiet ${SVN_TRUNK}/${file} -r $SVN_CO_VERSION;
fi
done
}
######################################################################
# Main script
######################################################################
## Download the svn repository (only the usefull things)
echo "Download pcsx2 source rev ${SVN_CO_VERSION}"
mkdir -p $ROOT_DIR;
(cd $ROOT_DIR;
get_svn_file CMakeLists.txt;
get_svn_dir bin common cmake pcsx2 tools;
get_svn_dir debian_unofficial;
echo "Done")
echo "Donwload Linux compatible plugins ${SVN_CO_VERSION}"
mkdir -p $ROOT_DIR/plugins
(cd $ROOT_DIR/plugins;
get_svn_file plugins/CMakeLists.txt;
# DVD
get_svn_dir plugins/CDVDnull plugins/CDVDiso;
# PAD
get_svn_dir plugins/PadNull plugins/onepad;
# AUDIO
get_svn_dir plugins/SPU2null plugins/spu2-x plugins/zerospu2;
# Graphics
get_svn_dir plugins/GSnull plugins/zzogl-pg;
# Misc
get_svn_dir plugins/dev9null plugins/FWnull plugins/USBnull;
echo "Note: some plugins are more or less deprecated CDVDisoEFP, CDVDlinuz, Zerogs, Zeropad ...";
echo "Done")
## Installation
echo "Copy the subversion repository in a tmp directory"
# Copy the dir
rm -fr $NEW_DIR
cp -r $ROOT_DIR $NEW_DIR
echo "Remove .svn file"
find $NEW_DIR -name ".svn" -type d -exec rm -fr {} \; 2> /dev/null
echo "Remove old build system (script and autotools)"
find $NEW_DIR -name "build.sh" -exec rm -f {} \;
find $NEW_DIR -name "install-sh" -exec rm -f {} \;
find $NEW_DIR -name "depcomp" -exec rm -f {} \;
find $NEW_DIR -name "missing" -exec rm -f {} \;
find $NEW_DIR -name "aclocal.m4" -exec rm -f {} \;
find $NEW_DIR -name "configure.ac" -exec rm -f {} \;
find $NEW_DIR -name "Makefile.am" -exec rm -f {} \;
echo "Remove 3rd party directory"
find $NEW_DIR -name "3rdparty" -exec rm -fr {} \; 2> /dev/null
# echo "Remove plugins/zzogl-pg/opengl/ZeroGSShaders (some zlib source in the middle)"
# rm -fr $NEW_DIR/plugins/zzogl-pg/opengl/ZeroGSShaders
## BUILD
echo "Build the tar gz file"
tar -C ${TMP_DIR} -czf ${TAR_NAME}.gz $PKG_NAME
## Clean
rm -fr $NEW_DIR

0
debian_unofficial/docs Normal file
View File

View File

@ -0,0 +1,24 @@
Debian specific
Always uses the same executable name for the build. Easier for the install script
Index: pcsx2.snapshot-3208/pcsx2/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/CMakeLists.txt 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/CMakeLists.txt 2010-06-15 13:12:59.655335900 +0200
@@ -77,7 +77,7 @@
if(CMAKE_BUILD_TYPE STREQUAL Debug)
# executable name
- set(pcsx2Name pcsx2-dbg)
+ set(pcsx2Name pcsx2)
# add defines
add_definitions(${CommonFlags} ${DebugFlags} -DPCSX2_DEVBUILD -DPCSX2_DEBUG -DWX_PRECOMP)
@@ -87,7 +87,7 @@
if(CMAKE_BUILD_TYPE STREQUAL Devel)
# executable name
- set(pcsx2Name pcsx2-dev)
+ set(pcsx2Name pcsx2)
# add defines
add_definitions(${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD -DWX_PRECOMP -DNDEBUG)

View File

@ -0,0 +1,65 @@
Debian policy.
This patch updates default plugin path and config path.
It also updates the pcsx2 game db path and shaders data path.
AppInit.cpp:93 could be probably updated
Index: pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppConfig.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp 2010-06-15 13:12:59.894963081 +0200
@@ -137,7 +137,8 @@
wxDirName GetPlugins()
{
- return AppRoot() + Base::Plugins();
+ // return AppRoot() + Base::Plugins();
+ return wxDirName( L"/usr/lib/games/pcsx2" ) + Base::Plugins();
}
wxDirName GetSettings()
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglCreate.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/ZZoglCreate.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglCreate.cpp 2010-06-15 13:12:59.895962667 +0200
@@ -347,17 +347,12 @@
assert(hShaderGlob != NULL);
s_lpShaderResources = (u8*)LockResource(hShaderGlob);
# else // not _WIN32
- FILE* fres = fopen("ps2hw.dat", "rb");
+ FILE* fres = fopen("/usr/share/games/pcsx2/shaders/ps2hw.dat", "rb");
if (fres == NULL)
{
- fres = fopen("plugins/ps2hw.dat", "rb");
-
- if (fres == NULL)
- {
- ZZLog::Error_Log("Cannot find ps2hw.dat in working directory. Exiting.");
- return false;
- }
+ ZZLog::Error_Log("Cannot find ps2hw.dat in working directory. Exiting.");
+ return false;
}
fseek(fres, 0, SEEK_END);
Index: pcsx2.snapshot-3208/pcsx2/DataBase_Loader.h
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/DataBase_Loader.h 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/DataBase_Loader.h 2010-06-15 13:12:59.896962570 +0200
@@ -89,7 +89,7 @@
wxString header; // Header of the database
wxString baseKey; // Key to separate games by ("Serial")
- DataBase_Loader(const wxString& file = L"GameIndex.dbf", const wxString& key = L"Serial", const wxString& value = wxEmptyString )
+ DataBase_Loader(const wxString& file = L"/var/games/pcsx2/GameIndex.dbf", const wxString& key = L"Serial", const wxString& value = wxEmptyString )
: baseKey( key )
{
curGame = NULL;
@@ -159,7 +159,7 @@
}
// Saves changes to the database
- void saveToFile(const wxString& file = L"GameIndex.dbf") {
+ void saveToFile(const wxString& file = L"/var/games/pcsx2/GameIndex.dbf") {
wxFFileOutputStream writer( file );
pxWriteMultiline(writer, header);
deque<Game_Data*>::iterator it = gList.begin();

View File

@ -0,0 +1,64 @@
Index: pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppConfig.cpp 2010-06-15 13:12:59.894963081 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp 2010-06-15 13:13:00.230117552 +0200
@@ -94,6 +94,12 @@
return retval;
}
+ // Specifies the main configuration folder.
+ wxDirName GetUserLocalDataDir()
+ {
+ return wxDirName(wxStandardPaths::Get().GetUserLocalDataDir());
+ }
+
// Fetches the path location for user-consumable documents -- stuff users are likely to want to
// share with other programs: screenshots, memory cards, and savestates.
wxDirName GetDocuments( DocsModeType mode )
Index: pcsx2.snapshot-3208/pcsx2/gui/AppInit.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppInit.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppInit.cpp 2010-06-15 13:13:00.231095495 +0200
@@ -60,7 +60,7 @@
void Pcsx2App::WipeUserModeSettings()
{
- wxDirName usrlocaldir( wxStandardPaths::Get().GetUserLocalDataDir() );
+ wxDirName usrlocaldir = PathDefs::GetUserLocalDataDir();
if( !usrlocaldir.Exists() ) return;
wxString cwd( Path::Normalize( wxGetCwd() ) );
@@ -89,7 +89,7 @@
//
void Pcsx2App::ReadUserModeSettings()
{
- wxDirName usrlocaldir( wxStandardPaths::Get().GetUserLocalDataDir() );
+ wxDirName usrlocaldir = PathDefs::GetUserLocalDataDir();
if( !usrlocaldir.Exists() )
{
Console.WriteLn( L"Creating UserLocalData folder: " + usrlocaldir.ToString() );
Index: pcsx2.snapshot-3208/pcsx2/gui/Panels/MiscPanelStuff.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/Panels/MiscPanelStuff.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/Panels/MiscPanelStuff.cpp 2010-06-15 13:13:00.231095495 +0200
@@ -48,7 +48,7 @@
{
RadioPanelItem(
_("User Documents (recommended)"),
- _("Location: ") + wxStandardPaths::Get().GetDocumentsDir()
+ _("Location: ") + PathDefs::GetUserLocalDataDir().GetFilename().GetFullPath()
),
RadioPanelItem(
Index: pcsx2.snapshot-3208/pcsx2/gui/AppConfig.h
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppConfig.h 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppConfig.h 2010-06-15 13:13:00.232095570 +0200
@@ -36,6 +36,7 @@
// complete pathnames are returned by these functions
// For 99% of all code, you should use these.
+ extern wxDirName GetUserLocalDataDir();
extern wxDirName GetDocuments();
extern wxDirName GetDocuments( DocsModeType mode );
extern wxDirName GetThemes();

View File

@ -0,0 +1,68 @@
Index: pcsx2.snapshot-3204/pcsx2/gui/AppInit.cpp
===================================================================
--- pcsx2.snapshot-3204.orig/pcsx2/gui/AppInit.cpp 2010-06-12 12:50:20.000000000 +0200
+++ pcsx2.snapshot-3204/pcsx2/gui/AppInit.cpp 2010-06-12 12:52:36.481970859 +0200
@@ -60,7 +60,7 @@
void Pcsx2App::WipeUserModeSettings()
{
- wxDirName usrlocaldir( wxStandardPaths::Get().GetUserLocalDataDir() );
+ wxDirName usrlocaldir = PathDefs::GetDocuments(DocsFolder_User);
if( !usrlocaldir.Exists() ) return;
wxString cwd( Path::Normalize( wxGetCwd() ) );
@@ -89,7 +89,7 @@
//
void Pcsx2App::ReadUserModeSettings()
{
- wxDirName usrlocaldir( wxStandardPaths::Get().GetUserLocalDataDir() );
+ wxDirName usrlocaldir = PathDefs::GetDocuments(DocsFolder_User);
if( !usrlocaldir.Exists() )
{
Console.WriteLn( L"Creating UserLocalData folder: " + usrlocaldir.ToString() );
Index: pcsx2.snapshot-3204/pcsx2/gui/Panels/MiscPanelStuff.cpp
===================================================================
--- pcsx2.snapshot-3204.orig/pcsx2/gui/Panels/MiscPanelStuff.cpp 2010-06-12 12:50:20.000000000 +0200
+++ pcsx2.snapshot-3204/pcsx2/gui/Panels/MiscPanelStuff.cpp 2010-06-12 12:52:36.483096204 +0200
@@ -48,7 +48,7 @@
{
RadioPanelItem(
_("User Documents (recommended)"),
- _("Location: ") + wxStandardPaths::Get().GetDocumentsDir()
+ _("Location: ") + PathDefs::GetDocuments(DocsFolder_User).GetFilename().GetFullPath()
),
RadioPanelItem(
Index: pcsx2.snapshot-3204/pcsx2/gui/AppConfig.cpp
===================================================================
--- pcsx2.snapshot-3204.orig/pcsx2/gui/AppConfig.cpp 2010-06-12 12:52:36.196212791 +0200
+++ pcsx2.snapshot-3204/pcsx2/gui/AppConfig.cpp 2010-06-13 14:25:54.838664713 +0200
@@ -98,9 +98,27 @@
// share with other programs: screenshots, memory cards, and savestates.
wxDirName GetDocuments( DocsModeType mode )
{
+ wxDirName user_local_dir;
+#ifdef __LINUX__
+ wxString xdg_home_value;
+ if( wxGetEnv(L"XDG_CONFIG_HOME", &xdg_home_value) ) {
+ if ( xdg_home_value.IsEmpty() ) {
+ // variable exist but it is empty. So use the default value
+ user_local_dir = (wxDirName)Path::Combine( wxStandardPaths::Get().GetDocumentsDir() , wxDirName( L".config/pcsx2" ));
+ } else {
+ user_local_dir = (wxDirName)Path::Combine( xdg_home_value, wxGetApp().GetAppName());
+ }
+ } else {
+ // variable do not exist
+ user_local_dir = (wxDirName)Path::Combine( wxStandardPaths::Get().GetDocumentsDir() , wxDirName( L".config/pcsx2" ));
+ }
+#else
+ user_local_dir = (wxDirName)Path::Combine( wxStandardPaths::Get().GetDocumentsDir() , wxGetApp().GetAppName() );
+#endif
+
switch( mode )
{
- case DocsFolder_User: return (wxDirName)Path::Combine( wxStandardPaths::Get().GetDocumentsDir(), wxGetApp().GetAppName() );
+ case DocsFolder_User: return user_local_dir;
//case DocsFolder_CWD: return (wxDirName)wxGetCwd();
case DocsFolder_Custom: return CustomDocumentsFolder;

View File

@ -0,0 +1,30 @@
Index: pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppConfig.cpp 2010-06-15 13:13:00.230117552 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp 2010-06-15 13:13:00.572085408 +0200
@@ -97,7 +97,24 @@
// Specifies the main configuration folder.
wxDirName GetUserLocalDataDir()
{
- return wxDirName(wxStandardPaths::Get().GetUserLocalDataDir());
+ wxDirName user_local_dir;
+#ifdef __LINUX__
+ wxString xdg_home_value;
+ if( wxGetEnv(L"XDG_CONFIG_HOME", &xdg_home_value) ) {
+ if ( xdg_home_value.IsEmpty() ) {
+ // variable exist but it is empty. So use the default value
+ user_local_dir = (wxDirName)Path::Combine( wxStandardPaths::Get().GetUserConfigDir() , wxDirName( L".config/pcsx2" ));
+ } else {
+ user_local_dir = (wxDirName)Path::Combine( xdg_home_value, wxGetApp().GetAppName());
+ }
+ } else {
+ // variable do not exist
+ user_local_dir = (wxDirName)Path::Combine( wxStandardPaths::Get().GetUserConfigDir() , wxDirName( L".config/pcsx2" ));
+ }
+#else
+ user_local_dir = wxDirName(wxStandardPaths::Get().GetUserLocalDataDir());
+#endif
+ return user_local_dir;
}
// Fetches the path location for user-consumable documents -- stuff users are likely to want to

View File

@ -0,0 +1,17 @@
Index: pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/gui/AppConfig.cpp 2010-06-15 13:13:00.572085408 +0200
+++ pcsx2.snapshot-3208/pcsx2/gui/AppConfig.cpp 2010-06-15 13:13:00.797339595 +0200
@@ -123,7 +123,12 @@
{
switch( mode )
{
+#ifdef __LINUX__
+ // By default on linux move all user data file into central configuration directory
+ case DocsFolder_User: return GetUserLocalDataDir();
+#else
case DocsFolder_User: return (wxDirName)Path::Combine( wxStandardPaths::Get().GetDocumentsDir(), wxGetApp().GetAppName() );
+#endif
//case DocsFolder_CWD: return (wxDirName)wxGetCwd();
case DocsFolder_Custom: return CustomDocumentsFolder;

View File

@ -0,0 +1,176 @@
This patch removes recording feature beacause it needs libsoundtouch > 1.4.
Howerever only the version 1.3 is in debian. Unfortunately the package seems
to be not actively maintained.
Note it also correct the inlude path.
Index: pcsx2.snapshot-3208/plugins/spu2-x/src/Wavedump_wav.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/spu2-x/src/Wavedump_wav.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/spu2-x/src/Wavedump_wav.cpp 2010-06-15 13:13:01.045085909 +0200
@@ -16,16 +16,22 @@
*/
#include "Global.h"
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
#include "soundtouch/WavFile.h"
+#endif
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
static WavOutFile* _new_WavOutFile( const char* destfile )
{
return new WavOutFile( destfile, 48000, 16, 2 );
}
+#endif
namespace WaveDump
{
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
static WavOutFile* m_CoreWav[2][CoreSrc_Count] = { NULL };
+#endif
static const char* m_tbl_CoreOutputTypeNames[CoreSrc_Count] =
{
@@ -42,6 +48,7 @@
if( !IsDevBuild ) return;
if( !WaveLog() ) return;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
char wavfilename[256];
for( uint cidx=0; cidx<2; cidx++ )
@@ -64,11 +71,13 @@
}
}
}
+#endif
}
void Close()
{
if( !IsDevBuild ) return;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
for( uint cidx=0; cidx<2; cidx++ )
{
for( int srcidx=0; srcidx<CoreSrc_Count; srcidx++ )
@@ -76,13 +85,16 @@
safe_delete( m_CoreWav[cidx][srcidx] );
}
}
+#endif
}
void WriteCore( uint coreidx, CoreSourceType src, const StereoOut16& sample )
{
if( !IsDevBuild ) return;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
if( m_CoreWav[coreidx][src] != NULL )
m_CoreWav[coreidx][src]->write( (s16*)&sample, 2 );
+#endif
}
void WriteCore( uint coreidx, CoreSourceType src, s16 left, s16 right )
@@ -97,11 +109,14 @@
bool WavRecordEnabled = false;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
static WavOutFile* m_wavrecord = NULL;
+#endif
static Mutex WavRecordMutex;
void RecordStart()
{
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
WavRecordEnabled = false;
try
@@ -116,18 +131,23 @@
m_wavrecord = NULL; // not needed, but what the heck. :)
SysMessage("SPU2-X couldn't open file for recording: %s.\nRecording to wavfile disabled.", "recording.wav");
}
+#endif
}
void RecordStop()
{
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
WavRecordEnabled = false;
ScopedLock lock( WavRecordMutex );
safe_delete( m_wavrecord );
+#endif
}
void RecordWrite( const StereoOut16& sample )
{
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
ScopedLock lock( WavRecordMutex );
if( m_wavrecord == NULL ) return;
m_wavrecord->write( (s16*)&sample, 2 );
+#endif
}
Index: pcsx2.snapshot-3208/plugins/zerospu2/zerospu2.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zerospu2/zerospu2.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zerospu2/zerospu2.cpp 2010-06-15 13:13:01.046085349 +0200
@@ -28,7 +28,9 @@
#include <stdlib.h>
#include "soundtouch/SoundTouch.h"
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
#include "soundtouch/WavFile.h"
+#endif
char libraryName[256];
@@ -74,7 +76,9 @@
// time stretch variables
soundtouch::SoundTouch* pSoundTouch=NULL;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
extern WavOutFile* g_pWavRecord; // used for recording
+#endif
u64 s_GlobalTimeStamp = 0;
s32 s_nDurations[64]={0};
@@ -361,7 +365,9 @@
RemoveSound();
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
delete g_pWavRecord; g_pWavRecord = NULL;
+#endif
delete pSoundTouch; pSoundTouch = NULL;
for (u32 i = 0; i < ArraySize(s_pAudioBuffers); ++i)
Index: pcsx2.snapshot-3208/plugins/zerospu2/zeroworker.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zerospu2/zeroworker.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zerospu2/zeroworker.cpp 2010-06-15 13:13:01.047198072 +0200
@@ -19,10 +19,14 @@
#include "zerospu2.h"
#include "zeroworker.h"
#include "soundtouch/SoundTouch.h"
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
#include "soundtouch/WavFile.h"
+#endif
s32 g_logsound = 0;
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
WavOutFile* g_pWavRecord=NULL; // used for recording
+#endif
const s32 f[5][2] = {
{ 0, 0 },
@@ -302,6 +306,7 @@
void LogRawSound(void* pleft, s32 leftstride, void* pright, s32 rightstride, s32 numsamples)
{
+#if defined(SOUNDTOUCH_VERSION_ID) & (SOUNDTOUCH_VERSION_ID >= 10400)
if (g_pWavRecord == NULL )
g_pWavRecord = new WavOutFile(RECORD_FILENAME, SAMPLE_RATE, 16, 2);
@@ -320,4 +325,5 @@
}
g_pWavRecord->write(&tempbuf[0], numsamples*2);
+#endif
}

View File

@ -0,0 +1,26 @@
Already send upstream. Seem to cause some regression
Index: pcsx2.snapshot-3113/plugins/zzogl-pg/opengl/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3113.orig/plugins/zzogl-pg/opengl/CMakeLists.txt 2010-05-29 11:22:38.000000000 +0200
+++ pcsx2.snapshot-3113/plugins/zzogl-pg/opengl/CMakeLists.txt 2010-05-29 11:43:58.554840575 +0200
@@ -10,12 +10,6 @@
set(CMAKE_C_FLAGS_RELEASE "")
set(CMAKE_CXX_FLAGS_RELEASE "")
-# Also clear shared library flag to remove fpic option
-# that broke some asm code. The better solution will be to remove
-# the asm or fix it.
-set(CMAKE_SHARED_LIBRARY_CXX_FLAGS "")
-set(CMAKE_SHARED_LIBRARY_C_FLAGS "")
-
# plugin name
set(zzoglName zzogl)
@@ -29,6 +23,7 @@
-msse2
-fno-regmove
-DZEROGS_SSE2
+ -fPIC
)

View File

@ -0,0 +1,13 @@
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:13:01.344197868 +0200
@@ -940,7 +940,7 @@
{
snapshotnr++;
- sprintf(filename, "%ssnap%03ld.%s", path, snapshotnr, (conf.options&GSOPTION_TGASNAP) ? "bmp" : "jpg");
+ sprintf(filename, "%s/snap%03ld.%s", path, snapshotnr, (conf.options&GSOPTION_TGASNAP) ? "bmp" : "jpg");
bmpfile = fopen(filename, "rb");

View File

@ -0,0 +1,25 @@
Index: pcsx2.snapshot-3208/common/src/x86emitter/LnxCpuDetect.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/common/src/x86emitter/LnxCpuDetect.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/common/src/x86emitter/LnxCpuDetect.cpp 2010-06-15 13:13:01.552197718 +0200
@@ -16,17 +16,18 @@
#include "PrecompiledHeader.h"
#include "cpudetect_internal.h"
+#include <wx/thread.h>
// Note: Apparently this solution is Linux/Solaris only.
// FreeBSD/OsX need something far more complicated (apparently)
void x86capabilities::CountLogicalCores()
{
- const uint numCPU = sysconf( _SC_NPROCESSORS_ONLN );
+ const uint numCPU = wxThread::GetCPUCount();
if( numCPU > 0 )
{
//isMultiCore = numCPU > 1;
LogicalCores = numCPU;
- PhysicalCores = ( numCPU / LogicalCoresPerPhysicalCPU ) * PhysicalCoresPerPhysicalCPU;
+ PhysicalCores = numCPU / LogicalCoresPerPhysicalCPU;
}
else
{

View File

@ -0,0 +1,107 @@
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:13:01.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:14:07.480949224 +0200
@@ -263,14 +263,11 @@
if (IsLogging())
{
+ fprintf(gsLog,"GS: ");
vfprintf(gsLog, fmt, list);
fprintf(gsLog, "\n");
}
- printf("ZZogl-PG(GS): ");
-
- vprintf(fmt, list);
- printf("\n");
va_end(list);
#endif
}
@@ -284,15 +281,12 @@
if (IsLogging())
{
+ fprintf(gsLog,"WARNING: ");
vfprintf(gsLog, fmt, list);
fprintf(gsLog, "\n");
}
- printf("ZZogl-PG(Warning): ");
-
- vprintf(fmt, list);
va_end(list);
- printf("\n");
#endif
}
@@ -305,17 +299,12 @@
if (IsLogging())
{
+ fprintf(gsLog,"DEBUG: ");
vfprintf(gsLog, fmt, list);
fprintf(gsLog, "\n");
}
- printf("ZZogl-PG(Debug): ");
-
- vprintf(fmt, list);
- printf("\n");
va_end(list);
-
-
#endif
}
@@ -327,14 +316,10 @@
if (IsLogging())
{
+ fprintf(gsLog,"Error: ");
vfprintf(gsLog, fmt, list);
fprintf(gsLog, "\n");
}
-
- printf("ZZogl-PG(Error): ");
-
- vprintf(fmt, list);
- printf("\n");
va_end(list);
}
};
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglVB.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/ZZoglVB.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglVB.cpp 2010-06-15 13:14:24.079949227 +0200
@@ -280,7 +280,7 @@
assert(pnewdepth != NULL && prndr != NULL);
if (pnewdepth->fbh != prndr->fbh) ZZLog::Debug_Log("pnewdepth->fbh(0x%x) != prndr->fbh(0x%x)", pnewdepth->fbh, prndr->fbh);
- assert(pnewdepth->fbh == prndr->fbh);
+ // assert(pnewdepth->fbh == prndr->fbh);
if ((pprevdepth != pnewdepth) || (pprevdepth != NULL && (pprevdepth->status & CRenderTarget::TS_NeedUpdate)))
result = 2;
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglFlush.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/ZZoglFlush.cpp 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/ZZoglFlush.cpp 2010-06-15 13:14:07.481948884 +0200
@@ -645,7 +645,7 @@
SET_STREAM();
#ifdef _DEBUG
GLenum status = glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT);
- assert(glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) == GL_FRAMEBUFFER_COMPLETE_EXT);
+ // assert(glCheckFramebufferStatusEXT(GL_FRAMEBUFFER_EXT) == GL_FRAMEBUFFER_COMPLETE_EXT);
#endif
}
@@ -1867,7 +1867,7 @@
assert(curvb.prndr != NULL && curvb.pdepth != NULL);
- assert(curvb.pdepth->fbh == curvb.prndr->fbh);
+ // assert(curvb.pdepth->fbh == curvb.prndr->fbh);
if (curvb.pdepth->status & CRenderTarget::TS_Virtual)
{

View File

@ -0,0 +1,404 @@
Index: pcsx2.snapshot-3208/pcsx2/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/CMakeLists.txt 2010-06-15 13:12:59.655335900 +0200
+++ pcsx2.snapshot-3208/pcsx2/CMakeLists.txt 2010-06-15 13:14:33.597334089 +0200
@@ -11,12 +11,8 @@
set(CMAKE_CXX_FLAGS_RELEASE "")
# set common flags
-set(CommonFlags
+set(CommonFlags
-pthread
- -fno-guess-branch-probability
- -fno-dse
- -fno-tree-dse
- -fno-strict-aliasing
-m32
-march=i486
-msse
@@ -32,55 +28,51 @@
-W
-g)
+# Remove optimization that can break the code. Must be retested
+set(BadFlags_O0
+ -fno-guess-branch-probability
+ -fno-dse
+ -fno-tree-dse
+ )
+
+set(BadFlags_O1
+ -fno-argument-alias
+ -fno-branch-count-reg
+ -fno-ipa-pure-const
+ -fno-ipa-reference
+ -fno-omit-frame-pointer
+ -fno-split-wide-types
+ -fno-tree-copy-prop
+ -fno-tree-dse
+ -fno-tree-sink
+ )
+
+set(BadFlags_O2
+ -fno-expensive-optimizations
+ -fno-forward-propagate
+ -fno-inline-small-functions
+ -fno-ipa-cp
+ -fno-schedule-insns2
+ -fno-strict-aliasing
+ -fno-tree-builtin-call-dce
+ )
+
# set optimization flags
set(OptimizationFlags
- -falign-functions
- -falign-jumps
- -falign-labels
- -falign-loops
- -fcaller-saves
- -fcprop-registers
- -fcrossjumping
- -fcse-follow-jumps
-fcse-skip-blocks
- -fdefer-pop
- -fdelete-null-pointer-checks
- -fgcse
- -fgcse-lm
- -fif-conversion
- -fif-conversion2
- -fmerge-constants
- -foptimize-sibling-calls
- -fpeephole2
- -fregmove
- -freorder-blocks
- -freorder-functions
- -frerun-cse-after-loop
- -fsched-interblock
- -fsched-spec
-fstrict-overflow
- -fthread-jumps
- -ftree-ccp
- -ftree-ch
- -ftree-copyrename
- -ftree-dce
- -ftree-dominator-opts
- -ftree-fre
-ftree-lrs
- -ftree-pre
- -ftree-sra
- -ftree-ter
- -ftree-vrp
- -funit-at-a-time)
+ -O2
+ )
# Debug - Build
if(CMAKE_BUILD_TYPE STREQUAL Debug)
-
+
# executable name
set(pcsx2Name pcsx2)
-
+
# add defines
- add_definitions(${CommonFlags} ${DebugFlags} -DPCSX2_DEVBUILD -DPCSX2_DEBUG -DWX_PRECOMP)
+ add_definitions(${CommonFlags} ${DebugFlags} ${BadFlags_O0} -DPCSX2_DEVBUILD -DPCSX2_DEBUG -DWX_PRECOMP)
endif(CMAKE_BUILD_TYPE STREQUAL Debug)
# Devel - Build
@@ -88,9 +80,9 @@
# executable name
set(pcsx2Name pcsx2)
-
+
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD -DWX_PRECOMP -DNDEBUG)
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2} -DPCSX2_DEVBUILD -DWX_PRECOMP -DNDEBUG)
endif(CMAKE_BUILD_TYPE STREQUAL Devel)
# Release - Build
@@ -98,9 +90,9 @@
# executable name
set(pcsx2Name pcsx2)
-
+
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags} -DWX_PRECOMP -DNDEBUG)
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2} -DWX_PRECOMP -DNDEBUG)
endif(CMAKE_BUILD_TYPE STREQUAL Release)
# you must have both svn client executable and a source that contains svn metadata
@@ -598,7 +590,7 @@
set(Platform
${pcsx2LinuxSources}
${pcsx2LinuxHeaders})
-endif(Linux)
+endif(Linux)
# Windows
if(Windows)
@@ -611,7 +603,7 @@
if(MacOSX)
set(PlatformSources
)
-endif(MacOSX)
+endif(MacOSX)
# additonal include directories
include_directories(.
@@ -632,7 +624,7 @@
# link target with project internal libraries
target_link_libraries(${pcsx2Name} Utilities x86emitter)
-
+
# link target with wx
target_link_libraries(${pcsx2Name} ${wxWidgets_LIBRARIES})
Index: pcsx2.snapshot-3208/common/src/x86emitter/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/common/src/x86emitter/CMakeLists.txt 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/common/src/x86emitter/CMakeLists.txt 2010-06-15 13:14:33.597334089 +0200
@@ -16,10 +16,6 @@
# set common flags
set(CommonFlags
-pthread
- -fno-guess-branch-probability
- -fno-dse
- -fno-tree-dse
- -fno-strict-aliasing
-m32
-march=i486
-msse
@@ -35,66 +31,63 @@
-W
-g)
+# Remove optimization that can break the code. Must be retested
+set(BadFlags_O0
+ -fno-guess-branch-probability
+ -fno-dse
+ -fno-tree-dse
+ )
+
+set(BadFlags_O1
+ -fno-argument-alias
+ -fno-branch-count-reg
+ -fno-ipa-pure-const
+ -fno-ipa-reference
+ -fno-omit-frame-pointer
+ -fno-split-wide-types
+ -fno-tree-copy-prop
+ -fno-tree-dse
+ -fno-tree-sink
+ )
+
+
+set(BadFlags_O2
+ -fno-expensive-optimizations
+ -fno-forward-propagate
+ -fno-inline-small-functions
+ -fno-ipa-cp
+ -fno-schedule-insns2
+ -fno-strict-aliasing
+ -fno-tree-builtin-call-dce
+ )
+
# set optimization flags
set(OptimizationFlags
- -falign-functions
- -falign-jumps
- -falign-labels
- -falign-loops
- -fcaller-saves
- -fcprop-registers
- -fcrossjumping
- -fcse-follow-jumps
-fcse-skip-blocks
- -fdefer-pop
- -fdelete-null-pointer-checks
- -fgcse
- -fgcse-lm
- -fif-conversion
- -fif-conversion2
- -fmerge-constants
- -foptimize-sibling-calls
- -fpeephole2
- -fregmove
- -freorder-blocks
- -freorder-functions
- -frerun-cse-after-loop
- -fsched-interblock
- -fsched-spec
-fstrict-overflow
- -fthread-jumps
- -ftree-ccp
- -ftree-ch
- -ftree-copyrename
- -ftree-dce
- -ftree-dominator-opts
- -ftree-fre
-ftree-lrs
- -ftree-pre
- -ftree-sra
- -ftree-ter
- -ftree-vrp
- -funit-at-a-time)
+ -O2
+ )
# Debug - Build
if(CMAKE_BUILD_TYPE STREQUAL Debug)
# add defines
- add_definitions(${CommonFlags} ${DebugFlags} -DPCSX2_DEVBUILD -DPCSX2_DEBUG)
+ add_definitions(${CommonFlags} ${DebugFlags} ${BadFlags_O0} -DPCSX2_DEVBUILD -DPCSX2_DEBUG)
endif(CMAKE_BUILD_TYPE STREQUAL Debug)
# Devel - Build
if(CMAKE_BUILD_TYPE STREQUAL Devel)
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD)
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2} -DPCSX2_DEVBUILD)
endif(CMAKE_BUILD_TYPE STREQUAL Devel)
# Release - Build
if(CMAKE_BUILD_TYPE STREQUAL Release)
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags})
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2})
endif(CMAKE_BUILD_TYPE STREQUAL Release)
# variable with all sources of this library
Index: pcsx2.snapshot-3208/common/src/Utilities/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/common/src/Utilities/CMakeLists.txt 2010-06-15 13:10:41.000000000 +0200
+++ pcsx2.snapshot-3208/common/src/Utilities/CMakeLists.txt 2010-06-15 13:14:33.598334111 +0200
@@ -19,82 +19,76 @@
-m32
-march=i486
-msse
- -msse2
- -fno-dse
- -fno-guess-branch-probability
- -fno-strict-aliasing
- -fno-tree-dse
+ -msse2
-pipe
- -Wno-format
- -Wno-unused-parameter
- -Wno-unused-value
- -Wunused-variable)
+ -Wno-format
+ -Wno-unused-parameter
+ -Wno-unused-value
+ -Wunused-variable)
# set warning flags
set(DebugFlags
-g
-W)
+# Remove optimization that can break the code. Must be retested
+set(BadFlags_O0
+ -fno-guess-branch-probability
+ -fno-dse
+ -fno-tree-dse
+ )
+
+set(BadFlags_O1
+ -fno-argument-alias
+ -fno-branch-count-reg
+ -fno-ipa-pure-const
+ -fno-ipa-reference
+ -fno-omit-frame-pointer
+ -fno-split-wide-types
+ -fno-tree-copy-prop
+ -fno-tree-dse
+ -fno-tree-sink
+ )
+
+
+set(BadFlags_O2
+ -fno-expensive-optimizations
+ -fno-forward-propagate
+ -fno-inline-small-functions
+ -fno-ipa-cp
+ -fno-schedule-insns2
+ -fno-strict-aliasing
+ -fno-tree-builtin-call-dce
+ )
+
# set optimization flags
set(OptimizationFlags
- -falign-functions
- -falign-jumps
- -falign-labels
- -falign-loops
- -fcaller-saves
- -fcprop-registers
- -fcrossjumping
- -fcse-follow-jumps
-fcse-skip-blocks
- -fdefer-pop
- -fdelete-null-pointer-checks
- -fgcse
- -fgcse-lm
- -fif-conversion
- -fif-conversion2
- -fmerge-constants
- -foptimize-sibling-calls
- -fpeephole2
- -fregmove
- -freorder-blocks
- -freorder-functions
- -frerun-cse-after-loop
- -fsched-interblock
- -fsched-spec
-fstrict-overflow
- -fthread-jumps
- -ftree-ccp
- -ftree-ch
- -ftree-copyrename
- -ftree-dce
- -ftree-dominator-opts
- -ftree-fre
-ftree-lrs
- -ftree-pre
- -ftree-sra
- -ftree-ter
- -ftree-vrp
- -funit-at-a-time)
+ -O2
+ )
+
# Debug - Build
if(CMAKE_BUILD_TYPE STREQUAL Debug)
# add defines
- add_definitions(${CommonFlags} ${DebugFlags} -DPCSX2_DEBUG -DPCSX2_DEVBUILD)
+ add_definitions(${CommonFlags} ${DebugFlags} ${BadFlags_O0} -DPCSX2_DEBUG -DPCSX2_DEVBUILD)
endif(CMAKE_BUILD_TYPE STREQUAL Debug)
# Devel - Build
if(CMAKE_BUILD_TYPE STREQUAL Devel)
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags} -DPCSX2_DEVBUILD)
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2} -DPCSX2_DEVBUILD)
endif(CMAKE_BUILD_TYPE STREQUAL Devel)
# Release - Build
if(CMAKE_BUILD_TYPE STREQUAL Release)
# add defines
- add_definitions(${CommonFlags} ${OptimizationFlags})
+ add_definitions(${CommonFlags} ${OptimizationFlags} ${BadFlags_O0} ${BadFlags_O1} ${BadFlags_O2})
endif(CMAKE_BUILD_TYPE STREQUAL Release)
# variable with all sources of this library

View File

@ -0,0 +1,60 @@
Index: pcsx2.snapshot-3208/common/src/Utilities/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/common/src/Utilities/CMakeLists.txt 2010-06-15 13:14:33.598334111 +0200
+++ pcsx2.snapshot-3208/common/src/Utilities/CMakeLists.txt 2010-06-15 13:14:33.901074350 +0200
@@ -39,15 +39,6 @@
)
set(BadFlags_O1
- -fno-argument-alias
- -fno-branch-count-reg
- -fno-ipa-pure-const
- -fno-ipa-reference
- -fno-omit-frame-pointer
- -fno-split-wide-types
- -fno-tree-copy-prop
- -fno-tree-dse
- -fno-tree-sink
)
Index: pcsx2.snapshot-3208/common/src/x86emitter/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/common/src/x86emitter/CMakeLists.txt 2010-06-15 13:14:33.597334089 +0200
+++ pcsx2.snapshot-3208/common/src/x86emitter/CMakeLists.txt 2010-06-15 13:14:33.901074350 +0200
@@ -39,15 +39,6 @@
)
set(BadFlags_O1
- -fno-argument-alias
- -fno-branch-count-reg
- -fno-ipa-pure-const
- -fno-ipa-reference
- -fno-omit-frame-pointer
- -fno-split-wide-types
- -fno-tree-copy-prop
- -fno-tree-dse
- -fno-tree-sink
)
Index: pcsx2.snapshot-3208/pcsx2/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/pcsx2/CMakeLists.txt 2010-06-15 13:14:33.597334089 +0200
+++ pcsx2.snapshot-3208/pcsx2/CMakeLists.txt 2010-06-15 13:14:33.902074456 +0200
@@ -36,15 +36,6 @@
)
set(BadFlags_O1
- -fno-argument-alias
- -fno-branch-count-reg
- -fno-ipa-pure-const
- -fno-ipa-reference
- -fno-omit-frame-pointer
- -fno-split-wide-types
- -fno-tree-copy-prop
- -fno-tree-dse
- -fno-tree-sink
)
set(BadFlags_O2

View File

@ -0,0 +1,35 @@
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:14:07.480949224 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/GSmain.cpp 2010-06-15 13:14:34.157955576 +0200
@@ -530,7 +530,7 @@
SaveConfig();
}
-void OnKeyboardF6(int shift)
+void OnKeyboardF7(int shift)
{
FUNCLOG
@@ -556,7 +556,7 @@
SaveConfig();
}
-void OnKeyboardF7(int shift)
+void OnKeyboardF6(int shift)
{
FUNCLOG
Index: pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3208.orig/plugins/zzogl-pg/opengl/CMakeLists.txt 2010-06-15 13:15:07.402947013 +0200
+++ pcsx2.snapshot-3208/plugins/zzogl-pg/opengl/CMakeLists.txt 2010-06-15 13:15:18.296948496 +0200
@@ -39,7 +39,7 @@
# Debug - Build
if(CMAKE_BUILD_TYPE STREQUAL Debug)
# add defines
- add_definitions(${CommonFlags} -g -Wall -D_DEBUG)
+ add_definitions(${CommonFlags} -g -Wall -D_DEBUG -DZEROGS_DEVBUILD)
endif(CMAKE_BUILD_TYPE STREQUAL Debug)
# Devel - Build

View File

@ -0,0 +1,223 @@
Fix cmake to include an additional CDVD module. Mainly rename version.h, to avoid a conflict with alsa/version.h
Upstream need to properly fix the "version.h"
Index: pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/Linux/CDVDlinuz.c
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDlinuz/Src/Linux/CDVDlinuz.c 2010-06-08 19:27:02.000000000 +0200
+++ pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/Linux/CDVDlinuz.c 2010-06-08 19:35:28.095953061 +0200
@@ -47,7 +47,7 @@
#include "DVD.h" // InitDVDInfo()
#include "device.h"
-#include "../version.h"
+#include "../version_local.h"
// Globals
Index: pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/Linux/aboutbox.c
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDlinuz/Src/Linux/aboutbox.c 2010-06-08 19:27:02.000000000 +0200
+++ pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/Linux/aboutbox.c 2010-06-08 19:35:28.095953061 +0200
@@ -62,7 +62,7 @@
-#include "version.h"
+#include "version_local.h"
#include "aboutbox.h"
Index: pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/version.h
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDlinuz/Src/version.h 2010-06-08 19:27:02.000000000 +0200
+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
@@ -1,86 +0,0 @@
-/* version.h
-
- * Copyright (C) 2002-2005 PCSX2 Team
-
- *
-
- * This program is free software; you can redistribute it and/or modify
-
- * it under the terms of the GNU General Public License as published by
-
- * the Free Software Foundation; either version 2 of the License, or
-
- * (at your option) any later version.
-
- *
-
- * This program is distributed in the hope that it will be useful,
-
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
-
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-
- * GNU General Public License for more details.
-
- *
-
- * You should have received a copy of the GNU General Public License
-
- * along with this program; if not, write to the Free Software
-
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
- *
-
- * PCSX2 members can be contacted through their website at www.pcsx2.net.
-
- */
-
-
-
-
-
-#ifndef VERSION_H
-
-#define VERSION_H
-
-
-
-
-
-#ifndef __LINUX__
-
-#ifdef __linux__
-
-#define __LINUX__
-
-#endif /* __linux__ */
-
-#endif /* No __LINUX__ */
-
-
-
-#define CDVDdefs
-
-#include "PS2Edefs.h"
-
-
-
-
-
-extern char *libname;
-
-
-
-extern const unsigned char version;
-
-extern const unsigned char revision;
-
-extern const unsigned char build;
-
-
-
-
-
-#endif /* VERSION_H */
-
Index: pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/version_local.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/version_local.h 2010-06-08 19:35:28.095953061 +0200
@@ -0,0 +1,86 @@
+/* version.h
+
+ * Copyright (C) 2002-2005 PCSX2 Team
+
+ *
+
+ * This program is free software; you can redistribute it and/or modify
+
+ * it under the terms of the GNU General Public License as published by
+
+ * the Free Software Foundation; either version 2 of the License, or
+
+ * (at your option) any later version.
+
+ *
+
+ * This program is distributed in the hope that it will be useful,
+
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+
+ * GNU General Public License for more details.
+
+ *
+
+ * You should have received a copy of the GNU General Public License
+
+ * along with this program; if not, write to the Free Software
+
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+ *
+
+ * PCSX2 members can be contacted through their website at www.pcsx2.net.
+
+ */
+
+
+
+
+
+#ifndef VERSION_H
+
+#define VERSION_H
+
+
+
+
+
+#ifndef __LINUX__
+
+#ifdef __linux__
+
+#define __LINUX__
+
+#endif /* __linux__ */
+
+#endif /* No __LINUX__ */
+
+
+
+#define CDVDdefs
+
+#include "PS2Edefs.h"
+
+
+
+
+
+extern char *libname;
+
+
+
+extern const unsigned char version;
+
+extern const unsigned char revision;
+
+extern const unsigned char build;
+
+
+
+
+
+#endif /* VERSION_H */
+
Index: pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/CMakeLists.txt
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDlinuz/Src/CMakeLists.txt 2010-06-08 19:27:02.000000000 +0200
+++ pcsx2.snapshot-3185/plugins/CDVDlinuz/Src/CMakeLists.txt 2010-06-08 19:35:28.095953061 +0200
@@ -50,7 +50,7 @@
PS2Etypes.h
# ERROR It takes /usr/include/alsa/version.h
# Either fix include dir. Or rename the file. Or mv stuff into in another include file.
- version.h
+ version_local.h
)
# CDVDlinuz Linux sources

View File

@ -0,0 +1,64 @@
Index: pcsx2.snapshot-3185/plugins/CDVDnull/Linux/Config.cpp
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDnull/Linux/Config.cpp 2010-06-10 15:41:19.391525024 +0200
+++ pcsx2.snapshot-3185/plugins/CDVDnull/Linux/Config.cpp 2010-06-10 15:45:25.552686133 +0200
@@ -24,6 +24,8 @@
#include <string.h>
GtkWidget *MsgDlg;
+extern string s_strIniPath;
+PluginConf Ini;
void OnMsg_Ok()
{
@@ -73,6 +75,38 @@
gtk_main();
}
+void CDVDconfigure()
+{
+ LoadConfig();
+ PluginNullConfigure("Since this is a null plugin, all that is really configurable is logging.", conf.Log);
+ SaveConfig();
+}
+
void LoadConfig()
{
+ const std::string iniFile(s_strIniPath + "/CDVDNull.ini");
+
+ if (!Ini.Open(iniFile, READ_FILE))
+ {
+ printf("failed to open %s\n", iniFile.c_str());
+ SaveConfig();//save and return
+ return;
+ }
+
+ conf.Log = Ini.ReadInt("logging", 0);
+ Ini.Close();
+}
+
+void SaveConfig()
+{
+ const std::string iniFile(s_strIniPath + "/CDVDNull.ini");
+
+ if (!Ini.Open(iniFile, WRITE_FILE))
+ {
+ printf("failed to open %s\n", iniFile.c_str());
+ return;
+ }
+
+ Ini.WriteInt("logging", conf.Log);
+ Ini.Close();
}
Index: pcsx2.snapshot-3185/plugins/CDVDnull/CDVD.h
===================================================================
--- pcsx2.snapshot-3185.orig/plugins/CDVDnull/CDVD.h 2010-06-10 15:41:15.267525668 +0200
+++ pcsx2.snapshot-3185/plugins/CDVDnull/CDVD.h 2010-06-10 15:51:09.344566061 +0200
@@ -23,6 +23,7 @@
#define CDVDdefs
#include "PS2Edefs.h"
+#include "PS2Eext.h"
#ifdef __LINUX__
#include <gtk/gtk.h>

View File

@ -0,0 +1,15 @@
01_rename_binary_generated.patch
02_update_default_path.patch
03_central_userconfig_function.patch
04_xdg_config_home.patch
05_move_data_to_config.patch
21_use_legacy_soundtouch_13.patch
# Regression
#33_clean_fpic.patch
# Personnal patch that need advance testing
#43_fix_snapshot_path.patch
#44_cpu_count.patch
#50_zzogl_play.patch
#55_cmake_opt_clean.patch
#56_cmake_enable_opt1.patch
#facility_for_my_personal_system.patch

View File

@ -0,0 +1,2 @@
usr/share/games/pcsx2/shaders
var/games/pcsx2/

View File

@ -0,0 +1,2 @@
bin/plugins/ps2hw.dat usr/share/games/pcsx2/shaders/
bin/GameIndex.dbf var/games/pcsx2/

View File

@ -0,0 +1 @@
usr/lib/games/pcsx2/plugins

View File

@ -0,0 +1 @@
bin/plugins/lib* usr/lib/games/pcsx2/plugins

View File

@ -0,0 +1,10 @@
[Desktop Entry]
Version=1.0
Encoding=UTF-8
Type=Application
Name=PCSX2
GenericName=Playstation 2 Emulator
Comment=Sony Playstation 2 emulator
Exec=pcsx2
Icon=pcsx2
Categories=Application;Game;Emulator;GTK

View File

@ -0,0 +1,3 @@
usr/games
usr/share/pixmaps
usr/share/applications

View File

@ -0,0 +1 @@
bin/pcsx2 usr/games

View File

@ -0,0 +1,6 @@
?package(pcsx2.snapshot): \
needs="X11" \
section="Applications/Emulators" \
title="pcsx2" \
longtitle="A playstation 2 emulators" \
command="/usr/games/pcsx2"

View File

@ -0,0 +1 @@
#DOCS#

View File

@ -0,0 +1 @@
#DOCS#

1971
debian_unofficial/pcsx2.xpm Normal file

File diff suppressed because it is too large Load Diff

118
debian_unofficial/rules Executable file
View File

@ -0,0 +1,118 @@
#!/usr/bin/make -f
# -*- makefile -*-
# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1
ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
CMAKE_BUILD_TYPE=Debug
else
CMAKE_BUILD_TYPE=Release
endif
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
MAKEFLAGS += -j$(NUMJOBS)
endif
build: build-stamp
build-stamp:
dh_testdir
# backup orig makefile
for makefile in `find ./ -name "Makefile"` ; do [ -f $${makefile}.orig ] || mv $${makefile} $${makefile}.orig ; done
# Cmake based makefile
cmake CMakeLists.txt -DCMAKE_BUILD_TYPE=$(CMAKE_BUILD_TYPE) -DCMAKE_BUILD_STRIP=FALSE -DFORCE_INTERNAL_SOUNDTOUCH=FALSE
$(MAKE) $(MAKEFLAGS)
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp
# Backup some orig makefile if it not already done
# I hope some will be delete by upstream when cmake port is over
# Note in case we do not dl all plugins the test [ -f $${makefile} ] ensure the working
for makefile in plugins/CDVDlinuz/Src/Linux/Makefile \
plugins/CDVDiso/src/Linux/Makefile \
plugins/CDVDiso/src/Windows/Makefile \
plugins/USBnull/Windows/Makefile \
plugins/FWnull/Windows/Makefile \
plugins/PeopsSPU2/Makefile \
plugins/CDVDisoEFP/src/Linux/Makefile ; do \
[ -f $${makefile}.orig ] || ( [ -f $${makefile} ] && mv $${makefile} $${makefile}.orig ) || true ; done
# Add here commands to clean up after the build process.
[ -f Makefile ] && $(MAKE) clean || true
# Remove cmake stuff
rm -fr $$(find . -type d -name CMakeFiles)
rm -f $$(find . -type f -name CMakeCache.txt) $$(find . -type f -name cmake_install.cmake)
rm -f $$(find . -type f -name Makefile)
# File generated by bin2cpp
cd pcsx2/gui/Resources/ && rm -f App*.h Config*.h BackgroundLogo.h ButtonIcon_Camera.h Dualshock.h
# leftover of cmake
rm -f bin/plugins/ps2hw.dat
rm -f pcsx2/svnrev.h
# Restore orig makefile
for makefile_orig in `find ./ -name "Makefile.orig"` ; do [ -f $${makefile_orig} ] && mv $${makefile_orig} `echo $${makefile_orig} | sed -e 's/.orig//'` ; done
dh_clean
install:
install: build
dh_testdir
dh_testroot
dh_prep
dh_installdirs
### the project build usefull thing in ./bin so directly install
### from this directory to the debian pkg directory (skip debian/tmp)
dh_install
# install menu and icon
cp debian/pcsx2.desktop debian/pcsx2/usr/share/applications
cp debian/pcsx2.xpm debian/pcsx2/usr/share/pixmaps
# Build architecture-independent files here.
binary-indep: build install
dh_testdir -i
dh_testroot -i
dh_installchangelogs -i
dh_installdocs -i
dh_installman -i
dh_link -i
dh_compress -i
dh_fixperms -i
dh_installdeb -i
dh_gencontrol -i
dh_md5sums -i
dh_builddeb -i
# Build architecture-dependent files here.
binary-arch: build install
dh_testdir -a
dh_testroot -a
dh_installchangelogs -a
dh_installdocs -a
dh_installmenu -a
dh_installman -a
dh_strip --package=pcsx2 --dbg-package=pcsx2-dbg
dh_strip --package=pcsx2-plugins --dbg-package=pcsx2-plugins-dbg
dh_link -a
dh_compress -a
dh_fixperms -a
dh_makeshlibs -a
dh_installdeb -a
# XXX: WARNING to test the package on my system I must add the option (--exclude)
# due to fglrx drivers modify libGL. It must be re-enable for final packaging
# dh_shlibdeps -a
dh_shlibdeps -a --exclude=libzzogl
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

View File

@ -0,0 +1 @@
3.0 (quilt)

10
debian_unofficial/watch Normal file
View File

@ -0,0 +1,10 @@
# Example watch control file for uscan
# Rename this file to "watch" and then you can run the "uscan" command
# to check for upstream updates and more.
# See uscan(1) for format
# Compulsory line, this is a version 3 file
version=3
# Note upstream do not release source files. It advices to pick them from subversion
# http://pcsx2.googlecode.com/files/Pcsx2-linux-beta-(.*).tar.gz