forked from meilisearch/heed
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
103 lines (93 loc) 路 3.21 KB
/
Copy pathCargo.toml
File metadata and controls
103 lines (93 loc) 路 3.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
[package]
name = "lmdb-master-sys"
# NB: When modifying, also modify html_root_url in lib.rs
version = "0.2.6"
authors = [
"Kerollmops <clement@meilisearch.com>",
"Dan Burkert <dan@danburkert.com>",
"Victor Porof <vporof@mozilla.com>",
]
license = "Apache-2.0"
description = "Rust bindings for liblmdb on the mdb.master branch."
documentation = "https://docs.rs/lmdb-master-sys"
repository = "https://github.com/meilisearch/heed/tree/main/lmdb-master-sys"
readme = "README.md"
keywords = ["LMDB", "database", "storage-engine", "bindings", "library"]
categories = ["database", "external-ffi-bindings"]
edition = "2021"
# Tell docs.rs which targets to build the documentation on. Since April
# 2026, docs.rs only builds on x86_64-unknown-linux-gnu by default; opt
# back into the platforms this crate supports.
# See <https://blog.rust-lang.org/2026/04/04/docsrs-only-default-targets/>.
[package.metadata.docs.rs]
targets = [
"x86_64-unknown-linux-gnu",
"aarch64-unknown-linux-gnu",
"x86_64-apple-darwin",
"aarch64-apple-darwin",
"x86_64-pc-windows-msvc",
]
# NB: Use "--features bindgen" to generate bindings.
build = "build.rs"
[lib]
name = "lmdb_master_sys"
doctest = false
[dependencies]
libc = "0.2.175"
[build-dependencies]
bindgen = { version = "0.71.1", default-features = false, optional = true, features = [
"runtime",
] }
cc = "1.2.37"
doxygen-rs = "0.4.2"
[dev-dependencies]
cstr = "0.2.12"
[features]
default = []
no_std = []
asan = []
fuzzer = []
fuzzer-no-link = []
posix-sem = []
# These features configure the MDB_IDL_LOGN macro, which determines
# the size of the free and dirty page lists (and thus the amount of memory
# allocated when opening an LMDB environment in read-write mode).
#
# Each feature defines MDB_IDL_LOGN as the value in the name of the feature.
# That means these features are mutually exclusive, and you must not specify
# more than one at the same time (or the crate will fail to compile).
#
# For more information on the motivation for these features (and their effect),
# see https://github.com/mozilla/lmdb/pull/2.
mdb_idl_logn_8 = []
mdb_idl_logn_9 = []
mdb_idl_logn_10 = []
mdb_idl_logn_11 = []
mdb_idl_logn_12 = []
mdb_idl_logn_13 = []
mdb_idl_logn_14 = []
mdb_idl_logn_15 = []
mdb_idl_logn_16 = []
# Enable the USE_VALGRIND feature.
#
# You have to install the RPM valgrind-devel which contains memcheck.h.
use-valgrind = []
# Setting this enables you to use keys longer than 511 bytes. The exact limit
# is computed by LMDB at compile time. You can find the exact value by calling
# Env::max_key_size(). This value varies by architecture.
#
# Example max key sizes:
# - Apple M1 (ARM64): 8126 bytes
# - Apple Intel (AMD64): 1982 bytes
# - Linux Intel (AMD64): 1982 bytes
#
# Setting this also enables you to use values larger than 511 bytes when using
# a Database with the DatabaseFlags::DUP_SORT flag.
#
# This builds LMDB with the -DMDB_MAXKEYSIZE=0 option.
#
# Note: If you are moving database files between architectures then your longest
# stored key must fit within the smallest limit of all architectures used. For
# example, if you are moving databases between Apple M1 and Apple Intel
# computers then you need to keep your keys within the smaller 1982 byte limit.
longer-keys = []