3 echo ##########################################################################
5 echo ##########################################################################
7 IF NOT DEFINED SAT_DEBUG (
11 IF NOT DEFINED CMAKE_GENERATOR (
12 SET CMAKE_GENERATOR="Visual Studio 15 2017"
16 SET PRODUCT_BUILD_TYPE=Release
17 IF DEFINED SAT_CMAKE_BUILD_TYPE (
18 SET PRODUCT_BUILD_TYPE=%SAT_CMAKE_BUILD_TYPE%
22 set PRODUCT_BUILD_TYPE=Debug
26 if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
27 if NOT exist "%PRODUCT_INSTALL%\include" mkdir %PRODUCT_INSTALL%\include
28 if NOT exist "%PRODUCT_INSTALL%\bin" mkdir %PRODUCT_INSTALL%\bin
30 REM clean BUILD directory
31 if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
35 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%PRODUCT_INSTALL:\=/%
36 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE=%PRODUCT_BUILD_TYPE%
37 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_LIB=ON
38 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_SHARED=%BUILD_SHARED%
39 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_DYNAMIC=%BUILD_SHARED%
40 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_ACIS=OFF
41 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_FLTK=OFF
42 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_ONELAB_METAMODEL=OFF
43 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PARSER=ON
44 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PETSC=OFF
45 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PRIVATE_API=ON
46 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_CGNS=OFF
47 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_TESTS=OFF
48 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PLUGINS=OFF
49 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -G %CMAKE_GENERATOR%
50 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -A x64
52 set MSBUILDDISABLENODEREUSE=1
55 echo *********************************************************************
56 echo *** %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS%
57 echo *********************************************************************
60 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
61 if NOT %ERRORLEVEL% == 0 (
67 echo *********************************************************************
68 echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
69 echo *********************************************************************
72 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
73 if NOT %ERRORLEVEL% == 0 (
74 echo ERROR on msbuild gmsh.vcxproj
79 echo *********************************************************************
80 echo *** installation...
81 echo *********************************************************************
84 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
85 if NOT %ERRORLEVEL% == 0 (
86 echo ERROR on msbuild INSTALL.vcxproj
91 echo *********************************************************************
92 echo *** installation Headers...
93 echo *********************************************************************
95 msbuild /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 /p:BuildProjectReferences=false get_headers.vcxproj
96 if NOT %ERRORLEVEL% == 0 (
97 echo ERROR on msbuild get_headers.vcxproj
101 copy /Y /B %BUILD_DIR%\%PRODUCT_BUILD_TYPE%\*.lib %PRODUCT_INSTALL%\bin
102 copy /Y /B %BUILD_DIR%\%PRODUCT_BUILD_TYPE%\*.exp %PRODUCT_INSTALL%\bin
104 SETLOCAL ENABLEDELAYEDEXPANSION
105 FOR %%f IN (gmsh.h gmsh.h_cwrap gmshc.h) do (
107 copy /Y %SOURCE_DIR%\api\%%f %PRODUCT_INSTALL%\include\%X%
111 cd %BUILD_DIR%\Headers\gmsh
112 SETLOCAL ENABLEDELAYEDEXPANSION
113 FOR %%f IN (*.h) do (
115 copy /Y %SOURCE_DIR%\api\%%f %PRODUCT_INSTALL%\include\%X%
119 cd %PRODUCT_INSTALL%\include\gmsh
120 SETLOCAL ENABLEDELAYEDEXPANSION
121 FOR %%f IN (*.h) do (
123 copy /Y %PRODUCT_INSTALL%\include\gmsh\%%f %PRODUCT_INSTALL%\include\%X%
127 REM these two files need to be moved to bin, adding bin directory to PATH does not help.
128 cp %PRODUCT_INSTALL%\lib\gmsh.py %PRODUCT_INSTALL%\bin\gmsh.py
129 if %SAT_DEBUG% == 0 (
130 cp %PRODUCT_INSTALL%\lib\gmsh.dll %PRODUCT_INSTALL%\bin\gmsh.dll