3 echo ##########################################################################
5 echo ##########################################################################
7 IF NOT DEFINED SAT_DEBUG (
11 SET PRODUCT_BUILD_TYPE=Release
13 set PRODUCT_BUILD_TYPE=Debug
16 if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
17 if NOT exist "%PRODUCT_INSTALL%\include" mkdir %PRODUCT_INSTALL%\include
18 if NOT exist "%PRODUCT_INSTALL%\bin" mkdir %PRODUCT_INSTALL%\bin
20 REM clean BUILD directory
21 if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
25 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%PRODUCT_INSTALL:\=/%
26 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE=%PRODUCT_BUILD_TYPE%
27 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_LIB=ON
28 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_SHARED=ON
29 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BUILD_DYNAMIC=ON
30 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_ACIS=OFF
31 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_FLTK=OFF
32 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_ONELAB_METAMODEL=OFF
33 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PARSER=ON
34 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PETSC=OFF
35 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PRIVATE_API=ON
36 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_CGNS=OFF
37 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_HXT=OFF
38 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_SOLVER=ON
39 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_GMM=ON
40 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_TESTS=OFF
41 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_PLUGINS=OFF
42 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_GENERATOR:STRING="Visual Studio 15 2017 Win64"
43 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DENABLE_BLAS_LAPACK=OFF
44 set MSBUILDDISABLENODEREUSE=1
47 echo *********************************************************************
48 echo *** %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS%
49 echo *********************************************************************
52 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
53 if NOT %ERRORLEVEL% == 0 (
59 echo *********************************************************************
60 echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
61 echo *********************************************************************
64 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
65 if NOT %ERRORLEVEL% == 0 (
66 echo ERROR on msbuild gmsh.vcxproj
71 echo *********************************************************************
72 echo *** installation...
73 echo *********************************************************************
76 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
77 if NOT %ERRORLEVEL% == 0 (
78 echo ERROR on msbuild INSTALL.vcxproj
83 echo *********************************************************************
84 echo *** installation Headers...
85 echo *********************************************************************
87 msbuild /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 /p:BuildProjectReferences=false get_headers.vcxproj
88 if NOT %ERRORLEVEL% == 0 (
89 echo ERROR on msbuild get_headers.vcxproj
93 copy /Y /B %BUILD_DIR%\%PRODUCT_BUILD_TYPE%\gmsh.lib %PRODUCT_INSTALL%\bin\gmsh.lib
94 copy /Y /B %BUILD_DIR%\%PRODUCT_BUILD_TYPE%\gmsh.exp %PRODUCT_INSTALL%\bin\gmsh.exp
96 SETLOCAL ENABLEDELAYEDEXPANSION
97 FOR %%f IN (gmsh.h gmsh.h_cwrap gmshc.h) do (
99 copy /Y %SOURCE_DIR%\api\%%f %PRODUCT_INSTALL%\include\%X%
103 cd %BUILD_DIR%\Headers\gmsh
104 SETLOCAL ENABLEDELAYEDEXPANSION
105 FOR %%f IN (*.h) do (
107 copy /Y %SOURCE_DIR%\api\%%f %PRODUCT_INSTALL%\include\%X%
111 cd %PRODUCT_INSTALL%\include\gmsh
112 SETLOCAL ENABLEDELAYEDEXPANSION
113 FOR %%f IN (*.h) do (
115 copy /Y %PRODUCT_INSTALL%\include\gmsh\%%f %PRODUCT_INSTALL%\include\%X%
119 REM these two files need to be moved to bin, adding bin directory to PATH does not help.
120 cp %PRODUCT_INSTALL%\lib\gmsh.py %PRODUCT_INSTALL%\bin\gmsh.py
121 cp %PRODUCT_INSTALL%\lib\gmsh.dll %PRODUCT_INSTALL%\bin\gmsh.dll