sqlite3_ext 0.1.1

Build loadable extensions for SQLite using Rust
bindgen:
  summary: regenerate the sqlite3ext bindings
  command: |
    set -e
    which -s bindgen || cargo install bindgen
    bindgen src/ffi/sqlite3ext.h \
      --allowlist-file src/ffi/sqlite3.h \
      --allowlist-file src/ffi/sqlite3ext.h \
      --generate types,vars \
      --default-macro-constant-type signed \
      --raw-line "#![allow(non_snake_case)]" \
      --raw-line "#![allow(dead_code)]" \
      --raw-line "#![allow(non_camel_case_types)]" \
      -o src/ffi/sqlite3types.rs \
      -- -D SQLITE_ENABLE_NORMALIZE
    echo Generated src/ffi/sqlite3types.rs

    bindgen src/ffi/sqlite3ext.h \
      --allowlist-file src/ffi/sqlite3.h \
      --allowlist-file src/ffi/sqlite3ext.h \
      --generate functions,methods,constructors,destructors \
      --default-macro-constant-type signed \
      --raw-line "#![allow(non_snake_case)]" \
      --raw-line "#![allow(dead_code)]" \
      --raw-line "#![allow(non_camel_case_types)]" \
      --raw-line "use super::sqlite3types::*;" \
      -o src/ffi/sqlite3funcs.rs \
      -- -D SQLITE_ENABLE_NORMALIZE
    echo Generated src/ffi/sqlite3funcs.rs

test:
  summary: test all supported configurations
  command: |
    set -e
    cargo test --workspace --all-features
    cargo test --workspace --features=static