Native CUDA support with Cmake - CUDA as a first-class language in CMake
Install psrdada_cpp as CMake package -> allows to find_package(psrdada_cpp), the following libraries are installed:
psrdada_cpp::psrdada_cpp
psrdada_cpp::common (-DENABLE_SUBMODULES=ON)
psrdada_cpp::dadaflow (-DENABLE_DADAFLOW=ON)
General cleanup of the CMake project
prefer FetchContent over ExternalProject
Libraries are linked using library::module (e.g. GTest::gtest) instead of -lgtest
Remove unnecessary statements
Consistent cmake prints
More efficient include dependency strategy -> Only download from remote sources when CMake packages are not found
Minor issues resolved, causing errors when compiling in debug mode (e.g. psrdada_cpp::gated_spectrometer::OutputDataStream had no virtual deconstructor, #include <psrdada/header.h> correctly)
Internal dependency between googlebenchmark and googletest removed
Detected issues:
find_package(OpenMP) fails in build container for ubuntu20.04 -> reason unknown
psrdada_cpp::kernels::detect_and_accumulate tests are failing in DEBUG mode -> cudaLaunchKernel OutOfResources (TEST_P(detect_and_accumulate32bit, no_stride), TEST_P(detect_and_accumulate32bit, w_stride))
Dadaflow can not built under Ubuntu 20.04 - boost::json not available