3 echo ##########################################################################
4 echo Installing HOMARD %VERSION%
5 echo ##########################################################################
7 IF NOT DEFINED SAT_DEBUG (
11 IF NOT DEFINED CMAKE_GENERATOR (
12 SET CMAKE_GENERATOR="Visual Studio 15 2017 Win64"
15 SET PRODUCT_BUILD_TYPE=Release
17 set PRODUCT_BUILD_TYPE=Debug
19 if NOT exist "%PRODUCT_INSTALL%" mkdir %PRODUCT_INSTALL%
20 REM clean BUILD directory
21 if exist "%BUILD_DIR%" rmdir /Q /S %BUILD_DIR%
23 set MEDFILE_SOURCE_DIR=%SOURCE_DIR:HOMARD=medfile%
24 SET MEDFILE_BUILD_DIR=%BUILD_DIR%\BUILD\MEDFILE
25 set MEDFILE_INSTALL_DIR=%BUILD_DIR%\W64\medfile
27 SET HOMARD_BUILD_DIR=%BUILD_DIR%\BUILD\HOMARD
28 SET HOMARD_GUI_BUILD_DIR=%HOMARD_BUILD_DIR%\GUI
29 SET HOMARD_TOOL_SOURCE_DIR=%SOURCE_DIR%\src\tool
30 SET HOMARD_TOOL_BUILD_DIR=%HOMARD_BUILD_DIR%\tool
32 mkdir %MEDFILE_BUILD_DIR%
33 mkdir %MEDFILE_INSTALL_DIR%
34 mkdir %HOMARD_BUILD_DIR%
35 mkdir %HOMARD_TOOL_BUILD_DIR%
36 mkdir %HOMARD_GUI_BUILD_DIR%
39 echo *** building HOMARD GUI without tool
42 cd %HOMARD_GUI_BUILD_DIR%
44 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX=%PRODUCT_INSTALL%
45 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE=%PRODUCT_BUILD_TYPE%
46 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_EXECUTABLE=%SWIG_ROOT_DIR:\=/%/bin/swig.exe
47 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_HOMARD_TOOL_STANDALONE:BOOL=ON
48 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_GENERATOR=%CMAKE_GENERATOR%
50 set MSBUILDDISABLENODEREUSE=1
53 echo *** cmake %CMAKE_OPTIONS%
54 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %SOURCE_DIR%
55 if NOT %ERRORLEVEL% == 0 (
61 echo *********************************************************************
62 echo *** msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
63 echo *********************************************************************
66 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 ALL_BUILD.vcxproj
67 if NOT %ERRORLEVEL% == 0 (
68 echo ERROR on msbuild ALL_BUILD.vcxproj
73 echo *********************************************************************
74 echo *** installation of HOMARD...
75 echo *********************************************************************
78 msbuild %MAKE_OPTIONS% /p:Configuration=%PRODUCT_BUILD_TYPE% /p:Platform=x64 INSTALL.vcxproj
79 if NOT %ERRORLEVEL% == 0 (
80 echo ERROR on msbuild INSTALL.vcxproj
86 SET GFORTRAN_EXE=%MINGW_ROOT_DIR%\bin\gfortran.exe
87 SET PATH=%MINGW_ROOT_DIR%\bin;%PATH%
90 echo *********************************************************************
91 echo *** building MEDFILE
92 echo *********************************************************************
95 cd %MEDFILE_BUILD_DIR%
97 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX:STRING=%MEDFILE_INSTALL_DIR:\=/%
98 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE:STRING=%PRODUCT_BUILD_TYPE%
99 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DMEDFILE_BUILD_STATIC_LIBS:BOOL=OFF
100 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DMEDFILE_BUILD_SHARED_LIBS:BOOL=ON
101 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DHDF5_ROOT_DIR:STRING=%HDF5_ROOT_DIR:\=/%
102 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DUSE_MEDINT_TYPE:STRING="long long"
103 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_Fortran_COMPILER=%MINGW_ROOT_DIR:\=/%/bin/gfortran.exe
104 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_EXE_LINKER_FLAGS="-Wl,--allow-multiple-definition"
105 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_SH="CMAKE_SH-NOTFOUND"
106 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_Fortran_FLAGS="-g -O2 -ffixed-line-length-none"
107 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DMEDFILE_USE_MPI:BOOL=OFF
108 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_GENERATOR="MinGW Makefiles"
111 echo *********************************************************************
112 echo *** cmake %CMAKE_OPTIONS% %MEDFILE_SOURCE_DIR%
113 echo *********************************************************************
115 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %MEDFILE_SOURCE_DIR%
116 if NOT %ERRORLEVEL% == 0 (
117 echo "ERROR on cmake: failed to run cmake for product MEDFILE..."
123 echo *********************************************************************
124 echo *** Compilation of MEDFILE with mingw32-make
125 echo *********************************************************************
128 if NOT %ERRORLEVEL% == 0 (
129 echo ERROR on mingw32-make: failed to compile MEDFILE Tool...
134 echo *********************************************************************
135 echo *** Installation of MEDFILE Tool with mingw32-make install...
136 echo *********************************************************************
139 if NOT %ERRORLEVEL% == 0 (
140 echo ERROR on mingw32-make install: failed to install MEDFILE...
144 set MED3HOME=%MEDFILE_INSTALL_DIR%
145 set MED2HOME=%MEDFILE_INSTALL_DIR%
146 set MEDFILE_ROOT_DIR=%MEDFILE_INSTALL_DIR%
147 set PATH=%MEDFILE_INSTALL_DIR%\bin;%PATH%
148 set PATH=%MEDFILE_INSTALL_DIR%\lib;%PATH%
152 echo *** building HOMARD tool
155 cd %HOMARD_TOOL_BUILD_DIR%
157 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_INSTALL_PREFIX=%PRODUCT_INSTALL%\bin\salome\tool
158 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_BUILD_TYPE=%PRODUCT_BUILD_TYPE%
159 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DBUILD_HOMARD_TOOL_STANDALONE:BOOL=ON
160 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSWIG_EXECUTABLE=%SWIG_ROOT_DIR:\=/%/bin/swig.exe
161 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_Fortran_COMPILER=%MINGW_ROOT_DIR:\=/%/bin/gfortran.exe
162 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_CXX_COMPILER=%MINGW_ROOT_DIR:\=/%/bin/g++.exe
163 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_C_COMPILER=%MINGW_ROOT_DIR:\=/%/bin/gcc.exe
164 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_EXE_LINKER_FLAGS="-Wl,--allow-multiple-definition"
165 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_SH="CMAKE_SH-NOTFOUND"
166 SET CMAKE_OPTIONS=%CMAKE_OPTIONS% -DCMAKE_GENERATOR="MinGW Makefiles"
167 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSALOME_INSTALL_LIBS=%PRODUCT_INSTALL:\=/%/lib/salome/tool
168 set CMAKE_OPTIONS=%CMAKE_OPTIONS% -DSALOME_INSTALL_BINS=%PRODUCT_INSTALL:\=/%/bin/salome/tool
171 echo *********************************************************************
172 echo *** cmake %CMAKE_OPTIONS% %HOMARD_TOOL_SOURCE_DIR%
173 echo *********************************************************************
175 %CMAKE_ROOT%\bin\cmake %CMAKE_OPTIONS% %HOMARD_TOOL_SOURCE_DIR%
176 if NOT %ERRORLEVEL% == 0 (
177 echo "ERROR on cmake: failed to run cmake for product HOMARD Tool..."
182 echo *********************************************************************
183 echo *** Compilation of HDF5 with mingw32-make
184 echo *********************************************************************
187 if NOT %ERRORLEVEL% == 0 (
188 echo ERROR on mingw32-make: failed to compile HOMARD Tool...
193 echo *********************************************************************
194 echo *** Installation of HOMARD TOOL with mingw32-make install...
195 echo *********************************************************************
198 if NOT %ERRORLEVEL% == 0 (
199 echo ERROR on mingw32-make install: failed to install HOMARD...
203 REM finally embed required libraries
204 cp %MEDFILE_INSTALL_DIR%\lib\libmedC.dll %PRODUCT_INSTALL%\bin\salome\tool\libmedC.dll
205 cp %MEDFILE_INSTALL_DIR%\lib\libmedfwrap.dll %PRODUCT_INSTALL%\bin\salome\tool\libmedfwrap.dll
206 cp %MINGW_ROOT_DIR%\bin\libgcc_s_seh-1.dll %PRODUCT_INSTALL%\bin\salome\tool\libgcc_s_seh-1.dll
207 cp %MINGW_ROOT_DIR%\bin\libwinpthread-1.dll %PRODUCT_INSTALL%\bin\salome\tool\libwinpthread-1.dll
208 cp %MINGW_ROOT_DIR%\bin\libstdc++-6.dll %PRODUCT_INSTALL%\bin\salome\tool\libstdc++-6.dll
209 cp %MINGW_ROOT_DIR%\bin\libquadmath-0.dll %PRODUCT_INSTALL%\bin\salome\tool\libquadmath-0.dll