]> SALOME platform Git repositories - modules/shaper.git/blob - src/SketchSolver/PlaneGCSSolver/CMakeLists.txt
Salome HOME
Sketcher: Remove obsolete interfaces. Code cleanup.
[modules/shaper.git] / src / SketchSolver / PlaneGCSSolver / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 FIND_PACKAGE(PlaneGCS REQUIRED)
4
5 SET(PLANEGCSSOLVER_HEADERS
6     PlaneGCSSolver_Defs.h
7     PlaneGCSSolver_Solver.h
8     PlaneGCSSolver_Storage.h
9     PlaneGCSSolver_ConstraintWrapper.h
10     PlaneGCSSolver_EdgeWrapper.h
11     PlaneGCSSolver_EdgeWrapper.h
12     PlaneGCSSolver_PointWrapper.h
13     PlaneGCSSolver_ScalarWrapper.h
14     PlaneGCSSolver_AngleWrapper.h
15     PlaneGCSSolver_Tools.h
16 )
17
18 SET(PLANEGCSSOLVER_SOURCES
19     PlaneGCSSolver_Solver.cpp
20     PlaneGCSSolver_Storage.cpp
21     PlaneGCSSolver_ConstraintWrapper.cpp
22     PlaneGCSSolver_EdgeWrapper.cpp
23     PlaneGCSSolver_PointWrapper.cpp
24     PlaneGCSSolver_ScalarWrapper.cpp
25     PlaneGCSSolver_AngleWrapper.cpp
26     PlaneGCSSolver_Tools.cpp
27 )
28
29 SET(PLANEGCSSOLVER_BUILDER_HEADERS
30     PlaneGCSSolver_EntityBuilder.h
31     PlaneGCSSolver_AttributeBuilder.h
32     PlaneGCSSolver_FeatureBuilder.h
33     PlaneGCSSolver_EntityDestroyer.h
34 )
35
36 SET(PLANEGCSSOLVER_BUILDER_SOURCES
37     PlaneGCSSolver_AttributeBuilder.cpp
38     PlaneGCSSolver_FeatureBuilder.cpp
39     PlaneGCSSolver_EntityDestroyer.cpp
40 )
41
42 SET(PLANEGCSSOLVER_UPDATER_HEADERS
43     PlaneGCSSolver_Update.h
44     PlaneGCSSolver_UpdateFeature.h
45     PlaneGCSSolver_UpdateCoincidence.h
46 )
47
48 SET(PLANEGCSSOLVER_UPDATER_SOURCES
49     PlaneGCSSolver_UpdateFeature.cpp
50     PlaneGCSSolver_UpdateCoincidence.cpp
51 )
52
53 SET(PROJECT_LIBRARIES
54     ${PLANEGCS_LIBRARIES}
55     ${SKETCHSOLVER_LIBRARIES}
56 )
57
58 INCLUDE_DIRECTORIES(
59     ${Boost_INCLUDE_DIRS}
60     ${EIGEN3_INCLUDE_DIR}
61     ${PLANEGCS_INCLUDE_DIRS}
62     ${PROJECT_SOURCE_DIR}/src/SketchSolver
63     ${PROJECT_SOURCE_DIR}/src/SketchPlugin
64     ${PROJECT_SOURCE_DIR}/src/ModelAPI
65     ${PROJECT_SOURCE_DIR}/src/GeomAPI
66     ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
67 )
68
69 SOURCE_GROUP ("Resource Files" FILES ${SKETCHSOLVER_TEXT_RESOURCES})
70 SOURCE_GROUP ("Header Files\\Builders" FILES ${PLANEGCSSOLVER_BUILDER_HEADERS})
71 SOURCE_GROUP ("Source Files\\Builders" FILES ${PLANEGCSSOLVER_BUILDER_SOURCES})
72 SOURCE_GROUP ("Header Files\\Updaters" FILES ${PLANEGCSSOLVER_UPDATER_HEADERS})
73 SOURCE_GROUP ("Source Files\\Updaters" FILES ${PLANEGCSSOLVER_UPDATER_SOURCES})
74 SOURCE_GROUP ("Header Files\\SketchSolver" FILES ${SKETCHSOLVER_HEADERS})
75 SOURCE_GROUP ("Source Files\\SketchSolver" FILES ${SKETCHSOLVER_SOURCES})
76 SOURCE_GROUP ("Header Files\\Constraints" FILES ${SKETCHSOLVER_CONSTRAINT_HEADERS})
77 SOURCE_GROUP ("Source Files\\Constraints" FILES ${SKETCHSOLVER_CONSTRAINT_SOURCES})
78 SOURCE_GROUP ("Header Files\\PlaneGCS" FILES ${PLANEGCSSOLVER_HEADERS})
79 SOURCE_GROUP ("Source Files\\PlaneGCS" FILES ${PLANEGCSSOLVER_SOURCES})
80
81 SET(PROJECT_HEADERS
82     ${PLANEGCSSOLVER_HEADERS}
83     ${PLANEGCSSOLVER_BUILDER_HEADERS}
84     ${PLANEGCSSOLVER_UPDATER_HEADERS}
85     ${SKETCHSOLVER_HEADERS}
86     ${SKETCHSOLVER_CONSTRAINT_HEADERS}
87 )
88
89 SET(PROJECT_SOURCES
90     ${PLANEGCSSOLVER_SOURCES}
91     ${PLANEGCSSOLVER_BUILDER_SOURCES}
92     ${PLANEGCSSOLVER_UPDATER_SOURCES}
93     ${SKETCHSOLVER_SOURCES}
94     ${SKETCHSOLVER_CONSTRAINT_SOURCES}
95 )
96
97 ADD_LIBRARY(PlaneGCSSolver MODULE ${PROJECT_SOURCES} ${PROJECT_HEADERS} ${SKETCHSOLVER_TEXT_RESOURCES})
98 TARGET_LINK_LIBRARIES(PlaneGCSSolver ${PROJECT_LIBRARIES} ${SKETCHSOLVER_LIBRARIES})
99 INSTALL(TARGETS PlaneGCSSolver DESTINATION ${SHAPER_INSTALL_PLUGIN_FILES})
100 INSTALL(FILES ${SKETCHSOLVER_TEXT_RESOURCES} DESTINATION ${SHAPER_INSTALL_XML_RESOURCES})