/
CMakeLists.txt
81 lines (67 loc) · 2.09 KB
/
CMakeLists.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
if(MSVC)
add_definitions(-DFCAppMeshPart -DHAVE_ACOSH -DHAVE_ASINH -DHAVE_ATANH)
else(MSVC)
add_definitions(-DHAVE_LIMITS_H -DHAVE_CONFIG_H)
endif(MSVC)
add_definitions(-DHAVE_SMESH)
include_directories(
${CMAKE_SOURCE_DIR}/src
${CMAKE_SOURCE_DIR}/src/3rdParty/salomesmesh/inc
${Boost_INCLUDE_DIRS}
${OCC_INCLUDE_DIR}
${ZLIB_INCLUDE_DIR}
${PYTHON_INCLUDE_PATH}
${XERCESC_INCLUDE_DIR}
${SMESH_INCLUDE_DIR}
)
link_directories(${OCC_LIBRARY_DIR})
if(FREECAD_BUILD_FEM_NETGEN)
set(MeshPart_LIBS
Part
Mesh
StdMeshers
NETGENPlugin
SMESH
)
else(FREECAD_BUILD_FEM_NETGEN)
set(MeshPart_LIBS
Part
Mesh
StdMeshers
SMESH
)
endif(FREECAD_BUILD_FEM_NETGEN)
SET(MeshPart_SRCS
AppMeshPart.cpp
AppMeshPartPy.cpp
CurveProjector.cpp
CurveProjector.h
MeshAlgos.cpp
MeshAlgos.h
Mesher.cpp
Mesher.h
PreCompiled.cpp
PreCompiled.h
)
add_library(MeshPart SHARED ${MeshPart_SRCS})
target_link_libraries(MeshPart ${MeshPart_LIBS})
fc_target_copy_resource(MeshPart
${CMAKE_SOURCE_DIR}/src/Mod/MeshPart
${CMAKE_BINARY_DIR}/Mod/MeshPart
Init.py)
if(MSVC)
set_target_properties(MeshPart PROPERTIES SUFFIX ".pyd")
set_target_properties(MeshPart PROPERTIES DEBUG_OUTPUT_NAME "MeshPart_d")
set_target_properties(MeshPart PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/Mod/MeshPart)
set_target_properties(MeshPart PROPERTIES PREFIX "../")
elseif(MINGW)
set_target_properties(MeshPart PROPERTIES SUFFIX ".pyd")
set_target_properties(MeshPart PROPERTIES DEBUG_OUTPUT_NAME "MeshPart_d")
set_target_properties(MeshPart PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/Mod/MeshPart)
set_target_properties(MeshPart PROPERTIES PREFIX "")
else(MSVC)
set_target_properties(MeshPart PROPERTIES LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/Mod/MeshPart)
set_target_properties(MeshPart PROPERTIES PREFIX "")
set_target_properties(MeshPart PROPERTIES INSTALL_RPATH ${INSTALL_RPATH})
endif(MSVC)
INSTALL(TARGETS MeshPart DESTINATION lib)