Salome HOME
Porting to SALOME_8.2.0 : SHAPERGUI module
[modules/shaper.git] / src / PartSet / CMakeLists.txt
index 55370797f266c8a9c070d49a2a95d70e3422fb29..80c3e1c41484a24a388dc3926ab56ede6152fc1b 100644 (file)
@@ -1,36 +1,75 @@
+## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
+
 INCLUDE(Common)
+INCLUDE(UseQtExt)
+
+# additional include directories
+INCLUDE_DIRECTORIES(${QT_INCLUDES})
 
-SET(CMAKE_AUTOMOC ON)
+# additional preprocessor / compiler flags
+ADD_DEFINITIONS(${QT_DEFINITIONS})
 
 SET(PROJECT_HEADERS
        PartSet.h
        PartSet_Constants.h
-       PartSet_EditLine.h
+       PartSet_CustomPrs.h
+       PartSet_ExternalObjectsMgr.h
        PartSet_Module.h
+       PartSet_MouseProcessor.h
+       PartSet_OperationPrs.h
+        PartSet_OverconstraintListener.h
+        PartSet_PreviewPlanes.h
        PartSet_Tools.h
        PartSet_WidgetSketchLabel.h
        PartSet_Validators.h
        PartSet_WidgetPoint2d.h
+       PartSet_WidgetEditor.h
+       PartSet_WidgetMultiSelector.h
        PartSet_WidgetPoint2dDistance.h
+       PartSet_WidgetPoint2DFlyout.h
        PartSet_WidgetShapeSelector.h
-       PartSet_OperationSketch.h
+       PartSet_WidgetFileSelector.h
        PartSet_Filters.h
+       PartSet_FilterInfinite.h
+       PartSet_ResultSketchPrs.h
+       PartSet_SketcherMgr.h
+       PartSet_SketcherReetntrantMgr.h
+       PartSet_MenuMgr.h
+       PartSet_WidgetSketchCreator.h
+       PartSet_IconFactory.h
+       PartSet_WidgetChoice.h
+       PartSet_WidgetSubShapeSelector.h
 )
 
 SET(PROJECT_SOURCES
-       PartSet_EditLine.cpp
+       PartSet_CustomPrs.cpp
+       PartSet_ExternalObjectsMgr.cpp
        PartSet_Module.cpp
+       PartSet_OperationPrs.cpp
+        PartSet_OverconstraintListener.cpp
+        PartSet_PreviewPlanes.cpp
        PartSet_Tools.cpp
        PartSet_WidgetSketchLabel.cpp
        PartSet_Validators.cpp
+       PartSet_WidgetEditor.cpp
+       PartSet_WidgetMultiSelector.cpp
        PartSet_WidgetPoint2d.cpp
        PartSet_WidgetPoint2dDistance.cpp
+       PartSet_WidgetPoint2DFlyout.cpp
        PartSet_WidgetShapeSelector.cpp
-       PartSet_OperationSketch.cpp
+       PartSet_WidgetFileSelector.cpp
        PartSet_Filters.cpp
+       PartSet_FilterInfinite.cpp
+       PartSet_ResultSketchPrs.cpp
+       PartSet_SketcherMgr.cpp
+       PartSet_SketcherReetntrantMgr.cpp
+       PartSet_MenuMgr.cpp
+       PartSet_WidgetSketchCreator.cpp
+       PartSet_IconFactory.cpp
+       PartSet_WidgetSubShapeSelector.cpp
 )
 
-SET(PROJECT_RESOURCES 
+SET(PROJECT_RESOURCES
     PartSet_icons.qrc
 )
 
@@ -40,20 +79,26 @@ SET(PROJECT_RESOURCES
 
 SET(PROJECT_LIBRARIES
     ModuleBase
+    ModelGeomAlgo
     Config
     GeomAPI
+    GeomDataAPI
+    SketcherPrs
     ${QT_LIBRARIES}
     ${CAS_KERNEL}
     ${CAS_SHAPE}
 )
 
-SET(PROJECT_AUTOMOC 
-    ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
-)
+#SET(PROJECT_AUTOMOC
+#    ${CMAKE_CURRENT_BINARY_DIR}/PartSet_automoc.cpp
+#)
+# sources / moc wrappings
+QT_WRAP_MOC(PROJECT_AUTOMOC ${PROJECT_HEADERS})
 
-QT4_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
+# sources / rcc wrappings
+QT_ADD_RESOURCES(PROJECT_COMPILED_RESOURCES ${PROJECT_RESOURCES})
 #QT4_ADD_TRANSLATION(QM_RESOURCES ${TEXT_RESOURCES})
-#QT4_CREATE_TRANSLATION(QM_RESOURCES 
+#QT4_CREATE_TRANSLATION(QM_RESOURCES
 #                                         ${PROJECT_SOURCES}
 #                                         ${TEXT_RESOURCES}
 #                                         OPTIONS -extensions cpp -no-recursive
@@ -64,26 +109,38 @@ SOURCE_GROUP ("Generated Files" FILES ${PROJECT_AUTOMOC} ${PROJECT_COMPILED_RESO
 #SOURCE_GROUP ("Resource Files" FILES ${TEXT_RESOURCES} ${PROJECT_RESOURCES})
 SOURCE_GROUP ("Resource Files" FILES ${PROJECT_RESOURCES})
 
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/src/XGUI 
-                    ${CMAKE_SOURCE_DIR}/src/Config
-                    ${CMAKE_SOURCE_DIR}/src/Events
-                    ${CMAKE_SOURCE_DIR}/src/ModuleBase
-                    ${CMAKE_SOURCE_DIR}/src/ModelAPI
-                    ${CMAKE_SOURCE_DIR}/src/GeomDataAPI
-                    ${CMAKE_SOURCE_DIR}/src/GeomAlgoAPI
-                    ${CMAKE_SOURCE_DIR}/src/SketchPlugin
-                    ${CMAKE_SOURCE_DIR}/src/FeaturesPlugin
-                    ${CMAKE_SOURCE_DIR}/src/GeomAPI
+INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/XGUI
+                    ${PROJECT_SOURCE_DIR}/src/Config
+                    ${PROJECT_SOURCE_DIR}/src/Events
+                    ${PROJECT_SOURCE_DIR}/src/ModuleBase
+                    ${PROJECT_SOURCE_DIR}/src/ModelAPI
+                    ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
+                    ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
+                    ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
+                    ${PROJECT_SOURCE_DIR}/src/SketchPlugin
+                    ${PROJECT_SOURCE_DIR}/src/ExchangePlugin
+                    ${PROJECT_SOURCE_DIR}/src/SketcherPrs
+                    ${PROJECT_SOURCE_DIR}/src/FeaturesPlugin
+                    ${PROJECT_SOURCE_DIR}/src/PartSetPlugin
+                    ${PROJECT_SOURCE_DIR}/src/GeomAPI
                     ${CAS_INCLUDE_DIRS}
-                                       ${SUIT_INCLUDE}
+                    ${SUIT_INCLUDE}
 )
 
+IF(${HAVE_SALOME})
+  INCLUDE_DIRECTORIES(${SALOME_KERNEL_INCLUDE})
+ELSE(${HAVE_SALOME})
+  INCLUDE_DIRECTORIES(${APPELEMENTS_INCLUDE_DIR})
+ENDIF(NOT ${HAVE_SALOME})
+
+
 ADD_DEFINITIONS(-DPARTSET_EXPORTS ${CAS_DEFINITIONS})
-ADD_LIBRARY(PartSet SHARED 
-       ${PROJECT_SOURCES} 
-       ${PROJECT_HEADERS} 
-       ${PROJECT_COMPILED_RESOURCES} 
-#      ${TEXT_RESOURCES} 
+ADD_LIBRARY(PartSet SHARED
+       ${PROJECT_SOURCES}
+       ${PROJECT_HEADERS}
+       ${PROJECT_COMPILED_RESOURCES}
+       ${PROJECT_AUTOMOC}
+#      ${TEXT_RESOURCES}
 #      ${QM_RESOURCES}
 )
 
@@ -92,5 +149,5 @@ TARGET_LINK_LIBRARIES(PartSet ${PROJECT_LIBRARIES} XGUI ModelAPI GeomAlgoAPI)
 
 ADD_DEPENDENCIES(PartSet ModuleBase)
 
-INSTALL(TARGETS PartSet DESTINATION bin)
+INSTALL(TARGETS PartSet DESTINATION ${SHAPER_INSTALL_BIN})
 #INSTALL(FILES ${QM_RESOURCES} DESTINATION bin)