diff --git a/docs/win32_build_scripts/pokerth_build.cmd b/docs/win32_build_scripts/pokerth_build.cmd index a30b2346..592fbd27 100644 --- a/docs/win32_build_scripts/pokerth_build.cmd +++ b/docs/win32_build_scripts/pokerth_build.cmd @@ -1,6 +1,6 @@ @echo off echo PokerTH Win32 mingw build script version 1.0. -echo Copyright (C) 2008-2009 Lothar May. License: GPL 2 or later +echo Copyright (C) 2008-2010 Lothar May. License: GPL 2 or later echo BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY echo FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. echo. @@ -34,9 +34,13 @@ echo. echo Checking for an installation of Qt if not exist %PKTH_BaseDir%\qt\bin\qmake.exe goto noQmake if not exist %PKTH_BaseDir%\svn\bin\svn.exe goto noSvn -if not exist %PKTH_BaseDir%\mingw\bin\mingw32-make.exe goto otherScriptFirst if not exist %PKTH_BaseDir%\pokerth goto otherScriptFirst -SET PATH=%PKTH_BaseDir%\qt\bin;%PKTH_BaseDir%\mingw\bin;%PATH% +if exist %PKTH_BaseDir%\mingw64\bin\mingw32-make.exe goto mingw64 +SET PATH=%PKTH_BaseDir%\qt\bin;%PKTH_BaseDir%\mingw32\bin;%PATH% +goto postmingw +:mingw64 +SET PATH=%PKTH_BaseDir%\qt\bin;%PKTH_BaseDir%\mingw64\bin;%PATH% +:postmingw SET QMAKESPEC=win32-g++ SET QTDIR=%PKTH_BaseDir%\qt @@ -51,7 +55,7 @@ echo Running svn update %PKTH_BaseDir%\svn\bin\svn update echo. echo Building PokerTH -qmake CONFIG+=release pokerth.pro +qmake CONFIG+=release DEFINES+=BOOST_USE_WINDOWS_H pokerth.pro mingw32-make release move release\pokerth.exe .\pokerth.exe move release\bin\pokerth_server.exe .\pokerth_server.exe diff --git a/docs/win32_build_scripts/pokerth_download_libs.cmd b/docs/win32_build_scripts/pokerth_download_libs.cmd index 89a22a74..d49aed01 100644 --- a/docs/win32_build_scripts/pokerth_download_libs.cmd +++ b/docs/win32_build_scripts/pokerth_download_libs.cmd @@ -52,79 +52,19 @@ echo The process will start if you press any other key. pause echo. echo Downloading mingw packages -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/gcc-core-4.5.0-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/gcc-c++-4.5.0-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/binutils-2.20.51-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/mingwrt-3.18-mingw32-dev.tar.gz -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/mingwrt-3.18-mingw32-dll.tar.gz -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/w32api-3.14-mingw32-dev.tar.gz -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/make-3.82-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/libgmp-5.0.1-1-mingw32-dll-10.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/libmpc-0.8.1-1-mingw32-dll-2.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/libgcc-4.5.0-1-mingw32-dll-1.tar.lzma -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/libstdc++-4.5.0-1-mingw32-dll-6.tar.lzma +%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw-w64/mingw-w32-bin_i686-mingw_20101002_4.5_sezero.zip %PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/mingw/mingw-utils-0.3.tar.gz if not errorlevel 0 goto downloadFailed echo. echo Unpacking mingw packages -mkdir mingw -%PKTH_OldDir%\third_party_apps\7za x -y gcc-core-4.5.0-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw gcc-core-4.5.0-1-mingw32-bin.tar -del gcc-core-4.5.0-1-mingw32-bin.tar -%PKTH_OldDir%\third_party_apps\7za x -y gcc-c++-4.5.0-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw gcc-c++-4.5.0-1-mingw32-bin.tar -del gcc-c++-4.5.0-1-mingw32-bin.tar -%PKTH_OldDir%\third_party_apps\7za x -y binutils-2.20.51-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw binutils-2.20.51-1-mingw32-bin.tar -del binutils-2.20.51-1-mingw32-bin.tar -%PKTH_OldDir%\third_party_apps\7za x -y mingwrt-3.18-mingw32-dev.tar.gz -%PKTH_OldDir%\third_party_apps\7za x -y -omingw mingwrt-3.18-mingw32-dev.tar -del mingwrt-3.18-mingw32-dev.tar -%PKTH_OldDir%\third_party_apps\7za x -y mingwrt-3.18-mingw32-dll.tar.gz -%PKTH_OldDir%\third_party_apps\7za x -y -omingw mingwrt-3.18-mingw32-dll.tar -del mingwrt-3.18-mingw32-dll.tar -%PKTH_OldDir%\third_party_apps\7za x -y w32api-3.14-mingw32-dev.tar.gz -%PKTH_OldDir%\third_party_apps\7za x -y -omingw w32api-3.14-mingw32-dev.tar -del w32api-3.14-mingw32-dev.tar -%PKTH_OldDir%\third_party_apps\7za x -y make-3.82-1-mingw32-bin.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw make-3.82-1-mingw32-bin.tar -del make-3.82-1-mingw32-bin.tar -%PKTH_OldDir%\third_party_apps\7za x -y libgmp-5.0.1-1-mingw32-dll-10.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw libgmp-5.0.1-1-mingw32-dll-10.tar -del libgmp-5.0.1-1-mingw32-dll-10.tar -%PKTH_OldDir%\third_party_apps\7za x -y libmpc-0.8.1-1-mingw32-dll-2.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw libmpc-0.8.1-1-mingw32-dll-2.tar -del libmpc-0.8.1-1-mingw32-dll-2.tar -%PKTH_OldDir%\third_party_apps\7za x -y libmpfr-2.4.1-1-mingw32-dll-1.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw libmpfr-2.4.1-1-mingw32-dll-1.tar -del libmpfr-2.4.1-1-mingw32-dll-1.tar -%PKTH_OldDir%\third_party_apps\7za x -y libgcc-4.5.0-1-mingw32-dll-1.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw libgcc-4.5.0-1-mingw32-dll-1.tar -del libgcc-4.5.0-1-mingw32-dll-1.tar -%PKTH_OldDir%\third_party_apps\7za x -y libstdc++-4.5.0-1-mingw32-dll-6.tar.lzma -%PKTH_OldDir%\third_party_apps\7za x -y -omingw libstdc++-4.5.0-1-mingw32-dll-6.tar -del libstdc++-4.5.0-1-mingw32-dll-6.tar +%PKTH_OldDir%\third_party_apps\7za x -y mingw-w32-bin_i686-mingw_20101002_4.5_sezero.zip %PKTH_OldDir%\third_party_apps\7za x -y mingw-utils-0.3.tar.gz -%PKTH_OldDir%\third_party_apps\7za x -y -omingw mingw-utils-0.3.tar +%PKTH_OldDir%\third_party_apps\7za x -y -omingw32 mingw-utils-0.3.tar del mingw-utils-0.3.tar -echo. -echo Renaming compiler files (remove dw2-postfix). -cd /d %PKTH_BaseDir% -cd mingw\bin -REM ren c++-dw2.exe c++.exe -REM ren cpp-dw2.exe cpp.exe -REM ren g++-dw2.exe g++.exe -REM ren gcc-dw2.exe gcc.exe -REM ren gcov-dw2.exe gcov.exe -REM ren mingw32-c++-dw2.exe mingw32-c++.exe -REM ren mingw32-g++-dw2.exe mingw32-g++.exe -REM ren mingw32-gcc-4.5.0-dw2.exe mingw32-gcc-4.5.0.exe -REM ren mingw32-gcc-dw2.exe mingw32-gcc.exe cd /d %PKTH_BaseDir% echo. echo Testing g++ -set PATH=%PKTH_BaseDir%\mingw\bin;%PKTH_OldDir%\third_party_apps;%PATH% +set PATH=%PKTH_BaseDir%\mingw32\bin;%PKTH_OldDir%\third_party_apps;%PATH% g++ %PKTH_OldDir%\helper_src\pkth_test.cpp -o pkth_test if not errorlevel 0 goto gppFailure pkth_test @@ -151,7 +91,6 @@ SET PATH=%PKTH_BaseDir%\qt\bin;%PATH% SET QMAKESPEC=win32-g++ SET QTDIR=%PKTH_BaseDir%\qt cd qt -REM %PKTH_OldDir%\third_party_apps\find -name *.cpp -exec sed -i "s/Q_DECL_IMPORT extern/Q_CORE_EXPORT/g" {} ; configure -static -fast -no-qt3support -qt-sql-sqlite -no-dbus -no-opengl -no-openssl -no-phonon -no-webkit qmake projects.pro -o Makefile -spec win32-g++ mingw32-make sub-src @@ -161,16 +100,16 @@ cd /d %PKTH_BaseDir% if not exist %PKTH_BaseDir%\zlib. ( echo. echo Downloading zlib -%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/libpng/zlib-1.2.3.tar.gz +%PKTH_OldDir%\third_party_apps\wget http://%SOURCEFORGE_MIRROR%.sourceforge.net/sourceforge/libpng/zlib-1.2.5.tar.gz if not errorlevel 0 goto downloadFailed echo. echo Unpacking zlib -%PKTH_OldDir%\third_party_apps\7za x -y zlib-1.2.3.tar.gz -%PKTH_OldDir%\third_party_apps\7za x -y zlib-1.2.3.tar -del zlib-1.2.3.tar +%PKTH_OldDir%\third_party_apps\7za x -y zlib-1.2.5.tar.gz +%PKTH_OldDir%\third_party_apps\7za x -y zlib-1.2.5.tar +del zlib-1.2.5.tar REM Wait 5 seconds for the file cache, else ren might fail. @ping 127.0.0.1 -n 5 -w 1000 > nul -ren zlib-1.2.3 zlib +ren zlib-1.2.5 zlib ) echo. echo Compiling zlib @@ -242,15 +181,15 @@ echo Unpacking boost and bjam %PKTH_OldDir%\third_party_apps\7za x -y boost-jam-3.1.17-1-ntx86.zip REM Wait 5 seconds for the file cache, else ren might fail. @ping 127.0.0.1 -n 5 -w 1000 > nul -move boost-jam-3.1.17-1-ntx86\bjam.exe mingw\bin\bjam.exe -move boost-jam-3.1.17-1-ntx86\LICENSE_1_0.txt mingw\bin\bjam_LICENSE_1_0.txt +move boost-jam-3.1.17-1-ntx86\bjam.exe mingw32\bin\bjam.exe +move boost-jam-3.1.17-1-ntx86\LICENSE_1_0.txt mingw32\bin\bjam_LICENSE_1_0.txt rd boost-jam-3.1.17-1-ntx86 ren boost_1_44_0 boost ) echo. echo Compiling boost cd boost -bjam link=shared --build-dir=%PKTH_BaseDir%\pkth_boost_delete_me_after_build --toolset=gcc stage +bjam link=shared --build-dir=%PKTH_BaseDir%\pkth_boost_delete_me_after_build --toolset=gcc define=BOOST_USE_WINDOWS_H stage echo. echo Done compiling boost cd /d %PKTH_BaseDir% @@ -314,8 +253,8 @@ echo. echo Copying DLLs copy /Y %PKTH_BaseDir%\SDL\bin\SDL.dll %PKTH_BaseDir%\pokerth\ copy /Y %PKTH_BaseDir%\SDL_mixer\bin\SDL_mixer.dll %PKTH_BaseDir%\pokerth\ -copy /Y "%PKTH_BaseDir%\mingw\bin\libgcc_s_dw2-1.dll" %PKTH_BaseDir%\pokerth\ -copy /Y "%PKTH_BaseDir%\mingw\bin\libstdc++-6.dll" %PKTH_BaseDir%\pokerth\ +copy /Y "%PKTH_BaseDir%\mingw32\bin\libgcc_s_sjlj-1.dll" %PKTH_BaseDir%\pokerth\ +copy /Y "%PKTH_BaseDir%\mingw32\bin\libstdc++-6.dll" %PKTH_BaseDir%\pokerth\ copy /Y %PKTH_BaseDir%\boost\stage\lib\libboost_filesystem-mgw45-mt-1_44.dll %PKTH_BaseDir%\pokerth\ copy /Y %PKTH_BaseDir%\boost\stage\lib\libboost_iostreams-mgw45-mt-1_44.dll %PKTH_BaseDir%\pokerth\ copy /Y %PKTH_BaseDir%\boost\stage\lib\libboost_system-mgw45-mt-1_44.dll %PKTH_BaseDir%\pokerth\ diff --git a/src/core/openssl_wrapper.h b/src/core/openssl_wrapper.h index 50a75749..6903611e 100644 --- a/src/core/openssl_wrapper.h +++ b/src/core/openssl_wrapper.h @@ -24,9 +24,18 @@ #ifndef HAVE_SSIZE_T #define HAVE_SSIZE_T #include -#ifdef _WIN32 // This is only for Windows. Supports only Win32. +#ifdef _WIN64 // This is only for Windows. #ifndef _SSIZE_T_ - typedef long ssize_t; + typedef long long ssize_t; + #define _SSIZE_T_ + #endif + #ifndef _PID_T_ + typedef __int64 pid_t; + #define _PID_T_ + #endif +#elif _WIN32 + #ifndef _SSIZE_T_ + typedef int ssize_t; #define _SSIZE_T_ #endif #ifndef _PID_T_