Development

Contributions

The code repository is hosted on Github. Feel free to fork it and submit your PRs against the develop branch. The first time you do this, you will be asked to sign our Contributor License Agreement via an automatic comment in the pull request.

To clone the repository locally, you can use the following command:

git clone --branch develop git@github.com:ecmwf/odc.git

Development Dependencies

Required

Optional

  • Fortran compiler

  • Doxygen (>= 1.9.1)

Run Unit Tests

To run the test suite, you can use the following command:

# Setup environment variables (edit as needed)
SRC_DIR=$(pwd)
BUILD_DIR=build
export eckit_DIR=$HOME/local # set to eckit prefix

# Create the the build directory
mkdir $BUILD_DIR
cd $BUILD_DIR

# Run ecbuild (CMake)
ecbuild -- $SRC_DIR

# Build and test
make -j10
make test

Optional Features

Fortran interface and its tests are an optional feature, and require an activation flag to be set during build configuration:

ENABLE_FORTRAN=ON
ecbuild -- -DENABLE_FORTRAN=$ENABLE_FORTRAN $SRC_DIR

Build Documentation

The documentation is generated using Sphinx.

First, make sure that Doxygen module is available, and then install Python dependencies in your environment:

pip install -r docs/requirements.txt

You can then build the documentation by using make:

cd docs
make html

The built HTML documentation will be available under the docs/_build/html/index.html path.