Salome HOME
c443483236c830f317f53048ce148f20f856290a
[modules/shaper.git] / src / SketcherPrs / CMakeLists.txt
1 ## Copyright (C) 2014-2017  CEA/DEN, EDF R&D
2 ##
3 ## This library is free software; you can redistribute it and/or
4 ## modify it under the terms of the GNU Lesser General Public
5 ## License as published by the Free Software Foundation; either
6 ## version 2.1 of the License, or (at your option) any later version.
7 ##
8 ## This library is distributed in the hope that it will be useful,
9 ## but WITHOUT ANY WARRANTY; without even the implied warranty of
10 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 ## Lesser General Public License for more details.
12 ##
13 ## You should have received a copy of the GNU Lesser General Public
14 ## License along with this library; if not, write to the Free Software
15 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
16 ##
17 ## See http:##www.salome-platform.org/ or
18 ## email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
19 ##
20
21 IF(NOT DEFINED ENV{FREETYPE_DIR})
22     SET(ENV{FREETYPE_DIR} $ENV{FREETYPE_ROOT_DIR})
23 ENDIF()
24 FIND_PACKAGE(Freetype REQUIRED)
25
26 SET(PROJECT_HEADERS
27     SketcherPrs.h
28     SketcherPrs_Coincident.h
29     SketcherPrs_Collinear.h
30     SketcherPrs_DimensionStyleListener.h
31     SketcherPrs_Factory.h
32     SketcherPrs_Parallel.h
33     SketcherPrs_Tools.h
34     SketcherPrs_Perpendicular.h
35     SketcherPrs_SymbolPrs.h
36     SketcherPrs_PositionMgr.h
37     SketcherPrs_Rigid.h
38     SketcherPrs_HVDirection.h
39     SketcherPrs_Equal.h
40     SketcherPrs_Tangent.h
41     SketcherPrs_SensitivePoint.h
42     SketcherPrs_Radius.h
43     SketcherPrs_LengthDimension.h
44     SketcherPrs_Middle.h
45     SketcherPrs_Mirror.h
46     SketcherPrs_Transformation.h
47     SketcherPrs_Angle.h
48 )
49
50 SET(PROJECT_SOURCES
51     SketcherPrs_Coincident.cpp
52     SketcherPrs_Collinear.cpp
53     SketcherPrs_DimensionStyleListener.cpp
54     SketcherPrs_Factory.cpp
55     SketcherPrs_Parallel.cpp
56     SketcherPrs_Tools.cpp
57     SketcherPrs_Perpendicular.cpp
58     SketcherPrs_SymbolPrs.cpp
59     SketcherPrs_PositionMgr.cpp
60     SketcherPrs_Rigid.cpp
61     SketcherPrs_HVDirection.cpp
62     SketcherPrs_Equal.cpp
63     SketcherPrs_Tangent.cpp
64     SketcherPrs_SensitivePoint.cpp
65     SketcherPrs_Radius.cpp
66     SketcherPrs_LengthDimension.cpp
67     SketcherPrs_Middle.cpp
68     SketcherPrs_Mirror.cpp
69     SketcherPrs_Transformation.cpp
70     SketcherPrs_Angle.cpp
71 )
72
73 SET(PROJECT_LIBRARIES
74     Config
75     ModelAPI
76     ModelGeomAlgo
77     GeomAPI
78     GeomDataAPI
79     Events
80     ${CAS_KERNEL}
81     ${CAS_MODELER}
82     ${CAS_VIEWER}
83     ${CAS_SHAPE}
84     ${CAS_TKTopAlgo}
85     ${CAS_TKOpenGl}
86     ${FREETYPE_LIBRARIES}
87 )
88
89 IF(WIN32)
90     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} opengl32)
91 ELSE()
92     SET(PROJECT_LIBRARIES ${PROJECT_LIBRARIES} GL)
93 ENDIF()
94
95
96 SET(PROJECT_PICTURES
97     icons/collinear.png
98     icons/parallel.png
99     icons/perpendicular.png
100     icons/anchor.png
101     icons/horisontal.png
102     icons/vertical.png
103     icons/equal.png
104     icons/tangent.png
105     icons/middlepoint.png
106     icons/mirror.png
107     icons/rotate.png
108     icons/translate.png
109 )
110
111 ADD_DEFINITIONS(-DSKETCHERPRS_EXPORTS ${CAS_DEFINITIONS} -D_CRT_SECURE_NO_WARNINGS)
112 ADD_LIBRARY(SketcherPrs SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
113
114 INCLUDE_DIRECTORIES(
115   ${PROJECT_SOURCE_DIR}/src/Config
116   ${PROJECT_SOURCE_DIR}/src/Events
117   ${PROJECT_SOURCE_DIR}/src/ModelAPI
118   ${PROJECT_SOURCE_DIR}/src/ModelGeomAlgo
119   ${PROJECT_SOURCE_DIR}/src/GeomAPI
120   ${PROJECT_SOURCE_DIR}/src/GeomDataAPI
121   ${PROJECT_SOURCE_DIR}/src/SketchPlugin
122   ${CAS_INCLUDE_DIRS}
123   ${FREETYPE_INCLUDE_DIRS}
124 )
125
126 TARGET_LINK_LIBRARIES(SketcherPrs ${PROJECT_LIBRARIES})
127
128 INSTALL(TARGETS SketcherPrs DESTINATION ${SHAPER_INSTALL_BIN})
129 INSTALL(FILES ${PROJECT_PICTURES} DESTINATION ${SHAPER_INSTALL_RESOURCES})