Salome HOME
Sketch line feature based on points attributes
[modules/shaper.git] / src / GeomAlgoAPI / CMakeLists.txt
1 FIND_PACKAGE(SWIG REQUIRED)
2 INCLUDE(FindCAS)
3
4 INCLUDE(${SWIG_USE_FILE})
5 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
6
7 SET(PROJECT_HEADERS
8     GeomAlgoAPI.h
9     GeomAlgoAPI_CompoundBuilder.h
10     GeomAlgoAPI_FaceBuilder.h
11     GeomAlgoAPI_EdgeBuilder.h
12 )
13
14 SET(PROJECT_SOURCES
15     GeomAlgoAPI_CompoundBuilder.cpp
16     GeomAlgoAPI_FaceBuilder.cpp
17     GeomAlgoAPI_EdgeBuilder.cpp
18 )
19
20 ADD_DEFINITIONS(-DGEOMALGOAPI_EXPORTS ${CAS_DEFINITIONS})
21 ADD_LIBRARY(GeomAlgoAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
22
23 SET(CMAKE_SWIG_FLAGS "")
24
25 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES CPLUSPLUS ON)
26 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
27
28 INCLUDE_DIRECTORIES(
29   ../GeomAPI
30   ${CAS_INCLUDE_DIRS}
31 )
32
33 TARGET_LINK_LIBRARIES(GeomAlgoAPI ${PROJECT_LIBRARIES} GeomAPI ${CAS_KERNEL} ${CAS_MODELER})
34
35 SET(SWIG_SCRIPTS
36   ${CMAKE_CURRENT_BINARY_DIR}/GeomAlgoAPI.py
37 )
38
39 SET(SWIG_LINK_LIBRARIES
40   GeomAPI
41   GeomAlgoAPI
42   ${PYTHON_LIBRARIES}
43 )
44
45 SWIG_ADD_MODULE(GeomAlgoAPI python GeomAlgoAPI.i ${PROJECT_HEADERS})
46 SWIG_LINK_LIBRARIES(GeomAlgoAPI ${SWIG_LINK_LIBRARIES})
47
48 IF(WIN32)
49   SET_TARGET_PROPERTIES(_GeomAlgoAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAlgoAPI_d)
50 ENDIF(WIN32)
51
52 INSTALL(TARGETS _GeomAlgoAPI DESTINATION swig)
53 INSTALL(TARGETS GeomAlgoAPI DESTINATION bin)
54 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig)