X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fengine_swig%2FCMakeLists.txt;h=336879b672f0e3bf60fe8dd10de8be97f91e0588;hb=HEAD;hp=4af959f2c2ad8019bd60e586d63b9628ec1a4e7f;hpb=14681f46dc9be18b21d5be9b1192f25ccde049a2;p=modules%2Fyacs.git diff --git a/src/engine_swig/CMakeLists.txt b/src/engine_swig/CMakeLists.txt index 4af959f2c..336879b67 100644 --- a/src/engine_swig/CMakeLists.txt +++ b/src/engine_swig/CMakeLists.txt @@ -1,9 +1,9 @@ -# Copyright (C) 2012-2013 CEA/DEN, EDF R&D, OPEN CASCADE +# Copyright (C) 2012-2024 CEA, EDF # # 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 @@ -31,6 +31,7 @@ ENDIF() INCLUDE_DIRECTORIES( ${PTHREAD_INCLUDE_DIR} ${OMNIORB_INCLUDE_DIR} + ${OMNIORBPY_INCLUDE_DIR} ${PYTHON_INCLUDE_DIRS} ${PROJECT_BINARY_DIR}/idl ${PROJECT_BINARY_DIR} @@ -51,11 +52,7 @@ SET_PROPERTY(SOURCE pilot.i pypilot.i PROPERTY ADD_DEFINITIONS( ${PYTHON_DEFINITIONS} ${OMNIORB_DEFINITIONS} - -DYACS_PTHREAD ) -IF(WIN32) - ADD_DEFINITIONS(-DNOGDI) -ENDIF(WIN32) # libraries to link to SET(_link_LIBRARIES @@ -102,76 +99,34 @@ IF(SALOME_BUILD_DOC) ENDIF(SALOME_BUILD_DOC) # --- rules --- -SET(ENGINEINCLUDES - Any.hxx - DeploymentTree.hxx - InputDataStreamPort.hxx - OutPort.hxx - SharedPtr.hxx - AnyInputPort.hxx - Dispatcher.hxx - InputPort.hxx - OutputDataStreamPort.hxx - StaticDefinedComposedNode.hxx - Bloc.hxx - DynParaLoop.hxx - InvalidExtractionException.hxx - OutputPort.hxx - Switch.hxx - ComponentInstance.hxx - ElementaryNode.hxx - LinkInfo.hxx - Pool.hxx - Task.hxx - ComposedNode.hxx - Executor.hxx - Logger.hxx - Port.hxx - TypeCode.hxx - ConditionInputPort.hxx - LogRecord.hxx - Proc.hxx - Visitor.hxx - Container.hxx - ForEachLoop.hxx - Loop.hxx - RefCounter.hxx - VisitorSaveSchema.hxx - ConversionException.hxx - ForLoop.hxx - Node.hxx - Runtime.hxx - VisitorSaveState.hxx - DataFlowPort.hxx - InGate.hxx - OptimizerAlg.hxx - Scheduler.hxx - WhileLoop.hxx - DataPort.hxx - InlineNode.hxx - OptimizerLoop.hxx - ServiceInlineNode.hxx - ComponentDefinition.hxx - DataStreamPort.hxx - InPort.hxx - OutGate.hxx - ServiceNode.hxx - Catalog.hxx - PropertyInterface.hxx - AnyOutputPort.hxx - Pool.hxx - InPropertyPort.hxx -) -SET(SWIGINCLUDES ${ENGINEINCLUDES} - "${PROJECT_SOURCE_DIR}/src/bases/yacsconfig.h" - "ExecutorSwig.hxx") -SWIG_ADD_MODULE(pilot python pilot.i ExecutorSwig.cxx) -SWIG_ADD_MODULE(pypilot python pypilot.i) -ADD_DEPENDENCIES(_pilot pilot.i engtypemaps.i docengine.i ${SWIGINCLUDES}) -ADD_DEPENDENCIES(_pypilot pypilot.i pilot.i engtypemaps.i _pilot ${SWIGINCLUDES}) +SET(ENGINEINCL) +FOREACH(f ${YACSlibEngine_HEADERS}) # defined in src/engine/CMakeLists.txt + LIST(APPEND ENGINEINCL ${PROJECT_SOURCE_DIR}/src/engine/${f}) +ENDFOREACH() + +SET(SWIGINCLUDES ${ENGINEINCL} + "${PROJECT_SOURCE_DIR}/src/bases/yacsconfig.h" + "ExecutorSwig.hxx" + "IteratorPy3.hxx") + +SET(SWIG_MODULE_pilot_EXTRA_DEPS engtypemaps.i ${SWIGINCLUDES}) +IF(${CMAKE_VERSION} VERSION_LESS "3.8.0") + SWIG_ADD_MODULE(pilot python pilot.i ExecutorSwig.cxx) +ELSE() + SWIG_ADD_LIBRARY(pilot LANGUAGE python SOURCES pilot.i ExecutorSwig.cxx) +ENDIF() +SWIG_CHECK_GENERATION(pilot) + +SET(SWIG_MODULE_pypilot_EXTRA_DEPS pilot.i engtypemaps.i _pilot ${SWIGINCLUDES}) +IF(${CMAKE_VERSION} VERSION_LESS "3.8.0") + SWIG_ADD_MODULE(pypilot python pypilot.i) +ELSE() + SWIG_ADD_LIBRARY(pypilot LANGUAGE python SOURCES pypilot.i) +ENDIF() SWIG_LINK_LIBRARIES(pilot "${_link_LIBRARIES}") SWIG_LINK_LIBRARIES(pypilot "${_link_LIBRARIES}") + IF(WIN32) SET_TARGET_PROPERTIES(_pilot PROPERTIES DEBUG_OUTPUT_NAME _pilot_d) SET_TARGET_PROPERTIES(_pypilot PROPERTIES DEBUG_OUTPUT_NAME _pypilot_d) @@ -179,4 +134,16 @@ ENDIF(WIN32) INSTALL(TARGETS ${SWIG_MODULE_pilot_REAL_NAME} ${SWIG_MODULE_pypilot_REAL_NAME} DESTINATION ${SALOME_INSTALL_PYTHON}) -SALOME_INSTALL_SCRIPTS("${_swig_SCRIPTS}" ${SALOME_INSTALL_PYTHON}) +SALOME_INSTALL_SCRIPTS("${_swig_SCRIPTS}" ${SALOME_INSTALL_PYTHON} EXTRA_DPYS "${SWIG_MODULE_pilot_REAL_NAME};${SWIG_MODULE_pypilot_REAL_NAME}") + +### Test + +SALOME_GENERATE_TESTS_ENVIRONMENT(tests_env) +ADD_TEST(NAME PlayGround0 COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/testPlayGround0.py) +SET_TESTS_PROPERTIES(PlayGround0 PROPERTIES ENVIRONMENT "${tests_env}") +ADD_TEST(NAME Base64Conv COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/testBase64Conv.py) +SET_TESTS_PROPERTIES(Base64Conv PROPERTIES ENVIRONMENT "${tests_env}") +SET(LOCAL_TEST_DIR ${SALOME_YACS_INSTALL_TEST}/engine_swig) +SET(LOCAL_TEST_FILES testPlayGround0.py testBase64Conv.py basic_first_SSL.py) +INSTALL(PROGRAMS ${LOCAL_TEST_FILES} DESTINATION ${LOCAL_TEST_DIR}) +INSTALL(FILES CTestTestfileInstall.cmake DESTINATION ${LOCAL_TEST_DIR} RENAME CTestTestfile.cmake)