From 25f88fb9573d6f97fd9e8855d588e64f36025242 Mon Sep 17 00:00:00 2001 From: agrigora Date: Thu, 16 Oct 2014 16:46:35 +0200 Subject: [PATCH] TRIGGER module --- CMakeLists.txt | 2 +- TRIGGER/CMakeLists.txt | 76 ++++++++++++++++++++++++++++++--- TRIGGER/CMakelibTRIGGERbase.pkg | 46 -------------------- 3 files changed, 70 insertions(+), 54 deletions(-) delete mode 100644 TRIGGER/CMakelibTRIGGERbase.pkg diff --git a/CMakeLists.txt b/CMakeLists.txt index 1bff5431349..e97bad81504 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -90,7 +90,7 @@ add_subdirectory(FMD) add_subdirectory(ACORDE) add_subdirectory(EMCAL) add_subdirectory(PHOS) -#add_subdirectory (TRIGGER) +add_subdirectory(TRIGGER) #add_subdirectory (BCM) #add_subdirectory (CORRFW) #add_subdirectory (FASTSIM) diff --git a/TRIGGER/CMakeLists.txt b/TRIGGER/CMakeLists.txt index 4a05669fec1..21215ee52ce 100644 --- a/TRIGGER/CMakeLists.txt +++ b/TRIGGER/CMakeLists.txt @@ -1,10 +1,72 @@ -# AliRoot Build System CMakeLists for TRIGGER -# -# Author: Johny Jose m(johny.jose@cern.ch) -# Port of previous Makefile build to cmake +# ************************************************************************** +# * 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. * +# ************************************************************************** -cmake_minimum_required(VERSION 2.8.8 FATAL_ERROR) +# Module +set(MODULE TRIGGERbase) -file(GLOB PACKAGES CMake*.pkg) +# Module include folder +include_directories(${CMAKE_SOURCE_DIR}/TRIGGER) -ALICE_BuildModule() +# Additional include folders in alphabetical order except ROOT +include_directories(${ROOT_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR}/ITS/ITSbase + ${CMAKE_SOURCE_DIR}/STEER/CDB + ${CMAKE_SOURCE_DIR}/STEER/STEERBase + ${CMAKE_SOURCE_DIR}/TOF/TOFbase + ) + +# Sources in alphabetical order +set(SRCS + AliTrigConnector.cxx + AliTrigDevice.cxx + AliTrigDigitalCircuit.cxx + AliTrigEvent.cxx + AliTrigModule.cxx + AliTrigScheduledEntry.cxx + AliTrigScheduler.cxx + AliTRIPreprocessor.cxx + ) + +# Headers from sources +string(REPLACE ".cxx" ".h" HDRS "${SRCS}") + +# 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 CDB ITSbase TOFbase) +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) + +# 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) diff --git a/TRIGGER/CMakelibTRIGGERbase.pkg b/TRIGGER/CMakelibTRIGGERbase.pkg deleted file mode 100644 index 3dcd714f8b6..00000000000 --- a/TRIGGER/CMakelibTRIGGERbase.pkg +++ /dev/null @@ -1,46 +0,0 @@ -# -*- mode: CMake -*- -#--------------------------------------------------------------------------------# -# Package File for TRIGGERbase # -# Author : Johny Jose (johny.jose@cern.ch) # -# Variables Defined : # -# # -# SRCS - C++ source files # -# HDRS - C++ header files # -# DHDR - ROOT Dictionary Linkdef header file # -# CSRCS - C source files # -# CHDRS - C header files # -# EINCLUDE - Include directories # -# EDEFINE - Compiler definitions # -# ELIBS - Extra libraries to link # -# ELIBSDIR - Extra library directories # -# PACKFFLAGS - Fortran compiler flags for package # -# PACKCXXFLAGS - C++ compiler flags for package # -# PACKCFLAGS - C compiler flags for package # -# PACKSOFLAGS - Shared library linking flags # -# PACKLDFLAGS - Module linker flags # -# PACKBLIBS - Libraries to link (Executables only) # -# EXPORT - Header files to be exported # -# CINTHDRS - Dictionary header files # -# CINTAUTOLINK - Set automatic dictionary generation # -# ARLIBS - Archive Libraries and objects for linking (Executables only) # -# SHLIBS - Shared Libraries and objects for linking (Executables only) # -#--------------------------------------------------------------------------------# - -set ( SRCS - AliTRIPreprocessor.cxx - AliTrigConnector.cxx - AliTrigDevice.cxx - AliTrigDigitalCircuit.cxx - AliTrigEvent.cxx - AliTrigScheduledEntry.cxx - AliTrigScheduler.cxx - AliTrigModule.cxx - ) - -string ( REPLACE ".cxx" ".h" CINTHDRS "${SRCS}" ) - -string ( REPLACE ".cxx" ".h" HDRS "${SRCS}" ) - -set ( DHDR TRIGGERbaseLinkDef.h) - -set ( EINCLUDE TRIGGER ITS STEER TOF STEER/CDB STEER/ESD STEER/STEERBase ) -- 2.43.0