Skip to content
Snippets Groups Projects
Commit 833c31e6 authored by Guilherme Amadio's avatar Guilherme Amadio
Browse files

Update CMakeLists.txt for tree/treeplayer

parent cdffa6e6
No related branches found
No related tags found
No related merge requests found
......@@ -3,46 +3,105 @@
# @author Pere Mato CERN, Danilo Piparo CERN
############################################################################
# TBranchProxyTemplate.h is only used by selectors, to verify that the selector
# source matches the ROOT interface. It should not end up in the dictionary nor
# in the PCH.
ROOT_GLOB_HEADERS(dictHeaders inc/*.h inc/ROOT/*.hxx)
list(REMOVE_ITEM dictHeaders ${CMAKE_SOURCE_DIR}/tree/treeplayer/inc/TBranchProxyTemplate.h)
ROOT_GLOB_SOURCES(sources src/*.cxx)
if(MSVC)
list(REMOVE_ITEM dictHeaders ${CMAKE_SOURCE_DIR}/tree/treeplayer/inc/TMPWorkerTree.h)
list(REMOVE_ITEM dictHeaders ${CMAKE_CURRENT_SOURCE_DIR}/inc/ROOT/TTreeProcessorMT.h)
list(REMOVE_ITEM dictHeaders ${CMAKE_CURRENT_SOURCE_DIR}/inc/ROOT/TProcessExecutor.hxx)
list(REMOVE_ITEM dictHeaders ${CMAKE_CURRENT_SOURCE_DIR}/inc/ROOT/TTreeProcessorMP.hxx)
list(REMOVE_ITEM sources ${CMAKE_SOURCE_DIR}/tree/treeplayer/src/TMPWorkerTree.cxx)
list(REMOVE_ITEM sources ${CMAKE_SOURCE_DIR}/tree/treeplayer/src/TTreeProcessorMP.cxx)
else()
set(TREEPLAYER_DEPENDENCIES MultiProc Imt)
if(imt)
list(APPEND TREEPLAYER_EXTRA_HEADERS
ROOT/TTreeProcessorMT.hxx
)
endif()
if(NOT imt)
list(REMOVE_ITEM dictHeaders ${CMAKE_CURRENT_SOURCE_DIR}/inc/ROOT/TTreeProcessorMT.h)
list(REMOVE_ITEM sources ${CMAKE_CURRENT_SOURCE_DIR}/src/TTreeProcessorMT.cxx)
if(NOT MSVC)
list(APPEND TREEPLAYER_EXTRA_HEADERS
TMPWorkerTree.h
ROOT/TProcessExecutor.hxx
ROOT/TTreeProcessorMP.hxx
ROOT/TTreeProcessorMT.hxx
)
endif()
ROOT_STANDARD_LIBRARY_PACKAGE(TreePlayer
HEADERS ${dictHeaders}
SOURCES ${sources}
DICTIONARY_OPTIONS "-writeEmptyRootPCM"
LIBRARIES ${TBB_LIBRARIES} ${ARROW_SHARED_LIB}
DEPENDENCIES Tree Graf3d Graf Hist Gpad RIO MathCore
${TREEPLAYER_DEPENDENCIES})
HEADERS
TBranchProxyClassDescriptor.h
TBranchProxyDescriptor.h
TBranchProxyDirector.h
TBranchProxy.h
TChainIndex.h
TFileDrawMap.h
TFormLeafInfo.h
TFormLeafInfoReference.h
TFriendProxyDescriptor.h
TFriendProxy.h
TRefArrayProxy.h
TRefProxy.h
TSelectorDraw.h
TSelectorEntries.h
TSimpleAnalysis.h
TTreeDrawArgsParser.h
TTreeFormula.h
TTreeFormulaManager.h
TTreeGeneratorBase.h
TTreeIndex.h
TTreePerfStats.h
TTreePlayer.h
TTreeProxyGenerator.h
TTreeReaderArray.h
TTreeReaderGenerator.h
TTreeReader.h
TTreeReaderUtils.h
TTreeReaderValue.h
TTreeTableInterface.h
${TREEPLAYER_EXTRA_HEADERS}
SOURCES
src/TBranchProxyClassDescriptor.cxx
src/TBranchProxy.cxx
src/TBranchProxyDescriptor.cxx
src/TBranchProxyDirector.cxx
src/TChainIndex.cxx
src/TFileDrawMap.cxx
src/TFormLeafInfo.cxx
src/TFormLeafInfoReference.cxx
src/TFriendProxy.cxx
src/TFriendProxyDescriptor.cxx
src/TRefArrayProxy.cxx
src/TRefProxy.cxx
src/TSelectorDraw.cxx
src/TSelectorEntries.cxx
src/TSimpleAnalysis.cxx
src/TTreeDrawArgsParser.cxx
src/TTreeFormula.cxx
src/TTreeFormulaManager.cxx
src/TTreeGeneratorBase.cxx
src/TTreeIndex.cxx
src/TTreePerfStats.cxx
src/TTreePlayer.cxx
src/TTreeProxyGenerator.cxx
src/TTreeReaderArray.cxx
src/TTreeReader.cxx
src/TTreeReaderGenerator.cxx
src/TTreeReaderValue.cxx
src/TTreeTableInterface.cxx
DICTIONARY_OPTIONS
-writeEmptyRootPCM
DEPENDENCIES
Gpad
Graf
Graf3d
Hist
Imt
MathCore
RIO
Tree
)
if(NOT MSVC)
target_sources(TreePlayer PRIVATE
src/TMPWorkerTree.cxx
src/TTreeProcessorMP.cxx
)
target_link_libraries(TreePlayer PUBLIC MultiProc)
endif()
#---Extra rules-------------------------------------------------------
if(APPLE)
if(GCC_MAJOR EQUAL 4 AND GCC_MINOR EQUAL 0 AND GCC_PATCH EQUAL 1)
set_source_files_properties(src/TTreeFormula.cxx COMPILE_FLAGS "-O0" )
endif()
if(ICC_GE_9 EQUAL 10)
set_source_files_properties(src/TTreeFormula.cxx COMPILE_FLAGS "-O0" )
endif()
if(imt)
target_sources(TreePlayer PRIVATE src/TTreeProcessorMT.cxx)
endif()
ROOT_ADD_TEST_SUBDIRECTORY(test)
......@@ -9,6 +9,11 @@
* For the list of contributors see $ROOTSYS/README/CREDITS. *
*************************************************************************/
// NOTE: This header is only used by selectors, to verify that the selector
// source matches the ROOT interface. It should not end up in the
// dictionary nor in the PCH, so it should not be added to the list
// of headers of the TreePlayer library.
#ifndef ROOT_TBranchProxyTemplate
#define ROOT_TBranchProxyTemplate
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment