From 116e426764bfc46b3b05d29b1710f21f859419b9 Mon Sep 17 00:00:00 2001 From: agrigora Date: Wed, 22 Oct 2014 12:12:44 +0200 Subject: [PATCH] HLTcalo module --- CMakeLists.txt | 23 ++++---- HLT/CALO/AliHLTCaloLinkDef.h | 37 +++++++------ HLT/CALO/CMakeLists.txt | 100 +++++++++++++++++++++++++++++++++++ HLT/CMakeLists.txt | 52 ++++++++++++------ 4 files changed, 170 insertions(+), 42 deletions(-) create mode 100644 HLT/CALO/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d31246ce45..14e7de2048d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -106,15 +106,16 @@ add_subdirectory(BCM) add_subdirectory(CORRFW) add_subdirectory(FASTSIM) if(CMAKE_Fortran_COMPILER) - add_subdirectory (LHAPDF) - add_subdirectory (PYTHIA6) - add_subdirectory (MICROCERN) + add_subdirectory(LHAPDF) + add_subdirectory(PYTHIA6) + add_subdirectory(MICROCERN) endif(CMAKE_Fortran_COMPILER) -add_subdirectory (EVGEN) -add_subdirectory (TUHKMgen) -add_subdirectory (TTherminator) -add_subdirectory (TPHIC) -add_subdirectory (THydjet) -#add_subdirectory (PWG) -#add_subdirectory (Vc) -#add_subdirectory (HLT) +add_subdirectory(EVGEN) +add_subdirectory(TUHKMgen) +add_subdirectory(TTherminator) +add_subdirectory(TPHIC) +add_subdirectory(THydjet) +# Include Vc own cmake +include(Vc/Vc.cmake) +add_subdirectory(Vc) +add_subdirectory(HLT) diff --git a/HLT/CALO/AliHLTCaloLinkDef.h b/HLT/CALO/AliHLTCaloLinkDef.h index 911e67ef565..d94ec4edda8 100644 --- a/HLT/CALO/AliHLTCaloLinkDef.h +++ b/HLT/CALO/AliHLTCaloLinkDef.h @@ -1,23 +1,28 @@ -//-*- Mode: C++ -*- -// $Id: AliHLTPHOSLinkDef.h 34542 2009-09-02 13:18:18Z odjuvsla $ - -#ifdef __CINT__ - - +#if !defined(__CINT__) && !defined(__CLING__) +# error Not for compilation +#else #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; -// //#pragma link C++ class AliHLTPHOSAgent+; -//#pragma link C++ class AliHLTPHOSClusterizer+; -//#pragma link C++ class AliHLTPHOSEmcCalibData+; -//#pragma link C++ class AliHLTPHOSPhysicsAnalyzer+; -//#pragma link C++ class AliHLTPHOSPulseGenerator+; -#pragma link C++ class AliHLTCaloRawAnalyzerChiSquareFit+; - -#pragma link C++ class AliHLTCaloRawAnalyzerCrude+; #pragma link C++ class AliHLTCaloRawAnalyzerComponentv3+; -#pragma link C++ class AliHLTCaloDigitMakerComponent; +#pragma link C++ class AliHLTCaloUtilities+; +#pragma link C++ class AliHLTCaloMapper+; +#pragma link C++ class AliHLTCaloDefinitions+; +#pragma link C++ class AliHLTCaloConstants+; +#pragma link C++ class AliHLTCaloSanityInspector+; +#pragma link C++ class AliHLTCaloSharedMemoryInterfacev2+; +#pragma link C++ class AliHLTCaloFourier+; +#pragma link C++ class AliHLTCaloConstantsHandler+; +#pragma link C++ class AliHLTCaloClusterizer+; +#pragma link C++ class AliHLTCaloClusterizerNbyN+; +#pragma link C++ class AliHLTCaloClusterizerComponent+; +#pragma link C++ class AliHLTCaloDigitMaker+; +#pragma link C++ class AliHLTCaloClusterAnalyser+; +#pragma link C++ class AliHLTCaloProcessor+; +#pragma link C++ class AliHLTCaloGeometry+; #pragma link C++ class AliHLTCaloRecoParamHandler+; +#pragma link C++ class AliHLTCaloDigitPublisherComponent+; +#pragma link C++ class AliHLTCaloDigitHandler+; -#endif +#endif // __CINT__ diff --git a/HLT/CALO/CMakeLists.txt b/HLT/CALO/CMakeLists.txt new file mode 100644 index 00000000000..1c3df4fb829 --- /dev/null +++ b/HLT/CALO/CMakeLists.txt @@ -0,0 +1,100 @@ +# ************************************************************************** +# * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. * +# * * +# * Author: The ALICE Off-line Project. * +# * Contributors are mentioned in the code where appropriate. * +# * * +# * Permission to use, copy, modify and distribute this software and its * +# * documentation strictly for non-commercial purposes is hereby granted * +# * without fee, provided that the above copyright notice appears in all * +# * copies and that both the copyright notice and this permission notice * +# * appear in the supporting documentation. The authors make no claims * +# * about the suitability of this software for any purpose. It is * +# * provided "as is" without express or implied warranty. * +# ************************************************************************** + +# Module +set(MODULE AliHLTCalo) + +# Module include folder +include_directories(${CMAKE_SOURCE_DIR}/HLT/CALO + ${CMAKE_SOURCE_DIR}/HLT/CALO/offline + ) + +# Additional include folders in alphabetical order except ROOT +include_directories(${ROOT_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR}/EMCAL/EMCALraw + ${CMAKE_SOURCE_DIR}/EMCAL/EMCALUtils + ${CMAKE_SOURCE_DIR}/HLT/BASE + ${CMAKE_SOURCE_DIR}/HLT/BASE/util + ${CMAKE_SOURCE_DIR}/HLT/EMCAL + ${CMAKE_SOURCE_DIR}/HLT/PHOS + ${CMAKE_SOURCE_DIR}/HLT/TPCLib + ${CMAKE_SOURCE_DIR}/RAW/RAWDatabase + ${CMAKE_SOURCE_DIR}/RAW/RAWDatarec + ${CMAKE_SOURCE_DIR}/STEER/CDB + ${CMAKE_SOURCE_DIR}/STEER/ESD + ${CMAKE_SOURCE_DIR}/STEER/STEER + ${CMAKE_SOURCE_DIR}/STEER/STEERBase + ) + +# Sources in alphabetical order +set(SRCS + AliHLTCaloClusterAnalyser.cxx + AliHLTCaloClusterizerComponent.cxx + AliHLTCaloClusterizer.cxx + AliHLTCaloClusterizerNbyN.cxx + AliHLTCaloConstants.cxx + AliHLTCaloConstantsHandler.cxx + AliHLTCaloDefinitions.cxx + AliHLTCaloDigitMaker.cxx + AliHLTCaloFourier.cxx + AliHLTCaloGeometry.cxx + AliHLTCaloMapper.cxx + AliHLTCaloProcessor.cxx + AliHLTCaloRawAnalyzerComponentv3.cxx + AliHLTCaloRecoParamHandler.cxx + AliHLTCaloSanityInspector.cxx + AliHLTCaloSharedMemoryInterfacev2.cxx + AliHLTCaloUtilities.cxx + offline/AliHLTCaloDigitHandler.cxx + offline/AliHLTCaloDigitPublisherComponent.cxx + ) + +# Headers from sources +string(REPLACE ".cxx" ".h" HDRS "${SRCS}") +set(HDRS ${HDRS} + AliHLTCaloDigitContainerDataStruct.h + AliHLTCaloRecPointDataStruct.h + AliHLTCaloRecPointContainerStruct.h + AliHLTCaloRecPointHeaderStruct.h +) + +# Generate the dictionary +# It will create G_ARG1.cxx and G_ARG1.h / ARG1 = function first argument +get_directory_property(incdirs INCLUDE_DIRECTORIES) +generate_dictionary("${MODULE}" "${MODULE}LinkDef.h" "${HDRS}" "${incdirs}") + +# Generate the ROOT map +# Dependecies +set(LIBDEPS STEERBase STEER CDB RAWDatabase RAWDatarec HLTbase AliHLTTPC AliHLTEMCAL AliHLTPHOS EMCALUtils EMCALraw) +generate_rootmap("${MODULE}" "${LIBDEPS}" "${CMAKE_CURRENT_SOURCE_DIR}/${MODULE}LinkDef.h") + +# Add a library to the project using the specified source files +add_library(${MODULE} SHARED ${SRCS} G__${MODULE}.cxx) +add_definitions(-Duse_aliroot -Duse_root -DROWHOUGHPARAMS) + +# Additional compilation flags +set_target_properties(${MODULE} PROPERTIES COMPILE_FLAGS "-O -g") + +# System dependent: Modify the way the library is build +if(${CMAKE_SYSTEM} MATCHES Darwin) + set_target_properties(${MODULE} PROPERTIES LINK_FLAGS "-undefined dynamic_lookup") +endif(${CMAKE_SYSTEM} MATCHES Darwin) + +# Installation +install(TARGETS ${MODULE} + ARCHIVE DESTINATION lib + LIBRARY DESTINATION lib) + +install(FILES ${HDRS} DESTINATION include) \ No newline at end of file diff --git a/HLT/CMakeLists.txt b/HLT/CMakeLists.txt index 757049b6a37..eef087b23b6 100644 --- a/HLT/CMakeLists.txt +++ b/HLT/CMakeLists.txt @@ -1,23 +1,45 @@ -# AliRoot Build System CMakeLists for HLT -# -# Author: Johny Jose m(johny.jose@cern.ch) -# Port of previous Makefile build to cmake - -cmake_minimum_required(VERSION 2.8.8 FATAL_ERROR) +# ************************************************************************** +# * Copyright(c) 1998-2014, ALICE Experiment at CERN, All rights reserved. * +# * * +# * Author: The ALICE Off-line Project. * +# * Contributors are mentioned in the code where appropriate. * +# * * +# * Permission to use, copy, modify and distribute this software and its * +# * documentation strictly for non-commercial purposes is hereby granted * +# * without fee, provided that the above copyright notice appears in all * +# * copies and that both the copyright notice and this permission notice * +# * appear in the supporting documentation. The authors make no claims * +# * about the suitability of this software for any purpose. It is * +# * provided "as is" without express or implied warranty. * +# ************************************************************************** option(HLT_CUDA "Build HLT GPU tracker using CUDA" OFF) option(HLT_OPENCL "Build HLT GPU tracker using OpenCL" OFF) -include("CMakehltdoc.conf") +# AliRoot debug mode +if(ALIDEBUG) + add_definitions(-DDEBUG -D__DEBUG) +else() + add_definitions(-DNDEBUG) +endif (ALIDEBUG) + +# MLUC +if(ALIHLT_MLUCDIR) + add_definitions(-Duse_logging) + include_directories(${ALIHLT_MLUCDIR}/include) + link_directories(${ALIHLT_MLUCDIR}/lib/tgt_${ALICE_TARGET}) +endif (ALIHLT_MLUCDIR) + +add_subdirectory(CALO) -file(GLOB PACKAGES CMake*.pkg) +#file(GLOB PACKAGES CMake*.pkg) -if(HLT_CUDA) - list(APPEND PACKAGES TPCLib/tracking-ca/cagpu/CMakelibAliHLTTPCCAGPU.pkg) -endif(HLT_CUDA) +#if(HLT_CUDA) +# list(APPEND PACKAGES TPCLib/tracking-ca/cagpu/CMakelibAliHLTTPCCAGPU.pkg) +#endif(HLT_CUDA) -if(HLT_OPENCL) - list(APPEND PACKAGES TPCLib/tracking-ca/cagpu/CMakelibAliHLTTPCCAGPUOpenCL.pkg) -endif() +#if(HLT_OPENCL) +# list(APPEND PACKAGES TPCLib/tracking-ca/cagpu/CMakelibAliHLTTPCCAGPUOpenCL.pkg) +#endif() -ALICE_BuildModule() +message(STATUS "HLT enabled") -- 2.43.0