Salome HOME
Merge branch 'CPPHighAPI'
[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_Collinear.h
12     SketcherPrs_DimensionStyleListener.h
13     SketcherPrs_Factory.h
14     SketcherPrs_Parallel.h
15     SketcherPrs_Tools.h
16     SketcherPrs_Perpendicular.h
17     SketcherPrs_SymbolPrs.h
18     SketcherPrs_PositionMgr.h
19     SketcherPrs_Rigid.h
20     SketcherPrs_HVDirection.h
21     SketcherPrs_Equal.h
22     SketcherPrs_Tangent.h
23     SketcherPrs_SensitivePoint.h
24     SketcherPrs_Radius.h
25     SketcherPrs_LengthDimension.h
26     SketcherPrs_Middle.h
27     SketcherPrs_Mirror.h
28     SketcherPrs_Transformation.h
29     SketcherPrs_Angle.h
30     AIS_AngleDimension_.hxx
31 )
32
33 SET(PROJECT_SOURCES
34     SketcherPrs_Coincident.cpp
35     SketcherPrs_Collinear.cpp
36     SketcherPrs_DimensionStyleListener.cpp
37     SketcherPrs_Factory.cpp
38     SketcherPrs_Parallel.cpp
39     SketcherPrs_Tools.cpp
40     SketcherPrs_Perpendicular.cpp
41     SketcherPrs_SymbolPrs.cpp
42     SketcherPrs_PositionMgr.cpp
43     SketcherPrs_Rigid.cpp
44     SketcherPrs_HVDirection.cpp
45     SketcherPrs_Equal.cpp
46     SketcherPrs_Tangent.cpp
47     SketcherPrs_SensitivePoint.cpp
48     SketcherPrs_Radius.cpp
49     SketcherPrs_LengthDimension.cpp
50     SketcherPrs_Middle.cpp
51     SketcherPrs_Mirror.cpp
52     SketcherPrs_Transformation.cpp
53     SketcherPrs_Angle.cpp
54     AIS_AngleDimension_.cxx
55 )
56
57 SET(PROJECT_LIBRARIES
58     Config
59     ModelAPI
60     GeomAPI
61     GeomDataAPI
62     Events
63     ${CAS_KERNEL}
64     ${CAS_MODELER}
65     ${CAS_VIEWER}
66     ${CAS_SHAPE}
67     ${CAS_TKTopAlgo}
68     ${CAS_TKOpenGl}
69     ${FREETYPE_LIBRARIES}
70 )
71
72 IF(WIN32)
73     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
74 ELSE()
75     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
76 ENDIF()
77
78
79 SET(PROJECT_PICTURES
80     icons/collinear.png
81     icons/parallel.png
82     icons/perpendicular.png
83     icons/anchor.png
84     icons/horisontal.png
85     icons/vertical.png
86     icons/equal.png
87     icons/tangent.png
88     icons/middlepoint.png
89     icons/mirror.png
90     icons/rotate.png
91     icons/translate.png
92 )
93
94 ADD_DEFINITIONS(-DSKETCHERPRS_EXPORTS ${CAS_DEFINITIONS})
95 ADD_LIBRARY(SketcherPrs SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
96
97 INCLUDE_DIRECTORIES(
98   ${PROJECT_SOURCE_DIR}/src/Config
99   ${PROJECT_SOURCE_DIR}/src/Events
100   ${PROJECT_SOURCE_DIR}/src/ModelAPI
101   ${PROJECT_SOURCE_DIR}/src/GeomAPI
102   ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
103   ${PROJECT_SOURCE_DIR}/src/SketchPlugin
104   ${CAS_INCLUDE_DIRS}
105   ${FREETYPE_INCLUDE_DIRS}
106 )
107
108 TARGET_LINK_LIBRARIES(SketcherPrs ${PROJECT_LIBRARIES})
109
110 INSTALL(TARGETS SketcherPrs DESTINATION ${SHAPER_INSTALL_BIN})
111 INSTALL(FILES ${PROJECT_PICTURES} DESTINATION ${SHAPER_INSTALL_RESOURCES})