1 diff -Naur netgen-5.3.1_orig/CMakeLists.txt netgen-5.3.1_modif/CMakeLists.txt
2 --- netgen-5.3.1_orig/CMakeLists.txt 1970-01-01 03:00:00.000000000 +0300
3 +++ netgen-5.3.1_modif/CMakeLists.txt 2019-01-22 12:34:45.926401100 +0300
5 +# Copyright (C) 2016 OPEN CASCADE
7 +# This library is free software; you can redistribute it and/or
8 +# modify it under the terms of the GNU Lesser General Public
9 +# License as published by the Free Software Foundation; either
10 +# version 2.1 of the License, or (at your option) any later version.
12 +# This library is distributed in the hope that it will be useful,
13 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
14 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 +# Lesser General Public License for more details.
17 +# You should have received a copy of the GNU Lesser General Public
18 +# License along with this library; if not, write to the Free Software
19 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 +CMAKE_MINIMUM_REQUIRED(VERSION 2.8.8 FATAL_ERROR)
24 +INCLUDE(CMakeDependentOption)
26 +PROJECT(netgen C CXX)
28 +# Ensure a proper linker behavior:
29 +CMAKE_POLICY(SET CMP0003 NEW)
33 +# Project name, upper case
34 +STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC)
36 +SET(${PROJECT_NAME_UC}_MAJOR_VERSION 5)
37 +SET(${PROJECT_NAME_UC}_MINOR_VERSION 3)
38 +SET(${PROJECT_NAME_UC}_PATCH_VERSION 1)
39 +SET(${PROJECT_NAME_UC}_VERSION
40 + ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
42 +# Common CMake macros
43 +# ===================
44 +LIST(APPEND CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake")
46 +INCLUDE(FindPLATFORM)
50 +# Detect ZLIB on Windows
52 + SET(ZLIB_ROOT_DIR $ENV{ZLIB_ROOT_DIR})
53 + IF(EXISTS ${ZLIB_ROOT_DIR})
54 + SET(ZLIB_ROOT ${ZLIB_ROOT_DIR})
56 + IF (NOT ${ZLIB_FOUND})
57 + MESSAGE(FATAL_ERROR "We absolutely need the zlib library, please check zlib installation !")
60 + MESSAGE(FATAL_ERROR "We absolutely need the zlib library, please define ZLIB_ROOT_DIR !")
67 +ADD_DEFINITIONS(-DNO_PARALLEL_THREADS)
68 +ADD_DEFINITIONS(-DOCCGEOMETRY)
71 +SET(NETGEN_INSTALL_BINS "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Install path: netgen binaries")
72 +SET(NETGEN_INSTALL_LIBS "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Install path: netgen libs")
73 +SET(NETGEN_INSTALL_HEADERS "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Install path: netgen headers")
74 +SET(NETGEN_INSTALL_CMAKE "${CMAKE_INSTALL_PREFIX}/cmake" CACHE PATH "Install path: netgen cmake files")
77 +ADD_SUBDIRECTORY(nglib)
78 +ADD_SUBDIRECTORY(cmake)
80 diff -Naur netgen-5.3.1_orig/cmake/CMakeLists.txt netgen-5.3.1_modif/cmake/CMakeLists.txt
81 --- netgen-5.3.1_orig/cmake/CMakeLists.txt 1970-01-01 03:00:00.000000000 +0300
82 +++ netgen-5.3.1_modif/cmake/CMakeLists.txt 2019-01-22 12:34:45.946401400 +0300
84 +# Copyright (C) 2016 OPEN CASCADE
86 +# This library is free software; you can redistribute it and/or
87 +# modify it under the terms of the GNU Lesser General Public
88 +# License as published by the Free Software Foundation; either
89 +# version 2.1 of the License, or (at your option) any later version.
91 +# This library is distributed in the hope that it will be useful,
92 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
93 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
94 +# Lesser General Public License for more details.
96 +# You should have received a copy of the GNU Lesser General Public
97 +# License along with this library; if not, write to the Free Software
98 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
100 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
104 + INSTALL(FILES FindZLIB.cmake DESTINATION ${NETGEN_INSTALL_CMAKE})
106 \ No newline at end of file
107 diff -Naur netgen-5.3.1_orig/cmake/FindCAS.cmake netgen-5.3.1_modif/cmake/FindCAS.cmake
108 --- netgen-5.3.1_orig/cmake/FindCAS.cmake 1970-01-01 03:00:00.000000000 +0300
109 +++ netgen-5.3.1_modif/cmake/FindCAS.cmake 2019-01-22 12:34:45.955403500 +0300
111 +# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
113 +# This library is free software; you can redistribute it and/or
114 +# modify it under the terms of the GNU Lesser General Public
115 +# License as published by the Free Software Foundation; either
116 +# version 2.1 of the License.
118 +# This library is distributed in the hope that it will be useful,
119 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
120 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
121 +# Lesser General Public License for more details.
123 +# You should have received a copy of the GNU Lesser General Public
124 +# License along with this library; if not, write to the Free Software
125 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
127 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
130 +SET(CASROOT $ENV{CASROOT})
131 +ADD_DEFINITIONS(-DLIN -DLINTEL -DCSFDB)
132 +ADD_DEFINITIONS(-DNo_exception)
133 +ADD_DEFINITIONS(-DHAVE_LIMITS_H)
135 +IF(CMAKE_SIZEOF_VOID_P STREQUAL 8)
136 + ADD_DEFINITIONS(-D_OCC64)
137 +ENDIF(CMAKE_SIZEOF_VOID_P STREQUAL 8)
140 + FIND_LIBRARY(Xmu Xmu)
142 + SET(CAS_LDPATH ${Xmu})
147 + IF(CMAKE_BUILD_TYPE STREQUAL Debug)
148 + SET(CASROOT_LIBDIR ${CASROOT}/win32/libd ${CASROOT}/win64/vc10/lib ${CASROOT}/win64/vc14/libd)
149 + ELSE(CMAKE_BUILD_TYPE STREQUAL Release)
150 + SET(CASROOT_LIBDIR ${CASROOT}/win32/lib ${CASROOT}/win64/vc10/lib ${CASROOT}/win64/vc14/lib)
151 + ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
153 + SET(CASROOT_LIBDIR ${CASROOT}/lib)
156 +SET(_CAS_VERSION_FILE_NAME Standard_Version.hxx)
158 +# Include directories:
159 +FIND_PATH(CAS_INCLUDE_DIRS ${_CAS_VERSION_FILE_NAME} PATHS ${CASROOT} PATH_SUFFIXES include/opencascade)
160 +IF(CAS_INCLUDE_DIRS)
162 + FIND_PATH(CAS_INCLUDE_DIRS ${_CAS_VERSION_FILE_NAME} PATHS ${CASROOT} PATH_SUFFIXES include inc)
166 +FIND_LIBRARY(BinLPlugin BinLPlugin PATHS ${CASROOT_LIBDIR})
167 +FIND_LIBRARY(BinPlugin BinPlugin PATHS ${CASROOT_LIBDIR})
168 +FIND_LIBRARY(BinTObjPlugin BinTObjPlugin PATHS ${CASROOT_LIBDIR})
169 +FIND_LIBRARY(BinXCAFPlugin BinXCAFPlugin PATHS ${CASROOT_LIBDIR})
170 +FIND_LIBRARY(FWOSPlugin FWOSPlugin PATHS ${CASROOT_LIBDIR})
172 +FIND_LIBRARY(PTKernel PTKernel PATHS ${CASROOT_LIBDIR})
173 +FIND_LIBRARY(StdLPlugin StdLPlugin PATHS ${CASROOT_LIBDIR})
174 +FIND_LIBRARY(StdPlugin StdPlugin PATHS ${CASROOT_LIBDIR})
175 +FIND_LIBRARY(TKAdvTools TKAdvTools PATHS ${CASROOT_LIBDIR})
176 +FIND_LIBRARY(TKBin TKBin PATHS ${CASROOT_LIBDIR})
177 +FIND_LIBRARY(TKBinL TKBinL PATHS ${CASROOT_LIBDIR})
178 +FIND_LIBRARY(TKBinTObj TKBinTObj PATHS ${CASROOT_LIBDIR})
179 +FIND_LIBRARY(TKBinXCAF TKBinXCAF PATHS ${CASROOT_LIBDIR})
180 +FIND_LIBRARY(TKBO TKBO PATHS ${CASROOT_LIBDIR})
181 +FIND_LIBRARY(TKBool TKBool PATHS ${CASROOT_LIBDIR})
182 +FIND_LIBRARY(TKBRep TKBRep PATHS ${CASROOT_LIBDIR})
183 +FIND_LIBRARY(TKCAF TKCAF PATHS ${CASROOT_LIBDIR})
184 +FIND_LIBRARY(TKCDF TKCDF PATHS ${CASROOT_LIBDIR})
185 +FIND_LIBRARY(TKernel TKernel PATHS ${CASROOT_LIBDIR})
186 +FIND_LIBRARY(TKFeat TKFeat PATHS ${CASROOT_LIBDIR})
187 +FIND_LIBRARY(TKFillet TKFillet PATHS ${CASROOT_LIBDIR})
188 +FIND_LIBRARY(TKG2d TKG2d PATHS ${CASROOT_LIBDIR})
189 +FIND_LIBRARY(TKG3d TKG3d PATHS ${CASROOT_LIBDIR})
190 +FIND_LIBRARY(TKGeomAlgo TKGeomAlgo PATHS ${CASROOT_LIBDIR})
191 +FIND_LIBRARY(TKGeomBase TKGeomBase PATHS ${CASROOT_LIBDIR})
192 +FIND_LIBRARY(TKHLR TKHLR PATHS ${CASROOT_LIBDIR})
193 +FIND_LIBRARY(TKIGES TKIGES PATHS ${CASROOT_LIBDIR})
194 +FIND_LIBRARY(TKLCAF TKLCAF PATHS ${CASROOT_LIBDIR})
195 +FIND_LIBRARY(TKMath TKMath PATHS ${CASROOT_LIBDIR})
196 +FIND_LIBRARY(TKMesh TKMesh PATHS ${CASROOT_LIBDIR})
197 +FIND_LIBRARY(TKMeshVS TKMeshVS PATHS ${CASROOT_LIBDIR})
198 +FIND_LIBRARY(TKNIS TKNIS PATHS ${CASROOT_LIBDIR})
199 +FIND_LIBRARY(TKOffset TKOffset PATHS ${CASROOT_LIBDIR})
200 +FIND_LIBRARY(TKOpenGl TKOpenGl PATHS ${CASROOT_LIBDIR})
201 +FIND_LIBRARY(TKPCAF TKPCAF PATHS ${CASROOT_LIBDIR})
202 +FIND_LIBRARY(TKPLCAF TKPLCAF PATHS ${CASROOT_LIBDIR})
203 +FIND_LIBRARY(TKPrim TKPrim PATHS ${CASROOT_LIBDIR})
204 +FIND_LIBRARY(TKPShape TKPShape PATHS ${CASROOT_LIBDIR})
205 +FIND_LIBRARY(TKService TKService PATHS ${CASROOT_LIBDIR})
206 +FIND_LIBRARY(TKShapeSchema TKShapeSchema PATHS ${CASROOT_LIBDIR})
207 +FIND_LIBRARY(TKShHealing TKShHealing PATHS ${CASROOT_LIBDIR})
208 +FIND_LIBRARY(TKStdLSchema TKStdLSchema PATHS ${CASROOT_LIBDIR})
209 +FIND_LIBRARY(TKStdSchema TKStdSchema PATHS ${CASROOT_LIBDIR})
210 +FIND_LIBRARY(TKSTEP TKSTEP PATHS ${CASROOT_LIBDIR})
211 +FIND_LIBRARY(TKSTEP209 TKSTEP209 PATHS ${CASROOT_LIBDIR})
212 +FIND_LIBRARY(TKSTEPAttr TKSTEPAttr PATHS ${CASROOT_LIBDIR})
213 +FIND_LIBRARY(TKSTEPBase TKSTEPBase PATHS ${CASROOT_LIBDIR})
214 +FIND_LIBRARY(TKSTL TKSTL PATHS ${CASROOT_LIBDIR})
215 +FIND_LIBRARY(TKTObj TKTObj PATHS ${CASROOT_LIBDIR})
216 +FIND_LIBRARY(TKTopAlgo TKTopAlgo PATHS ${CASROOT_LIBDIR})
217 +FIND_LIBRARY(TKV2d TKV2d PATHS ${CASROOT_LIBDIR})
218 +FIND_LIBRARY(TKV3d TKV3d PATHS ${CASROOT_LIBDIR})
219 +FIND_LIBRARY(TKVRML TKVRML PATHS ${CASROOT_LIBDIR})
220 +FIND_LIBRARY(TKXCAF TKXCAF PATHS ${CASROOT_LIBDIR})
221 +FIND_LIBRARY(TKXCAFSchema TKXCAFSchema PATHS ${CASROOT_LIBDIR})
222 +FIND_LIBRARY(TKXDEIGES TKXDEIGES PATHS ${CASROOT_LIBDIR})
223 +FIND_LIBRARY(TKXDESTEP TKXDESTEP PATHS ${CASROOT_LIBDIR})
224 +FIND_LIBRARY(TKXMesh TKXMesh PATHS ${CASROOT_LIBDIR})
225 +FIND_LIBRARY(TKXml TKXml PATHS ${CASROOT_LIBDIR})
226 +FIND_LIBRARY(TKXmlL TKXmlL PATHS ${CASROOT_LIBDIR})
227 +FIND_LIBRARY(TKXmlTObj TKXmlTObj PATHS ${CASROOT_LIBDIR})
228 +FIND_LIBRARY(TKXmlXCAF TKXmlXCAF PATHS ${CASROOT_LIBDIR})
229 +FIND_LIBRARY(TKXSBase TKXSBase PATHS ${CASROOT_LIBDIR})
230 +FIND_LIBRARY(XCAFPlugin XCAFPlugin PATHS ${CASROOT_LIBDIR})
231 +FIND_LIBRARY(XmlLPlugin XmlLPlugin PATHS ${CASROOT_LIBDIR})
232 +FIND_LIBRARY(XmlPlugin XmlPlugin PATHS ${CASROOT_LIBDIR})
233 +FIND_LIBRARY(XmlTObjPlugin XmlTObjPlugin PATHS ${CASROOT_LIBDIR})
234 +FIND_LIBRARY(XmlXCAFPlugin XmlXCAFPlugin PATHS ${CASROOT_LIBDIR})
236 +SET(CAS_KERNEL ${TKernel} ${TKMath})
237 +SET(CAS_OCAF ${TKernel} ${TKMath} ${TKCDF} ${TKLCAF})
238 +SET(CAS_VIEWER ${TKService} ${TKV3d} ${TKG3d} ${TKGeomBase} ${TKBRep})
239 +SET(CAS_OCAFVIS ${TKCAF} ${TKBRep} ${TKG2d})
240 +SET(CAS_MODELER ${TKG3d} ${TKGeomBase} ${TKGeomAlgo} ${TKBRep} ${TKTopAlgo} ${TKG2d})
242 +SET(TKV3d_EA ${TKernel} ${TKMath} ${TKV3d})
243 +SET(TKBool_EA ${TKernel} ${TKMath} ${TKBRep} ${TKG2d} ${TKG3d} ${TKGeomBase} ${TKGeomAlgo} ${TKTopAlgo} ${TKBool})
244 +SET(TKBRep_EA ${TKernel} ${TKMath} ${TKBRep})
245 +SET(TKIGES_EA ${TKernel} ${TKMath} ${TKXSBase} ${TKBRep} ${TKIGES})
246 +SET(TKSTEP_EA ${TKernel} ${TKMath} ${TKXSBase} ${TKBRep} ${TKSTEP})
247 +SET(TKSTL_EA ${TKernel} ${TKMath} ${TKSTL})
248 +SET(TKCAF_EA ${TKPrim} ${TKCAF})
250 +SET(TKV3d ${TKV3d_EA})
251 +SET(TKBool ${TKBool_EA})
252 +SET(TKBRep ${TKBRep_EA})
253 +SET(TKIGES ${TKIGES_EA})
254 +SET(TKSTEP ${TKSTEP_EA})
255 +SET(TKSTL ${TKSTL_EA})
256 +SET(TKCAF ${TKCAF_EA})
259 +SET(OCCLIBS ${CAS_LDPATH})
260 +SET(OCCLIBS ${OCCLIBS} ${TKernel} ${TKGeomBase} ${TKMath} ${TKG2d} ${TKG3d} ${TKXSBase} ${TKOffset} ${TKFillet} ${TKShHealing})
261 +SET(OCCLIBS ${OCCLIBS} ${TKMesh} ${TKMeshVS} ${TKTopAlgo} ${TKGeomAlgo} ${TKBool} ${TKPrim} ${TKBO} ${TKIGES} ${TKBRep})
262 +SET(OCCLIBS ${OCCLIBS} ${TKSTEPBase} ${TKSTEP} ${TKSTL} ${TKSTEPAttr} ${TKSTEP209} ${TKXDESTEP} ${TKXDEIGES} ${TKXCAF} ${TKLCAF})
263 \ No newline at end of file
264 diff -Naur netgen-5.3.1_orig/cmake/FindPLATFORM.cmake netgen-5.3.1_modif/cmake/FindPLATFORM.cmake
265 --- netgen-5.3.1_orig/cmake/FindPLATFORM.cmake 1970-01-01 03:00:00.000000000 +0300
266 +++ netgen-5.3.1_modif/cmake/FindPLATFORM.cmake 2019-01-22 12:34:45.962402900 +0300
268 +# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
270 +# This library is free software; you can redistribute it and/or
271 +# modify it under the terms of the GNU Lesser General Public
272 +# License as published by the Free Software Foundation; either
273 +# version 2.1 of the License.
275 +# This library is distributed in the hope that it will be useful,
276 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
277 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
278 +# Lesser General Public License for more details.
280 +# You should have received a copy of the GNU Lesser General Public
281 +# License along with this library; if not, write to the Free Software
282 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
284 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
287 +MARK_AS_ADVANCED(ISSUE)
288 +FIND_FILE(ISSUE issue /etc)
296 + SET(MACHINE WINDOWS)
298 + SET(MACHINE PCLINUX)
301 +SET(CMAKE_INSTALL_PREFIX_ENV $ENV{CMAKE_INSTALL_PREFIX})
302 +IF(CMAKE_INSTALL_PREFIX_ENV)
303 + SET(CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX_ENV} CACHE PATH "installation prefix" FORCE)
304 +ENDIF(CMAKE_INSTALL_PREFIX_ENV)
306 +IF(NOT CMAKE_BUILD_TYPE)
307 + SET(CMAKE_BUILD_TYPE $ENV{CMAKE_BUILD_TYPE})
308 +ENDIF(NOT CMAKE_BUILD_TYPE)
310 +IF(NOT CMAKE_BUILD_TYPE)
311 + SET(CMAKE_BUILD_TYPE Release)
312 +ENDIF(NOT CMAKE_BUILD_TYPE)
317 + SET(NAMES ACCEPT_SALOME_WARNINGS ACCEPT_${MODULE}_WARNINGS I_AM_A_TROLL_I_DO_NOT_FIX_${MODULE}_WARNINGS)
318 + FOREACH(name ${NAMES})
319 + SET(VAL $ENV{${name}})
320 + IF(X${VAL} STREQUAL X0)
322 + ENDIF(X${VAL} STREQUAL X0)
323 + IF(X${VAL} STREQUAL X1)
324 + SET(ADD_WERROR OFF)
325 + ENDIF(X${VAL} STREQUAL X1)
326 + ENDFOREACH(name ${NAMES})
328 + SET(CMAKE_C_FLAGS "-Werror")
329 + SET(CMAKE_CXX_FLAGS "-Werror")
333 +IF(CMAKE_BUILD_TYPE)
335 + MARK_AS_ADVANCED(CLEAR CMAKE_CONFIGURATION_TYPES)
336 + SET(CMAKE_CONFIGURATION_TYPES ${CMAKE_BUILD_TYPE} CACHE STRING "compilation types" FORCE)
338 + IF(CMAKE_BUILD_TYPE STREQUAL Debug)
339 + SET(CMAKE_C_FLAGS_DEBUG "-g")
340 + SET(CMAKE_CXX_FLAGS_DEBUG "-g")
341 + ENDIF(CMAKE_BUILD_TYPE STREQUAL Debug)
342 + IF(CMAKE_BUILD_TYPE STREQUAL Release)
343 + SET(CMAKE_C_FLAGS_RELEASE "-O1 -DNDEBUG")
344 + SET(CMAKE_CXX_FLAGS_RELEASE "-O1 -DNDEBUG")
345 + ENDIF(CMAKE_BUILD_TYPE STREQUAL Release)
347 +ENDIF(CMAKE_BUILD_TYPE)
349 +SET(PLATFORM_CPPFLAGS)
350 +SET(PLATFORM_LDFLAGS)
351 +SET(PLATFORM_LIBADD)
353 + ADD_DEFINITIONS(-D_CRT_SECURE_NO_WARNINGS) # To disable windows warnings for strcpy, fopen, ...
354 + ADD_DEFINITIONS(-D_SCL_SECURE_NO_WARNINGS) # To disable windows warnings std::copy, std::transform, ...
355 + ADD_DEFINITIONS(-DWNT)
356 + ADD_DEFINITIONS(-DPPRO_NT) # For medfile
357 + ADD_DEFINITIONS(-D_USE_MATH_DEFINES) # At least for MEDMEM
358 + ADD_DEFINITIONS(-D_WIN32_WINNT=0x0501) # Windows 2000 or later API is required
359 + SET(PLATFORM_LIBADD ${PLATFORM_LIBADD} Ws2_32.lib)
360 + SET(PLATFORM_LIBADD ${PLATFORM_LIBADD} Userenv.lib) # At least for GEOM suit
362 + SET(PLATFORM_LIBADD ${PLATFORM_LIBADD} -ldl)
364 \ No newline at end of file
365 diff -Naur netgen-5.3.1_orig/cmake/FindZLIB.cmake netgen-5.3.1_modif/cmake/FindZLIB.cmake
366 --- netgen-5.3.1_orig/cmake/FindZLIB.cmake 1970-01-01 03:00:00.000000000 +0300
367 +++ netgen-5.3.1_modif/cmake/FindZLIB.cmake 2019-01-22 12:34:45.972400600 +0300
369 +# Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
371 +# This library is free software; you can redistribute it and/or
372 +# modify it under the terms of the GNU Lesser General Public
373 +# License as published by the Free Software Foundation; either
374 +# version 2.1 of the License.
376 +# This library is distributed in the hope that it will be useful,
377 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
378 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
379 +# Lesser General Public License for more details.
381 +# You should have received a copy of the GNU Lesser General Public
382 +# License along with this library; if not, write to the Free Software
383 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
385 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
390 +# Search in ZLIB_ROOT_DIR first
392 + SET(_ZLIB_SEARCH_ROOT PATHS ${ZLIB_ROOT_DIR} NO_DEFAULT_PATH)
393 + list(APPEND _ZLIB_SDIRS _ZLIB_SEARCH_ROOT)
396 +SET(ZLIB_NAMES z zlib zdll zlib1 zlibd zlibd1 zlib1d)
398 +# Try each search configuration.
399 +FOREACH(search ${_ZLIB_SDIRS})
400 + FIND_PATH(ZLIB_INCLUDE_DIR NAMES zlib.h ${${search}} PATH_SUFFIXES include)
401 + FIND_LIBRARY(ZLIB_LIBRARY NAMES ${ZLIB_NAMES} ${search} PATH_SUFFIXES lib)
404 +MARK_AS_ADVANCED(ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
407 +INCLUDE(FindPackageHandleStandardArgs)
408 +FIND_PACKAGE_HANDLE_STANDARD_ARGS(ZLIB REQUIRED_VARS ZLIB_LIBRARY ZLIB_INCLUDE_DIR)
411 + SET(ZLIB_INCLUDE_DIRS ${ZLIB_INCLUDE_DIR})
412 + SET(ZLIB_LIBRARIES ${ZLIB_LIBRARY})
414 diff -Naur netgen-5.3.1_orig/libsrc/csg/specpoin.hpp netgen-5.3.1_modif/libsrc/csg/specpoin.hpp
415 --- netgen-5.3.1_orig/libsrc/csg/specpoin.hpp 2014-08-29 12:54:06.000000000 +0300
416 +++ netgen-5.3.1_modif/libsrc/csg/specpoin.hpp 2019-01-22 12:34:45.978401300 +0300
418 /* Date: 01. Okt. 95 */
419 /**************************************************************************/
421 +#include <myadt.hpp>
426 - extern DLL_HEADER MeshingParameters mparam;
427 + DLL_HEADER extern MeshingParameters mparam;
431 diff -Naur netgen-5.3.1_orig/libsrc/general/template.hpp netgen-5.3.1_modif/libsrc/general/template.hpp
432 --- netgen-5.3.1_orig/libsrc/general/template.hpp 2014-08-29 12:54:06.000000000 +0300
433 +++ netgen-5.3.1_modif/libsrc/general/template.hpp 2019-01-22 12:34:46.006400400 +0300
435 DLL_HEADER extern ostream * testout;
437 /** use instead of cout */
438 -extern ostream * mycout;
439 +DLL_HEADER extern ostream * mycout;
441 /** error output stream */
442 -extern ostream * myerr;
443 +DLL_HEADER extern ostream * myerr;
445 /** Error messages display.
446 Error messages are displayed by this function */
447 diff -Naur netgen-5.3.1_orig/libsrc/include/mystdlib.h netgen-5.3.1_modif/libsrc/include/mystdlib.h
448 --- netgen-5.3.1_orig/libsrc/include/mystdlib.h 2014-08-29 12:54:04.000000000 +0300
449 +++ netgen-5.3.1_modif/libsrc/include/mystdlib.h 2019-01-22 12:34:46.018400100 +0300
452 # include <pthread.h>
457 # endif // MSVC_EXPRESS
458 diff -Naur netgen-5.3.1_orig/libsrc/interface/nginterface.cpp netgen-5.3.1_modif/libsrc/interface/nginterface.cpp
459 --- netgen-5.3.1_orig/libsrc/interface/nginterface.cpp 2014-08-29 12:54:02.000000000 +0300
460 +++ netgen-5.3.1_modif/libsrc/interface/nginterface.cpp 2019-01-22 12:34:46.030400300 +0300
463 +#ifndef MSVC_EXPRESS
468 +#include <winsock2.h>
469 +#include <winsock.h>
470 +#include <windows.h>
475 #include <mystdlib.h>
477 #include <meshing.hpp>
479 #include "nginterface.h"
480 #include "../visualization/soldata.hpp"
484 // Philippose - 30/01/2009
485 // MSVC Express Edition Support
486 diff -Naur netgen-5.3.1_orig/libsrc/meshing/global.hpp netgen-5.3.1_modif/libsrc/meshing/global.hpp
487 --- netgen-5.3.1_orig/libsrc/meshing/global.hpp 2014-08-29 12:54:06.000000000 +0300
488 +++ netgen-5.3.1_modif/libsrc/meshing/global.hpp 2019-01-22 12:34:46.042401800 +0300
490 /* Date: 01. Okt. 95 */
491 /**************************************************************************/
493 +#include <myadt.hpp>
496 global functions and variables
500 extern Array<int> tets_in_qualclass;
503 + class DLL_HEADER multithreadt
511 - extern volatile multithreadt multithread;
512 + DLL_HEADER extern volatile multithreadt multithread;
514 DLL_HEADER extern string ngdir;
515 extern DebugParameters debugparam;
516 diff -Naur netgen-5.3.1_orig/libsrc/meshing/meshclass.hpp netgen-5.3.1_modif/libsrc/meshing/meshclass.hpp
517 --- netgen-5.3.1_orig/libsrc/meshing/meshclass.hpp 2014-08-29 12:54:06.000000000 +0300
518 +++ netgen-5.3.1_modif/libsrc/meshing/meshclass.hpp 2019-01-22 12:34:46.064400700 +0300
520 { return lockedpoints; }
522 /// Returns number of domains
523 - int GetNDomains() const;
524 + DLL_HEADER int GetNDomains() const;
527 int GetDimension() const
531 /// sets internal tables
532 - void CalcSurfacesOfNode ();
533 + void DLL_HEADER CalcSurfacesOfNode ();
535 /// additional (temporarily) fix points
536 void FixPoints (const BitArray & fixpoints);
537 @@ -390,13 +390,13 @@
539 DLL_HEADER void SetGlobalH (double h);
541 - void SetMinimalH (double h);
542 + void DLL_HEADER SetMinimalH (double h);
544 double MaxHDomain (int dom) const;
546 void SetMaxHDomain (const Array<double> & mhd);
548 - double GetH (const Point3d & p) const;
549 + double DLL_HEADER GetH (const Point3d & p) const;
551 double GetMinH (const Point3d & pmin, const Point3d & pmax);
553 diff -Naur netgen-5.3.1_orig/libsrc/meshing/meshtype.hpp netgen-5.3.1_modif/libsrc/meshing/meshtype.hpp
554 --- netgen-5.3.1_orig/libsrc/meshing/meshtype.hpp 2019-01-22 13:07:09.630603600 +0300
555 +++ netgen-5.3.1_modif/libsrc/meshing/meshtype.hpp 2019-01-22 12:34:46.078402400 +0300
556 @@ -324,19 +324,19 @@
561 + DLL_HEADER Element2d ();
563 - Element2d (int anp);
564 + DLL_HEADER Element2d (int anp);
566 DLL_HEADER Element2d (ELEMENT_TYPE type);
568 - Element2d (int pi1, int pi2, int pi3);
569 + DLL_HEADER Element2d (int pi1, int pi2, int pi3);
571 - Element2d (int pi1, int pi2, int pi3, int pi4);
572 + DLL_HEADER Element2d (int pi1, int pi2, int pi3, int pi4);
574 - ELEMENT_TYPE GetType () const { return typ; }
575 + DLL_HEADER ELEMENT_TYPE GetType () const { return typ; }
577 - void SetType (ELEMENT_TYPE atyp)
578 + DLL_HEADER void SetType (ELEMENT_TYPE atyp)
586 - int GetNP() const { return np; }
587 + DLL_HEADER int GetNP() const { return np; }
590 + DLL_HEADER int GetNV() const
592 if (typ == TRIG || typ == TRIG6)
594 @@ -385,95 +385,95 @@
598 - PointIndex & operator[] (int i) { return pnum[i]; }
599 + DLL_HEADER PointIndex & operator[] (int i) { return pnum[i]; }
601 - const PointIndex & operator[] (int i) const { return pnum[i]; }
602 + DLL_HEADER const PointIndex & operator[] (int i) const { return pnum[i]; }
604 - FlatArray<const PointIndex> PNums () const
605 + DLL_HEADER FlatArray<const PointIndex> PNums () const
606 { return FlatArray<const PointIndex> (np, &pnum[0]); }
609 - PointIndex & PNum (int i) { return pnum[i-1]; }
610 + DLL_HEADER PointIndex & PNum (int i) { return pnum[i-1]; }
612 - const PointIndex & PNum (int i) const { return pnum[i-1]; }
613 + DLL_HEADER const PointIndex & PNum (int i) const { return pnum[i-1]; }
615 - PointIndex & PNumMod (int i) { return pnum[(i-1) % np]; }
616 + DLL_HEADER PointIndex & PNumMod (int i) { return pnum[(i-1) % np]; }
618 - const PointIndex & PNumMod (int i) const { return pnum[(i-1) % np]; }
619 + DLL_HEADER const PointIndex & PNumMod (int i) const { return pnum[(i-1) % np]; }
623 - PointGeomInfo & GeomInfoPi (int i) { return geominfo[i-1]; }
624 + DLL_HEADER PointGeomInfo & GeomInfoPi (int i) { return geominfo[i-1]; }
626 - const PointGeomInfo & GeomInfoPi (int i) const { return geominfo[i-1]; }
627 + DLL_HEADER const PointGeomInfo & GeomInfoPi (int i) const { return geominfo[i-1]; }
629 - PointGeomInfo & GeomInfoPiMod (int i) { return geominfo[(i-1) % np]; }
630 + DLL_HEADER PointGeomInfo & GeomInfoPiMod (int i) { return geominfo[(i-1) % np]; }
632 - const PointGeomInfo & GeomInfoPiMod (int i) const { return geominfo[(i-1) % np]; }
633 + DLL_HEADER const PointGeomInfo & GeomInfoPiMod (int i) const { return geominfo[(i-1) % np]; }
636 - void SetIndex (int si) { index = si; }
637 + DLL_HEADER void SetIndex (int si) { index = si; }
639 - int GetIndex () const { return index; }
640 + DLL_HEADER int GetIndex () const { return index; }
642 - int GetOrder () const { return orderx; }
643 - void SetOrder (int aorder) { orderx = ordery = aorder; }
644 + DLL_HEADER int GetOrder () const { return orderx; }
645 + DLL_HEADER void SetOrder (int aorder) { orderx = ordery = aorder; }
648 - void GetOrder (int & ox, int & oy) const { ox = orderx, oy =ordery;};
649 - void GetOrder (int & ox, int & oy, int & oz) const { ox = orderx; oy = ordery; oz=0; }
650 - void SetOrder (int ox, int oy, int /* oz */) { orderx = ox; ordery = oy;}
651 - void SetOrder (int ox, int oy) { orderx = ox; ordery = oy;}
652 + DLL_HEADER void GetOrder (int & ox, int & oy) const { ox = orderx, oy =ordery;};
653 + DLL_HEADER void GetOrder (int & ox, int & oy, int & oz) const { ox = orderx; oy = ordery; oz=0; }
654 + DLL_HEADER void SetOrder (int ox, int oy, int /* oz */) { orderx = ox; ordery = oy;}
655 + DLL_HEADER void SetOrder (int ox, int oy) { orderx = ox; ordery = oy;}
659 - void GetBox (const T_POINTS & points, Box3d & box) const;
660 + DLL_HEADER void GetBox (const T_POINTS & points, Box3d & box) const;
661 /// invert orientation
662 - inline void Invert ();
663 + DLL_HEADER inline void Invert ();
666 + DLL_HEADER void Invert2 ();
667 /// first point number is smallest
668 - inline void NormalizeNumbering ();
669 + DLL_HEADER inline void NormalizeNumbering ();
671 - void NormalizeNumbering2 ();
672 + DLL_HEADER void NormalizeNumbering2 ();
674 - bool BadElement() const { return badel; }
675 + DLL_HEADER bool BadElement() const { return badel; }
677 // friend ostream & operator<<(ostream & s, const Element2d & el);
681 /// get number of 'integration points'
682 - int GetNIP () const;
683 - void GetIntegrationPoint (int ip, Point2d & p, double & weight) const;
684 + DLL_HEADER int GetNIP () const;
685 + DLL_HEADER void GetIntegrationPoint (int ip, Point2d & p, double & weight) const;
687 - void GetTransformation (int ip, const Array<Point2d> & points,
688 + DLL_HEADER void GetTransformation (int ip, const Array<Point2d> & points,
689 class DenseMatrix & trans) const;
690 - void GetTransformation (int ip, class DenseMatrix & pmat,
691 + DLL_HEADER void GetTransformation (int ip, class DenseMatrix & pmat,
692 class DenseMatrix & trans) const;
694 - void GetShape (const Point2d & p, class Vector & shape) const;
695 - void GetShapeNew (const Point<2> & p, class FlatVector & shape) const;
696 + DLL_HEADER void GetShape (const Point2d & p, class Vector & shape) const;
697 + DLL_HEADER void GetShapeNew (const Point<2> & p, class FlatVector & shape) const;
699 - void GetDShape (const Point2d & p, class DenseMatrix & dshape) const;
700 - void GetDShapeNew (const Point<2> & p, class MatrixFixWidth<2> & dshape) const;
701 + DLL_HEADER void GetDShape (const Point2d & p, class DenseMatrix & dshape) const;
702 + DLL_HEADER void GetDShapeNew (const Point<2> & p, class MatrixFixWidth<2> & dshape) const;
704 - void GetPointMatrix (const Array<Point2d> & points,
705 + DLL_HEADER void GetPointMatrix (const Array<Point2d> & points,
706 class DenseMatrix & pmat) const;
708 - void ComputeIntegrationPointData () const;
709 + DLL_HEADER void ComputeIntegrationPointData () const;
712 - double CalcJacobianBadness (const Array<Point2d> & points) const;
713 - double CalcJacobianBadness (const T_POINTS & points,
714 + DLL_HEADER double CalcJacobianBadness (const Array<Point2d> & points) const;
715 + DLL_HEADER double CalcJacobianBadness (const T_POINTS & points,
716 const Vec<3> & n) const;
717 - double CalcJacobianBadnessDirDeriv (const Array<Point2d> & points,
718 + DLL_HEADER double CalcJacobianBadnessDirDeriv (const Array<Point2d> & points,
719 int pi, Vec2d & dir, double & dd) const;
723 - void Delete () { deleted = 1; pnum[0] = pnum[1] = pnum[2] = pnum[3] = PointIndex::BASE-1; }
724 - bool IsDeleted () const
725 + DLL_HEADER void Delete () { deleted = 1; pnum[0] = pnum[1] = pnum[2] = pnum[3] = PointIndex::BASE-1; }
726 + DLL_HEADER bool IsDeleted () const
729 if (pnum[0] < PointIndex::BASE && !deleted)
730 @@ -484,27 +484,27 @@
732 // Philippose - 08 August 2010
733 // Access functions for the new property: visible
734 - void Visible(bool vis = 1)
735 + DLL_HEADER void Visible(bool vis = 1)
737 - bool IsVisible () const
738 + DLL_HEADER bool IsVisible () const
741 - void SetRefinementFlag (bool rflag = 1)
742 + DLL_HEADER void SetRefinementFlag (bool rflag = 1)
744 - bool TestRefinementFlag () const
745 + DLL_HEADER bool TestRefinementFlag () const
748 - void SetStrongRefinementFlag (bool rflag = 1)
749 + DLL_HEADER void SetStrongRefinementFlag (bool rflag = 1)
750 { strongrefflag = rflag; }
751 - bool TestStrongRefinementFlag () const
752 + DLL_HEADER bool TestStrongRefinementFlag () const
753 { return strongrefflag; }
756 - SurfaceElementIndex NextElement() { return next; }
757 + DLL_HEADER SurfaceElementIndex NextElement() { return next; }
759 - bool operator==(const Element2d & el2) const;
760 + DLL_HEADER bool operator==(const Element2d & el2) const;
762 - int HasFace(const Element2d& el) const;
763 + DLL_HEADER int HasFace(const Element2d& el) const;
771 - ostream & operator<<(ostream & s, const Element2d & el);
772 + DLL_HEADER ostream & operator<<(ostream & s, const Element2d & el);
776 diff -Naur netgen-5.3.1_orig/libsrc/occ/occgenmesh.cpp netgen-5.3.1_modif/libsrc/occ/occgenmesh.cpp
777 --- netgen-5.3.1_orig/libsrc/occ/occgenmesh.cpp 2019-01-22 13:07:09.801603600 +0300
778 +++ netgen-5.3.1_modif/libsrc/occ/occgenmesh.cpp 2019-01-22 12:34:46.090399900 +0300
783 - bool merge_solids = 1;
784 + DLL_HEADER bool merge_solids = 1;
787 // can you please explain what you intend to compute here (JS) !!!
790 Point<3> fp = occ2ng (BRep_Tool::Pnt (v1));
791 Point<3> lp = occ2ng (BRep_Tool::Pnt (v2));
792 - double tol2 = std::min( eps*eps, 1e-6 * Dist2( fp, lp ));
793 + double tol2 = min( eps*eps, 1e-6 * Dist2( fp, lp ));
795 tol2 = BRep_Tool::Tolerance( v1 ) * BRep_Tool::Tolerance( v1 );
797 diff -Naur netgen-5.3.1_orig/libsrc/occ/occgeom.hpp netgen-5.3.1_modif/libsrc/occ/occgeom.hpp
798 --- netgen-5.3.1_orig/libsrc/occ/occgeom.hpp 2019-01-22 13:07:09.828603500 +0300
799 +++ netgen-5.3.1_modif/libsrc/occ/occgeom.hpp 2019-01-22 12:34:46.100401600 +0300
804 +#include <myadt.hpp>
806 #include <meshing.hpp>
808 #include "BRep_Tool.hxx"
811 #include "occmeshsurf.hpp"
813 - extern DLL_HEADER MeshingParameters mparam;
814 + DLL_HEADER extern MeshingParameters mparam;
816 #define PROJECTION_TOLERANCE 1e-10
822 - class OCCGeometry : public NetgenGeometry
823 + class DLL_HEADER OCCGeometry : public NetgenGeometry
826 // -- Optimization: to use cached projector and classifier
831 - class OCCParameters
832 + class DLL_HEADER OCCParameters
836 @@ -453,21 +455,21 @@
837 OCCGeometry * LoadOCC_STEP (const char * filename);
838 OCCGeometry * LoadOCC_BREP (const char * filename);
840 - extern OCCParameters occparam;
841 + extern DLL_HEADER OCCParameters occparam;
844 // Philippose - 31.09.2009
845 // External access to the mesh generation functions within the OCC
846 // subsystem (Not sure if this is the best way to implement this....!!)
847 - extern int OCCGenerateMesh (OCCGeometry & occgeometry, Mesh*& mesh,
848 + extern DLL_HEADER int OCCGenerateMesh (OCCGeometry & occgeometry, Mesh*& mesh,
849 MeshingParameters & mparam,
850 int perfstepsstart, int perfstepsend);
852 - extern void OCCSetLocalMeshSize(OCCGeometry & geom, Mesh & mesh);
853 + extern DLL_HEADER void OCCSetLocalMeshSize(OCCGeometry & geom, Mesh & mesh);
855 - extern void OCCMeshSurface (OCCGeometry & geom, Mesh & mesh, int perfstepsend);
856 + extern DLL_HEADER void OCCMeshSurface (OCCGeometry & geom, Mesh & mesh, int perfstepsend);
858 - extern void OCCFindEdges (OCCGeometry & geom, Mesh & mesh);
859 + extern DLL_HEADER void OCCFindEdges (OCCGeometry & geom, Mesh & mesh);
863 diff -Naur netgen-5.3.1_orig/libsrc/occ/occmeshsurf.hpp netgen-5.3.1_modif/libsrc/occ/occmeshsurf.hpp
864 --- netgen-5.3.1_orig/libsrc/occ/occmeshsurf.hpp 2019-01-22 13:07:01.521952200 +0300
865 +++ netgen-5.3.1_modif/libsrc/occ/occmeshsurf.hpp 2019-01-22 12:34:46.109400000 +0300
870 -class OCCRefinementSurfaces : public Refinement
871 +class DLL_HEADER OCCRefinementSurfaces : public Refinement
873 const OCCGeometry & geometry;
875 diff -Naur netgen-5.3.1_orig/libsrc/stlgeom/stlgeom.hpp netgen-5.3.1_modif/libsrc/stlgeom/stlgeom.hpp
876 --- netgen-5.3.1_orig/libsrc/stlgeom/stlgeom.hpp 2014-08-29 12:54:06.000000000 +0300
877 +++ netgen-5.3.1_modif/libsrc/stlgeom/stlgeom.hpp 2019-01-22 12:41:58.899495900 +0300
882 - extern DLL_HEADER MeshingParameters mparam;
883 + DLL_HEADER extern MeshingParameters mparam;
891 - class STLGeometry : public STLTopology, public NetgenGeometry
892 + class DLL_HEADER STLGeometry : public STLTopology, public NetgenGeometry
894 // edges to be meshed:
895 Array<STLEdge> edges;
896 diff -Naur netgen-5.3.1_orig/libsrc/stlgeom/stltool.hpp netgen-5.3.1_modif/libsrc/stlgeom/stltool.hpp
897 --- netgen-5.3.1_orig/libsrc/stlgeom/stltool.hpp 2014-08-29 12:54:06.000000000 +0300
898 +++ netgen-5.3.1_modif/libsrc/stlgeom/stltool.hpp 2019-01-22 12:31:33.216947700 +0300
903 -class STLDoctorParams
904 +class DLL_HEADER STLDoctorParams
908 @@ -218,11 +218,11 @@
909 void Print (ostream & ost) const;
912 -extern STLDoctorParams stldoctor;
913 +extern DLL_HEADER STLDoctorParams stldoctor;
918 +class DLL_HEADER STLParameters
921 /// angle for edge detection
923 void Print (ostream & ost) const;
926 -extern STLParameters stlparam;
927 +extern DLL_HEADER STLParameters stlparam;
930 void STLMeshing (STLGeometry & geom,
931 diff -Naur netgen-5.3.1_orig/libsrc/stlgeom/stltopology.hpp netgen-5.3.1_modif/libsrc/stlgeom/stltopology.hpp
932 --- netgen-5.3.1_orig/libsrc/stlgeom/stltopology.hpp 2014-08-29 12:54:06.000000000 +0300
933 +++ netgen-5.3.1_modif/libsrc/stlgeom/stltopology.hpp 2019-01-22 12:43:39.341330600 +0300
939 +class DLL_HEADER STLTopology
942 Array<STLTriangle> trias;
943 diff -Naur netgen-5.3.1_orig/nglib/CMakeLists.txt netgen-5.3.1_modif/nglib/CMakeLists.txt
944 --- netgen-5.3.1_orig/nglib/CMakeLists.txt 1970-01-01 03:00:00.000000000 +0300
945 +++ netgen-5.3.1_modif/nglib/CMakeLists.txt 2019-01-22 12:34:46.146402900 +0300
947 +# Copyright (C) 2016 OPEN CASCADE
949 +# This library is free software; you can redistribute it and/or
950 +# modify it under the terms of the GNU Lesser General Public
951 +# License as published by the Free Software Foundation; either
952 +# version 2.1 of the License, or (at your option) any later version.
954 +# This library is distributed in the hope that it will be useful,
955 +# but WITHOUT ANY WARRANTY; without even the implied warranty of
956 +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
957 +# Lesser General Public License for more details.
959 +# You should have received a copy of the GNU Lesser General Public
960 +# License along with this library; if not, write to the Free Software
961 +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
963 +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
965 +INCLUDE_DIRECTORIES(
966 + ${CMAKE_CURRENT_SOURCE_DIR}
967 + ${PROJECT_SOURCE_DIR}/libsrc/include
968 + ${ZLIB_INCLUDE_DIRS}
969 + ${CAS_INCLUDE_DIRS}
975 + ${PROJECT_SOURCE_DIR}/libsrc/csg/algprim.cpp
976 + ${PROJECT_SOURCE_DIR}/libsrc/csg/brick.cpp
977 + ${PROJECT_SOURCE_DIR}/libsrc/csg/bspline2d.cpp
978 + ${PROJECT_SOURCE_DIR}/libsrc/csg/csgeom.cpp
979 + ${PROJECT_SOURCE_DIR}/libsrc/csg/csgparser.cpp
980 + ${PROJECT_SOURCE_DIR}/libsrc/csg/curve2d.cpp
981 + ${PROJECT_SOURCE_DIR}/libsrc/csg/edgeflw.cpp
982 + ${PROJECT_SOURCE_DIR}/libsrc/csg/explicitcurve2d.cpp
983 + ${PROJECT_SOURCE_DIR}/libsrc/csg/extrusion.cpp
984 + ${PROJECT_SOURCE_DIR}/libsrc/csg/gencyl.cpp
985 + ${PROJECT_SOURCE_DIR}/libsrc/csg/genmesh.cpp
986 + ${PROJECT_SOURCE_DIR}/libsrc/csg/identify.cpp
987 + ${PROJECT_SOURCE_DIR}/libsrc/csg/manifold.cpp
988 + ${PROJECT_SOURCE_DIR}/libsrc/csg/meshsurf.cpp
989 + ${PROJECT_SOURCE_DIR}/libsrc/csg/polyhedra.cpp
990 + ${PROJECT_SOURCE_DIR}/libsrc/csg/revolution.cpp
991 + ${PROJECT_SOURCE_DIR}/libsrc/csg/singularref.cpp
992 + ${PROJECT_SOURCE_DIR}/libsrc/csg/solid.cpp
993 + ${PROJECT_SOURCE_DIR}/libsrc/csg/specpoin.cpp
994 + ${PROJECT_SOURCE_DIR}/libsrc/csg/spline3d.cpp
995 + ${PROJECT_SOURCE_DIR}/libsrc/csg/surface.cpp
996 + ${PROJECT_SOURCE_DIR}/libsrc/csg/triapprox.cpp)
1000 + ${PROJECT_SOURCE_DIR}/libsrc/general/array.cpp
1001 + ${PROJECT_SOURCE_DIR}/libsrc/general/bitarray.cpp
1002 + ${PROJECT_SOURCE_DIR}/libsrc/general/dynamicmem.cpp
1003 + ${PROJECT_SOURCE_DIR}/libsrc/general/flags.cpp
1004 + ${PROJECT_SOURCE_DIR}/libsrc/general/hashtabl.cpp
1005 + ${PROJECT_SOURCE_DIR}/libsrc/general/mystring.cpp
1006 + ${PROJECT_SOURCE_DIR}/libsrc/general/ngexception.cpp
1007 + ${PROJECT_SOURCE_DIR}/libsrc/general/optmem.cpp
1008 + ${PROJECT_SOURCE_DIR}/libsrc/general/parthreads.cpp
1009 + ${PROJECT_SOURCE_DIR}/libsrc/general/profiler.cpp
1010 + ${PROJECT_SOURCE_DIR}/libsrc/general/seti.cpp
1011 + ${PROJECT_SOURCE_DIR}/libsrc/general/sort.cpp
1012 + ${PROJECT_SOURCE_DIR}/libsrc/general/spbita2d.cpp
1013 + ${PROJECT_SOURCE_DIR}/libsrc/general/symbolta.cpp
1014 + ${PROJECT_SOURCE_DIR}/libsrc/general/table.cpp
1015 + ${PROJECT_SOURCE_DIR}/libsrc/general/mpi_interface.cpp
1016 + ${PROJECT_SOURCE_DIR}/libsrc/general/gzstream.cpp)
1018 +FILE(GLOB GENERAL_INCLUDES "${PROJECT_SOURCE_DIR}/libsrc/general/*.hpp")
1019 +LIST(APPEND GENERAL_INCLUDES ${PROJECT_SOURCE_DIR}/libsrc/general/gzstream.h)
1022 +SET (GEOM2D_SOURCES
1023 + ${PROJECT_SOURCE_DIR}/libsrc/geom2d/genmesh2d.cpp
1024 + ${PROJECT_SOURCE_DIR}/libsrc/geom2d/geom2dmesh.cpp
1025 + ${PROJECT_SOURCE_DIR}/libsrc/geom2d/geometry2d.cpp)
1029 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/adtree.cpp
1030 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/geom2d.cpp
1031 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/geom3d.cpp
1032 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/geomfuncs.cpp
1033 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/geomtest3d.cpp
1034 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/transform3d.cpp
1035 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/spline.cpp
1036 + ${PROJECT_SOURCE_DIR}/libsrc/gprim/splinegeometry.cpp)
1038 +FILE(GLOB GPRIM_INCLUDES "${PROJECT_SOURCE_DIR}/libsrc/gprim/*.hpp")
1041 +SET(INCLUDE_INCLUDES
1042 + ${PROJECT_SOURCE_DIR}/libsrc/include/nginterface.h
1043 + ${PROJECT_SOURCE_DIR}/libsrc/include/nginterface_v2.hpp
1044 + ${PROJECT_SOURCE_DIR}/libsrc/include/mystdlib.h
1045 + ${PROJECT_SOURCE_DIR}/libsrc/include/mydefs.hpp)
1048 +SET(INTERFACE_SOURCES
1049 + ${PROJECT_SOURCE_DIR}/libsrc/interface/nginterface.cpp
1050 + ${PROJECT_SOURCE_DIR}/libsrc/interface/nginterface_v2.cpp
1051 + ${PROJECT_SOURCE_DIR}/libsrc/interface/read_fnf_mesh.cpp
1052 + ${PROJECT_SOURCE_DIR}/libsrc/interface/readtetmesh.cpp
1053 + ${PROJECT_SOURCE_DIR}/libsrc/interface/readuser.cpp
1054 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writeabaqus.cpp
1055 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writediffpack.cpp
1056 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writedolfin.cpp
1057 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writeelmer.cpp
1058 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writefeap.cpp
1059 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writefluent.cpp
1060 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writegmsh.cpp
1061 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writejcm.cpp
1062 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writepermas.cpp
1063 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writetecplot.cpp
1064 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writetet.cpp
1065 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writetochnog.cpp
1066 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writeuser.cpp
1067 + ${PROJECT_SOURCE_DIR}/libsrc/interface/wuchemnitz.cpp
1068 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writegmsh2.cpp
1069 + ${PROJECT_SOURCE_DIR}/libsrc/interface/writeOpenFOAM15x.cpp)
1072 +SET (LINALG_SOURCES
1073 + ${PROJECT_SOURCE_DIR}/libsrc/linalg/densemat.cpp
1074 + ${PROJECT_SOURCE_DIR}/libsrc/linalg/polynomial.cpp
1075 + ${PROJECT_SOURCE_DIR}/libsrc/linalg/bfgs.cpp
1076 + ${PROJECT_SOURCE_DIR}/libsrc/linalg/linopt.cpp
1077 + ${PROJECT_SOURCE_DIR}/libsrc/linalg/linsearch.cpp)
1079 +FILE(GLOB LINALG_INCLUDES "${PROJECT_SOURCE_DIR}/libsrc/linalg/*.hpp")
1082 +SET(MESHING_SOURCES
1083 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/adfront2.cpp
1084 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/adfront3.cpp
1085 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/bisect.cpp
1086 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/boundarylayer.cpp
1087 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/clusters.cpp
1088 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/curvedelems.cpp
1089 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/delaunay.cpp
1090 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/delaunay2d.cpp
1091 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/geomsearch.cpp
1092 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/global.cpp
1093 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/hprefinement.cpp
1094 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/improve2.cpp
1095 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/improve2gen.cpp
1096 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/improve3.cpp
1097 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/localh.cpp
1098 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshclass.cpp
1099 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshfunc.cpp
1100 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshfunc2d.cpp
1101 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshing2.cpp
1102 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshing3.cpp
1103 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshtool.cpp
1104 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/meshtype.cpp
1105 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/msghandler.cpp
1106 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/netrule2.cpp
1107 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/netrule3.cpp
1108 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/parser2.cpp
1109 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/parser3.cpp
1110 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/prism2rls.cpp
1111 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/pyramid2rls.cpp
1112 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/pyramidrls.cpp
1113 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/quadrls.cpp
1114 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/refine.cpp
1115 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/ruler2.cpp
1116 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/ruler3.cpp
1117 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/secondorder.cpp
1118 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/smoothing2.5.cpp
1119 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/smoothing2.cpp
1120 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/smoothing3.cpp
1121 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/specials.cpp
1122 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/tetrarls.cpp
1123 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/topology.cpp
1124 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/triarls.cpp
1125 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/validate.cpp
1126 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/zrefine.cpp
1127 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/bcfunctions.cpp
1128 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/parallelmesh.cpp
1129 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/paralleltop.cpp
1130 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/paralleltop.hpp
1131 + ${PROJECT_SOURCE_DIR}/libsrc/meshing/basegeom.cpp)
1133 +FILE(GLOB MESHING_INCLUDES "${PROJECT_SOURCE_DIR}/libsrc/meshing/*.hpp")
1137 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Inter2d.cxx
1138 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Inter3d.cxx
1139 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Loop.cxx
1140 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Loop2d.cxx
1141 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Loop3d.cxx
1142 + ${PROJECT_SOURCE_DIR}/libsrc/occ/Partition_Spliter.cxx
1143 + ${PROJECT_SOURCE_DIR}/libsrc/occ/occconstruction.cpp
1144 + ${PROJECT_SOURCE_DIR}/libsrc/occ/occgenmesh.cpp
1145 + ${PROJECT_SOURCE_DIR}/libsrc/occ/occgeom.cpp
1146 + ${PROJECT_SOURCE_DIR}/libsrc/occ/occmeshsurf.cpp)
1148 +SET(OCC_INCLUDES ${PROJECT_SOURCE_DIR}/libsrc/occ/occgeom.hpp ${PROJECT_SOURCE_DIR}/libsrc/occ/occmeshsurf.hpp)
1151 +SET(STLGEOM_SOURCES
1152 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/meshstlsurface.cpp
1153 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlgeom.cpp
1154 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlgeomchart.cpp
1155 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlgeommesh.cpp
1156 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlline.cpp
1157 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stltool.cpp
1158 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stltopology.cpp)
1160 +SET(STLGEOM_INCLUDES
1161 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/meshstlsurface.hpp
1162 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlgeom.hpp
1163 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stlline.hpp
1164 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stltool.hpp
1165 + ${PROJECT_SOURCE_DIR}/libsrc/stlgeom/stltopology.hpp)
1168 +SET(NGLIB_SOURCES nglib.cpp)
1169 +ADD_LIBRARY(nglib SHARED
1172 + ${GENERAL_SOURCES}
1175 + ${INTERFACE_SOURCES}
1177 + ${MESHING_SOURCES}
1179 + ${STLGEOM_SOURCES})
1181 +TARGET_LINK_LIBRARIES(nglib ${OCCLIBS} ${PLATFORM_LIBADD} ${ZLIB_LIBRARIES})
1182 +INSTALL(TARGETS nglib DESTINATION ${NETGEN_INSTALL_LIBS})
1185 +INSTALL(FILES ${GENERAL_INCLUDES}
1186 + ${INCLUDE_INCLUDES}
1188 + ${LINALG_INCLUDES}
1189 + ${MESHING_INCLUDES}
1190 + ${STLGEOM_INCLUDES}
1193 + DESTINATION ${NETGEN_INSTALL_HEADERS})
1197 +SET(NG_VOL_SOURCES ng_vol.cpp)
1198 +ADD_EXECUTABLE(ng_vol ${NG_VOL_SOURCES})
1199 +TARGET_LINK_LIBRARIES(ng_vol nglib)
1200 +INSTALL(TARGETS ng_vol DESTINATION ${NETGEN_INSTALL_BINS})
1203 +SET(NG_STL_SOURCES ng_stl.cpp)
1204 +ADD_EXECUTABLE(ng_stl ${NG_STL_SOURCES})
1205 +TARGET_LINK_LIBRARIES(ng_stl nglib)
1206 +INSTALL(TARGETS ng_stl DESTINATION ${NETGEN_INSTALL_BINS})
1207 diff -Naur netgen-5.3.1_orig/nglib/nglib.cpp netgen-5.3.1_modif/nglib/nglib.cpp
1208 --- netgen-5.3.1_orig/nglib/nglib.cpp 2019-01-22 13:07:06.386379800 +0300
1209 +++ netgen-5.3.1_modif/nglib/nglib.cpp 2019-01-22 12:34:46.150402500 +0300
1211 // Clean-up functions before ending usage of nglib
1212 DLL_HEADER void Ng_Exit ()
1223 Array<STLReadTriangle> readtrias; //only before initstlgeometry
1224 - Array<Point<3> > readedges; //only before init stlgeometry
1225 + DLL_HEADER Array<Point<3> > readedges; //only before init stlgeometry
1227 // loads geometry from STL file
1228 DLL_HEADER Ng_STL_Geometry * Ng_STL_LoadGeometry (const char * filename, int binary)