Toplevel Makefile Documentation¶
Variables¶
MAKEFLAGS¶
Help: Add -R to make to clear buitin variables
CMAKE_FLAGS¶
Help: Additional CMake flags for CMake-related tasks
JOBS¶
Help: Number of parallel jobs for building.
Defaults to number of CPU cores detected using nproc.
BASH¶
Help: Shell to use for shell scripts
PYTHON¶
Help: Python interpreter to use for Python scripts
MPIEXEC¶
Help: MPI launcher command. Used in MPI-related tests only NOTE: Setting this target does NOT enable MPI build! Use release-mpi or debug-mpi targets to build with MPI support.
OPT_DIR¶
Help: Output directory for build artifacts
ARCH¶
Help: System architecture
PACKAGE_VERSION¶
Help: Package version, derived from the latest git tag if not set
Targets¶
help¶
Depends on: None
Help: Generate help message from Makefile comments
dumpvar¶
Depends on: None
Help: List all variables using .VARIABLES
build¶
Depends on: debug
Help: build as an alias to debug
debug¶
Depends on: None
Help: Generates debug build with tests enabled
debug-mpi¶
Depends on: None
Help: debug with MPI
release¶
Depends on: None
Help: Generates release build with native optimizations
release-mpi¶
Depends on: None
Help: release with MPI
rel_with_dbg_alpine¶
Depends on: None
Help: Generates RelWithDebInfo build without native optimizations for fully-static-linked build on Alpine Linux
fmt¶
Depends on: None
Help: Run code formatting checks and auto-formatting
Format the code using clang-format, sh, Black, cmake-format, and dos2unix.
scc¶
Depends on: None
Help: Run source code counting
Note that this excludes third-party codes so should be preferred over pure scc in project root.
testsmall¶
Depends on: testsmall-debug
Help: Alias to testsmall-debug
testsmall-mpi¶
Depends on: testsmall-debug-mpi
Help: Alias to testsmall-debug-mpi
testsmall-debug¶
Depends on: debug, raw_data
Help: Run (not necessiarily) small integration tests with debug build. Also tests art_profile_builder.
Env. Flags:
FORMAT_ONLY=1: Stop after testing all output formats is working
NO_FASTQC=1: Do not run FASTQC
testsmall-debug-mpi¶
Depends on: debug-mpi, raw_data
Help: testsmall with MPI
testsmall-release¶
Depends on: release, raw_data
Help: Run small tests with release build
testsmall-release-mpi¶
Depends on: release-mpi, raw_data
Help: testsmall-release with MPI
testsmall-conda¶
Depends on: raw_data
Help: Run small tests with conda-installed art_modern
testsmall-conda-mpi¶
Depends on: raw_data
Help: testsmall-conda with MPI
raw_data¶
Depends on: None
Help: Download raw data required for tests
clean¶
Depends on: None
Help: Clean all build artifacts
testbuild¶
Depends on: None
Help: Test building using diverse conditions
testbuild-mpi¶
Depends on: None
Help: testbuild with MPI
testbuild-small¶
Depends on: None
Help: Test building using diverse conditions with testsmall configurations
testbuild-small-mpi¶
Depends on: None
Help: testbuild with MPI with testsmall configurations
doc¶
Depends on: None
Help: Build documentation
cleandoc¶
Depends on: None
Help: Clean and build documentation
serve-doc¶
Depends on: None
Help: Serve built documentation at http://localhost:8000
packing¶
Depends on: None
Help: Create binary packages
packing-update-containers¶
Depends on: None
Help: Update Docker and Singularity containers used for packing