# https://doc.rust-lang.org/cargo/reference/manifest.html [package] name = "ialloc" version = "0.0.0-2023-05-28" edition = "2021" rust-version = "1.69.0" # MSRV: CARGO_BIN_NAME in examples/nightly/stable-main-stub.rs license = "Apache-2.0 OR MIT" authors = ["MaulingMonkey "] repository = "https://github.com/MaulingMonkey/ialloc" documentation = "https://docs.rs/ialloc" readme = "Readme.md" description = "Allocator interface traits" categories = ["memory-management", "no-std::no-alloc"] # https://crates.io/category_slugs #keywords = ["..."] build = "build/build.rs" [package.metadata.docs.rs] # https://docs.rs/about/metadata default-target = "x86_64-pc-windows-msvc" rustc-args = ["--cfg", "skip_cc"] [lib] path = "src/_ialloc.rs" [features] default = [ "panicy", "std", "win32", "msvc", "c23", "c++23", ] panicy = ["panicy-bounds", "panicy-memory"] panicy-bounds = [] # XXX: not yet used for anything, undocumented as such panicy-memory = [] # ≈ not(no_global_oom_handling) alloc = ["bytemuck/extern_crate_alloc"] std = ["alloc", "bytemuck/extern_crate_std"] win32 = ["winapi", "winresult"] msvc = ["libc"] # Maximum enabled C standard. May expose less if the compiler available to the `cc` crate doesn't support the standard. c23 = ["c17"] # XXX: not yet standardized c17 = ["c11"] c11 = ["c99"] c99 = ["c89"] c89 = ["c"] c = ["cc", "libc"] # cc is only used for feature supported standard detection at the moment # Maximum enabled C++ standard. May expose less if the compiler available to the `cc` crate doesn't support the standard. "c++23" = ["c++20"] # XXX: not yet standardized "c++20" = ["c++17"] "c++17" = ["c++14"] "c++14" = ["c++11"] "c++11" = ["c++03"] "c++03" = ["c++98"] "c++98" = ["c++"] "c++" = ["cc", "libc"] # libc is only used for typedefs [build-dependencies] cc.version = "1" cc.optional = true [dependencies] bytemuck.version = "1" bytemuck.features = [ # automatically opt into features that exist only to protect MSRV "zeroable_maybe_uninit", # requires MSRV 1.36.0, ialloc has MSRV 1.69.0 "min_const_generics", # requires MSRV 1.51.0, ialloc has MSRV 1.69.0 "zeroable_atomics", # requires MSRV 1.60.0, ialloc has MSRV 1.69.0 ] lazy_static.version = "1" lazy_static.features = ["spin_no_std"] libc.version = "0.2" libc.optional = true [target.'cfg(windows)'.dependencies] mcom.version = "0.1" winapi.version = "0.3" winapi.optional = true winapi.features = [ # shared "winerror", # um "combaseapi", "errhandlingapi", "heapapi", "minwinbase", "memoryapi", "winbase", "wincrypt", "winnt", ] winresult.version = "0.1" winresult.optional = true [profile.release] debug = true