]> SALOME platform Git repositories - modules/shaper.git/blob - src/GeomAlgoAPI/CMakeLists.txt
Salome HOME
Issue #529: 4.07. Import IGES, export to BREP, STEP, IGES - Import IGES
[modules/shaper.git] / src / GeomAlgoAPI / CMakeLists.txt
1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 FIND_PACKAGE(SWIG REQUIRED)
4
5 INCLUDE(${SWIG_USE_FILE})
6 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
7
8 SET(PROJECT_HEADERS
9     GeomAlgoAPI.h
10     GeomAlgoAPI_CompoundBuilder.h
11     GeomAlgoAPI_FaceBuilder.h
12     GeomAlgoAPI_EdgeBuilder.h
13     GeomAlgoAPI_PointBuilder.h
14     GeomAlgoAPI_SketchBuilder.h
15     GeomAlgoAPI_Extrusion.h
16     GeomAlgoAPI_Prism.h
17     GeomAlgoAPI_Boolean.h
18     GeomAlgoAPI_MakeShape.h
19     GeomAlgoAPI_ShapeProps.h
20     GeomAlgoAPI_DFLoader.h
21     GeomAlgoAPI_Placement.h
22     GeomAlgoAPI_BREPImport.h
23     GeomAlgoAPI_STEPImport.h
24     GeomAlgoAPI_IGESImport.h
25 )
26
27 SET(PROJECT_SOURCES
28     GeomAlgoAPI_CompoundBuilder.cpp
29     GeomAlgoAPI_FaceBuilder.cpp
30     GeomAlgoAPI_EdgeBuilder.cpp
31     GeomAlgoAPI_PointBuilder.cpp
32     GeomAlgoAPI_SketchBuilder.cpp
33     GeomAlgoAPI_Extrusion.cpp
34     GeomAlgoAPI_Prism.cpp
35     GeomAlgoAPI_Boolean.cpp
36     GeomAlgoAPI_MakeShape.cpp
37     GeomAlgoAPI_ShapeProps.cpp
38     GeomAlgoAPI_DFLoader.cpp
39     GeomAlgoAPI_Placement.cpp
40     GeomAlgoAPI_BREPImport.cpp
41     GeomAlgoAPI_STEPImport.cpp
42     GeomAlgoAPI_IGESImport.cpp
43 )
44
45 SET(PROJECT_LIBRARIES
46     GeomAPI
47     ModelAPI
48     ${CAS_OCAF}
49     ${CAS_SHAPE}
50     ${CAS_TKBO} 
51     ${CAS_TKBool} 
52     ${CAS_TKBRep}
53     ${CAS_TKCAF}
54     ${CAS_TKCAF}
55     ${CAS_TKLCAF}
56     ${CAS_TKPrim}
57     ${CAS_TKSTEP}
58     ${CAS_TKSTEPBase}
59     ${CAS_TKIGES}
60     ${CAS_TKTopAlgo}
61     ${CAS_TKXSBase} 
62 )
63
64 ADD_DEFINITIONS(-DGEOMALGOAPI_EXPORTS ${CAS_DEFINITIONS})
65 ADD_LIBRARY(GeomAlgoAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
66
67 SET(CMAKE_SWIG_FLAGS "-Wall")
68
69 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES CPLUSPLUS ON)
70 SET_SOURCE_FILES_PROPERTIES(GeomAlgoAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
71
72 INCLUDE_DIRECTORIES(
73   ../GeomAPI
74   ../ModelAPI
75   ${CAS_INCLUDE_DIRS}
76 )
77
78 TARGET_LINK_LIBRARIES(GeomAlgoAPI ${PROJECT_LIBRARIES})
79
80 SET(SWIG_SCRIPTS
81   ${CMAKE_CURRENT_BINARY_DIR}/GeomAlgoAPI.py
82 )
83
84 SET(SWIG_LINK_LIBRARIES
85   GeomAPI
86   GeomAlgoAPI
87   ${PYTHON_LIBRARIES}
88 )
89
90 SWIG_ADD_MODULE(GeomAlgoAPI python GeomAlgoAPI.i ${PROJECT_HEADERS})
91 SWIG_LINK_LIBRARIES(GeomAlgoAPI ${SWIG_LINK_LIBRARIES})
92
93 IF(WIN32)
94   SET_TARGET_PROPERTIES(_GeomAlgoAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAlgoAPI_d)
95 ENDIF(WIN32)
96
97 INSTALL(TARGETS _GeomAlgoAPI DESTINATION swig)
98 INSTALL(TARGETS GeomAlgoAPI DESTINATION bin)
99 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig)