Fix to build by CMAKE with Netgen-5.0.0

This commit is contained in:
akl 2013-03-12 10:48:19 +00:00
parent a7ea391a07
commit b22cd8fe61

View File

@ -23,34 +23,62 @@ SET(NETGEN_INCLUDES)
SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -I${NETGEN_INCLUDES_DIR} -I${NETGENHOME}/share/netgen/include) 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_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) 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(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) IF(NETGEN_V5)
SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -DNETGEN_V5) SET(NETGEN_INCLUDES ${NETGEN_INCLUDES} -DNETGEN_V5)
ENDIF(NETGEN_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})