pcsx2/3rdparty/w32pthreads/PCSX2.txt
Jake.Stine b974b815ff Major Build System changes:
* 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
2009-06-18 08:20:19 +00:00

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.