SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -I${NETGEN_INCLUDES_DIR} -I${NETGENHOME}/share/netgen/include)
SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -DNO_PARALLEL_THREADS -DOCCGEOMETRY)
+SET(NETGEN_LIBS)
+FIND_LIBRARY(NETGEN_LIB_csg csg PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+#FIND_LIBRARY(NETGEN_LIB_gen gen PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+FIND_LIBRARY(NETGEN_LIB_geom2d geom2d PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+#FIND_LIBRARY(NETGEN_LIB_gprim gprim PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+FIND_LIBRARY(NETGEN_LIB_interface interface PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+#FIND_LIBRARY(NETGEN_LIB_la la PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+FIND_LIBRARY(NETGEN_LIB_mesh mesh PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+FIND_LIBRARY(NETGEN_LIB_occ occ PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
+FIND_LIBRARY(NETGEN_LIB_stl stl PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
FIND_LIBRARY(NETGEN_LIB_nglib nglib PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
-# temporary, check to be added later
+FOREACH(LIBNAME
+ ${NETGEN_LIB_csg}
+# ${NETGEN_LIB_gen}
+ ${NETGEN_LIB_geom2d}
+# ${NETGEN_LIB_gprim}
+ ${NETGEN_LIB_interface}
+# ${NETGEN_LIB_la}
+ ${NETGEN_LIB_mesh}
+ ${NETGEN_LIB_occ}
+ ${NETGEN_LIB_stl}
+ ${NETGEN_LIB_nglib}
+ )
+ IF(LIBNAME)
+ SET(NETGEN_LIBS ${NETGEN_LIBS} ${LIBNAME})
+ ENDIF(LIBNAME)
+ENDFOREACH(LIBNAME )
+
+# Check Netgen version
SET(NETGEN_V5 OFF)
+SET(tmp_check_netgen ${CMAKE_BINARY_DIR}/tmp_check_netgen.cxx)
+FILE(WRITE ${tmp_check_netgen}
+ "#include <iostream> \n"
+ "#include <fstream> \n"
+ "namespace nglib { \n"
+ "#include \"nglib.h\" \n"
+ "} \n"
+ "#include <occgeom.hpp> \n"
+ "int main() { \n"
+ "nglib::Ng_Init(); \n"
+ "netgen::Mesh* ngMesh; \n"
+ "ngMesh->CalcLocalH(1.0); \n"
+ "nglib::Ng_Exit(); \n"
+ "return 0; \n"
+ "} \n"
+ )
+TRY_COMPILE(NETGEN_V5
+ ${CMAKE_BINARY_DIR}
+ ${tmp_check_netgen}
+ CMAKE_FLAGS "-DLINK_LIBRARIES:STRING=${NETGEN_LIB_nglib}"
+ COMPILE_DEFINITIONS ${CAS_CPPFLAGS} ${NETGEN_INCLUDES}
+ OUTPUT_VARIABLE OUTPUT
+ )
+FILE(REMOVE ${tmp_check_netgen})
IF(NETGEN_V5)
SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -DNETGEN_V5)
ENDIF(NETGEN_V5)
-
-SET(NETGEN_LIBS)
-IF(WINDOWS)
- FIND_LIBRARY(NETGEN_LIB_csg csg PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_gen gen PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_geom2d geom2d PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_gprim gprim PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_interface interface PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_la la PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_mesh mesh PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_occ occ PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- FIND_LIBRARY(NETGEN_LIB_stl stl PATHS ${NETGENHOME}/lib ${NETGENHOME}/lib/LINUX)
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_csg})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_gen})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_geom2d})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_gprim})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_interface})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_la})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_mesh})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_occ})
- SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_stl})
-ENDIF(WINDOWS)
-SET(NETGEN_LIBS ${NETGEN_LIBS} ${NETGEN_LIB_nglib})