]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAlgoAPI/CMakeLists.txt
Salome HOME
#2205 Ability to customize the arrows and texts of dimensions: Default value is set...
[modules/shaper.git] / src / GeomAlgoAPI / 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 FIND_PACKAGE(SWIG REQUIRED)
22
23 INCLUDE(${SWIG_USE_FILE})
24 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
25
26 SET(PROJECT_HEADERS
27     GeomAlgoAPI.h
28     GeomAlgoAPI_Tools.h
29     GeomAlgoAPI_CompoundBuilder.h
30     GeomAlgoAPI_FaceBuilder.h
31     GeomAlgoAPI_EdgeBuilder.h
32     GeomAlgoAPI_PointBuilder.h
33     GeomAlgoAPI_SketchBuilder.h
34     GeomAlgoAPI_Prism.h
35     GeomAlgoAPI_Revolution.h
36     GeomAlgoAPI_Boolean.h
37     GeomAlgoAPI_Rotation.h
38     GeomAlgoAPI_Translation.h
39     GeomAlgoAPI_MakeShape.h
40     GeomAlgoAPI_MakeShapeCustom.h
41     GeomAlgoAPI_MakeShapeList.h
42     GeomAlgoAPI_MakeSweep.h
43     GeomAlgoAPI_DFLoader.h
44     GeomAlgoAPI_Placement.h
45     GeomAlgoAPI_BREPImport.h
46     GeomAlgoAPI_STEPImport.h
47     GeomAlgoAPI_IGESImport.h
48     GeomAlgoAPI_BREPExport.h
49     GeomAlgoAPI_STEPExport.h
50     GeomAlgoAPI_IGESExport.h
51     GeomAlgoAPI_Transform.h
52     GeomAlgoAPI_ShapeTools.h
53     GeomAlgoAPI_Partition.h
54     GeomAlgoAPI_PaveFiller.h
55     GeomAlgoAPI_Intersection.h
56     GeomAlgoAPI_Pipe.h
57     GeomAlgoAPI_WireBuilder.h
58     GeomAlgoAPI_Sewing.h
59     GeomAlgoAPI_ShapeBuilder.h
60     GeomAlgoAPI_ShapeAPI.h
61     GeomAlgoAPI_Exception.h
62     GeomAlgoAPI_Box.h
63     GeomAlgoAPI_Cylinder.h
64     GeomAlgoAPI_XAOExport.h
65     GeomAlgoAPI_XAOImport.h
66     GeomAlgoAPI_Copy.h
67     GeomAlgoAPI_ConeSegment.h
68     GeomAlgoAPI_Symmetry.h
69     GeomAlgoAPI_Scale.h
70     GeomAlgoAPI_Circ2dBuilder.h
71 )
72
73 SET(PROJECT_SOURCES
74     GeomAlgoAPI_Tools.cpp
75     GeomAlgoAPI_CompoundBuilder.cpp
76     GeomAlgoAPI_FaceBuilder.cpp
77     GeomAlgoAPI_EdgeBuilder.cpp
78     GeomAlgoAPI_PointBuilder.cpp
79     GeomAlgoAPI_SketchBuilder.cpp
80     GeomAlgoAPI_Prism.cpp
81     GeomAlgoAPI_Revolution.cpp
82     GeomAlgoAPI_Boolean.cpp
83     GeomAlgoAPI_Rotation.cpp
84     GeomAlgoAPI_Translation.cpp
85     GeomAlgoAPI_MakeShape.cpp
86     GeomAlgoAPI_MakeShapeCustom.cpp
87     GeomAlgoAPI_MakeShapeList.cpp
88     GeomAlgoAPI_MakeSweep.cpp
89     GeomAlgoAPI_DFLoader.cpp
90     GeomAlgoAPI_Placement.cpp
91     GeomAlgoAPI_BREPImport.cpp
92     GeomAlgoAPI_STEPImport.cpp
93     GeomAlgoAPI_IGESImport.cpp
94     GeomAlgoAPI_BREPExport.cpp
95     GeomAlgoAPI_STEPExport.cpp
96     GeomAlgoAPI_IGESExport.cpp
97     GeomAlgoAPI_Transform.cpp
98     GeomAlgoAPI_ShapeTools.cpp
99     GeomAlgoAPI_Partition.cpp
100     GeomAlgoAPI_PaveFiller.cpp
101     GeomAlgoAPI_Intersection.cpp
102     GeomAlgoAPI_Pipe.cpp
103     GeomAlgoAPI_WireBuilder.cpp
104     GeomAlgoAPI_Sewing.cpp
105     GeomAlgoAPI_ShapeBuilder.cpp
106     GeomAlgoAPI_ShapeAPI.cpp
107     GeomAlgoAPI_Exception.cpp
108     GeomAlgoAPI_Box.cpp
109     GeomAlgoAPI_Cylinder.cpp
110     GeomAlgoAPI_XAOExport.cpp
111     GeomAlgoAPI_XAOImport.cpp
112     GeomAlgoAPI_Copy.cpp
113     GeomAlgoAPI_ConeSegment.cpp
114     GeomAlgoAPI_Symmetry.cpp
115     GeomAlgoAPI_Scale.cpp
116     GeomAlgoAPI_Circ2dBuilder.cpp
117 )
118
119 SET(PROJECT_LIBRARIES
120     GeomAPI
121     GeomAlgoImpl
122     ModelAPI
123     XAOShaper
124     ${CAS_OCAF}
125     ${CAS_SHAPE}
126     ${CAS_TKBO}
127     ${CAS_TKBool}
128     ${CAS_TKBRep}
129     ${CAS_TKCAF}
130     ${CAS_TKCAF}
131     ${CAS_TKLCAF}
132     ${CAS_TKPrim}
133     ${CAS_TKSTEP}
134     ${CAS_TKSTEPBase}
135     ${CAS_TKIGES}
136     ${CAS_TKTopAlgo}
137     ${CAS_TKXSBase}
138     ${CAS_TKOffset}
139     ${CAS_TKShHealing}
140 )
141
142 ADD_DEFINITIONS(-DGEOMALGOAPI_EXPORTS ${CAS_DEFINITIONS})
143 ADD_LIBRARY(GeomAlgoAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
144
145 SET(CMAKE_SWIG_FLAGS "-Wall")
146
147 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES CPLUSPLUS ON)
148 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
149
150 INCLUDE_DIRECTORIES(
151   ../GeomAPI
152   ../GeomAlgoImpl
153   ../ModelAPI
154   ../XAO
155   ${CAS_INCLUDE_DIRS}
156 )
157
158 TARGET_LINK_LIBRARIES(GeomAlgoAPI ${PROJECT_LIBRARIES})
159
160 SET(SWIG_SCRIPTS
161   ${CMAKE_CURRENT_BINARY_DIR}/GeomAlgoAPI.py
162 )
163
164 SET(SWIG_LINK_LIBRARIES
165   GeomAPI
166   GeomAlgoAPI
167   GeomAlgoImpl
168   ${PYTHON_LIBRARIES}
169 )
170
171 SWIG_ADD_MODULE(GeomAlgoAPI python GeomAlgoAPI.i ${PROJECT_HEADERS})
172 SWIG_LINK_LIBRARIES(GeomAlgoAPI ${SWIG_LINK_LIBRARIES})
173
174 IF(WIN32)
175   SET_TARGET_PROPERTIES(_GeomAlgoAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAlgoAPI_d)
176 ENDIF(WIN32)
177
178 INSTALL(TARGETS _GeomAlgoAPI DESTINATION ${SHAPER_INSTALL_SWIG})
179 INSTALL(TARGETS GeomAlgoAPI DESTINATION ${SHAPER_INSTALL_BIN})
180 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION ${SHAPER_INSTALL_SWIG})
181