From af69b42694cb71650fb61cb3482040b384d95e58 Mon Sep 17 00:00:00 2001 From: Guilherme Amadio <amadio@cern.ch> Date: Thu, 10 Jan 2019 16:26:42 +0100 Subject: [PATCH] proof/*: do not use file globbing --- proof/proof/CMakeLists.txt | 84 +++++++++++++++++++++++++++----- proof/proofbench/CMakeLists.txt | 58 ++++++++++++++++------ proof/proofd/CMakeLists.txt | 66 ++++++++++++++++++++++--- proof/proofplayer/CMakeLists.txt | 76 ++++++++++++++++++++++------- proof/proofx/CMakeLists.txt | 52 ++++++++++++++------ 5 files changed, 268 insertions(+), 68 deletions(-) diff --git a/proof/proof/CMakeLists.txt b/proof/proof/CMakeLists.txt index 30ac27108d8..8526b3d895e 100644 --- a/proof/proof/CMakeLists.txt +++ b/proof/proof/CMakeLists.txt @@ -3,19 +3,81 @@ # @author Pere Mato, CERN ############################################################################ -ROOT_GLOB_HEADERS(headers RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/inc inc/*.h) -ROOT_GLOB_SOURCES(sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/src src/*.cxx) - -#--- AliEn Dataset manager only if AliEn is available if(alien) add_definitions(-DALIENDSMGR) -else() - list(REMOVE_ITEM headers TDataSetManagerAliEn.h) - list(REMOVE_ITEM sources TDataSetManagerAliEn.cxx) + set(PROOF_EXTRA_HEADERS TDataSetManagerAliEn.h) + set(PROOF_EXTRA_SOURCES src/TDataSetManagerAliEn.cxx) endif() ROOT_STANDARD_LIBRARY_PACKAGE(Proof - HEADERS ${headers} - SOURCES ${sources} - DEPENDENCIES Net Tree Thread RIO MathCore) - + HEADERS + TCondor.h + TDataSetManagerAliEn.h + TDataSetManagerFile.h + TDataSetManager.h + TDSet.h + TDSetProxy.h + TLockPath.h + TPackMgr.h + TProofChain.h + TProofCondor.h + TProofDebug.h + TProof.h + TProofLite.h + TProofLog.h + TProofMgr.h + TProofMgrLite.h + TProofNodeInfo.h + TProofOutputFile.h + TProofOutputList.h + TProofProgressStatus.h + TProofQueryResult.h + TProofResources.h + TProofResourcesStatic.h + TProofServ.h + TProofServLite.h + TProofSuperMaster.h + TQueryResultManager.h + TSelVerifyDataSet.h + TSlave.h + TSlaveLite.h + TVirtualProofPlayer.h + ${PROOF_EXTRA_HEADERS} + SOURCES + src/TCondor.cxx + src/TDataSetManager.cxx + src/TDataSetManagerFile.cxx + src/TDSet.cxx + src/TDSetProxy.cxx + src/TLockPath.cxx + src/TPackMgr.cxx + src/TProofChain.cxx + src/TProofCondor.cxx + src/TProof.cxx + src/TProofDebug.cxx + src/TProofLite.cxx + src/TProofLog.cxx + src/TProofMgr.cxx + src/TProofMgrLite.cxx + src/TProofNodeInfo.cxx + src/TProofOutputFile.cxx + src/TProofOutputList.cxx + src/TProofProgressStatus.cxx + src/TProofQueryResult.cxx + src/TProofResourcesStatic.cxx + src/TProofServ.cxx + src/TProofServLite.cxx + src/TProofSuperMaster.cxx + src/TQueryResultManager.cxx + src/TSelVerifyDataSet.cxx + src/TSlave.cxx + src/TSlaveLite.cxx + src/TVirtualProofPlayer.cxx + ${PROOF_EXTRA_SOURCES} + DEPENDENCIES + MathCore + Net + RIO + Thread + Tree +) diff --git a/proof/proofbench/CMakeLists.txt b/proof/proofbench/CMakeLists.txt index a5954d02af9..142cb8caca3 100644 --- a/proof/proofbench/CMakeLists.txt +++ b/proof/proofbench/CMakeLists.txt @@ -2,22 +2,48 @@ # CMakeLists.txt file for building ROOT proof/proofbench package ############################################################################ -ROOT_GLOB_HEADERS(headers inc/TProof*.h) -ROOT_GLOB_SOURCES(sources src/TProof*.cxx) - ROOT_STANDARD_LIBRARY_PACKAGE(ProofBench - HEADERS ${headers} - SOURCES ${sources} - DEPENDENCIES Core Hist Gpad ProofPlayer - INSTALL_OPTIONS FILTER "TSel") + HEADERS + TProofBenchDataSet.h + TProofBench.h + TProofBenchRunCPU.h + TProofBenchRunDataRead.h + TProofBenchRun.h + TProofBenchTypes.h + TProofNodes.h + TProofPerfAnalysis.h + SOURCES + src/TProofBench.cxx + src/TProofBenchDataSet.cxx + src/TProofBenchRunCPU.cxx + src/TProofBenchRun.cxx + src/TProofBenchRunDataRead.cxx + src/TProofNodes.cxx + src/TProofPerfAnalysis.cxx + DEPENDENCIES + Core + Gpad + Hist + ProofPlayer + INSTALL_OPTIONS + FILTER "TSel" +) + +# Generation and installation of the PAR files required by the benchmark +add_custom_target(ProofBenchPARFiles ALL + DEPENDS + ${CMAKE_SOURCE_DIR}/etc/proof/utils/makepbenchpars.sh + COMMAND + ${CMAKE_SOURCE_DIR}/etc/proof/utils/makepbenchpars.sh ProofBenchCPUSel ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} + COMMAND + ${CMAKE_SOURCE_DIR}/etc/proof/utils/makepbenchpars.sh ProofBenchDataSel ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} + BYPRODUCTS + ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchCPUSel.par + ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchDataSel.par + WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} +) -# Generation and installation of the PAR files required by the benchmark -add_custom_target(ProofBenchPARFiles ALL DEPENDS ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchCPUSel.par - ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchDataSel.par) add_dependencies(ProofBenchPARFiles move_artifacts) -add_custom_command(OUTPUT ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchCPUSel.par - ${CMAKE_BINARY_DIR}/etc/proof/proofbench/ProofBenchDataSel.par - COMMAND etc/proof/utils/makepbenchpars.sh ARGS ProofBenchCPUSel ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} - COMMAND etc/proof/utils/makepbenchpars.sh ARGS ProofBenchDataSel ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} - WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}) -install(DIRECTORY ${CMAKE_BINARY_DIR}/etc/proof/proofbench DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/proof USE_SOURCE_PERMISSIONS) + +install(DIRECTORY ${CMAKE_BINARY_DIR}/etc/proof/proofbench + DESTINATION ${CMAKE_INSTALL_SYSCONFDIR}/proof USE_SOURCE_PERMISSIONS) diff --git a/proof/proofd/CMakeLists.txt b/proof/proofd/CMakeLists.txt index 3fdf36787fc..ffbeec545fd 100644 --- a/proof/proofd/CMakeLists.txt +++ b/proof/proofd/CMakeLists.txt @@ -3,6 +3,31 @@ # @author Pere Mato, CERN ############################################################################ +set(PROOFD_SOURCES + src/XpdObject.cxx + src/XProofProtUtils.cxx + src/XrdProofConn.cxx + src/XrdProofdAdmin.cxx + src/XrdProofdAux.cxx + src/XrdProofdClient.cxx + src/XrdProofdClientMgr.cxx + src/XrdProofdConfig.cxx + src/XrdProofdManager.cxx + src/XrdProofdNetMgr.cxx + src/XrdProofdPriorityMgr.cxx + src/XrdProofdProofServ.cxx + src/XrdProofdProofServMgr.cxx + src/XrdProofdProtocol.cxx + src/XrdProofdResponse.cxx + src/XrdProofdSandbox.cxx + src/XrdProofGroup.cxx + src/XrdProofPhyConn.cxx + src/XrdProofSched.cxx + src/XrdProofWorker.cxx + src/XrdROOT.cxx + ../../net/rpdutils/src/rpdconn.cxx +) + include_directories(${XROOTD_INCLUDE_DIRS}) include_directories(AFTER ${CMAKE_CURRENT_SOURCE_DIR}/inc) include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../net/rpdutils/res) @@ -15,15 +40,40 @@ add_definitions(${XROOTD_CFLAGS}) ROOT_ADD_CXX_FLAG(CMAKE_CXX_FLAGS -Wno-nonnull-compare) if(WIN32) - ROOT_LINKER_LIBRARY(XrdProofd XProofProtUtils.cxx LIBRARIES ${XROOTD_LIBRARIES}) + ROOT_LINKER_LIBRARY(XrdProofd + XProofProtUtils.cxx + LIBRARIES + ${XROOTD_LIBRARIES} + ) else() if (NOT XROOTD_NOMAIN) - ROOT_EXECUTABLE(xproofd X*.cxx ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdconn.cxx - LIBRARIES ${XROOTD_LIBRARIES} ${SYSLIBS} BUILTINS XROOTD) - endif () - ROOT_LINKER_LIBRARY(XrdProofd X*.cxx ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdconn.cxx - LIBRARIES ${XROOTD_LIBRARIES} rpdutil ${CMAKE_THREAD_LIBS_INIT} ${CMAKE_DL_LIBS} BUILTINS XROOTD) + ROOT_EXECUTABLE(xproofd + ${PROOFD_SOURCES} + LIBRARIES + ${XROOTD_LIBRARIES} + ${SYSLIBS} + BUILTINS + XROOTD + ) + endif() + + ROOT_LINKER_LIBRARY(XrdProofd + ${PROOFD_SOURCES} + LIBRARIES + ${XROOTD_LIBRARIES} + rpdutil + ${CMAKE_THREAD_LIBS_INIT} + ${CMAKE_DL_LIBS} + BUILTINS + XROOTD + ) set_target_properties(XrdProofd PROPERTIES INTERFACE_LINK_LIBRARIES "") - ROOT_EXECUTABLE(proofexecv proofexecv.cxx ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdconn.cxx ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdpriv.cxx - LIBRARIES ${SYSLIBS}) + + ROOT_EXECUTABLE(proofexecv + proofexecv.cxx + ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdconn.cxx + ${CMAKE_SOURCE_DIR}/net/rpdutils/src/rpdpriv.cxx + LIBRARIES + ${SYSLIBS} + ) endif() diff --git a/proof/proofplayer/CMakeLists.txt b/proof/proofplayer/CMakeLists.txt index 283daeaa4e8..e64966a4e96 100644 --- a/proof/proofplayer/CMakeLists.txt +++ b/proof/proofplayer/CMakeLists.txt @@ -3,25 +3,67 @@ # @author Pere Mato, CERN ############################################################################ -ROOT_GLOB_HEADERS(headers inc/*.h) -list(REMOVE_ITEM headers ${CMAKE_CURRENT_SOURCE_DIR}/inc/TProofDraw.h - ${CMAKE_CURRENT_SOURCE_DIR}/inc/LinkDef.h - ${CMAKE_CURRENT_SOURCE_DIR}/inc/LinkDefDraw.h) - -ROOT_GLOB_SOURCES(sources src/*.cxx) -list(REMOVE_ITEM sources ${CMAKE_CURRENT_SOURCE_DIR}/src/TProofDraw.cxx) - ROOT_STANDARD_LIBRARY_PACKAGE(ProofPlayer - NO_INSTALL_HEADERS - HEADERS ${headers} - SOURCES ${sources} - DEPENDENCIES Proof Hist RIO Tree Net Thread MathCore) + NO_INSTALL_HEADERS + HEADERS + TDrawFeedback.h + TEventIter.h + TOutputListSelectorDataMap.h + TPacketizerAdaptive.h + TPacketizerFile.h + TPacketizer.h + TPacketizerMulti.h + TPacketizerUnit.h + TPerfStats.h + TProofLimitsFinder.h + TProofMonSender.h + TProofMonSenderML.h + TProofMonSenderSQL.h + TProofPlayer.h + TProofPlayerLite.h + TStatsFeedback.h + TStatus.h + TVirtualPacketizer.h + SOURCES + TDrawFeedback.cxx + TEventIter.cxx + TOutputListSelectorDataMap.cxx + TPacketizerAdaptive.cxx + TPacketizer.cxx + TPacketizerFile.cxx + TPacketizerMulti.cxx + TPacketizerUnit.cxx + TPerfStats.cxx + TProofLimitsFinder.cxx + TProofMonSender.cxx + TProofMonSenderML.cxx + TProofMonSenderSQL.cxx + TProofPlayer.cxx + TProofPlayerLite.cxx + TStatsFeedback.cxx + TStatus.cxx + TVirtualPacketizer.cxx + DEPENDENCIES + Hist + Net + MathCore + Proof + RIO + Thread + Tree +) ROOT_STANDARD_LIBRARY_PACKAGE(ProofDraw - NO_INSTALL_HEADERS - HEADERS TProofDraw.h - LINKDEF LinkDefDraw.h - SOURCES TProofDraw.cxx - DEPENDENCIES ProofPlayer TreePlayer) + NO_INSTALL_HEADERS + HEADERS + TProofDraw.h + SOURCES + TProofDraw.cxx + LINKDEF + LinkDefDraw.h + DEPENDENCIES + ProofPlayer + TreePlayer +) ROOT_INSTALL_HEADERS() diff --git a/proof/proofx/CMakeLists.txt b/proof/proofx/CMakeLists.txt index 676e142e1a9..5ab1f272099 100644 --- a/proof/proofx/CMakeLists.txt +++ b/proof/proofx/CMakeLists.txt @@ -3,26 +3,46 @@ # @author Pere Mato, CERN ############################################################################ -if(WIN32) - set(headers TXProofMgr.h TXSlave.h TXSocket.h TXSocketHandler.h TXHandler.h) - set(sources TXProofMgr.cxx TXSlave.cxx TXSocket.cxx TXSocketHandler.cxx TXHandler.cxx - ../proofd/src/XrdProofConn.cxx ../proofd/src/XrdProofPhyConn.cxx ../proofd/src/XProofProtUtils.cxx) -else() - ROOT_GLOB_HEADERS(headers RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/inc ${CMAKE_CURRENT_SOURCE_DIR}/inc/*.h) - ROOT_GLOB_SOURCES(sources RELATIVE ${CMAKE_CURRENT_SOURCE_DIR}/src ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cxx) -endif() - +add_definitions(${XROOTD_CFLAGS}) include_directories(${XROOTD_INCLUDE_DIRS}) include_directories(AFTER ${CMAKE_CURRENT_SOURCE_DIR}/../proofd/inc) link_directories(${XROOTD_LIBRARY_DIR}) -add_definitions(${XROOTD_CFLAGS}) +set_source_files_properties(src/TXSocket.cxx COMPILE_FLAGS -Wno-address) -if(GCC_MAJOR GREATER 3) - set_source_files_properties(src/TXSocket.cxx COMPILE_FLAGS -Wno-address) +if(UNIX) + set(PROOFX_EXTRA_HEADERS TXUnixSocket.h) + set(PROOFX_EXTRA_SOURCES src/TXUnixSocket.cxx) +elseif(WIN32) + set(PROOFX_EXTRA_SOURCES + ../proofd/src/XrdProofConn.cxx + ../proofd/src/XrdProofPhyConn.cxx + ../proofd/src/XProofProtUtils.cxx) endif() ROOT_STANDARD_LIBRARY_PACKAGE(Proofx - HEADERS ${headers} - LIBRARIES ${XROOTD_LIBRARIES} XrdProofd - DEPENDENCIES Net Proof Thread - BUILTINS XROOTD) + HEADERS + TXHandler.h + TXProofMgr.h + TXProofServ.h + TXSlave.h + TXSocket.h + TXSocketHandler.h + ${PROOFX_EXTRA_HEADERS} + SOURCES + src/TXHandler.cxx + src/TXProofMgr.cxx + src/TXProofServ.cxx + src/TXSlave.cxx + src/TXSocket.cxx + src/TXSocketHandler.cxx + ${PROOFX_EXTRA_SOURCES} + LIBRARIES + ${XROOTD_LIBRARIES} + XrdProofd + DEPENDENCIES + Net + Proof + Thread + BUILTINS + XROOTD +) -- GitLab