X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSALOME_SWIG%2FCMakeLists.txt;h=c8932c133561fbeafee2882982b3c7e6bb53f82b;hb=6878ef4d7381638ec39d1ca9d03afc21a69401aa;hp=9c87524263d4c0c4d20011affc45a69e898f22a5;hpb=d0e0062ce92b1dd27322e6eee235a984fc9cd66c;p=modules%2Fgui.git diff --git a/src/SALOME_SWIG/CMakeLists.txt b/src/SALOME_SWIG/CMakeLists.txt index 9c8752426..c8932c133 100755 --- a/src/SALOME_SWIG/CMakeLists.txt +++ b/src/SALOME_SWIG/CMakeLists.txt @@ -1,9 +1,9 @@ -# Copyright (C) 2012 CEA/DEN, EDF R&D +# Copyright (C) 2012-2014 CEA/DEN, EDF R&D, OPEN CASCADE # # 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. +# 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 @@ -17,84 +17,80 @@ # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com # -FIND_PACKAGE(SWIG REQUIRED) INCLUDE(${SWIG_USE_FILE}) -INCLUDE(${KERNEL_ROOT_DIR}/salome_adm/cmake_files/SalomeMacros.cmake) -INCLUDE(${VTK_USE_FILE}) +IF(SALOME_USE_VTKVIEWER) + INCLUDE(${VTK_USE_FILE}) +ENDIF() -SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES CPLUSPLUS ON) -SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES SWIG_DEFINITIONS "-shadow") -SET_SOURCE_FILES_PROPERTIES(libSALOME_SwigPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H") +# --- options --- +# additional include directories INCLUDE_DIRECTORIES( ${PYTHON_INCLUDE_DIRS} ${CAS_INCLUDE_DIRS} ${QT_INCLUDES} ${QWT_INCLUDE_DIR} - ${Boost_INCLUDE_DIRS} - ${PTHREAD_INCLUDE_DIRS} - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_BINARY_DIR}/salome_adm - ${CMAKE_BINARY_DIR}/idl ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp - ${CMAKE_CURRENT_SOURCE_DIR}/../Qtx - ${CMAKE_CURRENT_SOURCE_DIR}/../SUIT - ${CMAKE_CURRENT_SOURCE_DIR}/../ObjBrowser - ${CMAKE_CURRENT_SOURCE_DIR}/../LightApp - ${CMAKE_CURRENT_SOURCE_DIR}/../SOCC - ${CMAKE_CURRENT_SOURCE_DIR}/../SVTK - ${CMAKE_CURRENT_SOURCE_DIR}/../Event - ${CMAKE_CURRENT_SOURCE_DIR}/../OBJECT - ${CMAKE_CURRENT_SOURCE_DIR}/../CAM - ${CMAKE_CURRENT_SOURCE_DIR}/../STD - ${CMAKE_CURRENT_SOURCE_DIR}/../OCCViewer - ${CMAKE_CURRENT_SOURCE_DIR}/../Prs - ${CMAKE_CURRENT_SOURCE_DIR}/../VTKViewer - ${CMAKE_CURRENT_SOURCE_DIR}/../SPlot2d - ${CMAKE_CURRENT_SOURCE_DIR}/../Plot2d + ${PROJECT_SOURCE_DIR}/src/CAM + ${PROJECT_SOURCE_DIR}/src/Event + ${PROJECT_SOURCE_DIR}/src/LightApp + ${PROJECT_SOURCE_DIR}/src/OBJECT + ${PROJECT_SOURCE_DIR}/src/OCCViewer + ${PROJECT_SOURCE_DIR}/src/Plot2d + ${PROJECT_SOURCE_DIR}/src/Prs + ${PROJECT_SOURCE_DIR}/src/Qtx + ${PROJECT_SOURCE_DIR}/src/SOCC + ${PROJECT_SOURCE_DIR}/src/STD + ${PROJECT_SOURCE_DIR}/src/SUIT + ${PROJECT_SOURCE_DIR}/src/SVTK + ${PROJECT_SOURCE_DIR}/src/SPlot2d + ${PROJECT_SOURCE_DIR}/src/VTKViewer ) -ADD_DEFINITIONS(${PYTHON_DEFINITIONS} ${CAS_DEFINITIONS} ${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${BOOST_DEFINITIONS}) - -SWIG_ADD_MODULE(libSALOME_Swig python libSALOME_Swig.i SALOMEGUI_Swig.cxx) -SWIG_LINK_LIBRARIES(libSALOME_Swig LightApp ${PYTHON_LIBRARIES}) +# swig flags +SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES CPLUSPLUS ON) +SET_SOURCE_FILES_PROPERTIES(libSALOME_Swig.i PROPERTIES SWIG_DEFINITIONS "-shadow") +SET_SOURCE_FILES_PROPERTIES(libSALOME_SwigPYTHON_wrap.cxx PROPERTIES COMPILE_FLAGS "-DHAVE_CONFIG_H") -IF(WINDOWS) - SET_TARGET_PROPERTIES(_libSALOME_Swig PROPERTIES DEBUG_OUTPUT_NAME _libSALOME_Swig_d) -ENDIF(WINDOWS) +# additional preprocessor / compiler flags +ADD_DEFINITIONS(${QT_DEFINITIONS} ${QWT_DEFINITIONS} ${CAS_DEFINITIONS} ${PYTHON_DEFINITIONS}) -INSTALL(TARGETS _libSALOME_Swig DESTINATION ${GUI_salomepythondir}) +# --- headers --- -SET(COMMON_HEADERS - libSALOME_Swig.i +# header files / to install +SET(libSALOME_Swig_HEADERS SALOMEGUI_Swig.hxx SALOMEGUI_Swig.i + libSALOME_Swig.i ) -INSTALL(FILES ${COMMON_HEADERS} DESTINATION ${GUI_salomeinclude_HEADERS}) -INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py DESTINATION ${GUI_salomepythondir}) -# -# =============================================================== -# Files to be installed -# =============================================================== -# -SET(PYTHON_FILES +# --- scripts --- + +# scripts / swig wrappings +SET(_swig_SCRIPTS + ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py +) + +# scripts / static +SET(_other_SCRIPTS examplevtk1.py test_table.py test_big_table.py test_many_objects.py test_remove_ref.py ) -SALOME_INSTALL_SCRIPTS("${PYTHON_FILES}" ${GUI_salomescript_DATA}) -SALOME_INSTALL_SCRIPTS("SALOMEGUI_shared_modules.py" ${GUI_sharedpkgpython_PYTHON}) -CONFIGURE_FILE(supervisionexample.py.in supervisionexample.py @ONLY) -CONFIGURE_FILE(supervisiongeomexample.py.in supervisiongeomexample.py @ONLY) -SET(script_DATA - ${CMAKE_CURRENT_BINARY_DIR}/libSALOME_Swig.py - ${CMAKE_CURRENT_BINARY_DIR}/supervisionexample.py - ${CMAKE_CURRENT_BINARY_DIR}/supervisiongeomexample.py -) -INSTALL(FILES ${script_DATA} DESTINATION ${GUI_salomescript_DATA} - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) +# --- rules --- + +SWIG_ADD_MODULE(libSALOME_Swig python libSALOME_Swig.i SALOMEGUI_Swig.cxx) +SWIG_LINK_LIBRARIES(libSALOME_Swig ${PYTHON_LIBRARIES} LightApp) +IF(WIN32) + SET_TARGET_PROPERTIES(_libSALOME_Swig PROPERTIES DEBUG_OUTPUT_NAME _libSALOME_Swig_d) +ENDIF(WIN32) + +INSTALL(TARGETS _libSALOME_Swig DESTINATION ${SALOME_INSTALL_PYTHON}) + +SALOME_INSTALL_SCRIPTS("${_swig_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) +SALOME_INSTALL_SCRIPTS("${_other_SCRIPTS}" ${SALOME_INSTALL_SCRIPT_DATA}) + +INSTALL(FILES ${libSALOME_Swig_HEADERS} DESTINATION ${SALOME_INSTALL_HEADERS})