DALI_deps
CLAUDE.md11 starsChanged 57 days agoApache-2.0View on GitHub
DALI_deps provides the build scripts and source snapshots (as git submodules) for all third-party C/C++ dependencies required for a bare-metal NVIDIA DALI build. It has no DALI source code itself. Dependencies managed here are outlined in README.rst Use shallow submodule clones to avoid fetching full upstream histories: Do not run as sudo — use a user-writable prefix instead. Key env vars for build_deps.sh: - HOST_INSTALL_PREFIX / INSTALL_PREFIX — installation prefix (default /usr/local) - CC_COMP / CXX_COMP — compiler selection (default…
- Deletes or force-pushes
The file
We split this CLAUDE.md into the rules it gives an agent
2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
Use shallow submodule clones to avoid fetching full upstream histories:
- Very specific: line 31
Do not run as sudo — use a user-writable prefix instead.
≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
What this repository is
DALI_deps provides the build scripts and source snapshots (as git submodules) for all third-party C/C++ dependencies required for a bare-metal NVIDIA DALI build. It has no DALI source code itself.
Dependencies managed here are outlined in README.rst
Cloning
Use shallow submodule clones to avoid fetching full upstream histories:
git clone https://github.com/NVIDIA/DALI_deps
git submodule init
git submodule update --depth 1 --recursiveBuilding all dependencies
export HOST_INSTALL_PREFIX=$HOME/prefix
export PATH=$HOME/prefix/bin:$PATH
export LD_LIBRARY_PATH=$HOME/prefix/lib:$LD_LIBRARY_PATH
export CPATH=$HOME/prefix/include:$CPATH
bash -ex build_scripts/build_deps.shDo not run as sudo — use a user-writable prefix instead.
Key env vars for build_deps.sh:
HOST_INSTALL_PREFIX/INSTALL_PREFIX— installation prefix (default/usr/local)CC_COMP/CXX_COMP— compiler selection (defaultgcc/g++)CMAKE_TARGET_ARCH— target architecture (default: host arch)WITH_FFMPEG— set to0to skip FFmpeg (default1)CLEANUP=1— runsgit clean -fdxon all submodules before building
Building a single dependency
Each dependency has its own script in build_scripts/:
bash -ex build_scripts/build_opencv.sh
bash -ex build_scripts/build_ffmpeg.sh
# etc.Dependency-specific build notes
Notes here cover build decisions that aren't obvious from the script alone. Most dependencies don't need an entry; add one when a build script relies on a non-obvious workaround or constraint future changes need to preserve.
Google Cloud Storage
build_google-cloud-cpp.sh passes -DGOOGLE_CLOUD_CPP_ENABLE=storage, so only the
GCS client is built out of the ~200 libraries in the SDK. google-cloud-cpp always adds
monitoring, trace, opentelemetry and universe_domain on top of that, which is
why gRPC and opentelemetry-cpp are dependencies even though the GCS client itself talks
REST.
Abseil is not a submodule - build_protobuf.sh fetches and installs it as part of
protobuf, and build_grpc.sh reuses that copy (along with protobuf, zlib and OpenSSL)
via gRPC_*_PROVIDER=package so that no second, differently versioned copy is installed
over it. The googleapis protobuf definitions are downloaded by google-cloud-cpp while
configuring; GOOGLE_CLOUD_CPP_OVERRIDE_GOOGLEAPIS_URL points that at a local copy.
Patches
The patches/ directory contains patches applied on top of upstream sources during the build scripts (e.g. CVE fixes for libsndfile, FFmpeg fixes, lmdb Makefile patch). Patches are applied by the individual build_scripts/*.sh scripts — do not apply them manually.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

