distributable:
  url: https://github.com/linux-pam/linux-pam/releases/download/v{{version}}/Linux-PAM-{{version}}.tar.xz
  strip-components: 1
versions:
  github: linux-pam/linux-pam
platforms:
  - linux
dependencies:
  github.com/thkukuk/libnsl: '*'
  sourceforge.net/libtirpc: '*'
  github.com/besser82/libxcrypt: '*'
build:
  dependencies:
    freedesktop.org/pkg-config: '*'
    gnu.org/gcc: '*'
    gnu.org/make: '*'
  script:
    # 1.6.0 is missing an include
    - run: |
        sed -i -e '/argv_parse\.h/a\
        #include <stdint.h>\
        ' pam_namespace.c
      working-directory: modules/pam_namespace
      if: =1.6.0
    - ./configure $CONFIGURE_ARGS
    - make --jobs {{ hw.concurrency }}
    - make --jobs {{ hw.concurrency }} install
    - run: sed -i "s|{{prefix}}|\$(dirname \$0)/..|g" pam_namespace_helper
      working-directory: '{{prefix}}/sbin'
    - run: sed -i 's/\+brewing//g' *.la
      working-directory: '{{prefix}}/lib'
  env:
    CONFIGURE_ARGS:
      - --disable-debug
      - --disable-dependency-tracking
      - --prefix="{{prefix}}"
      - --libdir="{{prefix}}/lib"
      - --disable-db
      - --disable-silent-rules
      - --disable-selinux
      - --includedir={{prefix}}/include/security
      - --oldincludedir={{prefix}}/include
      - --enable-securedir={{prefix}}/lib/security
      - --sysconfdir={{prefix}}/etc
      - --with-xml-catalog={{prefix}}/etc/xml/catalog
provides:
  - sbin/faillock
  - sbin/mkhomedir_helper
  - sbin/pam_namespace_helper
  - sbin/pam_timestamp_check
  - sbin/unix_chkpwd
test:
  dependencies:
    freedesktop.org/pkg-config: '*'
    gnu.org/gcc: '*'
  script:
    - mkhomedir_helper || echo $? | grep 14
    - pkg-config --modversion pam | grep {{version}}
    - cc test.c -o test
    - ./test
