Update Windows build for new threading library
authorBruce Cran <bcran@fusionio.com>
Tue, 28 Jan 2014 19:56:53 +0000 (12:56 -0700)
committerJens Axboe <axboe@kernel.dk>
Tue, 28 Jan 2014 20:04:40 +0000 (13:04 -0700)
MinGW now uses libwinpthread-1.dll instead of pthreadGC2.dll.
To simplify things, create a static executable so users can run fio
from anywhere without needing to copy the dll.

Signed-off-by: Jens Axboe <axboe@kernel.dk>
Makefile
README
os/windows/examples.wxs
os/windows/install.wxs

index 8c2c514607eae6f47d61cf0cce88484c49a0d8e3..3f654f02b860c66ccfe501a807c92b7522bf563d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -132,7 +132,7 @@ ifneq (,$(findstring CYGWIN,$(CONFIG_TARGET_OS)))
   SOURCE := $(filter-out engines/mmap.c,$(SOURCE))
   SOURCE += os/windows/posix.c
   LIBS  += -lpthread -lpsapi -lws2_32
-  CFLAGS += -DPSAPI_VERSION=1 -Ios/windows/posix/include -Wno-format
+  CFLAGS += -DPSAPI_VERSION=1 -Ios/windows/posix/include -Wno-format -static
 endif
 
 OBJS = $(SOURCE:.c=.o)
diff --git a/README b/README
index e90f4938fc23879aab9ed57703c80c88015d55d7..4da0d249132ad0d327b0f157862a317a25bc9c6c 100644 (file)
--- a/README
+++ b/README
@@ -105,24 +105,20 @@ Configure will attempt to determine the target platform automatically.
 Windows
 -------
 
-On Windows Cygwin (http://www.cygwin.com/) is required in order to
-build fio. To create an MSI installer package install WiX 3.7 from
+On Windows, Cygwin (http://www.cygwin.com/) is required in order to
+build fio. To create an MSI installer package install WiX 3.8 from
 http://wixtoolset.org and run dobuild.cmd from the
 os/windows directory.
 
-How to compile FIO on 64-bit Windows:
+How to compile fio on 64-bit Windows:
 
- 1. Install Cygwin (http://www.cygwin.com/setup.exe). Install 'make' and all
+ 1. Install Cygwin (http://www.cygwin.com/). Install 'make' and all
     packages starting with 'mingw64-i686' and 'mingw64-x86_64'.
- 2. Download ftp://sourceware.org/pub/pthreads-win32/prebuilt-dll-2-9-1-release/dll/x64/pthreadGC2.dll
-    and copy to the fio source directory.
- 3. Open the Cygwin Terminal.
- 4. Go to the fio directory (source files).
- 5. Run 'make clean'.
- 6. Run 'make'.
-
-To build fio on 32-bit Windows, download x86/pthreadGC2.dll instead and do
-'./configure --build-32bit-win=yes' before 'make'.
+ 2. Open the Cygwin Terminal.
+ 3. Go to the fio directory (source files).
+ 4. Run 'make clean && make -j'.
+
+To build fio on 32-bit Windows, run './configure --build-32bit-win' before 'make'.
 
 It's recommended that once built or installed, fio be run in a Command Prompt
 or other 'native' console such as console2, since there are known to be display
index 644799d87aff52d365938ecf6bc706b4944c0a10..a21182a9d84400053cb598c25fbc889a18fbb412 100755 (executable)
@@ -20,6 +20,9 @@
                 <Component>
                     <File Source="..\..\examples\netio.fio" />
                 </Component>
+                <Component>
+                    <File Source="..\..\examples\netio_multicast.fio" />
+                </Component>
                 <Component>
                     <File Source="..\..\examples\ssd-test.fio" />
                 </Component>
@@ -60,6 +63,7 @@
             <ComponentRef Id="fsx.fio" />
             <ComponentRef Id="iometer_file_access_server.fio" />
             <ComponentRef Id="netio.fio" />
+            <ComponentRef Id="netio_multicast.fio" />
             <ComponentRef Id="ssd_test.fio" />
             <ComponentRef Id="surface_scan.fio" />
             <ComponentRef Id="tiobench_example.fio" />
index adc50f65844b488b23d7da1bcfc4134312a66029..599fe39d21d26926cf3f681daa211a01e15fd939 100755 (executable)
@@ -26,9 +26,6 @@
                                                <Component>
                                                        <File Source="..\..\fio.exe"/>
                                                </Component>
-                                               <Component>
-                                                       <File KeyPath="yes" Source="..\..\libwinpthread-1.dll"/>
-                                               </Component>
                                                <Component>
                                                        <File Id="README" Name="README.txt" Source="..\..\README"/>
                                                </Component>
@@ -52,7 +49,6 @@
 
        <Feature Id="AlwaysInstall" Absent="disallow" ConfigurableDirectory="INSTALLDIR" Display="hidden" Level="1" Title="Flexible IO Tester">
                <ComponentRef Id="fio.exe"/>
-               <ComponentRef Id="pthreadGC2.dll"/>
                <ComponentRef Id="HOWTO"/>
                <ComponentRef Id="README"/>
                <ComponentRef Id="REPORTING_BUGS"/>