cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR) project(JAliEn-ROOT CXX) list(APPEND CMAKE_PREFIX_PATH ${ROOTSYS}) set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules") find_package(JSONC REQUIRED) find_package(OpenSSL REQUIRED) find_package(libwebsockets REQUIRED) find_package(ROOT REQUIRED COMPONENTS Net Netx Tree XMLIO Proof) find_package(ZLIB REQUIRED) foreach(FEATURE xrootd xml) if(NOT ROOT_${FEATURE}_FOUND) message(FATAL_ERROR "ROOT was built without ${FEATURE} support (required)") endif() endforeach() include(${ROOT_USE_FILE}) set(CMAKE_CXX_FLAGS ${ROOT_CXX_FLAGS}) message(STATUS "Using same ROOT CXX flags: ${CMAKE_CXX_FLAGS}") # This is our library's name set(LIBNAME JAliEnROOT) include_directories(${CMAKE_CURRENT_SOURCE_DIR}) include_directories(${CMAKE_SOURCE_DIR}/inc) file(GLOB SRCS "src/*.cxx") string(REPLACE ".cxx" ".h" HDRS "${SRCS}") string(REPLACE "src" "inc" HDRS "${HDRS}") include_directories(${LIBNAME} ${OPENSSL_INCLUDE_DIR}) ROOT_GENERATE_DICTIONARY(G__${LIBNAME} "${HDRS}" LINKDEF LinkDef.h) add_library(${LIBNAME} SHARED "${SRCS}" G__${LIBNAME}.cxx) target_link_libraries(${LIBNAME} ${ROOT_LIBRARIES} json-c websockets ${OPENSSL_LIBRARIES} ${ZLIB_LIBRARIES}) install(TARGETS ${LIBNAME} LIBRARY DESTINATION lib) install(FILES ${PROJECT_BINARY_DIR}/lib${LIBNAME}.rootmap DESTINATION lib) install(FILES ${PROJECT_BINARY_DIR}/lib${LIBNAME}_rdict.pcm DESTINATION lib) install(FILES ${HDRS} DESTINATION include) install(DIRECTORY ${CMAKE_SOURCE_DIR}/etc/plugins DESTINATION etc)