Salome HOME
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git] / src / PartSet / CMakeLists.txt
1 INCLUDE(Common)
2 INCLUDE(FindCAS)
3
4 SET(CMAKE_AUTOMOC ON)
5
6 SET(PROJECT_HEADERS
7         PartSet.h
8         PartSet_Listener.h
9         PartSet_Module.h
10         PartSet_OperationSketchBase.h
11         PartSet_OperationSketch.h
12         PartSet_OperationSketchLine.h
13         PartSet_Tools.h
14 )
15
16 SET(PROJECT_SOURCES
17         PartSet_Listener.cpp
18         PartSet_Module.cpp
19         PartSet_OperationSketchBase.cpp
20         PartSet_OperationSketch.cpp
21         PartSet_OperationSketchLine.cpp
22         PartSet_Tools.cpp
23 )
24
25 SET(PROJECT_RESOURCES 
26     PartSet_icons.qrc
27 )
28
29 SET(TEXT_RESOURCES
30         PartSet_msg_en.ts
31 )
32
33 SET(PROJECT_LIBRARIES
34     ModuleBase
35     Config
36     GeomAPI
37     ${QT_LIBRARIES}
38     ${CAS_KERNEL}
39 )
40
41 SET(PROJECT_AUTOMOC 
42     ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
43 )
44
45 QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
46 QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
47
48 SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESOURCES} ${QM_RESOURCES})
49 SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
50
51 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/XGUI 
52                     ${CMAKE_SOURCE_DIR}/src/Config
53                     ${CMAKE_SOURCE_DIR}/src/Events
54                     ${CMAKE_SOURCE_DIR}/src/Model
55                     ${CMAKE_SOURCE_DIR}/src/ModuleBase
56                     ${CMAKE_SOURCE_DIR}/src/ModelAPI
57                     ${CMAKE_SOURCE_DIR}/src/GeomDataAPI
58                     ${CMAKE_SOURCE_DIR}/src/GeomAlgoAPI
59                     ${CMAKE_SOURCE_DIR}/src/SketchPlugin
60                     ${CMAKE_SOURCE_DIR}/src/GeomAPI
61                     ${CAS_INCLUDE_DIRS}
62 )
63
64 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
65 ADD_LIBRARY(PartSet SHARED 
66         ${PROJECT_SOURCES} 
67         ${PROJECT_HEADERS} 
68         ${PROJECT_COMPILED_RESOURCES} 
69         ${TEXT_RESOURCES} 
70         ${QM_RESOURCES}
71 )
72
73 # The Qt5Widgets_LIBRARIES variable also includes QtGui and QtCore
74 TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
75
76 ADD_DEPENDENCIES(PartSet ModuleBase)
77
78 INSTALL(TARGETS PartSet DESTINATION bin)