# AliRoot Build System Module to find and configure ROOT # # Author: Johny Jose m(johny.jose@cern.ch) # Port of previous Makefile build to cmake cmake_minimum_required(VERSION 2.8.4 FATAL_ERROR) # We don't care if ROOTSYS environment variable is set or not - # all we care about is that we can find root-config in our path # set(ROOTSYS $ENV{ROOTSYS} CACHE STRING "" FORCE) # if(NOT ROOTSYS) # message(FATAL_ERROR "Environment variable $ROOTSYS is not set !") # else() # get_filename_component(ROOTSYS "${ROOTSYS}" REALPATH) # endif(NOT ROOTSYS) find_program(ROOT_CONFIG NAMES root-config) find_program(ROOTCINT NAMES rootcint) if(NOT ROOT_CONFIG) message(FATAL_ERROR "root-config is not installed on this system") endif(NOT ROOT_CONFIG) message(STATUS "Check for root-config: ${ROOT_CONFIG}") message(STATUS "Check for rootcint: ${ROOTCINT}") if(ROOT_CONFIG AND ROOTCINT) set(ROOT_FOUND TRUE) ALICE_RootConfig(ROOT_VERSION --version) message(STATUS "ROOT ${ROOT_VERSION} found") ALICE_RootConfig(ROOTLIBDIR --libdir) ALICE_RootConfig(ROOTPLUGDIR --version) string(REGEX REPLACE "(^.*/)[^/]+" "${ROOTLIBDIR}/\\1" ROOTPLUGDIR ${ROOTPLUGDIR}) ALICE_RootConfig(ROOTINCDIR --incdir) ALICE_RootConfig(ROOTCLIBS --glibs) ALICE_RootConfig(ROOTHASALIEN --has-alien) ALICE_RootConfig(ROOTHASXML --has-xml) # ALICE_RootConfig(ROOTHASVC --has-vc) # set(ROOTCLIBS "${ROOTCLIBS} -lThread -lMinuit -lVMC -lEG -lGeom -lTreePlayer -lXMLIO -lXMLParser -lProof -lProofPlayer -lMLP -lSpectrum -L${ROOTPLUGDIR}" ) set(ROOTCLIBS "${ROOTCLIBS} -lThread -lMinuit -lVMC -lEG -lGeom -lTreePlayer -lXMLIO -lXMLParser -lProof -lProofPlayer -lMLP -lSpectrum" ) # if(${ROOTHASVC} STREQUAL "yes") # set(ROOTCLIBS "${ROOTCLIBS} -lVc") # endif(${ROOTHASVC} STREQUAL "yes") set(ROOTPLIBS $ENV{ROOTPLIBS}) if(NOT $ENV{ROOTSYS}) message(STATUS "ROOTSYS directory : ${ROOTSYS}") else() message(STATUS "ROOTSYS directory : not set - assume prefix build") endif(NOT $ENV{ROOTSYS}) message(STATUS "ROOT include directory: ${ROOTINCDIR}") message(STATUS "ROOT library directory: ${ROOTLIBDIR}") # message(STATUS "ROOT libraries: ${ROOTCLIBS}") # message(STATUS "ROOT has Vc: ${ROOTHASVC}") # message(STATUS "ROOT has XML: ${ROOTHASXML}") set(ROOT6_ALPHA "5.99.1") string(REGEX REPLACE "/0*" "." ROOT_DOTVERSION ${ROOT_VERSION}) if(ROOT_DOTVERSION VERSION_GREATER ROOT6_ALPHA) message(WARNING "Compling and linking against ROOT6 alpha is highly experimental") endif(ROOT_DOTVERSION VERSION_GREATER ROOT6_ALPHA) else() message(FATAL_ERROR "rootcint not found ! Please check your ROOT installation.") endif(ROOT_CONFIG AND ROOTCINT)