distributable:
  url: https://github.com/libarchive/libarchive/releases/download/v{{version}}/libarchive-{{version}}.tar.gz
  strip-components: 1

versions:
  github: libarchive/libarchive/releases
  strip: /^Libarchive /

dependencies:
  gnu.org/coreutils: '*'
  lz4.org: 1
  tukaani.org/xz: 5
  facebook.com/zstd: 1
  sourceware.org/bzip2: 1
  libexpat.github.io: 2
  zlib.net: 1

build:
  script:
    - ./configure $ARGS
    - make --jobs {{ hw.concurrency }}
    - make install

    # https://github.com/libarchive/libarchive/issues/1819
    - run: 'sed -i ''/Requires\.private: iconv/d'' libarchive.pc'
      working-directory: '{{prefix}}/lib/pkgconfig'

    - run: find . -name \*.la -exec rm {} \;
      working-directory: '{{prefix}}/lib'
  env:
    ARGS:
      - --prefix={{prefix}}
      - --without-lzo2 # Use lzop binary instead of lzo2 due to GPL
      - --without-nettle # xar hashing option but GPLv3
      - --without-xml2 # xar hashing option but tricky dependencies
      - --without-openssl # mtree hashing now possible without OpenSSL
      - --with-expat # best xar hashing option
    linux/x86-64:
      CFLAGS: '$CFLAGS -fPIC'
      CXXFLAGS: '$CXXFLAGS -fPIC'
      LDFLAGS: '$LDFLAGS -pie'

provides:
  - bin/bsdcat
  - bin/bsdcpio
  - bin/bsdtar

test:
  script: |
    bsdtar -cf test.tar.gz fixture.c
