0
0
mirror of https://github.com/zeromq/libzmq.git synced 2025-01-14 09:47:56 +08:00
libzmq/build-windows-installers.cmd

85 lines
3.9 KiB
Batchfile

@echo off
setlocal
set WITH_OPENPGM=true
set WITH_DOC=true
:: Remove old build files
echo Cleaning build area ...
rmdir /s /q build 2> null
md build\x86\v90 build\x86\v100 build\x86\v110 build\x86\v110_xp build\x86\v120 2> null
md build\x64\v90 build\x64\v100 build\x64\v110 build\x64\v120 2> null
echo Starting build ...
call:buildx86 build\x86 ..\..
call:buildx64 build\x64 ..\..
echo Build finished.
goto:eof
:buildx86
echo Building targets for x86 ...
setlocal
cd %~1\v90
call "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x86
cmake -G "Visual Studio 12" ..\..\.. -T "v90" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug /target:ALL_BUILD ZeroMQ.sln >> build.log && msbuild /nologo /property:Configuration=Release /target:ALL_BUILD ZeroMQ.sln >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..\v100
cmake -G "Visual Studio 12" ..\..\.. -T "v100" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release ALL_BUILD.vcxproj >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..\v110
cmake -G "Visual Studio 12" ..\..\.. -T "v110" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release ALL_BUILD.vcxproj >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..\v120
cmake -G "Visual Studio 12" ..\..\.. -T "v120" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release ALL_BUILD.vcxproj >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..\v110_xp
cmake -G "Visual Studio 12" ..\..\.. -T "v110_xp" -DWITH_OPENPGM=%WITH_OPENPGM% -DWITH_DOC=%WITH_DOC% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release PACKAGE.vcxproj >> build.log
(
dir *.exe
for /D %%f in (lib\*) do dir %%f\*.dll
) | findstr "\/"
cd %~2
endlocal
goto:eof
:buildx64
echo Building targets for x64 ...
cd %~1
setlocal
call "%ProgramFiles(x86)%\Microsoft Visual Studio 12.0\VC\vcvarsall.bat" x64
:: If linker crashes out with LNK1000 error install KB948127 to fix
:: https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=11399
(
cd v90
cmake -G "Visual Studio 12 Win64" ..\..\.. -T "v90" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug /target:ALL_BUILD ZeroMQ.sln >> build.log && msbuild /nologo /property:Configuration=Release /target:ALL_BUILD ZeroMQ.sln >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..
)
(
cd v100
cmake -G "Visual Studio 12 Win64" ..\..\.. -T "v100" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release ALL_BUILD.vcxproj >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..
)
(
cd v110
cmake -G "Visual Studio 12 Win64" ..\..\.. -T "v110" -DWITH_OPENPGM=%WITH_OPENPGM% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release ALL_BUILD.vcxproj >> build.log
for /D %%f in (lib\*) do dir %%f\*.dll | findstr "\/"
cd ..
)
(
cd v120
cmake -G "Visual Studio 12 Win64" ..\..\.. -T "v120" -DWITH_OPENPGM=%WITH_OPENPGM% -DWITH_DOC=%WITH_DOC% > build.log && msbuild /nologo /property:Configuration=Debug ALL_BUILD.vcxproj >> build.log && msbuild /nologo /property:Configuration=Release PACKAGE.vcxproj >> build.log
(
dir *.exe
for /D %%f in (lib\*) do dir %%f\*.dll
) | findstr "\/"
cd ..
)
endlocal
cd %~2
goto:eof