]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAPI/CMakeLists.txt
Salome HOME
Added interfaces to OCC data and algos: features must not depend on OCC
[modules/shaper.git] / src / GeomAPI / 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     GeomAPI.h
9     GeomAPI_Interface.h
10     GeomAPI_Pnt.h
11     GeomAPI_Dir.h
12     GeomAPI_Shape.h
13 )
14
15 SET(PROJECT_SOURCES
16     GeomAPI_Interface.cpp
17     GeomAPI_Pnt.cpp
18     GeomAPI_Dir.cpp
19     GeomAPI_Shape.cpp
20 )
21
22 ADD_DEFINITIONS(-DGEOMAPI_EXPORTS ${CAS_DEFINITIONS})
23 ADD_LIBRARY(GeomAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
24
25 SET(CMAKE_SWIG_FLAGS "")
26
27 SET_SOURCE_FILES_PROPERTIES(GeomAPI.i PROPERTIES CPLUSPLUS ON)
28 SET_SOURCE_FILES_PROPERTIES(GeomAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
29
30 INCLUDE_DIRECTORIES(
31   ${CAS_INCLUDE_DIRS}
32 )
33
34 TARGET_LINK_LIBRARIES(GeomAPI ${PROJECT_LIBRARIES} ${CAS_KERNEL})
35
36 SET(SWIG_SCRIPTS
37   ${CMAKE_CURRENT_BINARY_DIR}/GeomAPI.py
38 )
39
40 SET(SWIG_LINK_LIBRARIES
41   GeomAPI
42   ${PYTHON_LIBRARIES}
43 )
44
45 SWIG_ADD_MODULE(GeomAPI python GeomAPI.i ${PROJECT_HEADERS})
46 SWIG_LINK_LIBRARIES(GeomAPI ${SWIG_LINK_LIBRARIES})
47
48 IF(WIN32)
49   SET_TARGET_PROPERTIES(_GeomAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAPI_d)
50 ENDIF(WIN32)
51
52 INSTALL(TARGETS _GeomAPI DESTINATION swig)
53 INSTALL(TARGETS GeomAPI DESTINATION bin)
54 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig)