#LICENSE Portions Copyright 2019-2021 ZomboDB, LLC.
#LICENSE
#LICENSE Portions Copyright 2021-2023 Technology Concepts & Design, Inc.
#LICENSE
#LICENSE Portions Copyright 2023-2023 PgCentral Foundation, Inc. <contact@pgcentral.org>
#LICENSE
#LICENSE All rights reserved.
#LICENSE
#LICENSE Use of this source code is governed by the MIT license that can be found in the LICENSE file.

[package]
name = "pgrx-pg-sys"
version = "0.16.0"
authors.workspace = true
license.workspace = true
description = "Generated Rust bindings for Postgres internals, for use with 'pgrx'"
homepage.workspace = true
repository.workspace = true
documentation = "https://docs.rs/pgrx-pg-sys"
readme = "README.md"
edition.workspace = true
include = ["src/**/*", "README.md", "include/*", "pgrx-cshim.c", "bindgen.rs"]
build = "bindgen.rs"

[features]
default = []
pg13 = []
pg14 = []
pg15 = []
pg16 = []
pg17 = []
pg18 = []
cshim = []

[package.metadata.docs.rs]
features = ["pg14", "cshim"]
no-default-features = true
targets = ["x86_64-unknown-linux-gnu"]
# Enable `#[cfg(docsrs)]` (https://docs.rs/about/builds#cross-compiling)
rustc-args = ["--cfg", "docsrs"]
rustdoc-args = ["--cfg", "docsrs"]

[dependencies]
pgrx-macros.workspace = true
pgrx-sql-entity-graph.workspace = true

libc.workspace = true

serde.workspace = true # impls on pub types
# polyfill until #![feature(strict_provenance)] stabilizes
sptr = "0.3"

[target.'cfg(all(any(target_os = "linux", target_os = "macos"), any(target_arch = "x86_64", target_arch = "aarch64")))'.dependencies]
# Safer `sigsetjmp` and `siglongjmp`
cee-scape = "0.2"

[build-dependencies]
pgrx-bindgen.workspace = true

[lints]
# we allow improper_ctypes just to eliminate these warnings:
#      = note: `#[warn(improper_ctypes)]` on by default
#      = note: 128-bit integers don't currently have a known stable ABI
rust.non_camel_case_types = "allow"
rust.non_snake_case = "allow"
rust.dead_code = "allow"
rust.non_upper_case_globals = "allow"
rust.improper_ctypes = "allow"
