# nghttp2-sys A common library for linking `nghttp2` to rust programs (also known as libnghttp2). ## Generating bindings Before `bindgen`: * Copy `nghttp2ver.h.in` to `nghttp2ver.h` * Edit `nghttp2ver.h` to remove `@FOO@`, replacing with 0 ```sh $ bindgen \ ./nghttp2/lib/includes/nghttp2/nghttp2.h \ -o src/lib.rs \ --no-layout-tests \ --distrust-clang-mangling \ --no-prepend-enum-name \ --rustfmt-bindings \ --whitelist-function '.*nghttp2.*' \ --whitelist-type '.*nghttp2.*' \ --whitelist-var '.*nghttp2.*' \ -- \ -I ./nghttp2/lib/includes ``` Afterwards * Remove `*vprintf*` * Remove `va_list`-related things * Add `#![allow(bad_style)]` # License This project is licensed under either of * Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0) * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT) at your option. ### Contribution Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in `nghttp2-sys` by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.