X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModelAPI%2FCMakeLists.txt;h=8bcae17fdea95a7f93ca49f231baeae1d2a8d0e9;hb=b2418a13c302e03ed5f80dbdae0cd20f0abd16af;hp=dc9e4096553e79c5b0ee3edd2ede4494d7decac9;hpb=cea3f78cfb7c796ba5be6bc9ee21e930abe14021;p=modules%2Fshaper.git diff --git a/src/ModelAPI/CMakeLists.txt b/src/ModelAPI/CMakeLists.txt index dc9e40965..8bcae17fd 100644 --- a/src/ModelAPI/CMakeLists.txt +++ b/src/ModelAPI/CMakeLists.txt @@ -1,35 +1,105 @@ -CMAKE_MINIMUM_REQUIRED(VERSION 2.8.11) +## Copyright (C) 2014-20xx CEA/DEN, EDF R&D -INCLUDE(Common) FIND_PACKAGE(SWIG REQUIRED) INCLUDE(${SWIG_USE_FILE}) -INCLUDE(FindPython) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) +INCLUDE(UnitTest) SET(PROJECT_HEADERS - ModelAPI.hxx - ModelAPI_Application.hxx - ModelAPI_Document.hxx + ModelAPI.h + ModelAPI_Attribute.h + ModelAPI_AttributeBoolean.h + ModelAPI_AttributeIntArray.h + ModelAPI_AttributeDocRef.h + ModelAPI_AttributeDouble.h + ModelAPI_AttributeInteger.h + ModelAPI_AttributeRefAttr.h + ModelAPI_AttributeReference.h + ModelAPI_AttributeRefList.h + ModelAPI_AttributeSelection.h + ModelAPI_AttributeSelectionList.h + ModelAPI_AttributeString.h + ModelAPI_AttributeValidator.h + ModelAPI_CompositeFeature.h + ModelAPI_Data.h + ModelAPI_Document.h + ModelAPI_Events.h + ModelAPI_Feature.h + ModelAPI_FeatureValidator.h + ModelAPI_Object.h + ModelAPI_Plugin.h + ModelAPI_Result.h + ModelAPI_ResultBody.h + ModelAPI_ResultConstruction.h + ModelAPI_ResultGroup.h + ModelAPI_ResultParameter.h + ModelAPI_ResultPart.h + ModelAPI_Session.h + ModelAPI_Tools.h + ModelAPI_ShapeValidator.h + ModelAPI_Validator.h ) +SET(PROJECT_SOURCES + ModelAPI_Attribute.cpp + ModelAPI_AttributeBoolean.cpp + ModelAPI_AttributeIntArray.cpp + ModelAPI_AttributeDocRef.cpp + ModelAPI_AttributeDouble.cpp + ModelAPI_AttributeInteger.cpp + ModelAPI_AttributeRefAttr.cpp + ModelAPI_AttributeReference.cpp + ModelAPI_AttributeRefList.cpp + ModelAPI_AttributeSelection.cpp + ModelAPI_AttributeSelectionList.cpp + ModelAPI_AttributeString.cpp + ModelAPI_CompositeFeature.cpp + ModelAPI_Data.cpp + ModelAPI_Document.cpp + ModelAPI_Events.cpp + ModelAPI_Feature.cpp + ModelAPI_Object.cpp + ModelAPI_Plugin.cpp + ModelAPI_Result.cpp + ModelAPI_ResultBody.cpp + ModelAPI_ResultConstruction.cpp + ModelAPI_ResultGroup.cpp + ModelAPI_ResultPart.cpp + ModelAPI_Session.cpp + ModelAPI_ShapeValidator.cpp + ModelAPI_Tools.cpp +) + +SET(PROJECT_LIBRARIES + Config +) +SET(CMAKE_SWIG_FLAGS -threads -Wall) ADD_DEFINITIONS(-DMODELAPI_EXPORTS) + ADD_LIBRARY(ModelAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS}) SET_TARGET_PROPERTIES(ModelAPI PROPERTIES LINKER_LANGUAGE CXX) -#TARGET_LINK_LIBRARIES(ModelAPI ${PROJECT_LIBRARIES}) +TARGET_LINK_LIBRARIES(ModelAPI ${PROJECT_LIBRARIES}) + +INCLUDE_DIRECTORIES(${PROJECT_SOURCE_DIR}/src/Config + ${PROJECT_SOURCE_DIR}/src/Events + ${PROJECT_SOURCE_DIR}/src/GeomAPI + ${PROJECT_SOURCE_DIR}/src/GeomAlgoAPI +) -SET(CMAKE_SWIG_FLAGS "") SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES CPLUSPLUS ON) -SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES SWIG_FLAGS "-includeall") +# "-includeall" is not needed: it starts to follow the standard inludes (like "string") without success +# SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES SWIG_FLAGS) SET_SOURCE_FILES_PROPERTIES(ModelAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow") -#SET_SOURCE_FILES_PROPERTIES(ModelAPIPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H") +#SET_SOURCE_FILES_PROPERTIES(ModelAPIPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-D_WIN32") SET(SWIG_SCRIPTS ${CMAKE_CURRENT_BINARY_DIR}/ModelAPI.py ) SET(SWIG_LINK_LIBRARIES - ModelAPI + ModelAPI + GeomAPI ${PYTHON_LIBRARIES} ) @@ -41,6 +111,9 @@ IF(WIN32) ENDIF(WIN32) INSTALL(TARGETS _ModelAPI DESTINATION swig) -#INSTALL(TARGETS ${SWIG_SCRIPTS} DESTINATION swig) - +INSTALL(TARGETS ModelAPI DESTINATION bin) +INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig) +ADD_UNIT_TESTS(TestConstants.py + TestUndoRedo.py + TestDocument.py)