[package] name = "block-sys" # Remember to update `html_root_url` in lib.rs and the `links` key. # # Also, beware of using pre-release versions here, since because of the # `links` key, two pre-releases requested with `=...` are incompatible. version = "0.2.1" authors = ["Mads Marquart "] edition = "2021" rust-version = "1.60" description = "Raw bindings to Apple's C language extension of blocks" keywords = ["objective-c", "macos", "ios", "blocks", "sys"] categories = [ "external-ffi-bindings", # "no_std", # TODO "os::macos-apis", ] repository = "https://github.com/madsmtm/objc2" documentation = "https://docs.rs/block-sys/" license = "MIT" readme = "README.md" # Downstream users can customize the linking! # See https://doc.rust-lang.org/cargo/reference/build-scripts.html#overriding-build-scripts links = "block_0_2" build = "build.rs" [features] # The default runtime is Apple's. Other platforms will probably error if the # correct feature flag is not specified. default = ["std", "apple"] # Currently not possible to turn off, put here for forwards compatibility. std = ["alloc", "objc-sys?/std"] alloc = ["objc-sys?/alloc"] # Link to Apple's libclosure (exists in libSystem) apple = [] # Link to libBlocksRuntime from compiler-rt compiler-rt = [] # Link to GNUStep's libobjc2 (which contains the block implementation) gnustep-1-7 = ["objc-sys", "objc-sys/gnustep-1-7"] gnustep-1-8 = ["objc-sys/gnustep-1-8", "gnustep-1-7"] gnustep-1-9 = ["objc-sys/gnustep-1-9", "gnustep-1-8"] gnustep-2-0 = ["objc-sys/gnustep-2-0", "gnustep-1-9"] gnustep-2-1 = ["objc-sys/gnustep-2-1", "gnustep-2-0"] # Link to Microsoft's libobjc2 unstable-winobjc = ["objc-sys/unstable-winobjc", "gnustep-1-8"] # Link to ObjFW unstable-objfw = [] # Private # Need `objc-sys` on certain platforms unstable-docsrs = ["objc-sys", "objc-sys/unstable-docsrs"] [dependencies] objc-sys = { path = "../objc-sys", version = "0.3.2", default-features = false, optional = true } [package.metadata.docs.rs] default-target = "x86_64-apple-darwin" no-default-features = true features = ["std", "unstable-docsrs"] targets = [ # MacOS "x86_64-apple-darwin", "aarch64-apple-darwin", # "i686-apple-darwin", # iOS "aarch64-apple-ios", "x86_64-apple-ios", # "i386-apple-ios", # GNUStep "x86_64-unknown-linux-gnu", "i686-unknown-linux-gnu", # Windows "x86_64-pc-windows-msvc", ]