| 
1 | 1 | [workspace]  | 
2 | 2 | resolver = "2"  | 
3 | 3 | members = [  | 
 | 4 | +  "integration-test/bins/multiboot2_chainloader",  | 
 | 5 | +  "integration-test/bins/multiboot2_payload",  | 
 | 6 | +  "integration-test/bins/util",  | 
4 | 7 |   "multiboot2",  | 
5 | 8 |   "multiboot2-common",  | 
6 | 9 |   "multiboot2-header",  | 
7 | 10 | ]  | 
8 |  | -exclude = [  | 
9 |  | -  "integration-test"  | 
 | 11 | +# Default members are all members without special Rust runtime attributes, such  | 
 | 12 | +# as panic_handler and global_allocator. This way, `cargo test` et al. will work  | 
 | 13 | +# smoothley while the workspace still contains the integration tests.  | 
 | 14 | +default-members = [  | 
 | 15 | +  "multiboot2",  | 
 | 16 | +  "multiboot2-common",  | 
 | 17 | +  "multiboot2-header",  | 
10 | 18 | ]  | 
11 | 19 | package.rust-version = "1.85.0"  | 
12 | 20 | package.edition = "2024"  | 
13 | 21 | package.license = "MIT/Apache-2.0"  | 
14 | 22 | 
 
  | 
15 | 23 | [workspace.dependencies]  | 
16 |  | -bitflags = "2.9.1"  | 
 | 24 | +# Dependencies of multiboot2 et al.  | 
 | 25 | +bitflags = { version = "2.9", default-features = false }  | 
17 | 26 | log = { version = "~0.4", default-features = false }  | 
18 |  | -ptr_meta = { version = "~0.3", default-features = false, features = ["derive"] }  | 
19 |  | -thiserror = { version = "2.0.12", default-features = false }  | 
 | 27 | +ptr_meta = { version = "~0.3", default-features = false }  | 
 | 28 | +thiserror = { version = "2.0", default-features = false }  | 
 | 29 | +uefi-raw = { version = "~0.11", default-features = false }  | 
20 | 30 | 
 
  | 
21 |  | -# Intra-workspace dependencies of upstream crates: always point to the latest  | 
22 |  | -# stable version  | 
 | 31 | +# Dependencies for integration tests  | 
 | 32 | +anyhow = { version = "1.0", default-features = false }  | 
 | 33 | +multiboot = { version = "0.8", default-features = false }  | 
 | 34 | +elf_rs = { version = "0.3", default-features = false }  | 
 | 35 | +good_memory_allocator = { version = "0.1", default-features = false }  | 
 | 36 | +integration-test-util = { path = "./integration-test/bins/util" }  | 
 | 37 | +qemu-exit = { version = "3.0", default-features = false }  | 
 | 38 | + | 
 | 39 | +# Intra-workspace dependencies of upstream crates  | 
23 | 40 | multiboot2 = { version = "0.24.0", default-features = false }  | 
24 | 41 | multiboot2-common = { version = "0.3.0", default-features = false }  | 
 | 42 | +multiboot2-header = { version = "0.7.0", default-features = false }  | 
 | 43 | + | 
 | 44 | +[profile.release-integration-test]  | 
 | 45 | +inherits = "release"  | 
 | 46 | +panic = "abort"  | 
 | 47 | +opt-level = "s"  | 
25 | 48 | 
 
  | 
26 |  | -# This way, the corresponding crate dependency can be normalley referenced by  | 
27 |  | -# version, while still the repository version is used transparently during local  | 
28 |  | -# development.  | 
 | 49 | +# Force the local versions of the multiboot2 crates, i.e., override any  | 
 | 50 | +# dependency to a crates.io version.  | 
29 | 51 | [patch.crates-io]  | 
30 | 52 | multiboot2 = { path = "multiboot2" }  | 
31 | 53 | multiboot2-common = { path = "multiboot2-common" }  | 
 | 
0 commit comments