Skip to content

Commit 13352c3

Browse files
committed
Update README files to clarify feature flags and build strategies for fdb-sys and fdb crates
1 parent 87a71b8 commit 13352c3

File tree

2 files changed

+38
-7
lines changed

2 files changed

+38
-7
lines changed

rust/crates/fdb-sys/README.md

Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,36 @@ This crate provides raw FFI bindings using [cxx](https://cxx.rs/). For a safe, e
66

77
## Features
88

9-
- `vendored` (default) - Build FDB5 and dependencies from source
10-
- `system` - Link against system-installed FDB5
11-
- `grib` - GRIB format support via ecCodes
12-
- `tocfdb` - Filesystem TOC support
13-
- `fdb-remote` - Remote FDB access
9+
### Build strategy (mutually exclusive)
10+
11+
- `vendored` - Build the FDB and its dependencies (eckit, metkit, ecCodes) from source.
12+
- `system` - Link against system-installed FDB.
13+
14+
Note: neither is enabled by default on `fdb-sys` itself. End users should
15+
depend on the higher-level [`fdb`](https://crates.io/crates/fdb) crate, which
16+
defaults to `vendored`. If you depend on `fdb-sys` directly you must select
17+
one explicitly.
18+
19+
### Core (enabled by default)
20+
21+
- `grib` - GRIB format support. Pulls in `eccodes-sys/product-grib` and
22+
`metkit-sys/grib` so the GRIB message splitter is registered with
23+
`eckit::message::Splitter`.
24+
- `tocfdb` - Filesystem TOC backend (the standard local FDB store).
25+
- `fdb-remote` - Client support for remote FDB servers.
26+
27+
### Storage backends (off by default; require external libraries)
28+
29+
- `radosfdb` - Ceph/RADOS object store backend (requires RADOS).
30+
- `lustre` - Lustre file striping control (requires LUSTREAPI).
31+
- `daosfdb` - DAOS object store backend (requires DAOS).
32+
- `daos-admin` - DAOS pool management (requires DAOS).
33+
- `dummy-daos` - Filesystem-emulated DAOS (no DAOS install needed).
34+
35+
### Other (off by default)
36+
37+
- `experimental` - Experimental upstream features.
38+
- `sandbox` - Sandbox builds.
1439

1540
## License
1641

rust/crates/fdb/README.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,14 @@ reader.read_to_end(&mut results)?;
3333

3434
## Features
3535

36-
- `vendored` (default) - Build FDB5 and dependencies from source
37-
- `system` - Link against system-installed FDB5
36+
- `vendored` (default) - Build the FDB and its dependencies (eckit, metkit,
37+
ecCodes) from source.
38+
- `system` - Link against a system-installed FDB.
39+
40+
Lower-level feature flags (GRIB support, storage backends, experimental
41+
features) live on the [`fdb-sys`](https://crates.io/crates/fdb-sys) crate;
42+
see its README for the full list. The defaults inherited here enable GRIB,
43+
the filesystem TOC backend, and remote FDB client support.
3844

3945
## Running
4046

0 commit comments

Comments
 (0)