From 6dc41dc62bf4224dd90f34b95b4f79fdeffdf071 Mon Sep 17 00:00:00 2001 From: Hugues Delorme Date: Wed, 4 Jan 2017 12:27:18 +0100 Subject: [PATCH] scripts: add local_build bat files --- scripts/local_build/build.bat | 14 ++++++ scripts/local_build/build_mingw_target.bat | 22 +++++++++ scripts/local_build/build_msvc_target.bat | 53 +++++++++++++++++++++ scripts/local_build/create_build_dirs.bat | 7 +++ scripts/local_build/userbuilds_TEMPLATE.bat | 22 +++++++++ scripts/local_build/uservars_TEMPLATE.bat | 10 ++++ 6 files changed, 128 insertions(+) create mode 100644 scripts/local_build/build.bat create mode 100644 scripts/local_build/build_mingw_target.bat create mode 100644 scripts/local_build/build_msvc_target.bat create mode 100644 scripts/local_build/create_build_dirs.bat create mode 100644 scripts/local_build/userbuilds_TEMPLATE.bat create mode 100644 scripts/local_build/uservars_TEMPLATE.bat diff --git a/scripts/local_build/build.bat b/scripts/local_build/build.bat new file mode 100644 index 0000000..418669f --- /dev/null +++ b/scripts/local_build/build.bat @@ -0,0 +1,14 @@ +set GMIO_LOCAL_CI_ROOT=%~dp0 +call %GMIO_LOCAL_CI_ROOT%\_uservars.bat +set GMIO_ROOT=%GMIO_LOCAL_CI_ROOT%\..\.. +set PATH_MSVC2010=%VS100COMNTOOLS% +set PATH_MSVC2012=%VS110COMNTOOLS% +set PATH_MSVC2013=%VS120COMNTOOLS% +set PATH_MSVC2015=%VS140COMNTOOLS% +set PATH=%PATH_CMAKE%;%PATH_DOXYGEN%;%PATH_JOM%;%PATH% +set PATH_ORIGINAL=%PATH% + +cmake --version +cd %GMIO_BUILD_ROOT% +call %GMIO_LOCAL_CI_ROOT%\_userbuilds.bat +pause diff --git a/scripts/local_build/build_mingw_target.bat b/scripts/local_build/build_mingw_target.bat new file mode 100644 index 0000000..0e467ce --- /dev/null +++ b/scripts/local_build/build_mingw_target.bat @@ -0,0 +1,22 @@ +if not defined GMIO_BUILD_ROOT ( + echo "****ERROR: Variable GMIO_BUILD_ROOT not defined" + exit 0 +) + +set BUILD_TYPE=%1 +set BUILD_OUTPUT_FILE=%GMIO_BUILD_ROOT%\%CURRENT_BUILD%_%BUILD_TYPE%.txt 2>&1 +cd %GMIO_BUILD_ROOT%\%CURRENT_BUILD%\%BUILD_TYPE% +cmake %GMIO_ROOT% -G "MinGW Makefiles" ^ + -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_DEBUG_POSTFIX=_d ^ + -DCMAKE_INSTALL_PREFIX=%GMIO_BUILD_ROOT%\%CURRENT_BUILD%\install ^ + -DGMIO_FLOAT2STR_LIB=google_doubleconversion ^ + -DGMIO_BUILD_EXAMPLES=ON ^ + -DGMIO_BUILD_TESTS_FAKE_SUPPORT=ON ^ + -DGMIO_BUILD_BENCHMARKS=ON ^ + -DGMIO_BUILD_BENCHMARK_ASSIMP=OFF ^ + -DGMIO_BUILD_BENCHMARK_OPENCASCADE=OFF ^ + -DGMIO_BUILD_BENCHMARK_LIB3MF=OFF ^ + > %BUILD_OUTPUT_FILE% +mingw32-make -j4 >> %BUILD_OUTPUT_FILE% +mingw32-make check >> %BUILD_OUTPUT_FILE% +mingw32-make install >> %BUILD_OUTPUT_FILE% diff --git a/scripts/local_build/build_msvc_target.bat b/scripts/local_build/build_msvc_target.bat new file mode 100644 index 0000000..e128ec8 --- /dev/null +++ b/scripts/local_build/build_msvc_target.bat @@ -0,0 +1,53 @@ +if not defined GMIO_BUILD_ROOT ( + echo "****ERROR: Variable GMIO_BUILD_ROOT not defined" + exit 0 +) + +@set BUILD_TYPE=%1 +@set VSXXXCOMNTOOLS=%~2 +@set TARGET_ARCH=%3 + +@set INCLUDE= +@set LIB= +@set LIBPATH= +@set VS80COMNTOOLS= +@set VS90COMNTOOLS= +@set VS100COMNTOOLS= +@set VS110COMNTOOLS= +@set VS120COMNTOOLS= +@set VS140COMNTOOLS= +@set VSINSTALLDIR= +@set Framework35Version= +@set FrameworkDir= +@set FrameworkVersion= +@set FrameworkDir32= +@set FrameworkVersion32= +@set FrameworkDir64= +@set FrameworkVersion64= +@set WindowsSdkDir= +call "%VSXXXCOMNTOOLS%\..\..\VC\vcvarsall.bat" %TARGET_ARCH% +@set VSXXXCOMNTOOLS= + +if "%ROOTDIR_OPENCASCADE%"=="" ( + set BUILD_BENCHMARK_OPENCASCADE=OFF +) else ( + set BUILD_BENCHMARK_OPENCASCADE=ON +) + +@set BUILD_OUTPUT_FILE=%GMIO_BUILD_ROOT%\%CURRENT_BUILD%_%BUILD_TYPE%.txt 2>&1 +cd %GMIO_BUILD_ROOT%\%CURRENT_BUILD%\%BUILD_TYPE% +cmake %GMIO_ROOT% -G "NMake Makefiles" ^ + -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -DCMAKE_DEBUG_POSTFIX=_d ^ + -DCMAKE_INSTALL_PREFIX=%GMIO_BUILD_ROOT%\%CURRENT_BUILD%\install ^ + -DGMIO_FLOAT2STR_LIB=google_doubleconversion ^ + -DGMIO_BUILD_EXAMPLES=ON ^ + -DGMIO_BUILD_TESTS_FAKE_SUPPORT=ON ^ + -DGMIO_BUILD_BENCHMARKS=ON ^ + -DGMIO_BUILD_BENCHMARK_ASSIMP=ON -DROOTDIR_ASSIMP=%ROOTDIR_ASSIMP% ^ + -DGMIO_BUILD_BENCHMARK_OPENCASCADE=%BUILD_BENCHMARK_OPENCASCADE% ^ + -DROOTDIR_OPENCASCADE=%ROOTDIR_OPENCASCADE% ^ + -DGMIO_BUILD_BENCHMARK_LIB3MF=OFF ^ + > %BUILD_OUTPUT_FILE% +jom -j4 >> %BUILD_OUTPUT_FILE% +jom check >> %BUILD_OUTPUT_FILE% +jom install >> %BUILD_OUTPUT_FILE% diff --git a/scripts/local_build/create_build_dirs.bat b/scripts/local_build/create_build_dirs.bat new file mode 100644 index 0000000..10b83cc --- /dev/null +++ b/scripts/local_build/create_build_dirs.bat @@ -0,0 +1,7 @@ +if defined GMIO_BUILD_ROOT ( + cd %GMIO_BUILD_ROOT% + rmdir /S /Q %1 + mkdir %1 + cd %1 + mkdir debug release install +) diff --git a/scripts/local_build/userbuilds_TEMPLATE.bat b/scripts/local_build/userbuilds_TEMPLATE.bat new file mode 100644 index 0000000..3c36e7c --- /dev/null +++ b/scripts/local_build/userbuilds_TEMPLATE.bat @@ -0,0 +1,22 @@ +rem -- Visual C++ 2013 x64 +set %PATH%=%PATH_ORIGINAL% +set CURRENT_BUILD=msvc2013-x64 +call %GMIO_LOCAL_CI_ROOT%\create_build_dirs.bat %CURRENT_BUILD% +call %GMIO_LOCAL_CI_ROOT%\build_msvc_target.bat debug "%PATH_MSVC2013%" amd64 +call %GMIO_LOCAL_CI_ROOT%\build_msvc_target.bat release "%PATH_MSVC2013%" amd64 + +rem -- Visual C++ 2013 x86 +set %PATH%=%PATH_ORIGINAL% +set CURRENT_BUILD=msvc2013-x86 +call %GMIO_LOCAL_CI_ROOT%\create_build_dirs.bat %CURRENT_BUILD% +set ROOTDIR_OPENCASCADE= +call %GMIO_LOCAL_CI_ROOT%\build_msvc_target.bat debug "%PATH_MSVC2013%" x86 +call %GMIO_LOCAL_CI_ROOT%\build_msvc_target.bat release "%PATH_MSVC2013%" x86 + +rem -- MinGW tdm64-gcc-5.1.0 +set %PATH%=%ORIGINAL_PATH% +set CURRENT_BUILD=tdm64-gcc-5.1.0 +call C:\dev\tools\tdm64-gcc-5.1.0\mingwvars.bat +call %GMIO_LOCAL_CI_ROOT%\create_build_dirs.bat %CURRENT_BUILD% +call %GMIO_LOCAL_CI_ROOT%\build_mingw_target.bat debug +call %GMIO_LOCAL_CI_ROOT%\build_mingw_target.bat release diff --git a/scripts/local_build/uservars_TEMPLATE.bat b/scripts/local_build/uservars_TEMPLATE.bat new file mode 100644 index 0000000..ce74643 --- /dev/null +++ b/scripts/local_build/uservars_TEMPLATE.bat @@ -0,0 +1,10 @@ +rem Required user variables +set GMIO_BUILD_ROOT=C:\dev\builds\gmio\local_ci +set PATH_JOM=C:\dev\tools\jom +set PATH_CMAKE=C:\Program Files (x86)\CMake 3.2\bin + +rem Optional user variables +set ROOTDIR_ASSIMP=C:\dev\libs\assimp-3.1.1 +set ROOTDIR_OPENCASCADE_x64=C:\dev\libs\OpenCASCADE7.0.0-vc12-64\opencascade-7.0.0 +set ROOTDIR_LIB3MF= +set PATH_DOXYGEN=C:\Program Files\doxygen\bin