# - ROOT_LIBRARIES - libraries needed for the package to be used
# - ROOT_GLIBRARIES - regular + GUI ROOT libraries + path to be used during linking
# - ROOT_INCLUDE_DIR - full path to ROOT include folder
+# - ROOT_CXX_FLAGS - flags used by the C++ compiler for building ROOT
+# - ROOT_HAS_LIBCXX - TRUE if ROOT was built against libc++ (as opposed to libstdc++)
+# - ROOT_HAS_CXX11 - TRUE if ROOT was built with C++11 support
# - ROOT_HASALIEN - ROOT was built with AliEn support
# - ROOT_HASOPENGL - ROOT was built with OpenGL support
# - ROOT_HASXML - ROOT was built with XML support
+# - ROOT_HASMONALISA - ROOT was built with MonAlisa support - needed by SHUTTLE
# - ROOT_FORTRAN - fortran compiler
set(ROOT_FOUND FALSE)
string(STRIP "${ROOT_INCDIR}" ROOT_INCDIR)
set(ROOT_INCLUDE_DIR ${ROOT_INCDIR})
+ # Setting ROOT compiler flags (except the -I parts) to a variable
+ execute_process(COMMAND ${ROOT_CONFIG} --auxcflags OUTPUT_VARIABLE _ROOT_CXX_FLAGS ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if(error)
+ message(FATAL_ERROR "Error retrieving ROOT compiler flags: ${error}")
+ endif(error)
+ string(STRIP "${_ROOT_CXX_FLAGS}" ROOT_CXX_FLAGS)
+
+ # Check if ROOT was built with libc++ (as opposed to stdlibc++)
+ if(ROOT_CXX_FLAGS MATCHES "-stdlib=libc\\+\\+")
+ set(ROOT_HAS_LIBCXX TRUE)
+ else()
+ set(ROOT_HAS_LIBCXX FALSE)
+ endif()
+
+ # Check if ROOT was built with C++11 support
+ if(ROOT_CXX_FLAGS MATCHES "-std=c\\+\\+11")
+ message(STATUS "ROOT was built with C++11 support")
+ set(ROOT_HAS_CXX11 TRUE)
+ else()
+ set(ROOT_HAS_CXX11 FALSE)
+ endif()
+
# Checking for glibs
execute_process(COMMAND ${ROOT_CONFIG} --noldflags --glibs OUTPUT_VARIABLE ROOT_GLIBS ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE )
if(error)
endif()
endif(ROOT_HASXML)
+ # Checking for monalisa support
+ execute_process(COMMAND ${ROOT_CONFIG} --has-monalisa OUTPUT_VARIABLE ROOT_HASMONALISA ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE )
+ if(error)
+ message(FATAL_ERROR "Error checking if ROOT was built with monalisa support: ${error}")
+ endif(error)
+
+ # if defined
+ if(ROOT_HASMONALISA)
+ string(STRIP "${ROOT_HASMONALISA}" ROOT_HASMONALISA)
+ if(ROOT_HASMONALISA STREQUAL "yes")
+ set(ROOT_HASMONALISA TRUE)
+ else()
+ set(ROOT_HASMONALISA FALSE)
+ endif()
+ endif(ROOT_HASMONALISA)
+
# Checking for OpenGL support
execute_process(COMMAND ${ROOT_CONFIG} --has-opengl OUTPUT_VARIABLE ROOT_HASOPENGL ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE )
if(error)
endif()
endif()
-
# Checking for fortran compiler
execute_process(COMMAND ${ROOT_CONFIG} --f77 OUTPUT_VARIABLE ROOT_FORTRAN ERROR_VARIABLE error OUTPUT_STRIP_TRAILING_WHITESPACE )
if(error)
# adding the libraries and the inc dir
link_directories(${ROOT_LIBDIR})
- include_directories(SYSTEM ${ROOT_INCLUDE_DIR})
+# include_directories(SYSTEM ${ROOT_INCLUDE_DIR})
set(ROOT_FOUND TRUE)
# Workaround misssing XML, VMC, Minuit from ROOT static library