Merge branch 'master' of gitlab.asc.tuwien.ac.at:jschoeberl/netgen

This commit is contained in:
Joachim Schoeberl 2015-04-29 16:10:35 +02:00
commit 15bc66bbcd
18 changed files with 197 additions and 43 deletions

View File

@ -74,7 +74,7 @@ include_directories ("${PROJECT_BINARY_DIR}")
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${PROJECT_SOURCE_DIR}/cmake_modules")
set(ng_install_dir RUNTIME DESTINATION bin LIBRARY DESTINATION lib ARCHIVE DESTINATION lib)
set(ng_install_dir RUNTIME DESTINATION bin COMPONENT netgen LIBRARY DESTINATION lib COMPONENT netgen_devel ARCHIVE DESTINATION lib COMPONENT netgen_devel)
include (CheckIncludeFiles)
check_include_files (dlfcn.h HAVE_DLFCN_H)
@ -148,10 +148,10 @@ if (USE_GUI)
if(WIN32)
get_filename_component(MY_LIB_DIR ${TK_LIBRARY} DIRECTORY)
find_library(LIBTOGL NAMES togl togl17 HINTS ${MY_LIB_DIR} )
install( DIRECTORY "${MY_LIB_DIR}/tcl8.5" DESTINATION lib )
install( DIRECTORY "${MY_LIB_DIR}/tk8.5" DESTINATION lib )
install( DIRECTORY "${MY_LIB_DIR}/tix8.4.3" DESTINATION lib )
install( DIRECTORY "${MY_LIB_DIR}/../bin" DESTINATION .)
install( DIRECTORY "${MY_LIB_DIR}/tcl8.5" DESTINATION lib COMPONENT netgen )
install( DIRECTORY "${MY_LIB_DIR}/tk8.5" DESTINATION lib COMPONENT netgen )
install( DIRECTORY "${MY_LIB_DIR}/tix8.4.3" DESTINATION lib COMPONENT netgen )
install( DIRECTORY "${MY_LIB_DIR}/../bin" DESTINATION . COMPONENT netgen )
else(WIN32)
set(LIBTOGL togl)
ADD_DEFINITIONS(-DTOGL_X11)
@ -203,6 +203,15 @@ if (USE_MPI)
include_directories(${METIS_INCLUDE_DIR})
endif (USE_MPI)
#######################################################################
if (USE_OCC)
find_package(OpenCasCade REQUIRED)
add_definitions(-DOCCGEOMETRY -D_OCC64)
add_definitions(-DHAVE_IOSTREAM -DHAVE_IOSTREAM_H -DHAVE_LIMITS -DHAVE_LIMITS_H -DHAVE_IOMANIP -DHAVE_IOMANIP_H)
include_directories(${OCC_INCLUDE_DIR})
endif (USE_OCC)
#######################################################################
if (USE_JPEG)
find_package(JPEG REQUIRED)
@ -236,7 +245,9 @@ endif(INSTALL_PROFILES)
add_subdirectory(libsrc)
add_subdirectory(ng)
add_subdirectory(tutorials)
add_subdirectory(python)
if (USE_PYTHON)
add_subdirectory(python)
endif (USE_PYTHON)
add_subdirectory(py_tutorials)
add_subdirectory(doc)
add_subdirectory(windows)

View File

@ -0,0 +1,141 @@
# Try to find OCE / OCC
# Once done this will define
#
# OCC_FOUND - system has OCC - OpenCASCADE
# OCC_INCLUDE_DIR - where the OCC include directory can be found
# OCC_LIBRARY_DIR - where the OCC library directory can be found
# OCC_LIBRARIES - Link this to use OCC
# OCC_OCAF_LIBRARIES - Link this to use OCC OCAF framework
# First try to find OpenCASCADE Community Edition
if(NOT DEFINED OCE_DIR)
if(UNIX)
set(OCE_DIR "/usr/local/share/cmake/")
elseif(WIN32)
set(OCE_DIR "c:/OCE-0.4.0/share/cmake")
endif()
endif()
find_package(OCE QUIET)
if(0 AND OCE_FOUND)
message(STATUS "-- OpenCASCADE Community Edition has been found.")
# Disable this define. For more details see bug #0001872
#add_definitions (-DHAVE_CONFIG_H)
set(OCC_INCLUDE_DIR ${OCE_INCLUDE_DIRS})
#set(OCC_LIBRARY_DIR ${OCE_LIBRARY_DIR})
else(0 AND OCE_FOUND) #look for OpenCASCADE
if(WIN32)
if(CYGWIN OR MINGW)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
/usr/include/oce
/usr/include/opencascade
/usr/local/include/opencascade
/opt/opencascade/include
/opt/opencascade/inc
)
FIND_LIBRARY(OCC_LIBRARY TKernel
/usr/lib
/usr/local/lib
/opt/opencascade/lib
)
else(CYGWIN OR MINGW)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\OCC\\2;Installation Path]/include"
)
FIND_LIBRARY(OCC_LIBRARY TKernel
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\SIM\\OCC\\2;Installation Path]/lib"
)
endif(CYGWIN OR MINGW)
else(WIN32)
FIND_PATH(OCC_INCLUDE_DIR Standard_Version.hxx
/usr/include/oce
/usr/include/opencascade
/usr/local/include/opencascade
/opt/opencascade/include
/opt/opencascade/inc
)
FIND_LIBRARY(OCC_LIBRARY TKernel
/usr/lib
/usr/local/lib
/opt/opencascade/lib
)
endif(WIN32)
if(OCC_LIBRARY)
GET_FILENAME_COMPONENT(OCC_LIBRARY_DIR ${OCC_LIBRARY} PATH)
endif(OCC_LIBRARY)
endif(0 AND OCE_FOUND)
if(OCC_INCLUDE_DIR)
file(STRINGS ${OCC_INCLUDE_DIR}/Standard_Version.hxx OCC_MAJOR
REGEX "#define OCC_VERSION_MAJOR.*"
)
string(REGEX MATCH "[0-9]+" OCC_MAJOR ${OCC_MAJOR})
file(STRINGS ${OCC_INCLUDE_DIR}/Standard_Version.hxx OCC_MINOR
REGEX "#define OCC_VERSION_MINOR.*"
)
string(REGEX MATCH "[0-9]+" OCC_MINOR ${OCC_MINOR})
file(STRINGS ${OCC_INCLUDE_DIR}/Standard_Version.hxx OCC_MAINT
REGEX "#define OCC_VERSION_MAINTENANCE.*"
)
string(REGEX MATCH "[0-9]+" OCC_MAINT ${OCC_MAINT})
set(OCC_VERSION_STRING "${OCC_MAJOR}.${OCC_MINOR}.${OCC_MAINT}")
endif(OCC_INCLUDE_DIR)
# handle the QUIETLY and REQUIRED arguments and set OCC_FOUND to TRUE if
# all listed variables are TRUE
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(OCC REQUIRED_VARS OCC_INCLUDE_DIR VERSION_VAR OCC_VERSION_STRING)
if(OCC_FOUND)
set(OCC_LIBRARIES
-L${OCC_LIBRARY_DIR}
FWOSPlugin
TKFillet
TKMesh
TKernel
TKG2d
TKG3d
TKMath
TKIGES
TKSTL
TKShHealing
TKXSBase
TKBool
TKBO
TKBRep
TKTopAlgo
TKGeomAlgo
TKGeomBase
TKOffset
TKPrim
TKSTEP
TKSTEPBase
TKSTEPAttr
TKHLR
TKFeat
TKCAF
TKXCAF
TKLCAF
TKXDESTEP
TKXDEIGES
TKMeshVS
)
set(OCC_OCAF_LIBRARIES
TKCAF
TKXCAF
TKLCAF
TKXDESTEP
TKXDEIGES
TKMeshVS
)
if(OCC_VERSION_STRING VERSION_LESS 6.7.3)
list(APPEND OCC_OCAF_LIBRARIES TKAdvTools)
endif(OCC_VERSION_STRING VERSION_LESS 6.7.3)
message(STATUS "-- Found OCE/OpenCASCADE version: ${OCC_VERSION_STRING}")
message(STATUS "-- OCE/OpenCASCADE include directory: ${OCC_INCLUDE_DIR}")
message(STATUS "-- OCE/OpenCASCADE shared libraries directory: ${OCC_LIBRARY_DIR}")
message(STATUS "-- OCE/OpenCASCADE shared libraries :\n ${OCC_LIBRARIES}")
else(OCC_FOUND)
message("Neither OpenCASCADE Community Edition nor OpenCasCade were found: will not build CAD modules!")
endif(OCC_FOUND)

View File

@ -1 +1 @@
INSTALL(FILES ng4.pdf DESTINATION doc)
INSTALL(FILES ng4.pdf DESTINATION doc COMPONENT netgen_doc)

View File

@ -14,7 +14,7 @@ endif(APPLE)
if(NOT WIN32)
target_link_libraries(csg mesh ${PYTHON_LIBS})
target_link_libraries(csg ${PYTHON_LIBS})
install( TARGETS csg DESTINATION lib )
install( TARGETS csg DESTINATION lib COMPONENT netgen)
endif(NOT WIN32)
@ -25,7 +25,7 @@ if(USE_GUI)
if(APPLE)
set_target_properties( csgvis PROPERTIES SUFFIX ".so")
endif(APPLE)
install( TARGETS csgvis DESTINATION lib )
install( TARGETS csgvis DESTINATION lib COMPONENT netgen)
endif(NOT WIN32)
endif(USE_GUI)

View File

@ -8,5 +8,5 @@ add_library(gen OBJECT
set_target_properties( gen PROPERTIES POSITION_INDEPENDENT_CODE ON )
install( FILES ngexception.hpp DESTINATION include )
install( FILES ngexception.hpp DESTINATION include COMPONENT netgen_devel )

View File

@ -3,14 +3,14 @@ add_library(geom2d ${NG_LIB_TYPE} genmesh2d.cpp geom2dmesh.cpp geometry2d.cpp py
if(NOT WIN32)
target_link_libraries(geom2d mesh ${PYTHON_LIBS})
install( TARGETS geom2d DESTINATION lib )
install( TARGETS geom2d DESTINATION lib COMPONENT netgen)
endif(NOT WIN32)
if(USE_GUI)
add_library(geom2dvis ${NG_LIB_TYPE} geom2dpkg.cpp vsgeom2d.cpp)
if(NOT WIN32)
target_link_libraries(geom2dvis geom2d)
install( TARGETS geom2dvis DESTINATION lib )
install( TARGETS geom2dvis DESTINATION lib COMPONENT netgen)
endif(NOT WIN32)
endif(USE_GUI)

View File

@ -1,2 +1,2 @@
install(FILES nginterface.h nginterface_v2.hpp DESTINATION include)
install(FILES nginterface.h nginterface_v2.hpp DESTINATION include COMPONENT netgen_devel)

View File

@ -14,12 +14,12 @@ add_library(interface ${NG_LIB_TYPE}
)
# TARGET_LINK_LIBRARIES(interface ${MPI_CXX_LIBRARIES} ${PYTHON_LIBS})
# TARGET_LINK_LIBRARIES( interface ${LIBPTHREAD} ${OCCLIBS} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} )
# TARGET_LINK_LIBRARIES( interface ${LIBPTHREAD} ${OCC_LIBRARIES} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} )
if(NOT WIN32)
target_link_libraries(interface mesh csg)
target_link_libraries(interface mesh csg geom2d)
if(USE_GUI)
target_link_libraries(interface visual)
endif(USE_GUI)
install( TARGETS interface DESTINATION lib )
install( TARGETS interface DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)

View File

@ -30,6 +30,6 @@ endif(APPLE)
if(NOT WIN32)
target_link_libraries( mesh ${ZLIB_LIBRARIES} ${MPI_CXX_LIBRARIES} ${PYTHON_LIBS} ${METIS_LIBRARY})
install( TARGETS mesh DESTINATION lib )
install( TARGETS mesh DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)

View File

@ -7,8 +7,8 @@ add_library(occ ${NG_LIB_TYPE}
add_library(occvis ${NG_LIB_TYPE} occpkg.cpp vsocc.cpp)
if(NOT WIN32)
target_link_libraries( occ ${OCCLIBS} ${PYTHON_LIBS})
target_link_libraries( occ ${OCC_LIBRARIES} ${PYTHON_LIBS})
target_link_libraries( occvis occ )
install( TARGETS occ occvis DESTINATION lib )
install( TARGETS occ occvis DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)

View File

@ -6,7 +6,7 @@ add_library(stl ${NG_LIB_TYPE}
if(NOT WIN32)
target_link_libraries( stl mesh ${PYTHON_LIBS})
target_link_libraries( stl ${PYTHON_LIBS})
install( TARGETS stl DESTINATION lib )
install( TARGETS stl DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)
if(USE_GUI)
@ -15,7 +15,7 @@ if(USE_GUI)
)
if(NOT WIN32)
target_link_libraries( stlvis stl )
install( TARGETS stlvis DESTINATION lib )
install( TARGETS stlvis DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)
endif(USE_GUI)

View File

@ -1,5 +1,5 @@
add_definitions(-DNGINTERFACE_EXPORTS)
install(FILES soldata.hpp DESTINATION include)
install(FILES soldata.hpp DESTINATION include COMPONENT netgen_devel )
# AM_CPPFLAGS = $(MPI_INCLUDES) -I$(top_srcdir)/libsrc/include -DOPENGL -D$(TOGL_WINDOWINGSYSTEM) $(OCCFLAGS) $(TCL_INCLUDES)
@ -10,7 +10,7 @@ if(USE_GUI)
)
if(NOT WIN32)
target_link_libraries( visual ${PYTHON_LIBS} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TCL_LIBRARY} )
install( TARGETS visual DESTINATION lib )
install( TARGETS visual DESTINATION lib COMPONENT netgen )
endif(NOT WIN32)
endif(USE_GUI)

View File

@ -32,10 +32,10 @@ if(USE_GUI)
if(WIN32)
set_target_properties( netgenlib PROPERTIES OUTPUT_NAME interface )
else(WIN32)
target_link_libraries( netgenlib visual csgvis csg interface mesh togl)
target_link_libraries( netgenlib visual csgvis csg interface mesh occ occvis togl)
endif(WIN32)
target_link_libraries( netgenlib ${LIBPTHREAD} ${OCCLIBS} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} ${PYTHON_LIBS} ${FFMPEG_LIBRARIES})
target_link_libraries( netgenlib ${LIBPTHREAD} ${OCC_LIBRARIES} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} ${PYTHON_LIBS} ${FFMPEG_LIBRARIES})
target_link_libraries( netgen netgenlib )
install(TARGETS netgenlib ${ng_install_dir})
@ -60,7 +60,7 @@ install(FILES
ngvisual.tcl sockets.tcl drawing.tcl nghelp.tcl ngshell.tcl
ngtesting.tcl parameters.tcl variables.tcl csgeom.tcl stlgeom.tcl
occgeom.tcl acisgeom.tcl netgen.ocf
DESTINATION bin)
DESTINATION bin COMPONENT netgen)
if(USE_GUI AND NOT WIN32)
add_subdirectory(Togl-1.7)

View File

@ -2324,7 +2324,7 @@ namespace netgen
static int gopsize = DEFAULT_GOP_SIZE;
static int bframes = DEFAULT_B_FRAMES;
static int MPGbufsize = DEFAULT_MPG_BUFSIZE;
static CodecID codec_id = CODEC_ID_MPEG1VIDEO;
static AVCodecID codec_id = CODEC_ID_MPEG1VIDEO;
static FILE *MPGfile;
static buffer_t buff;
static struct SwsContext *img_convert_ctx;

View File

@ -2,7 +2,7 @@
add_definitions(-DNGLIB_EXPORTS)
# ADD_LIBRARY(nglib SHARED nglib.cpp)
# TARGET_LINK_LIBRARIES( nglib interface geom2d csg stl occ mesh ${OCCLIBS} ${MPI_CXX_LIBRARIES} )
# TARGET_LINK_LIBRARIES( nglib interface geom2d csg stl occ mesh ${OCC_LIBRARIES} ${MPI_CXX_LIBRARIES} )
set(nglib_sources nglib.cpp)
if(WIN32)
@ -27,22 +27,22 @@ endif(WIN32)
add_library(nglib SHARED ${nglib_sources} ${nglib_objects})
target_link_libraries( nglib ${LIBPTHREAD} ${OCCLIBS} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} )
target_link_libraries( nglib ${LIBPTHREAD} ${OCC_LIBRARIES} ${LIBTOGL} ${MPI_CXX_LIBRARIES} ${OPENGL_LIBRARIES} ${TK_LIBRARY} ${TCL_LIBRARY} ${CMAKE_THREAD_LIBS_INIT} ${X11_Xmu_LIB} ${JPEG_LIBRARIES} ${MKL_LIBRARIES} ${ZLIB_LIBRARIES} )
if(USE_PYTHON)
target_link_libraries(nglib ${PYTHON_LIBS})
endif(USE_PYTHON)
if(NOT WIN32)
add_executable(ng_vol ng_vol.cpp ${nglib_objects})
target_link_libraries( ng_vol nglib ${OCCLIBS} ${MPI_CXX_LIBRARIES} )
target_link_libraries( ng_vol nglib interface geom2d csg stl occ mesh )
add_executable(ng_stl ng_stl.cpp ${nglib_objects})
target_link_libraries( ng_stl nglib ${OCCLIBS} ${MPI_CXX_LIBRARIES} )
target_link_libraries( ng_stl nglib interface geom2d csg stl occ mesh )
install(TARGETS nglib ng_vol ng_stl ${ng_install_dir})
endif(NOT WIN32)
# if(NOT WIN32)
# add_executable(ng_vol ng_vol.cpp ${nglib_objects})
# target_link_libraries( ng_vol nglib ${OCC_LIBRARIES} ${MPI_CXX_LIBRARIES} )
# target_link_libraries( ng_vol nglib interface geom2d csg stl occ mesh )
#
# add_executable(ng_stl ng_stl.cpp ${nglib_objects})
# target_link_libraries( ng_stl nglib ${OCC_LIBRARIES} ${OCC_OCAF_LIBRARIES} ${MPI_CXX_LIBRARIES} )
# target_link_libraries( ng_stl nglib interface geom2d csg stl occ mesh )
#
# install(TARGETS nglib ng_vol ng_stl ${ng_install_dir})
# endif(NOT WIN32)
install(TARGETS nglib ${ng_install_dir})

View File

@ -1,4 +1,5 @@
install( FILES
shaft.geo mesh.py exportNeutral.py
DESTINATION share/netgen/py_tutorials
COMPONENT netgen_tutorial
)

View File

@ -1,5 +1,5 @@
install(FILES
__init__.py meshing.py csg.py
install(FILES __init__.py meshing.py csg.py
DESTINATION ${PYTHON_PACKAGES_INSTALL_DIR}/netgen
)
COMPONENT netgen
)

View File

@ -8,4 +8,5 @@ install( FILES
hinge.stl part1.stl frame.step screw.step
squarehole.in2d squarecircle.in2d square.in2d
DESTINATION share/netgen
COMPONENT netgen_tutorial
)