# Maintainer: Giancarlo Razzolini <grazzolini@archlinux.org>
# Contributor:  Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
#  - for some reason, SHLIB_LIBS isn't populating through for our builds.
#  - fixed with a sed.

pkgname=readline
_basever=8.2
_patchlevel=007
pkgver=${_basever}.${_patchlevel}
pkgrel=1
pkgdesc='GNU readline library'
arch=('x86_64')
url='https://tiswww.case.edu/php/chet/readline/rltop.html'
license=('GPL')
backup=('etc/inputrc')
depends=('glibc' 'ncurses' 'libncursesw.so')
provides=('libhistory.so' 'libreadline.so')
options=('!emptydirs')
source=(https://ftp.gnu.org/gnu/readline/readline-$_basever.tar.gz{,.sig}
        inputrc)
sha256sums=('3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35'
            'SKIP'
            '36e9611f935ee108d161587b0615f9c390192ef4bbff6dc59b58671261029901'
            'bbf97f1ec40a929edab5aa81998c1e2ef435436c597754916e6a5868f273aff7'
            'SKIP'
            'e06503822c62f7bc0d9f387d4c78c09e0ce56e53872011363c74786c7cd4c053'
            'SKIP'
            '24f587ba46b46ed2b1868ccaf9947504feba154bb8faabd4adaea63ef7e6acb0'
            'SKIP'
            '79572eeaeb82afdc6869d7ad4cba9d4f519b1218070e17fa90bbecd49bd525ac'
            'SKIP'
            '622ba387dae5c185afb4b9b20634804e5f6c1c6e5e87ebee7c35a8f065114c99'
            'SKIP'
            'c7b45ff8c0d24d81482e6e0677e81563d13c74241f7b86c4de00d239bc81f5a1'
            'SKIP'
            '5911a5b980d7900aabdbee483f86dab7056851e6400efb002776a0a4a1bab6f6'
            'SKIP')
validpgpkeys=('7C0135FB088AAF6C66C650B9BB5869F064EA74AB') # Chet Ramey

if [ $_patchlevel -gt 0 ]; then
    for (( _p=1; _p <= $((10#${_patchlevel})); _p++ )); do
        source=(${source[@]} https://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//.}-$(printf "%03d" $_p){,.sig})
    done
fi

prepare() {
  cd $pkgname-$_basever
  for (( _p=1; _p <= $((10#${_patchlevel})); _p++ )); do
    msg "applying patch readline${_basever//.}-$(printf "%03d" $_p)"
    patch -p0 -i ../readline${_basever//.}-$(printf "%03d" $_p)
  done

  # remove RPATH from shared objects (FS#14366)
  sed -i 's|-Wl,-rpath,$(libdir) ||g' support/shobj-conf

  # fix getting -lncurses through to SHLIB_LIBS
  sed -i 's/SHLIB_LIBS = @SHLIB_LIBS@/SHLIB_LIBS = @SHLIB_LIBS@ -lncurses/' shlib/Makefile.in
}

build() {
  cd $pkgname-$_basever

  # build with -fPIC for x86_64 (FS#15634)
  [[ $CARCH == "x86_64" ]] && CFLAGS="$CFLAGS -fPIC"

  ./configure --prefix=/usr
  make SHLIB_LIBS=-lncurses
}

package() {
  make -C $pkgname-$_basever DESTDIR="$pkgdir" install
  install -Dm644 inputrc "$pkgdir"/etc/inputrc
}