Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
258151d
fix(aws-lc-rs): address RUSTSEC-2026-0048
daniel-noland Mar 20, 2026
c3e3110
build: phase out rust-toolchain.toml
daniel-noland Mar 19, 2026
b198d12
bump(nix): update dependency pins
daniel-noland Mar 19, 2026
f79abfb
build(nix): simplify shell and environment configuration
daniel-noland Mar 19, 2026
8b4862c
build(nix): rework build profiles
daniel-noland Mar 19, 2026
fe1eb18
build(nix): rework llvm overlay
daniel-noland Mar 19, 2026
64dede3
fix(nix): add platform name mapping for BF2 DPDK compatibility
daniel-noland Mar 19, 2026
340d286
build(nix): simplify dpdk package build parameters
daniel-noland Mar 19, 2026
dda36bd
build(nix): rework dataplane-dev and dataplane overlays
daniel-noland Mar 19, 2026
1c58938
build(nix): add FRR package
daniel-noland Mar 19, 2026
80e004c
build(nix): add FRR config package
daniel-noland Mar 19, 2026
1d3dd44
build(nix): add dplane-rpc package
daniel-noland Mar 19, 2026
bc00870
build(nix): add dplane-plugin package
daniel-noland Mar 19, 2026
4538910
feat(nix): add frr-agent package
daniel-noland Mar 19, 2026
28c30ac
build(nix): rework default.nix core build infrastructure
daniel-noland Mar 19, 2026
5322ca4
build(nix): add cargo doc builder
daniel-noland Mar 19, 2026
20642d1
build(nix): rework dataplane tar packaging
daniel-noland Mar 19, 2026
92f31dd
build(nix): add OCI container image definitions
daniel-noland Mar 19, 2026
16c2178
build(nix): add coverage support to dev shell and dependency builds
daniel-noland Mar 20, 2026
efceeb9
build: rework build.rs scripts and update build dependencies
daniel-noland Mar 19, 2026
20db301
refactor(k8s-intf): generate CRD bindings at build time
daniel-noland Mar 19, 2026
735ebe7
feat: make DPDK and sysroot optional via feature gates
daniel-noland Mar 19, 2026
3f6fd20
chore: remove scripts superseded by nix build system
daniel-noland Mar 19, 2026
0afca69
test: update test harness and dev-dependencies for vm-based test runner
daniel-noland Mar 19, 2026
b325b28
build: rewrite justfile for nix build system
daniel-noland Mar 19, 2026
740e9ea
ci: rewrite GitHub workflows for nix-based builds
daniel-noland Mar 19, 2026
b6a5489
docs: rewrite build and test instructions for nix workflow
daniel-noland Mar 19, 2026
b2dac81
fix(dpdk): use unwrapped rte_lcore_id binding
daniel-noland Mar 19, 2026
f1467ee
style: fix typos and doc links
daniel-noland Mar 19, 2026
3ae3964
bump(docs): update KaTeX to 0.16.28
daniel-noland Mar 19, 2026
5703768
chore: ignore TLS credential files in .gitignore
daniel-noland Mar 19, 2026
8122056
feat(vlab): add vlab development scripts
daniel-noland Mar 19, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 12 additions & 10 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
[env]
COMPILE_ENV = { value = "compile-env", relative = true, force = false }
PATH = { value = "compile-env/bin", relative = true, force = true }
LIBCLANG_PATH = { value = "compile-env/lib", relative = true, force = true }
PKG_CONFIG_PATH = { value = "compile-env/sysroot/x86_64-unknown-linux-gnu/release/lib/pkgconfig", relative = true, force = true }
DATAPLANE_SYSROOT = { value = "sysroot", relative = true, force = false }
C_INCLUDE_PATH = { value = "sysroot/include", relative = true, force = false }
LIBRARY_PATH = { value = "sysroot/lib", relative = true, force = false }
GW_CRD_PATH = { value = "devroot/src/gateway/config/crd/bases", relative = true, force = false }
PKG_CONFIG_PATH = { value = "sysroot/lib/pkgconfig", relative = true, force = false }
LIBCLANG_PATH = { value = "devroot/lib", relative = true, force = false }
CLANG_PATH = { value = "devroot/bin/clang", relative = true, force = false }
LLVM_COV = { value = "devroot/bin/llvm-cov", relative = true, force = false }
LLVM_PROFDATA = { value = "devroot/bin/llvm-profdata", relative = true, force = false }
CARGO_LLVM_COV_TARGET_DIR= { value = "target/llvm-cov/build", relative = true, force = false }
CARGO_LLVM_COV_BUILD_DIR= { value = "target/llvm-cov/target", relative = true, force = false }

[build]
target = "x86_64-unknown-linux-gnu"
rustc = "compile-env/bin/rustc"
rustflags = ["--cfg", "tokio_unstable"]

[target.x86_64-unknown-linux-gnu]
runner = ["scripts/test-runner.sh"]
rustflags = ["--cfg=tokio_unstable"]
48 changes: 2 additions & 46 deletions .envrc
Original file line number Diff line number Diff line change
@@ -1,46 +1,2 @@
export PROJECT_DIR="$(pwd)"

if [ -h "${PROJECT_DIR}/compile-env" ] || [ -d "${PROJECT_DIR}/compile-env" ]; then
export PATH="${PROJECT_DIR}/compile-env/bin:$PATH"
export LIBCLANG_PATH="${PROJECT_DIR}/compile-env/bin"
export COMPILE_ENV="${PROJECT_DIR}/compile-env"
else
>&2 echo "no compile environment found"
exit 0
fi

export NEXTEST_EXPERIMENTAL_LIBTEST_JSON=1

CRT="-C target-feature=-crt-static"
DEBUG="-C debuginfo=full -C split-debuginfo=off -C dwarf-version=5"
LINKER="-C linker=${COMPILE_ENV}/bin/clang -C link-arg=--ld-path=${COMPILE_ENV}/bin/ld.lld"
RELRO="-C relro-level=full"
TARGET_CPU="-C target-cpu=x86-64-v3"

RUSTFLAGS="${CRT} ${DEBUG} ${LINKER} ${RELRO} ${TARGET_CPU}"

OPTIMIZE="-C opt-level=3 -C linker-plugin-lto -C lto=thin -C embed-bitcode=yes -C codegen-units=1"

case ${PROFILE:-DEBUG} in
fuzz|FUZZ)
COVERAGE="-C instrument-coverage"
DEBUG_ASSERTIONS="-C debug-assertions=on"
OVERFLOW_CHECK="-C overflow-checks=on"
RUSTFLAGS="${RUSTFLAGS} ${COVERAGE} ${DEBUG_ASSERTIONS} ${OVERFLOW_CHECK}"
;;
release|RELEASE)
RUSTFLAGS="${RUSTFLAGS} ${OPTIMIZE}"
;;
debug|DEBUG)
DEBUG_ASSERTIONS="-C debug-assertions=on"
OPTIMIZE="-C opt-level=0"
OVERFLOW_CHECK="-C overflow-checks=on"
RUSTFLAGS="${RUSTFLAGS} ${OPTIMIZE} ${DEBUG_ASSERTIONS} ${OVERFLOW_CHECK}"
;;
*)
>&2 echo "unknown profile"
exit 1
;;
esac

export RUSTFLAGS
export RUSTC_BOOTSTRAP=1
export PATH=$(pwd)/devroot/bin:$PATH
Loading
Loading