]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAlgoAPI/CMakeLists.txt
Salome HOME
Intermediate changes for sketch builder
[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     GeomAlgoAPI_SketchBuilder.h
13 )
14
15 SET(PROJECT_SOURCES
16     GeomAlgoAPI_CompoundBuilder.cpp
17     GeomAlgoAPI_FaceBuilder.cpp
18     GeomAlgoAPI_EdgeBuilder.cpp
19     GeomAlgoAPI_SketchBuilder.cpp
20 )
21
22 ADD_DEFINITIONS(-DGEOMALGOAPI_EXPORTS ${CAS_DEFINITIONS})
23 ADD_LIBRARY(GeomAlgoAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
24
25 SET(CMAKE_SWIG_FLAGS "")
26
27 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES CPLUSPLUS ON)
28 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
29
30 INCLUDE_DIRECTORIES(
31   ../GeomAPI
32   ${CAS_INCLUDE_DIRS}
33 )
34
35 TARGET_LINK_LIBRARIES(GeomAlgoAPI ${PROJECT_LIBRARIES} GeomAPI ${CAS_TKBool} ${CAS_TKBO})
36
37 SET(SWIG_SCRIPTS
38   ${CMAKE_CURRENT_BINARY_DIR}/GeomAlgoAPI.py
39 )
40
41 SET(SWIG_LINK_LIBRARIES
42   GeomAPI
43   GeomAlgoAPI
44   ${PYTHON_LIBRARIES}
45 )
46
47 SWIG_ADD_MODULE(GeomAlgoAPI python GeomAlgoAPI.i ${PROJECT_HEADERS})
48 SWIG_LINK_LIBRARIES(GeomAlgoAPI ${SWIG_LINK_LIBRARIES})
49
50 IF(WIN32)
51   SET_TARGET_PROPERTIES(_GeomAlgoAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAlgoAPI_d)
52 ENDIF(WIN32)
53
54 INSTALL(TARGETS _GeomAlgoAPI DESTINATION swig)
55 INSTALL(TARGETS GeomAlgoAPI DESTINATION bin)
56 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig)