- git with submodule support
- cmake
- ninja for faster builds
- A C++ compiler supported by DuckDB
git clone --recurse-submodules https://github.com/cwida/lpts.git
cd lptsIf you already cloned without submodules, run:
git submodule update --init --recursiveGEN=ninja make # release build
make # release build without ninja
make debug # debug buildThe release build produces:
build/release/duckdb
build/release/test/unittest
build/release/extension/lpts/lpts.duckdb_extension
build/release/extension/lpts/lpts_sqlstorm_benchmark
Use community-extension loading for installed releases:
INSTALL lpts FROM community;
LOAD lpts;Use the local build path while developing:
build/release/duckdb -unsignedLOAD 'build/release/extension/lpts/lpts.duckdb_extension';make format-fixOpen duckdb/CMakeLists.txt as the CLion project, then change the project root
to the LPTS repository root.
For each CMake profile, set the build directory to ../build/<profile> and add
the extension configuration flag:
-DDUCKDB_EXTENSION_CONFIGS=<path_to_lpts>/extension_config.cmake
Use the unittest target for SQLLogicTests. To run only LPTS tests, pass a
single test file such as:
test/sql/select.test
The DuckDB version is pinned via the duckdb and extension-ci-tools
submodules. To update to a new release:
cd duckdb && git fetch --tags && git checkout v1.X.0
cd ../extension-ci-tools && git fetch && git checkout origin/v1.X.0
cd ..
git add duckdb extension-ci-tools
git commit -m "Bump DuckDB to v1.X.0"Replace v1.X.0 with the target version tag.