Installation
Dependencies
This project depends on:
Any C++14 compiler
casacore > 3.3.0 (with 64-bit table support)
arrow >= 1.0.0-SNAPSHOT with plasma support
Compiling
This is a cmake
-based project,
so it can be built as any standard cmake
project:
$ git clone https://gitlab.com/ska-telescope/plasma-storage-manager
$ cd plasma-storage-manager
$ cmake . -B build
# cmake --build build
Some of the most relevant cmake
variables
(passed on the first cmake
invocation via -Dvariable=value
)
used for compiling are:
CASACORE_ROOT_DIR
: Root of arbitrary casacore installations in case one is usedArrow_DIR
: directory containing thecmake
configuration exported by Apache Arrow (usually underlib/cmake/arrow
in the arrow installation area).Plasma_DIR
: directory containing thecmake
configuration exported by Apache Plasma (usually underlib/cmake/arrow
in the arrow installation area).CMAKE_CXX_COMPILER
: The C++ compiler to use.CMAKE_CXX_FLAGS
: Extra C++ compilation flags.CMAKE_BUILD_TYPE
: The type of build to produce, one ofDebug
,Release
andRelWithDebInfo
.BUILD_TESTING
: Whether to build unit tests or not, defaults toON
.
Testing
A set of unit tests is included and built by default. To execute them do:
$ cmake --build build --target test
The unit tests require the plasma-store-server
executable
(part of a standard C++ Arrow Plasma installation)
to be visible in the path.
If you want further control on ctest
’s command line flags
you can do:
$ cmake --build build --target test -- ARGS="<ctest command line flags>"
or alternatively:
$ cd build/
$ ctest <ctest command line flags>