X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGeomAPI%2FCMakeLists.txt;h=cade6fc2f16ff15464185570981dc706b74fd3b4;hb=f3ad05e50c4a462c08c31990706c8cc6acc646ac;hp=2be8c4af2878681beba9791bc57114831a19e2d8;hpb=64e9d01b48f8c4e6e22919ebceeed715d613485e;p=modules%2Fshaper.git diff --git a/src/GeomAPI/CMakeLists.txt b/src/GeomAPI/CMakeLists.txt index 2be8c4af2..cade6fc2f 100644 --- a/src/GeomAPI/CMakeLists.txt +++ b/src/GeomAPI/CMakeLists.txt @@ -1,9 +1,27 @@ -## Copyright (C) 2014-20xx CEA/DEN, EDF R&D +# Copyright (C) 2014-2019 CEA/DEN, EDF R&D +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# FIND_PACKAGE(SWIG REQUIRED) INCLUDE(${SWIG_USE_FILE}) INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}) +INCLUDE(UnitTest) SET(PROJECT_HEADERS GeomAPI.h @@ -20,17 +38,36 @@ SET(PROJECT_HEADERS GeomAPI_Dir2d.h GeomAPI_Pln.h GeomAPI_Shape.h + GeomAPI_ShapeExplorer.h + GeomAPI_ShapeIterator.h GeomAPI_Edge.h GeomAPI_Face.h GeomAPI_PlanarEdges.h GeomAPI_AISObject.h GeomAPI_IPresentable.h - GeomAPI_Curve.h + GeomAPI_Curve.h + GeomAPI_DataMapOfShapeMapOfShapes.h GeomAPI_DataMapOfShapeShape.h GeomAPI_ICustomPrs.h GeomAPI_Vertex.h GeomAPI_Ax1.h + GeomAPI_Ax2.h GeomAPI_Ax3.h + GeomAPI_Trsf.h + GeomAPI_Angle2d.h + GeomAPI_Angle.h + GeomAPI_Wire.h + GeomAPI_Ellipse.h + GeomAPI_Ellipse2d.h + GeomAPI_Tools.h + GeomAPI_Shell.h + GeomAPI_Solid.h + GeomAPI_Sphere.h + GeomAPI_Cylinder.h + GeomAPI_Cone.h + GeomAPI_Torus.h + GeomAPI_Box.h + GeomAPI_WireExplorer.h ) SET(PROJECT_SOURCES @@ -47,36 +84,54 @@ SET(PROJECT_SOURCES GeomAPI_Dir2d.cpp GeomAPI_Pln.cpp GeomAPI_Shape.cpp + GeomAPI_ShapeExplorer.cpp + GeomAPI_ShapeIterator.cpp GeomAPI_Edge.cpp GeomAPI_Face.cpp GeomAPI_PlanarEdges.cpp GeomAPI_AISObject.cpp GeomAPI_Curve.cpp + GeomAPI_DataMapOfShapeMapOfShapes.cpp GeomAPI_DataMapOfShapeShape.cpp GeomAPI_Vertex.cpp GeomAPI_ICustomPrs.cpp GeomAPI_Ax1.cpp + GeomAPI_Ax2.cpp GeomAPI_Ax3.cpp + GeomAPI_IPresentable.cpp + GeomAPI_Trsf.cpp + GeomAPI_Angle2d.cpp + GeomAPI_Angle.cpp + GeomAPI_Wire.cpp + GeomAPI_Ellipse.cpp + GeomAPI_Ellipse2d.cpp + GeomAPI_Tools.cpp + GeomAPI_Shell.cpp + GeomAPI_Solid.cpp + GeomAPI_Sphere.cpp + GeomAPI_Cylinder.cpp + GeomAPI_Cone.cpp + GeomAPI_Torus.cpp + GeomAPI_Box.cpp + GeomAPI_WireExplorer.cpp ) SET(PROJECT_LIBRARIES - ${CAS_KERNEL} - ${CAS_MODELER} - ${CAS_VIEWER} - ${CAS_SHAPE} - ${CAS_TKTopAlgo} + ${OpenCASCADE_FoundationClasses_LIBRARIES} + ${OpenCASCADE_ModelingAlgorithms_LIBRARIES} + ${OpenCASCADE_Visualization_LIBRARIES} ) -ADD_DEFINITIONS(-DGEOMAPI_EXPORTS ${CAS_DEFINITIONS}) +ADD_DEFINITIONS(-DGEOMAPI_EXPORTS ${OpenCASCADE_DEFINITIONS}) ADD_LIBRARY(GeomAPI SHARED ${PROJECT_SOURCES} ${PROJECT_HEADERS}) -SET(CMAKE_SWIG_FLAGS -threads -Wall) +SET(CMAKE_SWIG_FLAGS -threads -w325,321,362,383,512) SET_SOURCE_FILES_PROPERTIES(GeomAPI.i PROPERTIES CPLUSPLUS ON) SET_SOURCE_FILES_PROPERTIES(GeomAPI.i PROPERTIES SWIG_DEFINITIONS "-shadow") INCLUDE_DIRECTORIES( - ${CAS_INCLUDE_DIRS} + ${OpenCASCADE_INCLUDE_DIR} ) TARGET_LINK_LIBRARIES(GeomAPI ${PROJECT_LIBRARIES}) @@ -90,13 +145,33 @@ SET(SWIG_LINK_LIBRARIES ${PYTHON_LIBRARIES} ) -SWIG_ADD_MODULE(GeomAPI python GeomAPI.i ${PROJECT_HEADERS}) +IF(${CMAKE_VERSION} VERSION_GREATER "3.8.0") + SWIG_ADD_LIBRARY(GeomAPI LANGUAGE python SOURCES GeomAPI.i ${PROJECT_HEADERS}) +ELSE() + SWIG_ADD_MODULE(GeomAPI python GeomAPI.i ${PROJECT_HEADERS}) +ENDIF() SWIG_LINK_LIBRARIES(GeomAPI ${SWIG_LINK_LIBRARIES}) IF(WIN32) SET_TARGET_PROPERTIES(_GeomAPI PROPERTIES DEBUG_OUTPUT_NAME _GeomAPI_d) ENDIF(WIN32) -INSTALL(TARGETS _GeomAPI DESTINATION swig) -INSTALL(TARGETS GeomAPI DESTINATION bin) -INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION swig) +INSTALL(TARGETS _GeomAPI DESTINATION ${SHAPER_INSTALL_SWIG}) +INSTALL(TARGETS GeomAPI DESTINATION ${SHAPER_INSTALL_BIN}) +INSTALL(FILES ${SWIG_SCRIPTS} DESTINATION ${SHAPER_INSTALL_SWIG}) + +ADD_UNIT_TESTS( + TestAx123.py + TestBox.py + TestBuilders.py + TestCone.py + TestCylinder.py + TestEllipse2d.py + TestLine.py + TestPlanarEdge.py + TestPolygon.py + TestSphere.py + TestTorus.py + Test2675.py + Test2879.py +)