1 ## Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 FIND_PACKAGE(SWIG REQUIRED)
4 INCLUDE(${SWIG_USE_FILE})
5 INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
11 ModelAPI_AttributeBoolean.h
12 ModelAPI_AttributeIntArray.h
13 ModelAPI_AttributeDocRef.h
14 ModelAPI_AttributeDouble.h
15 ModelAPI_AttributeInteger.h
16 ModelAPI_AttributeRefAttr.h
17 ModelAPI_AttributeReference.h
18 ModelAPI_AttributeRefList.h
19 ModelAPI_AttributeSelection.h
20 ModelAPI_AttributeSelectionList.h
21 ModelAPI_AttributeString.h
22 ModelAPI_AttributeValidator.h
23 ModelAPI_BodyBuilder.h
24 ModelAPI_CompositeFeature.h
30 ModelAPI_FeatureValidator.h
35 ModelAPI_ResultCompSolid.h
36 ModelAPI_ResultConstruction.h
37 ModelAPI_ResultGroup.h
38 ModelAPI_ResultParameter.h
42 ModelAPI_ShapeValidator.h
48 ModelAPI_Attribute.cpp
49 ModelAPI_AttributeBoolean.cpp
50 ModelAPI_AttributeIntArray.cpp
51 ModelAPI_AttributeDocRef.cpp
52 ModelAPI_AttributeDouble.cpp
53 ModelAPI_AttributeInteger.cpp
54 ModelAPI_AttributeRefAttr.cpp
55 ModelAPI_AttributeReference.cpp
56 ModelAPI_AttributeRefList.cpp
57 ModelAPI_AttributeSelection.cpp
58 ModelAPI_AttributeSelectionList.cpp
59 ModelAPI_AttributeString.cpp
60 ModelAPI_BodyBuilder.cpp
61 ModelAPI_CompositeFeature.cpp
65 ModelAPI_Expression.cpp
67 ModelAPI_FeatureValidator.cpp
71 ModelAPI_ResultBody.cpp
72 ModelAPI_ResultCompSolid.cpp
73 ModelAPI_ResultConstruction.cpp
74 ModelAPI_ResultGroup.cpp
75 ModelAPI_ResultPart.cpp
76 ModelAPI_ResultParameter.cpp
78 ModelAPI_ShapeValidator.cpp
80 ModelAPI_AttributeValidator.cpp
86 SET(CMAKE_SWIG_FLAGS -threads -Wall)
87 ADD_DEFINITIONS(-DMODELAPI_EXPORTS)
89 ADD_LIBRARY(ModelAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS})
90 SET_TARGET_PROPERTIES(ModelAPI PROPERTIES LINKER_LANGUAGE CXX)
91 TARGET_LINK_LIBRARIES(ModelAPI ${PROJECT_LIBRARIES})
93 INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/Config
94 ${PROJECT_SOURCE_DIR}/src/Events
95 ${PROJECT_SOURCE_DIR}/src/GeomAPI
96 ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI
100 SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES CPLUSPLUS ON)
101 # "-includeall" is not needed: it starts to follow the standard inludes (like "string") without success
102 # SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES SWIG_FLAGS)
103 SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow")
104 #SET_SOURCE_FILES_PROPERTIES(ModelAPIPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-D_WIN32")
107 ${CMAKE_CURRENT_BINARY_DIR}/ModelAPI.py
110 SET(SWIG_LINK_LIBRARIES
116 SWIG_ADD_MODULE(ModelAPI python ModelAPI.i ${PROJECT_HEADERS})
117 SWIG_LINK_LIBRARIES(ModelAPI ${SWIG_LINK_LIBRARIES})
120 SET_TARGET_PROPERTIES(_ModelAPI PROPERTIES DEBUG_OUTPUT_NAME _ModelAPI_d)
123 INSTALL(TARGETS _ModelAPI DESTINATION swig)
124 INSTALL(TARGETS ModelAPI DESTINATION bin)
125 INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig)
127 ADD_UNIT_TESTS(TestConstants.py