THRIFT-1387 Build MSVC libraries with Boost Threads instead of Pthreads
Patch: Peace C & Alexandre Parenteau

git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1182024 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/README_WINDOWS b/lib/cpp/README_WINDOWS
index 27520bc..ad4cac4 100644
--- a/lib/cpp/README_WINDOWS
+++ b/lib/cpp/README_WINDOWS
@@ -33,7 +33,7 @@
 
 libthrift
   The core Thrift library contains all the core Thrift code. It requires
-  boost shared pointers and pthreads_win32.
+  boost shared pointers and boost thread.
 
 libthriftnb
   This library contains the Thrift nonblocking server, which uses libevent.
@@ -46,7 +46,7 @@
 ======================
 
 You need to link your project that uses thrift against all the thrift
-dependancies; in the case of libthrift, pthreads_win32, boost and for
+dependancies; in the case of libthrift, boost and for
 libthriftnb, libevent.
 
 In the project properties you must also set HAVE_CONFIG_H as force include
@@ -58,29 +58,35 @@
 boost shared pointers
 http://www.boost.org/libs/smart_ptr/smart_ptr.htm
 
+boost thread
+http://www.boost.org/doc/libs/release/doc/html/thread.html
+
 libevent (for libthriftnb only)
 http://monkey.org/~provos/libevent/
 
-pthreads win32
-http://sources.redhat.com/pthreads-win32/
+Notes on boost thread (static vs shared):
+=========================================
+
+By default lib/cpp/windows/force_inc.h defines:
+
+#define BOOST_ALL_NO_LIB 1
+#define BOOST_THREAD_NO_LIB 1
+
+This has for effect to have the host application linking against Thrift
+to have to link with boost thread as a static library.
+
+If you wanted instead to link with boost thread as a shared library,
+you'll need to uncomment those two lines, and recompile.
 
 Known issues
 ============
 
-- Endianess has not been fully tested, may not work with doubles.
-- Currently does not support the non-blocking connect path.
-- Only supports the creation of clients, server sockets are not yet ported.
 - Does not support named pipes. (Supported in unix through unix domain sockets).
 
 TODO
 ====
 
 - Port remaining classes in libthrift:
-    - TFDTransport
-    - TFileTransport
-    - THttpClient
-    - THttpServer
-    - TSimpleFileTransport
     - TSSLSocket
 
 - Port test cases. (Not even started this. Run test cases in release mode?)