76 lines
2.1 KiB
TOML
76 lines
2.1 KiB
TOML
[workspace]
|
|
name = "openFPGALoader"
|
|
version = "1.0.0"
|
|
description = "Universal utility for programming FPGAs"
|
|
authors = ["Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>"]
|
|
channels = ["conda-forge"]
|
|
platforms = ["linux-64", "osx-arm64"]
|
|
|
|
[dependencies]
|
|
cmake = ">=3.5"
|
|
cxx-compiler = "*"
|
|
pkg-config = "*"
|
|
libftdi = "*"
|
|
libusb = ">=1.0"
|
|
zlib = "*"
|
|
libhidapi = "*"
|
|
|
|
[target.linux-64.dependencies]
|
|
libudev = "*"
|
|
gzip = "*"
|
|
|
|
[target.osx-arm64.dependencies]
|
|
gzip = "*"
|
|
|
|
[tasks]
|
|
# Configuration tasks
|
|
configure = "cmake -B build -DCMAKE_BUILD_TYPE=Release"
|
|
configure-debug = "cmake -B build -DCMAKE_BUILD_TYPE=Debug"
|
|
|
|
# Build tasks
|
|
build = { cmd = "cmake --build build", depends-on = ["configure"] }
|
|
build-verbose = { cmd = "cmake --build build --verbose", depends-on = ["configure"] }
|
|
|
|
# Clean task
|
|
clean = "rm -rf build"
|
|
|
|
# Install task (requires sudo on Linux, installs to system directories)
|
|
install = { cmd = "cmake --build build --target install", depends-on = ["build"] }
|
|
|
|
# Test/run tasks
|
|
test = { cmd = "./build/openFPGALoader --help", depends-on = ["build"] }
|
|
detect = { cmd = "./build/openFPGALoader --detect || true", depends-on = ["build"] }
|
|
list-boards = { cmd = "./build/openFPGALoader --list-boards", depends-on = ["build"] }
|
|
list-cables = { cmd = "./build/openFPGALoader --list-cables", depends-on = ["build"] }
|
|
list-fpga = { cmd = "./build/openFPGALoader --list-fpga", depends-on = ["build"] }
|
|
|
|
# Combined tasks
|
|
all = { depends-on = ["build", "test"] }
|
|
rebuild = { depends-on = ["clean", "build"] }
|
|
|
|
[feature.dev.dependencies]
|
|
|
|
[feature.dev.target.linux-64.dependencies]
|
|
gdb = "*"
|
|
valgrind = "*"
|
|
|
|
[feature.dev.target.osx-64.dependencies]
|
|
gdb = "*"
|
|
|
|
[feature.dev.target.osx-arm64.dependencies]
|
|
gdb = "*"
|
|
|
|
[feature.dev.tasks]
|
|
debug-build = { cmd = "cmake --build build", depends-on = ["configure-debug"] }
|
|
|
|
[feature.libgpiod.target.linux-64.dependencies]
|
|
libgpiod = ">=1.0"
|
|
|
|
[feature.libgpiod.tasks]
|
|
configure-with-gpiod = "cmake -B build -DCMAKE_BUILD_TYPE=Release -DENABLE_LIBGPIOD=ON"
|
|
build-with-gpiod = { cmd = "cmake --build build", depends-on = ["configure-with-gpiod"] }
|
|
|
|
[environments]
|
|
dev = ["dev"]
|
|
gpiod = ["libgpiod"]
|