The solution files are unused and for ancient Visual Studio versions -
GSDumpGUI has its own solution file, and bin2cpp is included in the main
solution file.
The property sheets have either fallen out of use or were never used in
the first place.
Combine all the different configurations together so the project files
are more generic and maintainable.
Also standardise the layout so all the project files will be similar and
all have the same standard elements (even if empty).
Add 64-bit configurations.
Additional specifics:
wxWidgets: Common stuff into the property sheets.
pthreads: Fixes the LNK4068 warning.
portaudio: Devel config added.
libjpeg: Non-existent file removed.
Side note: libjpeg is barely used - wxWidgets uses it but doesn't have
to, ZeroGS uses it but we don't develop that anymore.
find . -name *.vcxproj -exec sed -i -e '/user.props/d' {} \;
Microsoft recommends against using .user files. From
https://msdn.microsoft.com/en-us/library/669zx6zc.aspx :
"The best practice is to delete the reference to them in Property
Manager to ensure that your projects operate independently of any
per-user, per-computer settings. This is important to ensure correct
behaviour in a SCC (source code control) environment."
If you cannot compile SPU2-X after this commit (since that still relies
on the old DirectX SDK), you'll need to fix your build environment.
Basically I ran
find . -name "*.vcxproj" -exec sed -i -e 's/_xp//' {} \;
This will likely break XP, but it paves the way on Windows for a PCSX2
that does not require the DirectX redistributables to be installed for
Windows 8, 8.1 and 10 users. Windows Vista and 7 users will still require
the DirectX redistributable files for XInput and XAudio, though PCSX2
should still be capable of running if a user does not actually use either
of them.
WS_POPUP causes fullscreen tearing when using OpenGL and the GSPanel
rendering area exactly covers the full screen. (always affects stretch
mode, but most people have 16:9 monitors, so in general the widescreen
16:9 mode is also affected).
Fixes#1075
This is commit e093a3b1b402c067254558d24ef2d7f39f552251 from the wx3.0
stable branch.
The correct error code and message is now output when an error takes
place. Previously it would report an error code of 0 and inform us that
"The operation completed successfully".
2 notable changes which are welcomed.
-Improved SoundTouch::flush() function so that it returns precisely the desired amount of samples for exact output duration control
-Redesigned quickseek algorithm for improved sound quality when using the quickseek mode. The new quickseek algorithm can find 99% as good results as the default full-scan mode, while the quickseek algorithm is remarkably less CPU intensive.
There was a version check in the menu handling, but Windows 8.1 and
Windows 10 weren't recognised and some pre Windows 98 code was used.
This is a combination of the following wxWidgets upstream commits.
9280f836c2569d0f50301a1117f7ba144e5240d2
1966dfb17d7cb106d1dfb44df6a15b92ba3b8d5f
c87c432033f4277bc9995a4de1390a59b810a005
a8c98a119145a77b1313337314853de75562e4ab
Thanks to micove for finding the commits.
- Move the 3 public headers to a include directory.
+ pthreads ships a config.h therefore leaving them in the top dir
pollutes the include path.
- Starting with VS2015, MS defines timespec. Declare to only have it
if _MSC_VER >= 1900.
- On Linux pthread_t is an integer and you can easily do ==. On Windows
pthread_t is a structure and ==/!= have to be overloaded or every use of
those operator must be guaded with #ifdef's.
This is commit f350babf36818ba805ab0b4510b6616aaf3063fc.
.
Reading "Please update wx/compiler.h to recognize this VC++ version" gets
old pretty quickly.
It claimed to be 1.7.1 but it had a mixture from various
versions. It was hard to update as everything in the top directory
so I used upstream's way to organize files. I renamed include to
soundtouch since I did not want to #ifdef that for windows.
.
Wavfile.h is a private header so I used the private path instead of
moving the file over. This changed 3 files in the plugin folder.
- Only adds 2 security fixes.
- Add the CHANGES file.
- Add local changes:
+ setmode to _setmode
+ fileno to _fileno
+ fdopen to _fdopen
- sudonim1 removed all trailing whitespaces in svn2897 so I ran:
find . -type f -name '*.c' -o -name '*.h' | xargs sed -i 's/[[:space:]]\+$//'
This makes the delta of changes smaller.
Visual Studio flags wxCore30 as being out of date because it can't find
the rcdefs.h header file. Use the arch dependent pathname so it is
located correctly.
If pcsx2 is compiled for 32-bits and then compiled for 64-bits without
cleaning the build files, the wrong wx3.0 manifest will be included. The
same will happen vice versa.
Place the generated rcdefs.h file in a platform specific directory so
the correct manifest will always be used.
This lets wxWidgets3.0 build even when the full pathname has non ASCII
characters or spaces in it.
Note that pcsx2 and some of the plugins that rely on custom build
commands still fail.
This puts the wxWidgets3.0 and libpng generated library files into the
deps folder, and puts the other builds files in a subdirectory from
where the project files are located. This is consistent with all the
other 3rdparty projects.
The output libraries for Devel builds are also suffixed with -dev
instead of -dbg now.
Configures the settings in include/wx/msw/setup.h.
Removes icons from include/wx/msw/wx.rc.
Deletes include/wx/msw/rcdefs.h (autogenerated by build process).
Updates .gitignore by including wxWidgets3.0 build files and adds a
missing '/' to build.
This configure the VS2013 files so that the now external libpng and
libjpeg libraries are used, and to place some of the common stuff into a
property sheet.
For deleted files, I've chosen to exclude from build instead of removing
them from the project file. It's less work to re-add them if they're
required at a later stage.
Move libpng out of wxWidgets 3.0 so it's available to other projects.
Delete libjpeg since there's a newer copy already available in 3rdparty
(still outdated though).
Based on the debian version.
Note: it can be surely stripped down further
MS build script must be updated. Note: I keep wx original script as reference
Removed some missing headers from the vs2010 and vs2012 project files that were causing vs to always claim the projects were out of date.
Also removed some other entries for c/cpp files that were disabled but also missing (I did not search exhaustively).
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5763 96395faa-99c1-11dd-bbfe-3dabce05a288
* some preliminary work to test/benchmark bindless texture in the future (glsl was not yet updated)
Bindless texture allow to get a GPU texture pointer and then set it directly
to the shader as a basic uniform.
=> no more texture unit selection/validation
=> no more texture validation neither texture hash lookup
3rdparty: update gl header to the latest gl4.4
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5720 96395faa-99c1-11dd-bbfe-3dabce05a288
There's been changes in the VS2008 project file which we may want to look at and port to 2010/2012 separately but it builds like this in 2010 here.
I want to wait and see if there's any issues with Linux first, too.
Thanks to lincolnh_br :)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5619 96395faa-99c1-11dd-bbfe-3dabce05a288
VS2008 is harder to do as there is no automatic downgrader tools for the solution files, sorry.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5602 96395faa-99c1-11dd-bbfe-3dabce05a288
WinPcap version is 4.1.2 and only the /include and /lib folders of their developer pack are included.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5599 96395faa-99c1-11dd-bbfe-3dabce05a288
Should fix the VS2012 project files for when only VS2012 (and not VS2010) is installed.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5557 96395faa-99c1-11dd-bbfe-3dabce05a288
NOTE: The 'glew' project does NOT build yet, but it will have to be decided how to approach the problem (String literal too long in glew.rc)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5382 96395faa-99c1-11dd-bbfe-3dabce05a288
cmake: take the opportunity to drop the support of 3rdparty compilation. Distributions have got a more recent version of zlib/soundtouch anyway.
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5376 96395faa-99c1-11dd-bbfe-3dabce05a288
Notable changes:
- Changes to buffer size calculations and latency calculations.
Not a big update, just wanted to commit something before the year ended!
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5023 96395faa-99c1-11dd-bbfe-3dabce05a288
* Properly allocate/delete opengl object
* Request a debug context in SDL, add some code to log opengl error
* Fix context creation. For the moment only request ogl4.1 (AMD does not support yet 4.2 and it needs libglew1.7 too...)
git-svn-id: http://pcsx2.googlecode.com/svn/branches/gsdx-ogl@4973 96395faa-99c1-11dd-bbfe-3dabce05a288
onepad: properly connect the latest button
sdl: do not compile some useless files (which fail to compile on my system btw)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4879 96395faa-99c1-11dd-bbfe-3dabce05a288
onepad: add an option to control forcefeeback level
cmake: add an hidden option (SHARED_SDL) to build SDL as a shared library to allow pre-load
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4873 96395faa-99c1-11dd-bbfe-3dabce05a288
I also enabled WDMKS backend, but I had to change some #defines to get it to compile, and I can't seem to be able to use it on my Win7 machine. If anyone on XP wants to try it, it will be at their own risk. (use WDMKS hostApi name on the .ini)
git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4850 96395faa-99c1-11dd-bbfe-3dabce05a288