distributable:
  url: git+https://github.com/MaterializeInc/materialize
  ref: v{{ version }}

provides:
  - bin/mz

versions:
  github: MaterializeInc/materialize
  strip: /v/

dependencies:
  openssl.org: ^1.1

build:
  working-directory: src/mz
  dependencies:
    rust-lang.org: '>=1.56'
    rust-lang.org/cargo: '*'
    cmake.org: ^3
    perl.org: "*"
    gnu.org/automake: '*'
    gnu.org/autoconf: '*'
  script: cargo install --locked --path . --root {{prefix}}
  env:
    linux:
      # See: https://docs.rs/openssl/latest/openssl/#manual
      OPENSSL_NO_VENDOR: true # Always find OpenSSL in the system, even if the vendored feature is enabled.
      OPENSSL_DIR: "{{ deps.openssl.org.prefix }}" # Use tea's openssl installation directory
    linux/x86-64:
      # Otherwise we get: error: unknown --compress-debug-sections value: zlib-gabi
      RUSTFLAGS: -C link-arg=-Wl,--compress-debug-sections=none

test:
  script:
    # FIXME: The CLI is versioned independently of the repo's releases
    - run: test "$(mz --version)" = "mz 0.1.3"
      if: <0.69.1
    - run: test "$(mz --version)" = "mz 0.2.1"
      if: ^0.69.1
