mirror of
https://github.com/libretro/pcsx2.git
synced 2024-12-14 21:58:45 +00:00
b974b815ff
* Changed w32pthreads library into a DLL so that it can be used from plugins correctly. (NOTE: you will need to make sure to build and copy w32pthreads.dll into your pcsx2 folder). * Switched pcsx2 from static CRT to shared CRT linking (needed to ensure correct exception handling behavior in multithreaded DLL environments). * Switched all standard plugins in the Suite to the shared CRT, to match pcsx2's new style. :) * Renamed _DEBUG (depreciated) to PCSX2_DEBUG (excluding Gabest projects since the ATL still uses it). * Added intrin.h to Pcsx2Defs.h (so that it is included universally), and added intrin_x86.h for GCC compatibility. Notes: * Current plugin version compatibility status should be unaffected. The new shared-CRT plugins work fine with older versions of Pcsx2, and the older plugins should work fine with the new shared-CRT version of pcsx2; so long as the necessary CRT DLLs are available on the user's system. * All future packagings of pcsx2 will include w32pthreads.dll and the Common Runtimes (CRTs). * Existing users who do not have MSVC installed can obtain the CRTs by downloading the Microsoft Visual C++ 2008 Redistributable Package (anyone with msvc installed should already have all they need). git-svn-id: http://pcsx2.googlecode.com/svn/trunk@1388 96395faa-99c1-11dd-bbfe-3dabce05a288
21 lines
996 B
Plaintext
21 lines
996 B
Plaintext
-----------------------------------
|
|
-- Air's Notes on Using PThreads --
|
|
-----------------------------------
|
|
|
|
The official name of the DLL is "w32pthreads.dll" -- I use the prefix to indicate with
|
|
some vaugeness that the pthreads dll is a modified non-standard implementation (see below
|
|
for details); just in case pthreads-win32 dlls in another universe were to be conflicting
|
|
interests.
|
|
|
|
I created a subfolder for pthreads' publically exposed header files, since "config.h" was
|
|
rather brutal include file namespace pollution. >_<
|
|
|
|
Important: pthread_cond is an inherently flawed concept, and is quite incredibly slow
|
|
on top of it. It's primarily meant for inter-process thread regulation, of which we
|
|
do none. Therefore it has been excluded from the library builds. Don't use it!
|
|
|
|
I've also disabled rwlocks, since they use pthread_cond internally. Again, there should
|
|
be little or no reason to have to use those within the context of a high performance app
|
|
like Pcsx2.
|
|
|