1[package]
2name = "object"
3version = "0.20.0"
4authors = ["Nick Fitzgerald <fitzgen@gmail.com>", "Philip Craig <philipjcraig@gmail.com>"]
5edition = "2018"
6exclude = ["/.coveralls.yml", "/.travis.yml"]
7keywords = ["object", "elf", "mach-o", "pe", "coff"]
8license = "Apache-2.0/MIT"
9repository = "https://github.com/gimli-rs/object"
10description = "A unified interface for reading and writing object file formats."
11
12[package.metadata.docs.rs]
13features = ['all']
14
15[dependencies]
16crc32fast = { version = "1.2", optional = true }
17flate2 = { version = "1", optional = true }
18indexmap = { version = "1.1", optional = true }
19wasmparser = { version = "0.57", optional = true }
20
21# Internal feature, only used when building as part of libstd, not part of the
22# stable interface of this crate.
23core = { version = '1.0.0', optional = true, package = 'rustc-std-workspace-core' }
24compiler_builtins = { version = '0.1.2', optional = true }
25alloc = { version = '1.0.0', optional = true, package = 'rustc-std-workspace-alloc' }
26
27[dev-dependencies]
28memmap = "0.7"
29
30[features]
31read_core = []
32read = ["read_core", "coff", "elf", "macho", "pe", "wasm", "unaligned"]
33write_core = ["crc32fast", "indexmap", "std"]
34write = ["write_core", "coff", "elf", "macho"]
35
36std = []
37compression = ["flate2", "std"]
38# Treat all types as unaligned. May be useful to enable when processing files
39# for architectures that have no alignment constraints.
40unaligned = []
41
42coff = []
43elf = []
44macho = []
45pe = ["coff"]
46wasm = ["wasmparser"]
47
48default = ["read", "compression"]
49
50# Umbrella feature for enabling all user-facing features of this crate. Does not
51# enable internal features like `rustc-dep-of-std`.
52all = ["read", "write", "std", "compression", "default"]
53
54# Use of --all-features is not supported.
55# This is a dummy feature to detect when --all-features is used.
56cargo-all = []
57
58# Internal feature, only used when building as part of libstd, not part of the
59# stable interface of this crate.
60rustc-dep-of-std = ['core', 'compiler_builtins', 'alloc']
61
62[[example]]
63name = "nm"
64required-features = ["read"]
65
66[[example]]
67name = "objcopy"
68required-features = ["read", "write"]
69
70[[example]]
71name = "objdump"
72required-features = ["read"]
73