X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fengine_swig%2FCMakeLists.txt;h=336879b672f0e3bf60fe8dd10de8be97f91e0588;hb=HEAD;hp=5f7d647a11af3b0fb33d93df863571e1368c9576;hpb=cad20d9b51f1a2f09e37db59e183e1462ea120f9;p=modules%2Fyacs.git diff --git a/src/engine_swig/CMakeLists.txt b/src/engine_swig/CMakeLists.txt index 5f7d647a1..336879b67 100644 --- a/src/engine_swig/CMakeLists.txt +++ b/src/engine_swig/CMakeLists.txt @@ -1,4 +1,4 @@ -# Copyright (C) 2012-2016 CEA/DEN, EDF R&D +# 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 @@ -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} @@ -98,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) @@ -175,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)