Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,16 @@ list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) # Find Find<Modules>
# Add src as a global include directory
include_directories(${CMAKE_SOURCE_DIR}/src)


# Add library directories to rpath so users don't need to use LD_LIBRARY_PATH.
# (see https://dev.my-gate.net/2021/08/04/understanding-rpath-with-cmake )
# TODO: detector MacOS and set MACOSX_RPATH to TRUE
set( CMAKE_SKIP_BUILD_RPATH FALSE )
set( CMAKE_BUILD_WITH_INSTALL_RPATH FALSE )
set( CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/lib" )
set( CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE )


# Libraries are a separated objects.
# We add this include directory so that in code we could use
# #include <tcp_daq/tcp_event.h> instead of <libraries/tcp_daq/tcp_event.h>
Expand Down
8 changes: 4 additions & 4 deletions cmake/jana_plugin.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ macro(plugin_add _name)
target_include_directories(${_name}_plugin SYSTEM PUBLIC ${ROOT_INCLUDE_DIRS} )
target_include_directories(${_name}_plugin PUBLIC ${fmt_DIR}/../../../include)
set_target_properties(${_name}_plugin PROPERTIES PREFIX "" OUTPUT_NAME "${_name}" SUFFIX ".so")
target_link_libraries(${_name}_plugin ${JANA_LIB} spdlog::spdlog)
target_link_libraries(${_name}_plugin ${JANA_LIB} fmt::fmt)
target_link_libraries(${_name}_plugin spdlog::spdlog)
target_link_libraries(${_name}_plugin fmt::fmt)

# Install plugin
install(TARGETS ${_name}_plugin DESTINATION ${PLUGIN_OUTPUT_DIRECTORY})
Expand All @@ -46,8 +46,8 @@ macro(plugin_add _name)
target_include_directories(${_name}_library SYSTEM PUBLIC ${JANA_INCLUDE_DIR} )
target_include_directories(${_name}_library PUBLIC ${fmt_DIR}/../../../include)
set_target_properties(${_name}_library PROPERTIES PREFIX "lib" OUTPUT_NAME "${_name}" SUFFIX ".a")
target_link_libraries(${_name}_library ${JANA_LIB} spdlog::spdlog)
target_link_libraries(${_name}_library ${JANA_LIB} fmt::fmt)
target_link_libraries(${_name}_library spdlog::spdlog)
target_link_libraries(${_name}_library fmt::fmt)

# Install plugin
install(TARGETS ${_name}_library DESTINATION ${PLUGIN_LIBRARY_OUTPUT_DIRECTORY})
Expand Down
3 changes: 2 additions & 1 deletion src/executables/jana4ml4fpga/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@ message("{{JANA_INCLUDE_DIR}} ${JANA_INCLUDE_DIR}")

add_executable(${PROJECT_NAME} ${block_tester_SRC})
target_include_directories(${PROJECT_NAME} PUBLIC ${CMAKE_SOURCE_DIR} ${JANA_INCLUDE_DIR})
target_link_libraries(${PROJECT_NAME} ${JANA_LIB} evio rawdataparser Threads::Threads dl ${ROOT_LIBRARIES})
target_link_libraries(${PROJECT_NAME} evio rawdataparser ${JANA_LIB} Threads::Threads dl ${ROOT_LIBRARIES})
target_link_options(${PROJECT_NAME} PRIVATE -rdynamic)
set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${PROJECT_NAME})

install(TARGETS ${PROJECT_NAME} DESTINATION ${PROGRAM_OUTPUT_DIRECTORY})
Expand Down
4 changes: 1 addition & 3 deletions src/libraries/evio/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,7 @@ file(GLOB lib_evio_SRC

set(LIBRARY_NAME evio)

add_library(${LIBRARY_NAME} STATIC ${lib_evio_SRC})
set_target_properties(${LIBRARY_NAME} PROPERTIES PREFIX "lib" OUTPUT_NAME "EVIO")
add_library(${LIBRARY_NAME} SHARED ${lib_evio_SRC})
target_include_directories(${LIBRARY_NAME} PUBLIC ${CMAKE_SOURCE_DIR} ${JANA_INCLUDE_DIR})
target_link_libraries(${LIBRARY_NAME} ${JANA_LIB})

install(TARGETS ${LIBRARY_NAME} DESTINATION ${LIBRARY_OUTPUT_DIRECTORY})
4 changes: 1 addition & 3 deletions src/libraries/rawdataparser/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,8 @@ set(lib_rawdataparser_SRC

set(LIBRARY_NAME rawdataparser)

add_library(${LIBRARY_NAME} STATIC ${lib_rawdataparser_SRC})
set_target_properties(${LIBRARY_NAME} PROPERTIES PREFIX "lib" OUTPUT_NAME "rawdataparser")
add_library(${LIBRARY_NAME} SHARED ${lib_rawdataparser_SRC})
target_include_directories(${LIBRARY_NAME} PUBLIC ${CMAKE_SOURCE_DIR} ${JANA_INCLUDE_DIR} ${ROOT_INCLUDE_DIRS})
target_link_libraries(${LIBRARY_NAME} ${JANA_LIB})

install(TARGETS ${LIBRARY_NAME} DESTINATION ${LIBRARY_OUTPUT_DIRECTORY})