diff --git a/Viewer/ecflowUI/src/CMakeLists.txt b/Viewer/ecflowUI/src/CMakeLists.txt index 489e6ec57..8632d273c 100644 --- a/Viewer/ecflowUI/src/CMakeLists.txt +++ b/Viewer/ecflowUI/src/CMakeLists.txt @@ -815,9 +815,7 @@ ecbuild_add_executable( ${CMAKE_CURRENT_BINARY_DIR} LIBS viewer - libclient - base - node + ecflow_all Threads::Threads m dl diff --git a/Viewer/libViewer/src/CMakeLists.txt b/Viewer/libViewer/src/CMakeLists.txt index 89aa2cc49..9663a8e15 100644 --- a/Viewer/libViewer/src/CMakeLists.txt +++ b/Viewer/libViewer/src/CMakeLists.txt @@ -80,7 +80,7 @@ ecbuild_add_library( PRIVATE_DEFINITIONS ECFLOW_SHARED_DIR="${CMAKE_INSTALL_PREFIX}/share/ecflow" PRIVATE_LIBS - core + ecflow_all Boost::boost $<$:OpenSSL::SSL> # Qt5 diff --git a/libs/CMakeLists.txt b/libs/CMakeLists.txt index 076e4c179..d60afd132 100644 --- a/libs/CMakeLists.txt +++ b/libs/CMakeLists.txt @@ -8,31 +8,591 @@ # nor does it submit to any jurisdiction. # +configure_file( + core/src/ecflow/core/ecflow_version.h.in + ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_version.h) +configure_file( + core/src/ecflow/core/ecflow_source_build_dir.h.in + ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_source_build_dir.h) -add_subdirectory( core ) -add_subdirectory( service ) -add_subdirectory( attribute ) -add_subdirectory( node ) -add_subdirectory( base ) -add_subdirectory( simulator ) -add_subdirectory( client ) +set(srcs + # Attribute -- Headers + attribute/src/ecflow/attribute/AutoArchiveAttr.hpp + attribute/src/ecflow/attribute/AutoCancelAttr.hpp + attribute/src/ecflow/attribute/ClockAttr.hpp + attribute/src/ecflow/attribute/CronAttr.hpp + attribute/src/ecflow/attribute/DateAttr.hpp + attribute/src/ecflow/attribute/DayAttr.hpp + attribute/src/ecflow/attribute/GenericAttr.hpp + attribute/src/ecflow/attribute/LateAttr.hpp + attribute/src/ecflow/attribute/NodeAttr.hpp + attribute/src/ecflow/attribute/QueueAttr.hpp + attribute/src/ecflow/attribute/RepeatAttr.hpp + attribute/src/ecflow/attribute/TimeAttr.hpp + attribute/src/ecflow/attribute/TodayAttr.hpp + attribute/src/ecflow/attribute/Variable.hpp + attribute/src/ecflow/attribute/VerifyAttr.hpp + attribute/src/ecflow/attribute/Zombie.hpp + attribute/src/ecflow/attribute/ZombieAttr.hpp + # Attribute -- Sources + attribute/src/ecflow/attribute/AutoArchiveAttr.cpp + attribute/src/ecflow/attribute/AutoCancelAttr.cpp + attribute/src/ecflow/attribute/ClockAttr.cpp + attribute/src/ecflow/attribute/CronAttr.cpp + attribute/src/ecflow/attribute/DateAttr.cpp + attribute/src/ecflow/attribute/DayAttr.cpp + attribute/src/ecflow/attribute/GenericAttr.cpp + attribute/src/ecflow/attribute/LateAttr.cpp + attribute/src/ecflow/attribute/NodeAttr.cpp + attribute/src/ecflow/attribute/QueueAttr.cpp + attribute/src/ecflow/attribute/RepeatAttr.cpp + attribute/src/ecflow/attribute/TimeAttr.cpp + attribute/src/ecflow/attribute/TodayAttr.cpp + attribute/src/ecflow/attribute/Variable.cpp + attribute/src/ecflow/attribute/VerifyAttr.cpp + attribute/src/ecflow/attribute/Zombie.cpp + attribute/src/ecflow/attribute/ZombieAttr.cpp + + # Base -- Headers + base/src/ecflow/base/AbstractClientEnv.hpp + base/src/ecflow/base/AbstractServer.hpp + base/src/ecflow/base/Client.hpp + base/src/ecflow/base/ClientOptionsParser.hpp + base/src/ecflow/base/ClientToServerRequest.hpp + base/src/ecflow/base/Cmd.hpp + base/src/ecflow/base/Connection.hpp + base/src/ecflow/base/Gnuplot.hpp + base/src/ecflow/base/ServerReply.hpp + base/src/ecflow/base/ServerToClientResponse.hpp + base/src/ecflow/base/Stats.hpp + base/src/ecflow/base/WhyCmd.hpp + base/src/ecflow/base/ZombieCtrl.hpp + $<$:base/src/ecflow/base/Openssl.hpp> + $<$:base/src/ecflow/base/ssl_connection.hpp> + $<$:base/src/ecflow/base/SslClient.hpp> + base/src/ecflow/base/cts/ClientToServerCmd.hpp + base/src/ecflow/base/cts/CtsCmdRegistry.hpp + base/src/ecflow/base/cts/EditHistoryMgr.hpp + base/src/ecflow/base/cts/task/AbortCmd.hpp + base/src/ecflow/base/cts/task/CompleteCmd.hpp + base/src/ecflow/base/cts/task/CtsWaitCmd.hpp + base/src/ecflow/base/cts/task/EventCmd.hpp + base/src/ecflow/base/cts/task/InitCmd.hpp + base/src/ecflow/base/cts/task/LabelCmd.hpp + base/src/ecflow/base/cts/task/MeterCmd.hpp + base/src/ecflow/base/cts/task/QueueCmd.hpp + base/src/ecflow/base/cts/task/TaskApi.hpp + base/src/ecflow/base/cts/task/TaskCmd.hpp + base/src/ecflow/base/cts/user/AlterCmd.hpp + base/src/ecflow/base/cts/user/BeginCmd.hpp + base/src/ecflow/base/cts/user/CFileCmd.hpp + base/src/ecflow/base/cts/user/CheckPtCmd.hpp + base/src/ecflow/base/cts/user/ClientHandleCmd.hpp + base/src/ecflow/base/cts/user/CSyncCmd.hpp + base/src/ecflow/base/cts/user/CtsApi.hpp + base/src/ecflow/base/cts/user/CtsCmd.hpp + base/src/ecflow/base/cts/user/CtsNodeCmd.hpp + base/src/ecflow/base/cts/user/DeleteCmd.hpp + base/src/ecflow/base/cts/user/EditScriptCmd.hpp + base/src/ecflow/base/cts/user/ForceCmd.hpp + base/src/ecflow/base/cts/user/FreeDepCmd.hpp + base/src/ecflow/base/cts/user/GroupCTSCmd.hpp + base/src/ecflow/base/cts/user/LoadDefsCmd.hpp + base/src/ecflow/base/cts/user/LogCmd.hpp + base/src/ecflow/base/cts/user/LogMessageCmd.hpp + base/src/ecflow/base/cts/user/MoveCmd.hpp + base/src/ecflow/base/cts/user/OrderNodeCmd.hpp + base/src/ecflow/base/cts/user/PathsCmd.hpp + base/src/ecflow/base/cts/user/PlugCmd.hpp + base/src/ecflow/base/cts/user/QueryCmd.hpp + base/src/ecflow/base/cts/user/ReplaceNodeCmd.hpp + base/src/ecflow/base/cts/user/RequeueNodeCmd.hpp + base/src/ecflow/base/cts/user/RunNodeCmd.hpp + base/src/ecflow/base/cts/user/ServerVersionCmd.hpp + base/src/ecflow/base/cts/user/ShowCmd.hpp + base/src/ecflow/base/cts/user/UserCmd.hpp + base/src/ecflow/base/cts/user/ZombieCmd.hpp + base/src/ecflow/base/stc/BlockClientZombieCmd.hpp + base/src/ecflow/base/stc/DefsCache.hpp + base/src/ecflow/base/stc/DefsCmd.hpp + base/src/ecflow/base/stc/ErrorCmd.hpp + base/src/ecflow/base/stc/GroupSTCCmd.hpp + base/src/ecflow/base/stc/PreAllocatedReply.hpp + base/src/ecflow/base/stc/SClientHandleCmd.hpp + base/src/ecflow/base/stc/SClientHandleSuitesCmd.hpp + base/src/ecflow/base/stc/SNewsCmd.hpp + base/src/ecflow/base/stc/SNodeCmd.hpp + base/src/ecflow/base/stc/SServerLoadCmd.hpp + base/src/ecflow/base/stc/SStatsCmd.hpp + base/src/ecflow/base/stc/SStringCmd.hpp + base/src/ecflow/base/stc/SStringVecCmd.hpp + base/src/ecflow/base/stc/SSuitesCmd.hpp + base/src/ecflow/base/stc/SSyncCmd.hpp + base/src/ecflow/base/stc/ServerToClientCmd.hpp + base/src/ecflow/base/stc/StcCmd.hpp + base/src/ecflow/base/stc/ZombieGetCmd.hpp + # Base -- Sources + base/src/ecflow/base/Client.cpp + base/src/ecflow/base/ClientOptionsParser.cpp + base/src/ecflow/base/ClientToServerRequest.cpp + base/src/ecflow/base/Connection.cpp + base/src/ecflow/base/Gnuplot.cpp + base/src/ecflow/base/ServerReply.cpp + base/src/ecflow/base/ServerToClientResponse.cpp + base/src/ecflow/base/Stats.cpp + base/src/ecflow/base/WhyCmd.cpp + base/src/ecflow/base/ZombieCtrl.cpp + $<$:base/src/ecflow/base/Openssl.cpp> + $<$:base/src/ecflow/base/ssl_connection.cpp> + $<$:base/src/ecflow/base/SslClient.cpp> + base/src/ecflow/base/cts/ClientToServerCmd.cpp + base/src/ecflow/base/cts/CtsCmdRegistry.cpp + base/src/ecflow/base/cts/EditHistoryMgr.cpp + base/src/ecflow/base/cts/task/AbortCmd.cpp + base/src/ecflow/base/cts/task/CompleteCmd.cpp + base/src/ecflow/base/cts/task/CtsWaitCmd.cpp + base/src/ecflow/base/cts/task/EventCmd.cpp + base/src/ecflow/base/cts/task/InitCmd.cpp + base/src/ecflow/base/cts/task/LabelCmd.cpp + base/src/ecflow/base/cts/task/MeterCmd.cpp + base/src/ecflow/base/cts/task/QueueCmd.cpp + base/src/ecflow/base/cts/task/TaskApi.cpp + base/src/ecflow/base/cts/task/TaskCmd.cpp + base/src/ecflow/base/cts/user/AlterCmd.cpp + base/src/ecflow/base/cts/user/BeginCmd.cpp + base/src/ecflow/base/cts/user/CFileCmd.cpp + base/src/ecflow/base/cts/user/CSyncCmd.cpp + base/src/ecflow/base/cts/user/CheckPtCmd.cpp + base/src/ecflow/base/cts/user/ClientHandleCmd.cpp + base/src/ecflow/base/cts/user/CtsApi.cpp + base/src/ecflow/base/cts/user/CtsCmd.cpp + base/src/ecflow/base/cts/user/CtsNodeCmd.cpp + base/src/ecflow/base/cts/user/DeleteCmd.cpp + base/src/ecflow/base/cts/user/EditScriptCmd.cpp + base/src/ecflow/base/cts/user/ForceCmd.cpp + base/src/ecflow/base/cts/user/FreeDepCmd.cpp + base/src/ecflow/base/cts/user/GroupCTSCmd.cpp + base/src/ecflow/base/cts/user/LoadDefsCmd.cpp + base/src/ecflow/base/cts/user/LogCmd.cpp + base/src/ecflow/base/cts/user/LogMessageCmd.cpp + base/src/ecflow/base/cts/user/MoveCmd.cpp + base/src/ecflow/base/cts/user/OrderNodeCmd.cpp + base/src/ecflow/base/cts/user/PathsCmd.cpp + base/src/ecflow/base/cts/user/PlugCmd.cpp + base/src/ecflow/base/cts/user/QueryCmd.cpp + base/src/ecflow/base/cts/user/ReplaceNodeCmd.cpp + base/src/ecflow/base/cts/user/RequeueNodeCmd.cpp + base/src/ecflow/base/cts/user/RunNodeCmd.cpp + base/src/ecflow/base/cts/user/ServerVersionCmd.cpp + base/src/ecflow/base/cts/user/ShowCmd.cpp + base/src/ecflow/base/cts/user/UserCmd.cpp + base/src/ecflow/base/cts/user/ZombieCmd.cpp + base/src/ecflow/base/stc/BlockClientZombieCmd.cpp + base/src/ecflow/base/stc/DefsCache.cpp + base/src/ecflow/base/stc/DefsCmd.cpp + base/src/ecflow/base/stc/ErrorCmd.cpp + base/src/ecflow/base/stc/GroupSTCCmd.cpp + base/src/ecflow/base/stc/PreAllocatedReply.cpp + base/src/ecflow/base/stc/SClientHandleCmd.cpp + base/src/ecflow/base/stc/SClientHandleSuitesCmd.cpp + base/src/ecflow/base/stc/SNewsCmd.cpp + base/src/ecflow/base/stc/SNodeCmd.cpp + base/src/ecflow/base/stc/SServerLoadCmd.cpp + base/src/ecflow/base/stc/SStatsCmd.cpp + base/src/ecflow/base/stc/SStringCmd.cpp + base/src/ecflow/base/stc/SStringVecCmd.cpp + base/src/ecflow/base/stc/SSuitesCmd.cpp + base/src/ecflow/base/stc/SSyncCmd.cpp + base/src/ecflow/base/stc/ServerToClientCmd.cpp + base/src/ecflow/base/stc/StcCmd.cpp + base/src/ecflow/base/stc/ZombieGetCmd.cpp + + # Client -- Headers + client/src/ecflow/client/ClientCmdCache.hpp + client/src/ecflow/client/ClientEnvironment.hpp + client/src/ecflow/client/ClientInvoker.hpp + client/src/ecflow/client/ClientOptions.hpp + client/src/ecflow/client/Help.hpp + client/src/ecflow/client/Rtt.hpp + client/src/ecflow/client/UrlCmd.hpp + # Client -- Sources + client/src/ecflow/client/ClientCmdCache.cpp + client/src/ecflow/client/Rtt.cpp + client/src/ecflow/client/ClientEnvironment.cpp + client/src/ecflow/client/ClientInvoker.cpp + client/src/ecflow/client/Help.cpp + client/src/ecflow/client/Rtt.cpp + client/src/ecflow/client/ClientOptions.cpp + client/src/ecflow/client/UrlCmd.cpp + + # Core -- Headers + ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_version.h + ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_source_build_dir.h + core/src/ecflow/core/AssertTimer.hpp + core/src/ecflow/core/Cal.hpp + core/src/ecflow/core/Calendar.hpp + core/src/ecflow/core/CalendarUpdateParams.hpp + core/src/ecflow/core/CheckPt.hpp + core/src/ecflow/core/Child.hpp + core/src/ecflow/core/Chrono.hpp + core/src/ecflow/core/CommandLine.hpp + core/src/ecflow/core/DState.hpp + core/src/ecflow/core/DebugPerf.hpp + core/src/ecflow/core/DurationTimer.hpp + core/src/ecflow/core/Ecf.hpp + core/src/ecflow/core/EcfPortLock.hpp + core/src/ecflow/core/Extract.hpp + core/src/ecflow/core/File.hpp + core/src/ecflow/core/File_r.hpp + core/src/ecflow/core/Filesystem.hpp + core/src/ecflow/core/Host.hpp + core/src/ecflow/core/Indentor.hpp + core/src/ecflow/core/Log.hpp + core/src/ecflow/core/LogVerification.hpp + core/src/ecflow/core/Message.hpp + core/src/ecflow/core/NOrder.hpp + core/src/ecflow/core/NState.hpp + core/src/ecflow/core/NodePath.hpp + core/src/ecflow/core/Overload.hpp + core/src/ecflow/core/Passwd.hpp + core/src/ecflow/core/PasswdFile.hpp + core/src/ecflow/core/PasswordEncryption.hpp + core/src/ecflow/core/Pid.hpp + core/src/ecflow/core/PrintStyle.hpp + core/src/ecflow/core/SState.hpp + core/src/ecflow/core/Serialization.hpp + core/src/ecflow/core/Stl.hpp + core/src/ecflow/core/Str.hpp + core/src/ecflow/core/StringSplitter.hpp + core/src/ecflow/core/TimeSeries.hpp + core/src/ecflow/core/TimeSlot.hpp + core/src/ecflow/core/TimeStamp.hpp + core/src/ecflow/core/User.hpp + core/src/ecflow/core/Version.hpp + core/src/ecflow/core/WhiteListFile.hpp + core/src/ecflow/core/cereal_boost_time.hpp + core/src/ecflow/core/cereal_optional_nvp.hpp + core/src/ecflow/core/perf_timer.hpp + core/src/ecflow/core/exceptions/Exceptions.hpp + # Core -- Sources + core/src/ecflow/core/AssertTimer.cpp + core/src/ecflow/core/Cal.cpp + core/src/ecflow/core/Calendar.cpp + core/src/ecflow/core/Child.cpp + core/src/ecflow/core/Chrono.cpp + core/src/ecflow/core/CommandLine.cpp + core/src/ecflow/core/DState.cpp + core/src/ecflow/core/DurationTimer.cpp + core/src/ecflow/core/Ecf.cpp + core/src/ecflow/core/Extract.cpp + core/src/ecflow/core/File.cpp + core/src/ecflow/core/File_r.cpp + core/src/ecflow/core/Filesystem.cpp + core/src/ecflow/core/Host.cpp + core/src/ecflow/core/Indentor.cpp + core/src/ecflow/core/Log.cpp + core/src/ecflow/core/LogVerification.cpp + core/src/ecflow/core/NOrder.cpp + core/src/ecflow/core/NState.cpp + core/src/ecflow/core/NodePath.cpp + core/src/ecflow/core/Passwd.cpp + core/src/ecflow/core/PasswdFile.cpp + core/src/ecflow/core/Pid.cpp + core/src/ecflow/core/PrintStyle.cpp + core/src/ecflow/core/SState.cpp + core/src/ecflow/core/Str.cpp + core/src/ecflow/core/StringSplitter.cpp + core/src/ecflow/core/TimeSeries.cpp + core/src/ecflow/core/TimeSlot.cpp + core/src/ecflow/core/TimeStamp.cpp + core/src/ecflow/core/User.cpp + core/src/ecflow/core/Version.cpp + core/src/ecflow/core/WhiteListFile.cpp + + # Node -- Headers + node/src/ecflow/node/AbstractObserver.hpp + node/src/ecflow/node/Alias.hpp + node/src/ecflow/node/Aspect.hpp + node/src/ecflow/node/Attr.hpp + node/src/ecflow/node/AutoRestoreAttr.hpp + node/src/ecflow/node/AvisoAttr.hpp + node/src/ecflow/node/ClientSuiteMgr.hpp + node/src/ecflow/node/ClientSuites.hpp + node/src/ecflow/node/CmdContext.hpp + node/src/ecflow/node/Defs.hpp + node/src/ecflow/node/DefsDelta.hpp + node/src/ecflow/node/DefsTreeVisitor.hpp + node/src/ecflow/node/EcfFile.hpp + node/src/ecflow/node/ExprAst.hpp + node/src/ecflow/node/ExprAstVisitor.hpp + node/src/ecflow/node/ExprDuplicate.hpp + node/src/ecflow/node/ExprParser.hpp + node/src/ecflow/node/Expression.hpp + node/src/ecflow/node/Family.hpp + node/src/ecflow/node/Flag.hpp + node/src/ecflow/node/InLimit.hpp + node/src/ecflow/node/InLimitMgr.hpp + node/src/ecflow/node/JobCreationCtrl.hpp + node/src/ecflow/node/JobProfiler.hpp + node/src/ecflow/node/Jobs.hpp + node/src/ecflow/node/JobsParam.hpp + node/src/ecflow/node/Limit.hpp + node/src/ecflow/node/LimitFwd.hpp + node/src/ecflow/node/Memento.hpp + node/src/ecflow/node/MirrorAttr.hpp + node/src/ecflow/node/MiscAttrs.hpp + node/src/ecflow/node/Node.hpp + node/src/ecflow/node/NodeContainer.hpp + node/src/ecflow/node/NodeFwd.hpp + node/src/ecflow/node/NodeState.hpp + node/src/ecflow/node/NodeStats.hpp + node/src/ecflow/node/NodeTreeVisitor.hpp + node/src/ecflow/node/Operations.hpp + node/src/ecflow/node/ResolveExternsVisitor.hpp + node/src/ecflow/node/ServerState.hpp + node/src/ecflow/node/Signal.hpp + node/src/ecflow/node/Submittable.hpp + node/src/ecflow/node/Suite.hpp + node/src/ecflow/node/SuiteChanged.hpp + node/src/ecflow/node/System.hpp + node/src/ecflow/node/Task.hpp + node/src/ecflow/node/TaskScriptGenerator.hpp + node/src/ecflow/node/move_peer.hpp + node/src/ecflow/node/formatter/AvisoFormatter.hpp + node/src/ecflow/node/formatter/Format.hpp + node/src/ecflow/node/formatter/Formatter.hpp + node/src/ecflow/node/formatter/MirrorFormatter.hpp + node/src/ecflow/node/parser/AutoArchiveParser.hpp + node/src/ecflow/node/parser/AutoCancelParser.hpp + node/src/ecflow/node/parser/AutoRestoreParser.hpp + node/src/ecflow/node/parser/AvisoParser.hpp + node/src/ecflow/node/parser/CalendarParser.hpp + node/src/ecflow/node/parser/ClockParser.hpp + node/src/ecflow/node/parser/CronParser.hpp + node/src/ecflow/node/parser/DateParser.hpp + node/src/ecflow/node/parser/DayParser.hpp + node/src/ecflow/node/parser/DefsParser.hpp + node/src/ecflow/node/parser/DefsStateParser.hpp + node/src/ecflow/node/parser/DefsStatusParser.hpp + node/src/ecflow/node/parser/DefsStructureParser.hpp + node/src/ecflow/node/parser/EventParser.hpp + node/src/ecflow/node/parser/ExternParser.hpp + node/src/ecflow/node/parser/GenericParser.hpp + node/src/ecflow/node/parser/InlimitParser.hpp + node/src/ecflow/node/parser/LabelParser.hpp + node/src/ecflow/node/parser/LateParser.hpp + node/src/ecflow/node/parser/LimitParser.hpp + node/src/ecflow/node/parser/MeterParser.hpp + node/src/ecflow/node/parser/MirrorParser.cpp + node/src/ecflow/node/parser/Parser.hpp + node/src/ecflow/node/parser/QueueParser.hpp + node/src/ecflow/node/parser/RepeatParser.hpp + node/src/ecflow/node/parser/TimeParser.hpp + node/src/ecflow/node/parser/TodayParser.hpp + node/src/ecflow/node/parser/TriggerParser.hpp + node/src/ecflow/node/parser/VariableParser.hpp + node/src/ecflow/node/parser/VerifyParser.hpp + node/src/ecflow/node/parser/ZombieAttrParser.hpp + # Node -- Sources + node/src/ecflow/node/Alias.cpp + node/src/ecflow/node/Attr.cpp + node/src/ecflow/node/AutoRestoreAttr.cpp + node/src/ecflow/node/AvisoAttr.cpp + node/src/ecflow/node/ClientSuiteMgr.cpp + node/src/ecflow/node/ClientSuites.cpp + node/src/ecflow/node/CmdContext.cpp + node/src/ecflow/node/Defs.cpp + node/src/ecflow/node/DefsDelta.cpp + node/src/ecflow/node/EcfFile.cpp + node/src/ecflow/node/ExprAst.cpp + node/src/ecflow/node/ExprAstVisitor.cpp + node/src/ecflow/node/ExprDuplicate.cpp + node/src/ecflow/node/ExprParser.cpp + node/src/ecflow/node/Expression.cpp + node/src/ecflow/node/Family.cpp + node/src/ecflow/node/Flag.cpp + node/src/ecflow/node/InLimit.cpp + node/src/ecflow/node/InLimitMgr.cpp + node/src/ecflow/node/JobCreationCtrl.cpp + node/src/ecflow/node/JobProfiler.cpp + node/src/ecflow/node/Jobs.cpp + node/src/ecflow/node/JobsParam.cpp + node/src/ecflow/node/Limit.cpp + node/src/ecflow/node/Memento.cpp + node/src/ecflow/node/MirrorAttr.cpp + node/src/ecflow/node/MiscAttrs.cpp + node/src/ecflow/node/Node.cpp + node/src/ecflow/node/NodeAdd.cpp + node/src/ecflow/node/NodeChange.cpp + node/src/ecflow/node/NodeContainer.cpp + node/src/ecflow/node/NodeDelete.cpp + node/src/ecflow/node/NodeFind.cpp + node/src/ecflow/node/NodeMemento.cpp + node/src/ecflow/node/NodeStats.cpp + node/src/ecflow/node/NodeTime.cpp + node/src/ecflow/node/NodeTreeVisitor.cpp + node/src/ecflow/node/ResolveExternsVisitor.cpp + node/src/ecflow/node/ServerState.cpp + node/src/ecflow/node/Signal.cpp + node/src/ecflow/node/Submittable.cpp + node/src/ecflow/node/Suite.cpp + node/src/ecflow/node/SuiteChanged.cpp + node/src/ecflow/node/System.cpp + node/src/ecflow/node/Task.cpp + node/src/ecflow/node/TaskScriptGenerator.cpp + node/src/ecflow/node/parser/AutoArchiveParser.cpp + node/src/ecflow/node/parser/AutoCancelParser.cpp + node/src/ecflow/node/parser/AutoRestoreParser.cpp + node/src/ecflow/node/parser/AvisoParser.cpp + node/src/ecflow/node/parser/CalendarParser.cpp + node/src/ecflow/node/parser/ClockParser.cpp + node/src/ecflow/node/parser/CronParser.cpp + node/src/ecflow/node/parser/DateParser.cpp + node/src/ecflow/node/parser/DayParser.cpp + node/src/ecflow/node/parser/DefsParser.cpp + node/src/ecflow/node/parser/DefsStateParser.cpp + node/src/ecflow/node/parser/DefsStatusParser.cpp + node/src/ecflow/node/parser/DefsStructureParser.cpp + node/src/ecflow/node/parser/EventParser.cpp + node/src/ecflow/node/parser/ExternParser.cpp + node/src/ecflow/node/parser/GenericParser.cpp + node/src/ecflow/node/parser/InlimitParser.cpp + node/src/ecflow/node/parser/LabelParser.cpp + node/src/ecflow/node/parser/LateParser.cpp + node/src/ecflow/node/parser/LimitParser.cpp + node/src/ecflow/node/parser/MeterParser.cpp + node/src/ecflow/node/parser/MirrorParser.cpp + node/src/ecflow/node/parser/Parser.cpp + node/src/ecflow/node/parser/QueueParser.cpp + node/src/ecflow/node/parser/RepeatParser.cpp + node/src/ecflow/node/parser/TimeParser.cpp + node/src/ecflow/node/parser/TodayParser.cpp + node/src/ecflow/node/parser/TriggerParser.cpp + node/src/ecflow/node/parser/VariableParser.cpp + node/src/ecflow/node/parser/VerifyParser.cpp + node/src/ecflow/node/parser/ZombieAttrParser.cpp + + # Server -- Headers + server/src/ecflow/server/BaseServer.hpp + server/src/ecflow/server/CheckPtSaver.hpp + server/src/ecflow/server/NodeTreeTraverser.hpp + server/src/ecflow/server/PeriodicScheduler.hpp + server/src/ecflow/server/Server.hpp + server/src/ecflow/server/ServerEnvironment.hpp + server/src/ecflow/server/ServerOptions.hpp + server/src/ecflow/server/SslServer.hpp + server/src/ecflow/server/SslTcpServer.hpp + server/src/ecflow/server/TcpBaseServer.hpp + server/src/ecflow/server/TcpServer.hpp + $<$:server/src/ecflow/server/SslServer.hpp> + $<$:server/src/ecflow/server/SslTcpServer.hpp> + # Server -- Sources + server/src/ecflow/server/BaseServer.cpp + server/src/ecflow/server/CheckPtSaver.cpp + server/src/ecflow/server/NodeTreeTraverser.cpp + server/src/ecflow/server/PeriodicScheduler.cpp + server/src/ecflow/server/Server.cpp + server/src/ecflow/server/ServerEnvironment.cpp + server/src/ecflow/server/ServerOptions.cpp + server/src/ecflow/server/TcpBaseServer.cpp + server/src/ecflow/server/TcpServer.cpp + $<$:server/src/ecflow/server/SslServer.cpp> + $<$:server/src/ecflow/server/SslTcpServer.cpp> + + # Service -- Headers + service/src/ecflow/service/aviso/Aviso.hpp + service/src/ecflow/service/aviso/AvisoService.hpp + service/src/ecflow/service/aviso/etcd/Address.hpp + service/src/ecflow/service/aviso/etcd/Client.hpp + service/src/ecflow/service/aviso/etcd/Range.hpp + service/src/ecflow/service/executor/PeriodicTaskExecutor.hpp + service/src/ecflow/service/mirror/MirrorService.hpp + service/src/ecflow/service/Controller.hpp + service/src/ecflow/service/Log.hpp + service/src/ecflow/service/Registry.hpp + # Service -- Sources + service/src/ecflow/service/aviso/Aviso.cpp + service/src/ecflow/service/aviso/AvisoService.cpp + service/src/ecflow/service/aviso/etcd/Range.cpp + service/src/ecflow/service/aviso/etcd/Client.cpp + service/src/ecflow/service/mirror/MirrorService.cpp + service/src/ecflow/service/Controller.cpp + service/src/ecflow/service/Registry.cpp + + # UDP -- Headers + udp/src/ecflow/udp/ClientAPI.hpp + udp/src/ecflow/udp/RequestHandler.hpp + udp/src/ecflow/udp/Trace.hpp + udp/src/ecflow/udp/UDPServer.hpp + udp/src/ecflow/udp/UDPServerEnvironment.hpp + udp/src/ecflow/udp/UDPServerOptions.hpp + # UDP -- Sources + udp/src/ecflow/udp/ClientAPI.cpp + udp/src/ecflow/udp/RequestHandler.cpp + udp/src/ecflow/udp/Trace.cpp + udp/src/ecflow/udp/UDPServerEnvironment.cpp + udp/src/ecflow/udp/UDPServerOptions.cpp +) + + +ecbuild_add_library( + TARGET + ecflow_all + NOINSTALL + TYPE STATIC + SOURCES + ${srcs} + PUBLIC_INCLUDES + attribute/src + base/src + client/src + core/src + node/src + service/src + server/src + udp/src + ${CMAKE_BINARY_DIR}/generated/src + PUBLIC_LIBS + nlohmann::json + cereal::cereal # this needs to be public as it appears in public header files used downstream + httplib::httplib + $<$:Boost::system> + Boost::filesystem + Boost::date_time + Boost::program_options + $<$:OpenSSL::SSL> + $<$>:crypt> + Threads::Threads + DEFINITIONS + CMAKE +) +target_clangformat(ecflow_all) + + +add_subdirectory(core) +add_subdirectory(service) +add_subdirectory(attribute) +add_subdirectory(node) +add_subdirectory(base) +add_subdirectory(simulator) +add_subdirectory(client) if (ENABLE_SERVER) - add_subdirectory( server ) - add_subdirectory( test ) -endif() + add_subdirectory(server) + add_subdirectory(test) +endif () if (ENABLE_PYTHON) - if ( ENABLE_PYTHON_PTR_REGISTER ) - add_definitions( -DECF_ENABLE_PYTHON_PTR_REGISTER ) - endif() - add_subdirectory( pyext ) -endif() + if (ENABLE_PYTHON_PTR_REGISTER) + add_definitions(-DECF_ENABLE_PYTHON_PTR_REGISTER) + endif () + add_subdirectory(pyext) +endif () if (ENABLE_HTTP) - add_subdirectory( rest ) -endif() + add_subdirectory(rest) +endif () if (ENABLE_UDP) - add_subdirectory( udp ) -endif() + add_subdirectory(udp) +endif () diff --git a/libs/attribute/CMakeLists.txt b/libs/attribute/CMakeLists.txt index be8a7256b..240881fc4 100644 --- a/libs/attribute/CMakeLists.txt +++ b/libs/attribute/CMakeLists.txt @@ -8,63 +8,6 @@ # nor does it submit to any jurisdiction. # -set(srcs - # Headers - src/ecflow/attribute/AutoArchiveAttr.hpp - src/ecflow/attribute/AutoCancelAttr.hpp - src/ecflow/attribute/ClockAttr.hpp - src/ecflow/attribute/CronAttr.hpp - src/ecflow/attribute/DateAttr.hpp - src/ecflow/attribute/DayAttr.hpp - src/ecflow/attribute/GenericAttr.hpp - src/ecflow/attribute/LateAttr.hpp - src/ecflow/attribute/NodeAttr.hpp - src/ecflow/attribute/QueueAttr.hpp - src/ecflow/attribute/RepeatAttr.hpp - src/ecflow/attribute/TimeAttr.hpp - src/ecflow/attribute/TodayAttr.hpp - src/ecflow/attribute/Variable.hpp - src/ecflow/attribute/VerifyAttr.hpp - src/ecflow/attribute/Zombie.hpp - src/ecflow/attribute/ZombieAttr.hpp - # Sources - src/ecflow/attribute/AutoArchiveAttr.cpp - src/ecflow/attribute/AutoCancelAttr.cpp - src/ecflow/attribute/ClockAttr.cpp - src/ecflow/attribute/CronAttr.cpp - src/ecflow/attribute/DateAttr.cpp - src/ecflow/attribute/DayAttr.cpp - src/ecflow/attribute/GenericAttr.cpp - src/ecflow/attribute/LateAttr.cpp - src/ecflow/attribute/NodeAttr.cpp - src/ecflow/attribute/QueueAttr.cpp - src/ecflow/attribute/RepeatAttr.cpp - src/ecflow/attribute/TimeAttr.cpp - src/ecflow/attribute/TodayAttr.cpp - src/ecflow/attribute/Variable.cpp - src/ecflow/attribute/VerifyAttr.cpp - src/ecflow/attribute/Zombie.cpp - src/ecflow/attribute/ZombieAttr.cpp -) - -ecbuild_add_library( - TARGET - attributes - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - core - ecflow_service - Boost::date_time - nlohmann::json -) -target_clangformat(attributes) - - set(test_srcs # Sources test/TestAttributes_main.cpp @@ -92,9 +35,10 @@ ecbuild_add_test( nightly SOURCES ${test_srcs} + INCLUDES + ../core/test LIBS - test_support - attributes + ecflow_all TEST_DEPENDS u_core Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) diff --git a/libs/base/CMakeLists.txt b/libs/base/CMakeLists.txt index cab547a67..341cfe1aa 100644 --- a/libs/base/CMakeLists.txt +++ b/libs/base/CMakeLists.txt @@ -8,178 +8,6 @@ # nor does it submit to any jurisdiction. # -set(srcs - # Headers - src/ecflow/base/AbstractClientEnv.hpp - src/ecflow/base/AbstractServer.hpp - src/ecflow/base/Client.hpp - src/ecflow/base/ClientOptionsParser.hpp - src/ecflow/base/ClientToServerRequest.hpp - src/ecflow/base/Cmd.hpp - src/ecflow/base/Connection.hpp - src/ecflow/base/Gnuplot.hpp - src/ecflow/base/ServerReply.hpp - src/ecflow/base/ServerToClientResponse.hpp - src/ecflow/base/Stats.hpp - src/ecflow/base/WhyCmd.hpp - src/ecflow/base/ZombieCtrl.hpp - $<$:src/ecflow/base/Openssl.hpp> - $<$:src/ecflow/base/ssl_connection.hpp> - $<$:src/ecflow/base/SslClient.hpp> - src/ecflow/base/cts/ClientToServerCmd.hpp - src/ecflow/base/cts/CtsCmdRegistry.hpp - src/ecflow/base/cts/EditHistoryMgr.hpp - src/ecflow/base/cts/task/AbortCmd.hpp - src/ecflow/base/cts/task/CompleteCmd.hpp - src/ecflow/base/cts/task/CtsWaitCmd.hpp - src/ecflow/base/cts/task/EventCmd.hpp - src/ecflow/base/cts/task/InitCmd.hpp - src/ecflow/base/cts/task/LabelCmd.hpp - src/ecflow/base/cts/task/MeterCmd.hpp - src/ecflow/base/cts/task/QueueCmd.hpp - src/ecflow/base/cts/task/TaskApi.hpp - src/ecflow/base/cts/task/TaskCmd.hpp - src/ecflow/base/cts/user/AlterCmd.hpp - src/ecflow/base/cts/user/BeginCmd.hpp - src/ecflow/base/cts/user/CFileCmd.hpp - src/ecflow/base/cts/user/CheckPtCmd.hpp - src/ecflow/base/cts/user/ClientHandleCmd.hpp - src/ecflow/base/cts/user/CSyncCmd.hpp - src/ecflow/base/cts/user/CtsApi.hpp - src/ecflow/base/cts/user/CtsCmd.hpp - src/ecflow/base/cts/user/CtsNodeCmd.hpp - src/ecflow/base/cts/user/DeleteCmd.hpp - src/ecflow/base/cts/user/EditScriptCmd.hpp - src/ecflow/base/cts/user/ForceCmd.hpp - src/ecflow/base/cts/user/FreeDepCmd.hpp - src/ecflow/base/cts/user/GroupCTSCmd.hpp - src/ecflow/base/cts/user/LoadDefsCmd.hpp - src/ecflow/base/cts/user/LogCmd.hpp - src/ecflow/base/cts/user/LogMessageCmd.hpp - src/ecflow/base/cts/user/MoveCmd.hpp - src/ecflow/base/cts/user/OrderNodeCmd.hpp - src/ecflow/base/cts/user/PathsCmd.hpp - src/ecflow/base/cts/user/PlugCmd.hpp - src/ecflow/base/cts/user/QueryCmd.hpp - src/ecflow/base/cts/user/ReplaceNodeCmd.hpp - src/ecflow/base/cts/user/RequeueNodeCmd.hpp - src/ecflow/base/cts/user/RunNodeCmd.hpp - src/ecflow/base/cts/user/ServerVersionCmd.hpp - src/ecflow/base/cts/user/ShowCmd.hpp - src/ecflow/base/cts/user/UserCmd.hpp - src/ecflow/base/cts/user/ZombieCmd.hpp - src/ecflow/base/stc/BlockClientZombieCmd.hpp - src/ecflow/base/stc/DefsCache.hpp - src/ecflow/base/stc/DefsCmd.hpp - src/ecflow/base/stc/ErrorCmd.hpp - src/ecflow/base/stc/GroupSTCCmd.hpp - src/ecflow/base/stc/PreAllocatedReply.hpp - src/ecflow/base/stc/SClientHandleCmd.hpp - src/ecflow/base/stc/SClientHandleSuitesCmd.hpp - src/ecflow/base/stc/SNewsCmd.hpp - src/ecflow/base/stc/SNodeCmd.hpp - src/ecflow/base/stc/SServerLoadCmd.hpp - src/ecflow/base/stc/SStatsCmd.hpp - src/ecflow/base/stc/SStringCmd.hpp - src/ecflow/base/stc/SStringVecCmd.hpp - src/ecflow/base/stc/SSuitesCmd.hpp - src/ecflow/base/stc/SSyncCmd.hpp - src/ecflow/base/stc/ServerToClientCmd.hpp - src/ecflow/base/stc/StcCmd.hpp - src/ecflow/base/stc/ZombieGetCmd.hpp - # Sources - src/ecflow/base/Client.cpp - src/ecflow/base/ClientOptionsParser.cpp - src/ecflow/base/ClientToServerRequest.cpp - src/ecflow/base/Connection.cpp - src/ecflow/base/Gnuplot.cpp - src/ecflow/base/ServerReply.cpp - src/ecflow/base/ServerToClientResponse.cpp - src/ecflow/base/Stats.cpp - src/ecflow/base/WhyCmd.cpp - src/ecflow/base/ZombieCtrl.cpp - $<$:src/ecflow/base/Openssl.cpp> - $<$:src/ecflow/base/ssl_connection.cpp> - $<$:src/ecflow/base/SslClient.cpp> - src/ecflow/base/cts/ClientToServerCmd.cpp - src/ecflow/base/cts/CtsCmdRegistry.cpp - src/ecflow/base/cts/EditHistoryMgr.cpp - src/ecflow/base/cts/task/AbortCmd.cpp - src/ecflow/base/cts/task/CompleteCmd.cpp - src/ecflow/base/cts/task/CtsWaitCmd.cpp - src/ecflow/base/cts/task/EventCmd.cpp - src/ecflow/base/cts/task/InitCmd.cpp - src/ecflow/base/cts/task/LabelCmd.cpp - src/ecflow/base/cts/task/MeterCmd.cpp - src/ecflow/base/cts/task/QueueCmd.cpp - src/ecflow/base/cts/task/TaskApi.cpp - src/ecflow/base/cts/task/TaskCmd.cpp - src/ecflow/base/cts/user/AlterCmd.cpp - src/ecflow/base/cts/user/BeginCmd.cpp - src/ecflow/base/cts/user/CFileCmd.cpp - src/ecflow/base/cts/user/CSyncCmd.cpp - src/ecflow/base/cts/user/CheckPtCmd.cpp - src/ecflow/base/cts/user/ClientHandleCmd.cpp - src/ecflow/base/cts/user/CtsApi.cpp - src/ecflow/base/cts/user/CtsCmd.cpp - src/ecflow/base/cts/user/CtsNodeCmd.cpp - src/ecflow/base/cts/user/DeleteCmd.cpp - src/ecflow/base/cts/user/EditScriptCmd.cpp - src/ecflow/base/cts/user/ForceCmd.cpp - src/ecflow/base/cts/user/FreeDepCmd.cpp - src/ecflow/base/cts/user/GroupCTSCmd.cpp - src/ecflow/base/cts/user/LoadDefsCmd.cpp - src/ecflow/base/cts/user/LogCmd.cpp - src/ecflow/base/cts/user/LogMessageCmd.cpp - src/ecflow/base/cts/user/MoveCmd.cpp - src/ecflow/base/cts/user/OrderNodeCmd.cpp - src/ecflow/base/cts/user/PathsCmd.cpp - src/ecflow/base/cts/user/PlugCmd.cpp - src/ecflow/base/cts/user/QueryCmd.cpp - src/ecflow/base/cts/user/ReplaceNodeCmd.cpp - src/ecflow/base/cts/user/RequeueNodeCmd.cpp - src/ecflow/base/cts/user/RunNodeCmd.cpp - src/ecflow/base/cts/user/ServerVersionCmd.cpp - src/ecflow/base/cts/user/ShowCmd.cpp - src/ecflow/base/cts/user/UserCmd.cpp - src/ecflow/base/cts/user/ZombieCmd.cpp - src/ecflow/base/stc/BlockClientZombieCmd.cpp - src/ecflow/base/stc/DefsCache.cpp - src/ecflow/base/stc/DefsCmd.cpp - src/ecflow/base/stc/ErrorCmd.cpp - src/ecflow/base/stc/GroupSTCCmd.cpp - src/ecflow/base/stc/PreAllocatedReply.cpp - src/ecflow/base/stc/SClientHandleCmd.cpp - src/ecflow/base/stc/SClientHandleSuitesCmd.cpp - src/ecflow/base/stc/SNewsCmd.cpp - src/ecflow/base/stc/SNodeCmd.cpp - src/ecflow/base/stc/SServerLoadCmd.cpp - src/ecflow/base/stc/SStatsCmd.cpp - src/ecflow/base/stc/SStringCmd.cpp - src/ecflow/base/stc/SStringVecCmd.cpp - src/ecflow/base/stc/SSuitesCmd.cpp - src/ecflow/base/stc/SSyncCmd.cpp - src/ecflow/base/stc/ServerToClientCmd.cpp - src/ecflow/base/stc/StcCmd.cpp - src/ecflow/base/stc/ZombieGetCmd.cpp -) - -ecbuild_add_library( - TARGET - base - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - node - Boost::boost # Boost header-only libraries must be available (namely asio) -) -target_clangformat(base) - - set(test_srcs # Headers test/MockServer.hpp @@ -219,7 +47,7 @@ ecbuild_add_test( INCLUDES ../node/test LIBS - base + ecflow_all Threads::Threads $<$:OpenSSL::SSL> TEST_DEPENDS @@ -245,7 +73,7 @@ if (ENABLE_ALL_TESTS) SOURCES ${test_srcs} LIBS - base + ecflow_all Threads::Threads ) target_clangformat(p_job_gen diff --git a/libs/client/CMakeLists.txt b/libs/client/CMakeLists.txt index b810ca175..2fc3f618c 100644 --- a/libs/client/CMakeLists.txt +++ b/libs/client/CMakeLists.txt @@ -8,41 +8,6 @@ # nor does it submit to any jurisdiction. # -set(srcs - # Headers - src/ecflow/client/ClientCmdCache.hpp - src/ecflow/client/ClientEnvironment.hpp - src/ecflow/client/ClientInvoker.hpp - src/ecflow/client/ClientOptions.hpp - src/ecflow/client/Help.hpp - src/ecflow/client/Rtt.hpp - src/ecflow/client/UrlCmd.hpp - # Sources - src/ecflow/client/ClientCmdCache.cpp - src/ecflow/client/Rtt.cpp - src/ecflow/client/ClientEnvironment.cpp - src/ecflow/client/ClientInvoker.cpp - src/ecflow/client/Help.cpp - src/ecflow/client/Rtt.cpp - src/ecflow/client/ClientOptions.cpp - src/ecflow/client/UrlCmd.cpp -) - -ecbuild_add_library( - TARGET - libclient - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - base - Threads::Threads -) -target_clangformat(libclient) - # ======================================================================== # EXE ecflow_client, if OpenSSL not enabled ${OPENSSL_LIBRARIES}, is empty @@ -52,7 +17,7 @@ ecbuild_add_executable( SOURCES src/ecflow/client/ClientMain.cpp LIBS - libclient + ecflow_all $<$:OpenSSL::SSL> ) target_clangformat(ecflow_client) @@ -135,7 +100,7 @@ ecbuild_add_test( ../base/test ../node/test LIBS - libclient + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) Boost::timer $<$:OpenSSL::SSL> @@ -170,7 +135,7 @@ if (ENABLE_ALL_TESTS AND ENABLE_SERVER) INCLUDES ../base/test LIBS - libclient + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) $<$:OpenSSL::SSL> DEPENDS @@ -201,7 +166,7 @@ if (ENABLE_ALL_TESTS AND ENABLE_SERVER) INCLUDES ../base/test LIBS - libclient + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) $<$:OpenSSL::SSL> DEPENDS diff --git a/libs/core/CMakeLists.txt b/libs/core/CMakeLists.txt index 677288792..ba0d1bce9 100644 --- a/libs/core/CMakeLists.txt +++ b/libs/core/CMakeLists.txt @@ -8,121 +8,6 @@ # nor does it submit to any jurisdiction. # -configure_file( - src/ecflow/core/ecflow_version.h.in - ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_version.h) -configure_file( - src/ecflow/core/ecflow_source_build_dir.h.in - ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_source_build_dir.h) - -set(srcs - # Headers - ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_version.h - ${CMAKE_BINARY_DIR}/generated/src/ecflow/core/ecflow_source_build_dir.h - src/ecflow/core/AssertTimer.hpp - src/ecflow/core/Cal.hpp - src/ecflow/core/Calendar.hpp - src/ecflow/core/CalendarUpdateParams.hpp - src/ecflow/core/CheckPt.hpp - src/ecflow/core/Child.hpp - src/ecflow/core/Chrono.hpp - src/ecflow/core/CommandLine.hpp - src/ecflow/core/DState.hpp - src/ecflow/core/DebugPerf.hpp - src/ecflow/core/DurationTimer.hpp - src/ecflow/core/Ecf.hpp - src/ecflow/core/EcfPortLock.hpp - src/ecflow/core/Extract.hpp - src/ecflow/core/File.hpp - src/ecflow/core/File_r.hpp - src/ecflow/core/Filesystem.hpp - src/ecflow/core/Host.hpp - src/ecflow/core/Indentor.hpp - src/ecflow/core/Log.hpp - src/ecflow/core/LogVerification.hpp - src/ecflow/core/Message.hpp - src/ecflow/core/NOrder.hpp - src/ecflow/core/NState.hpp - src/ecflow/core/NodePath.hpp - src/ecflow/core/Overload.hpp - src/ecflow/core/Passwd.hpp - src/ecflow/core/PasswdFile.hpp - src/ecflow/core/PasswordEncryption.hpp - src/ecflow/core/Pid.hpp - src/ecflow/core/PrintStyle.hpp - src/ecflow/core/SState.hpp - src/ecflow/core/Serialization.hpp - src/ecflow/core/Stl.hpp - src/ecflow/core/Str.hpp - src/ecflow/core/StringSplitter.hpp - src/ecflow/core/TimeSeries.hpp - src/ecflow/core/TimeSlot.hpp - src/ecflow/core/TimeStamp.hpp - src/ecflow/core/User.hpp - src/ecflow/core/Version.hpp - src/ecflow/core/WhiteListFile.hpp - src/ecflow/core/cereal_boost_time.hpp - src/ecflow/core/cereal_optional_nvp.hpp - src/ecflow/core/perf_timer.hpp - src/ecflow/core/exceptions/Exceptions.hpp - # Sources - src/ecflow/core/AssertTimer.cpp - src/ecflow/core/Cal.cpp - src/ecflow/core/Calendar.cpp - src/ecflow/core/Child.cpp - src/ecflow/core/Chrono.cpp - src/ecflow/core/CommandLine.cpp - src/ecflow/core/DState.cpp - src/ecflow/core/DurationTimer.cpp - src/ecflow/core/Ecf.cpp - src/ecflow/core/Extract.cpp - src/ecflow/core/File.cpp - src/ecflow/core/File_r.cpp - src/ecflow/core/Filesystem.cpp - src/ecflow/core/Host.cpp - src/ecflow/core/Indentor.cpp - src/ecflow/core/Log.cpp - src/ecflow/core/LogVerification.cpp - src/ecflow/core/NOrder.cpp - src/ecflow/core/NState.cpp - src/ecflow/core/NodePath.cpp - src/ecflow/core/Passwd.cpp - src/ecflow/core/PasswdFile.cpp - src/ecflow/core/Pid.cpp - src/ecflow/core/PrintStyle.cpp - src/ecflow/core/SState.cpp - src/ecflow/core/Str.cpp - src/ecflow/core/StringSplitter.cpp - src/ecflow/core/TimeSeries.cpp - src/ecflow/core/TimeSlot.cpp - src/ecflow/core/TimeStamp.cpp - src/ecflow/core/User.cpp - src/ecflow/core/Version.cpp - src/ecflow/core/WhiteListFile.cpp -) - -ecbuild_add_library( - TARGET - core - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - ${CMAKE_BINARY_DIR}/generated/src - PUBLIC_LIBS - cereal::cereal # this needs to be public as it appears in public header files used downstream - $<$:Boost::system> - Boost::filesystem - Boost::date_time - Boost::program_options - $<$>:crypt> - DEFINITIONS - CMAKE -) -target_clangformat(core) - ## ## Notice: test_support is an INTERFACE-only test utility library. ## @@ -185,7 +70,7 @@ ecbuild_add_test( ${test_srcs} LIBS test_support - core + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) Boost::timer ) diff --git a/libs/node/CMakeLists.txt b/libs/node/CMakeLists.txt index ad13d7558..0f0d552ec 100644 --- a/libs/node/CMakeLists.txt +++ b/libs/node/CMakeLists.txt @@ -8,187 +8,6 @@ # nor does it submit to any jurisdiction. # -set(srcs - # Headers - src/ecflow/node/AbstractObserver.hpp - src/ecflow/node/Alias.hpp - src/ecflow/node/Aspect.hpp - src/ecflow/node/Attr.hpp - src/ecflow/node/AutoRestoreAttr.hpp - src/ecflow/node/AvisoAttr.hpp - src/ecflow/node/ClientSuiteMgr.hpp - src/ecflow/node/ClientSuites.hpp - src/ecflow/node/CmdContext.hpp - src/ecflow/node/Defs.hpp - src/ecflow/node/DefsDelta.hpp - src/ecflow/node/DefsTreeVisitor.hpp - src/ecflow/node/EcfFile.hpp - src/ecflow/node/ExprAst.hpp - src/ecflow/node/ExprAstVisitor.hpp - src/ecflow/node/ExprDuplicate.hpp - src/ecflow/node/ExprParser.hpp - src/ecflow/node/Expression.hpp - src/ecflow/node/Family.hpp - src/ecflow/node/Flag.hpp - src/ecflow/node/InLimit.hpp - src/ecflow/node/InLimitMgr.hpp - src/ecflow/node/JobCreationCtrl.hpp - src/ecflow/node/JobProfiler.hpp - src/ecflow/node/Jobs.hpp - src/ecflow/node/JobsParam.hpp - src/ecflow/node/Limit.hpp - src/ecflow/node/LimitFwd.hpp - src/ecflow/node/Memento.hpp - src/ecflow/node/MirrorAttr.hpp - src/ecflow/node/MiscAttrs.hpp - src/ecflow/node/Node.hpp - src/ecflow/node/NodeContainer.hpp - src/ecflow/node/NodeFwd.hpp - src/ecflow/node/NodeState.hpp - src/ecflow/node/NodeStats.hpp - src/ecflow/node/NodeTreeVisitor.hpp - src/ecflow/node/Operations.hpp - src/ecflow/node/ResolveExternsVisitor.hpp - src/ecflow/node/ServerState.hpp - src/ecflow/node/Signal.hpp - src/ecflow/node/Submittable.hpp - src/ecflow/node/Suite.hpp - src/ecflow/node/SuiteChanged.hpp - src/ecflow/node/System.hpp - src/ecflow/node/Task.hpp - src/ecflow/node/TaskScriptGenerator.hpp - src/ecflow/node/move_peer.hpp - src/ecflow/node/formatter/AvisoFormatter.hpp - src/ecflow/node/formatter/Format.hpp - src/ecflow/node/formatter/Formatter.hpp - src/ecflow/node/formatter/MirrorFormatter.hpp - src/ecflow/node/parser/AutoArchiveParser.hpp - src/ecflow/node/parser/AutoCancelParser.hpp - src/ecflow/node/parser/AutoRestoreParser.hpp - src/ecflow/node/parser/AvisoParser.hpp - src/ecflow/node/parser/CalendarParser.hpp - src/ecflow/node/parser/ClockParser.hpp - src/ecflow/node/parser/CronParser.hpp - src/ecflow/node/parser/DateParser.hpp - src/ecflow/node/parser/DayParser.hpp - src/ecflow/node/parser/DefsParser.hpp - src/ecflow/node/parser/DefsStateParser.hpp - src/ecflow/node/parser/DefsStatusParser.hpp - src/ecflow/node/parser/DefsStructureParser.hpp - src/ecflow/node/parser/EventParser.hpp - src/ecflow/node/parser/ExternParser.hpp - src/ecflow/node/parser/GenericParser.hpp - src/ecflow/node/parser/InlimitParser.hpp - src/ecflow/node/parser/LabelParser.hpp - src/ecflow/node/parser/LateParser.hpp - src/ecflow/node/parser/LimitParser.hpp - src/ecflow/node/parser/MeterParser.hpp - src/ecflow/node/parser/MirrorParser.cpp - src/ecflow/node/parser/Parser.hpp - src/ecflow/node/parser/QueueParser.hpp - src/ecflow/node/parser/RepeatParser.hpp - src/ecflow/node/parser/TimeParser.hpp - src/ecflow/node/parser/TodayParser.hpp - src/ecflow/node/parser/TriggerParser.hpp - src/ecflow/node/parser/VariableParser.hpp - src/ecflow/node/parser/VerifyParser.hpp - src/ecflow/node/parser/ZombieAttrParser.hpp - # Sources - src/ecflow/node/Alias.cpp - src/ecflow/node/Attr.cpp - src/ecflow/node/AutoRestoreAttr.cpp - src/ecflow/node/AvisoAttr.cpp - src/ecflow/node/ClientSuiteMgr.cpp - src/ecflow/node/ClientSuites.cpp - src/ecflow/node/CmdContext.cpp - src/ecflow/node/Defs.cpp - src/ecflow/node/DefsDelta.cpp - src/ecflow/node/EcfFile.cpp - src/ecflow/node/ExprAst.cpp - src/ecflow/node/ExprAstVisitor.cpp - src/ecflow/node/ExprDuplicate.cpp - src/ecflow/node/ExprParser.cpp - src/ecflow/node/Expression.cpp - src/ecflow/node/Family.cpp - src/ecflow/node/Flag.cpp - src/ecflow/node/InLimit.cpp - src/ecflow/node/InLimitMgr.cpp - src/ecflow/node/JobCreationCtrl.cpp - src/ecflow/node/JobProfiler.cpp - src/ecflow/node/Jobs.cpp - src/ecflow/node/JobsParam.cpp - src/ecflow/node/Limit.cpp - src/ecflow/node/Memento.cpp - src/ecflow/node/MirrorAttr.cpp - src/ecflow/node/MiscAttrs.cpp - src/ecflow/node/Node.cpp - src/ecflow/node/NodeAdd.cpp - src/ecflow/node/NodeChange.cpp - src/ecflow/node/NodeContainer.cpp - src/ecflow/node/NodeDelete.cpp - src/ecflow/node/NodeFind.cpp - src/ecflow/node/NodeMemento.cpp - src/ecflow/node/NodeStats.cpp - src/ecflow/node/NodeTime.cpp - src/ecflow/node/NodeTreeVisitor.cpp - src/ecflow/node/ResolveExternsVisitor.cpp - src/ecflow/node/ServerState.cpp - src/ecflow/node/Signal.cpp - src/ecflow/node/Submittable.cpp - src/ecflow/node/Suite.cpp - src/ecflow/node/SuiteChanged.cpp - src/ecflow/node/System.cpp - src/ecflow/node/Task.cpp - src/ecflow/node/TaskScriptGenerator.cpp - src/ecflow/node/parser/AutoArchiveParser.cpp - src/ecflow/node/parser/AutoCancelParser.cpp - src/ecflow/node/parser/AutoRestoreParser.cpp - src/ecflow/node/parser/AvisoParser.cpp - src/ecflow/node/parser/CalendarParser.cpp - src/ecflow/node/parser/ClockParser.cpp - src/ecflow/node/parser/CronParser.cpp - src/ecflow/node/parser/DateParser.cpp - src/ecflow/node/parser/DayParser.cpp - src/ecflow/node/parser/DefsParser.cpp - src/ecflow/node/parser/DefsStateParser.cpp - src/ecflow/node/parser/DefsStatusParser.cpp - src/ecflow/node/parser/DefsStructureParser.cpp - src/ecflow/node/parser/EventParser.cpp - src/ecflow/node/parser/ExternParser.cpp - src/ecflow/node/parser/GenericParser.cpp - src/ecflow/node/parser/InlimitParser.cpp - src/ecflow/node/parser/LabelParser.cpp - src/ecflow/node/parser/LateParser.cpp - src/ecflow/node/parser/LimitParser.cpp - src/ecflow/node/parser/MeterParser.cpp - src/ecflow/node/parser/MirrorParser.cpp - src/ecflow/node/parser/Parser.cpp - src/ecflow/node/parser/QueueParser.cpp - src/ecflow/node/parser/RepeatParser.cpp - src/ecflow/node/parser/TimeParser.cpp - src/ecflow/node/parser/TodayParser.cpp - src/ecflow/node/parser/TriggerParser.cpp - src/ecflow/node/parser/VariableParser.cpp - src/ecflow/node/parser/VerifyParser.cpp - src/ecflow/node/parser/ZombieAttrParser.cpp -) - -ecbuild_add_library( - TARGET - node - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - attributes - ecflow_service -) -target_clangformat(node) - - set(test_srcs # Headers test/MyDefsFixture.hpp @@ -247,7 +66,7 @@ ecbuild_add_test( ${test_srcs} LIBS test_support - node + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) TEST_DEPENDS u_attributes @@ -283,7 +102,7 @@ ecbuild_add_test( test test/parser LIBS - node + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) TEST_DEPENDS u_node @@ -307,7 +126,7 @@ if (ENABLE_ALL_TESTS) SOURCES ${test_srcs} LIBS - node + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) TEST_DEPENDS u_anattr @@ -337,7 +156,7 @@ if (ENABLE_ALL_TESTS) SOURCES ${test_srcs} LIBS - node + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) Boost::timer ) @@ -369,7 +188,7 @@ if (ENABLE_ALL_TESTS) SOURCES ${test_srcs} LIBS - node + ecflow_all Boost::boost # Boost header-only libraries must be available Boost::timer ) @@ -393,7 +212,7 @@ if (ENABLE_ALL_TESTS) SOURCES ${test_srcs} LIBS - node + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) ) target_clangformat(p_parser_only diff --git a/libs/pyext/python2/CMakeLists.txt b/libs/pyext/python2/CMakeLists.txt index d49b8e535..f2112ff78 100644 --- a/libs/pyext/python2/CMakeLists.txt +++ b/libs/pyext/python2/CMakeLists.txt @@ -18,12 +18,8 @@ ecbuild_add_library( PRIVATE_INCLUDES ../src PUBLIC_LIBS - libclient + ecflow_all libsimulator - base - node - attributes - core Python2::Python Boost::${ECFLOW_BOOST_PYTHON_COMPONENT} $<$:OpenSSL::SSL> diff --git a/libs/pyext/python3/CMakeLists.txt b/libs/pyext/python3/CMakeLists.txt index ef8e820db..8a8ea5a35 100644 --- a/libs/pyext/python3/CMakeLists.txt +++ b/libs/pyext/python3/CMakeLists.txt @@ -29,12 +29,8 @@ ecbuild_add_library( PRIVATE_INCLUDES ../src PUBLIC_LIBS - libclient + ecflow_all libsimulator - base - node - attributes - core Python3::Module Boost::${ECFLOW_BOOST_PYTHON_COMPONENT} $<$:OpenSSL::SSL> diff --git a/libs/rest/CMakeLists.txt b/libs/rest/CMakeLists.txt index b62943401..8a586a10d 100644 --- a/libs/rest/CMakeLists.txt +++ b/libs/rest/CMakeLists.txt @@ -59,8 +59,7 @@ ecbuild_add_library( PUBLIC_INCLUDES src PUBLIC_LIBS - base - libclient + ecflow_all nlohmann::json httplib::httplib $<$:ZLIB::ZLIB> @@ -78,7 +77,7 @@ ecbuild_add_executable( src/ecflow/http/HttpMain.cpp LIBS libhttp - libclient + ecflow_all $<$:OpenSSL::SSL> ) target_clangformat(ecflow_http) @@ -132,8 +131,7 @@ if (ENABLE_HTTP AND ENABLE_SERVER) ../base/test LIBS libhttp - libclient - libserver + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) $<$:OpenSSL::SSL> DEPENDS diff --git a/libs/server/CMakeLists.txt b/libs/server/CMakeLists.txt index 9548680b6..bc2c3d88f 100644 --- a/libs/server/CMakeLists.txt +++ b/libs/server/CMakeLists.txt @@ -8,50 +8,6 @@ # nor does it submit to any jurisdiction. # -set(srcs - # Headers - src/ecflow/server/BaseServer.hpp - src/ecflow/server/CheckPtSaver.hpp - src/ecflow/server/NodeTreeTraverser.hpp - src/ecflow/server/PeriodicScheduler.hpp - src/ecflow/server/Server.hpp - src/ecflow/server/ServerEnvironment.hpp - src/ecflow/server/ServerOptions.hpp - src/ecflow/server/SslServer.hpp - src/ecflow/server/SslTcpServer.hpp - src/ecflow/server/TcpBaseServer.hpp - src/ecflow/server/TcpServer.hpp - $<$:src/ecflow/server/SslServer.hpp> - $<$:src/ecflow/server/SslTcpServer.hpp> - # Sources - src/ecflow/server/BaseServer.cpp - src/ecflow/server/CheckPtSaver.cpp - src/ecflow/server/NodeTreeTraverser.cpp - src/ecflow/server/PeriodicScheduler.cpp - src/ecflow/server/Server.cpp - src/ecflow/server/ServerEnvironment.cpp - src/ecflow/server/ServerOptions.cpp - src/ecflow/server/TcpBaseServer.cpp - src/ecflow/server/TcpServer.cpp - $<$:src/ecflow/server/SslServer.cpp> - $<$:src/ecflow/server/SslTcpServer.cpp> -) - -ecbuild_add_library( - TARGET - libserver - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - base - Boost::boost # Boost header-only libraries must be available (namely asio) -) -target_clangformat(libserver) - # ======================================================= # EXE ecflow_server, if OpenSSL not enabled ${OPENSSL_LIBRARIES}, is empty @@ -61,7 +17,7 @@ ecbuild_add_executable( SOURCES src/ecflow/server/ServerMain.cpp LIBS - libserver + ecflow_all $<$:OpenSSL::SSL> Threads::Threads ) @@ -107,7 +63,7 @@ ecbuild_add_test( test/TestServer_main.cpp # test entry point test/TestServer.cpp LIBS - libserver + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) $<$:OpenSSL::SSL> Threads::Threads @@ -130,7 +86,7 @@ ecbuild_add_test( test/TestPeriodicScheduler.cpp test/TestPeriodicScheduler_main.cpp # test entry point LIBS - libserver + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) $<$:OpenSSL::SSL> Threads::Threads diff --git a/libs/service/CMakeLists.txt b/libs/service/CMakeLists.txt index 321aaa42d..8f1efce84 100644 --- a/libs/service/CMakeLists.txt +++ b/libs/service/CMakeLists.txt @@ -11,47 +11,6 @@ # ecflow_services # -------------------------------------------------- -set(srcs - # Headers - src/ecflow/service/aviso/Aviso.hpp - src/ecflow/service/aviso/AvisoService.hpp - src/ecflow/service/aviso/etcd/Address.hpp - src/ecflow/service/aviso/etcd/Client.hpp - src/ecflow/service/aviso/etcd/Range.hpp - src/ecflow/service/executor/PeriodicTaskExecutor.hpp - src/ecflow/service/mirror/MirrorService.hpp - src/ecflow/service/Controller.hpp - src/ecflow/service/Log.hpp - src/ecflow/service/Registry.hpp - # Sources - src/ecflow/service/aviso/Aviso.cpp - src/ecflow/service/aviso/AvisoService.cpp - src/ecflow/service/aviso/etcd/Range.cpp - src/ecflow/service/aviso/etcd/Client.cpp - src/ecflow/service/mirror/MirrorService.cpp - src/ecflow/service/Controller.cpp - src/ecflow/service/Registry.cpp -) - -ecbuild_add_library( - TARGET ecflow_service - NOINSTALL - TYPE STATIC - SOURCES - ${srcs} - PUBLIC_INCLUDES - src - PUBLIC_LIBS - base - libclient - Boost::boost - nlohmann::json - httplib::httplib - Threads::Threads - $<$:OpenSSL::SSL> -) -target_clangformat(ecflow_service) - # u_services # -------------------------------------------------- @@ -70,7 +29,7 @@ ecbuild_add_test( SOURCES ${test_srcs} LIBS - ecflow_service + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) ) target_clangformat(u_service @@ -94,7 +53,7 @@ ecbuild_add_test( SOURCES ${test_srcs} LIBS - ecflow_service + ecflow_all Boost::boost # Boost header-only libraries must be available (namely unit_test_framework) ) target_clangformat(u_aviso diff --git a/libs/service/src/ecflow/service/Controller.hpp b/libs/service/src/ecflow/service/Controller.hpp index c7467cfc0..d30afbb4a 100644 --- a/libs/service/src/ecflow/service/Controller.hpp +++ b/libs/service/src/ecflow/service/Controller.hpp @@ -30,7 +30,7 @@ class Controller { using service_t = Service; template - explicit Controller(Args&&... args) : running_{std::forward(args)...} {}; + explicit Controller(Args&&... args) : running_{std::forward(args)...} {} // Attribute-facing API diff --git a/libs/service/src/ecflow/service/Log.hpp b/libs/service/src/ecflow/service/Log.hpp index 058932d26..46d7e0053 100644 --- a/libs/service/src/ecflow/service/Log.hpp +++ b/libs/service/src/ecflow/service/Log.hpp @@ -11,6 +11,7 @@ #ifndef ecflow_service_Log_HPP #define ecflow_service_Log_HPP +#include #include #include diff --git a/libs/simulator/CMakeLists.txt b/libs/simulator/CMakeLists.txt index c22a26989..15f350243 100644 --- a/libs/simulator/CMakeLists.txt +++ b/libs/simulator/CMakeLists.txt @@ -34,9 +34,7 @@ ecbuild_add_library( PUBLIC_INCLUDES src PUBLIC_LIBS - node - attributes - core + ecflow_all ) target_clangformat(libsimulator) diff --git a/libs/test/CMakeLists.txt b/libs/test/CMakeLists.txt index b38504ebf..9d38fdefb 100644 --- a/libs/test/CMakeLists.txt +++ b/libs/test/CMakeLists.txt @@ -30,11 +30,7 @@ ecbuild_add_library( src ../base/test PUBLIC_LIBS - libclient - base - node - attributes - core + ecflow_all ) target_clangformat(libharness) diff --git a/libs/udp/CMakeLists.txt b/libs/udp/CMakeLists.txt index b60d7ef28..6ae783fb3 100644 --- a/libs/udp/CMakeLists.txt +++ b/libs/udp/CMakeLists.txt @@ -8,45 +8,6 @@ # nor does it submit to any jurisdiction. # -# ============================================================================== -# ECFLOW UDP library - -set(LIB_TARGET libecflow_udp) - -set(${LIB_TARGET}_srcs - # Headers - src/ecflow/udp/ClientAPI.hpp - src/ecflow/udp/RequestHandler.hpp - src/ecflow/udp/Trace.hpp - src/ecflow/udp/UDPServer.hpp - src/ecflow/udp/UDPServerEnvironment.hpp - src/ecflow/udp/UDPServerOptions.hpp - # Sources - src/ecflow/udp/ClientAPI.cpp - src/ecflow/udp/RequestHandler.cpp - src/ecflow/udp/Trace.cpp - src/ecflow/udp/UDPServerEnvironment.cpp - src/ecflow/udp/UDPServerOptions.cpp -) - -ecbuild_add_library( - TARGET - ${LIB_TARGET} - TYPE STATIC - NOINSTALL - SOURCES - ${${LIB_TARGET}_srcs} - PRIVATE_INCLUDES - src - PUBLIC_LIBS - libclient - nlohmann::json - Boost::boost - $<$:OpenSSL::SSL> - Threads::Threads -) -target_clangformat(${LIB_TARGET}) - # ============================================================================== # ECFLOW UDP server @@ -63,8 +24,7 @@ ecbuild_add_executable( INCLUDES src LIBS - ${LIB_TARGET} - core + ecflow_all ) set_target_properties(${SERVER_TARGET} PROPERTIES INSTALL_RPATH "" @@ -122,7 +82,7 @@ ecbuild_add_test( ${${TEST_TARGET}_srcs} LIBS ${LIB_TARGET} - libclient + ecflow_all Boost::boost Boost::unit_test_framework $<$:OpenSSL::SSL>