Salome HOME
Issue #830 - cmake must fail if SolveSpace has not been found
[modules/shaper.git] / src / SketcherPrs / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 IF(NOT DEFINED ENV{FREETYPE_DIR})
4     SET(ENV{FREETYPE_DIR} $ENV{FREETYPE_ROOT_DIR})
5 ENDIF()
6 FIND_PACKAGE(Freetype REQUIRED)
7
8 SET(PROJECT_HEADERS
9     SketcherPrs.h
10     SketcherPrs_Coincident.h
11     SketcherPrs_Factory.h
12     SketcherPrs_Parallel.h
13     SketcherPrs_Tools.h
14     SketcherPrs_Perpendicular.h
15     SketcherPrs_SymbolPrs.h
16     SketcherPrs_PositionMgr.h
17     SketcherPrs_Rigid.h
18     SketcherPrs_HVDirection.h
19     SketcherPrs_Equal.h
20     SketcherPrs_Tangent.h
21     SketcherPrs_SensitivePoint.h
22     SketcherPrs_Radius.h
23     SketcherPrs_LengthDimension.h
24     SketcherPrs_Mirror.h
25     SketcherPrs_Transformation.h
26     SketcherPrs_Angle.h
27 )
28
29 SET(PROJECT_SOURCES
30     SketcherPrs_Coincident.cpp
31     SketcherPrs_Factory.cpp
32     SketcherPrs_Parallel.cpp
33     SketcherPrs_Tools.cpp
34     SketcherPrs_Perpendicular.cpp
35     SketcherPrs_SymbolPrs.cpp
36     SketcherPrs_PositionMgr.cpp
37     SketcherPrs_Rigid.cpp
38     SketcherPrs_HVDirection.cpp
39     SketcherPrs_Equal.cpp
40     SketcherPrs_Tangent.cpp
41     SketcherPrs_SensitivePoint.cpp
42     SketcherPrs_Radius.cpp
43     SketcherPrs_LengthDimension.cpp
44     SketcherPrs_Mirror.cpp
45     SketcherPrs_Transformation.cpp
46     SketcherPrs_Angle.cpp
47 )
48
49 SET(PROJECT_LIBRARIES
50     Config
51     ModelAPI
52     GeomAPI
53     Events
54     ${CAS_KERNEL}
55     ${CAS_MODELER}
56     ${CAS_VIEWER}
57     ${CAS_SHAPE}
58     ${CAS_TKTopAlgo}
59     ${CAS_TKOpenGl}
60     ${FREETYPE_LIBRARIES}
61 )
62
63 IF(WIN32)
64     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
65 ELSE()
66     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
67 ENDIF()
68
69
70 SET(PROJECT_PICTURES
71     icons/parallel.png
72     icons/perpendicular.png
73     icons/anchor.png
74     icons/horisontal.png
75     icons/vertical.png
76     icons/equal.png
77     icons/tangent.png
78     icons/mirror.png
79     icons/rotate.png
80     icons/translate.png
81 )
82
83 ADD_DEFINITIONS(-DSKETCHERPRS_EXPORTS ${CAS_DEFINITIONS})
84 ADD_LIBRARY(SketcherPrs SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
85
86 INCLUDE_DIRECTORIES(
87   ${PROJECT_SOURCE_DIR}/src/Config
88   ${PROJECT_SOURCE_DIR}/src/Events
89   ${PROJECT_SOURCE_DIR}/src/ModelAPI
90   ${PROJECT_SOURCE_DIR}/src/GeomAPI
91   ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
92   ${PROJECT_SOURCE_DIR}/src/SketchPlugin
93   ${CAS_INCLUDE_DIRS}
94   ${FREETYPE_INCLUDE_DIRS}
95 )
96
97 TARGET_LINK_LIBRARIES(SketcherPrs ${PROJECT_LIBRARIES})
98
99 INSTALL(TARGETS SketcherPrs DESTINATION bin)
100 INSTALL(FILES ${PROJECT_PICTURES} DESTINATION resources)