# Maintainer: qaqland <qaq@qaq.land>
maintainer="qaqland <qaq@qaq.land>"
pkgname=readline
pkgver=8.3.3
pkgrel=1
_myver=${pkgver%.*}
pkgdesc="GNU readline library"
url="https://tiswww.cwru.edu/php/chet/readline/rltop.html"
arch="all"
options="!check"
license="GPL-3.0-or-later"
makedepends_host="ncurses-dev"
makedepends_build="chrpath"
subpackages="
	$pkgname-dbg
	$pkgname-static
	$pkgname-dev
	$pkgname-doc
	libhistory
	"
source="https://ftp.gnu.org/gnu/readline/readline-$_myver.tar.gz
	fix-ncurses-underlinking.patch
	inputrc
	"
patch_args="-p0" # patchlevel used by upstream patches

_i=1
while [ $_i -le ${pkgver##*.} ]; do
	_patch=$(printf "%03d" $_i)
	_name=$pkgname${_myver//./}-$_patch
	source="$source
		$_name.patch::https://ftp.gnu.org/gnu/readline/readline-$_myver-patches/$_name"
	_i=$((_i+1))
done

builddir="$srcdir/$pkgname-$_myver"

build() {
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--enable-static \
		--enable-shared
	make
}

package() {
	make DESTDIR="$pkgdir" install
	# verify that it is not underlinked as upstream designed it
	if ! readelf -d "$pkgdir"/usr/lib/libreadline.so | grep -q 'NEEDED.*ncurses'; then
		error "readline needs to be linked against ncurses"
		return 1
	fi
	rmdir "$pkgdir"/usr/bin
	install -Dm644 "$srcdir"/inputrc "$pkgdir"/etc/inputrc
	chrpath -d "$pkgdir"/usr/lib/*.so.*
}

libhistory() {
	pkgdesc="GNU History Library"

	amove usr/lib/libhistory.so.*
}

sha512sums="
513002753dcf5db9213dbbb61d51217245f6a40d33b1dd45238e8062dfa8eef0c890b87a5548e11db959e842724fb572c4d3d7fb433773762a63c30efe808344  readline-8.3.tar.gz
3fa096385feee5f6c01866ef220a92ba646dcebf59c6bba701bc5a3d234df899c37c8f7954b900aa2738c70697b7444da2c9b76dc64ba33c68dec02ac2244371  fix-ncurses-underlinking.patch
5dbe872e94166aaed7ca2edec5a34ef9b13b254381e252cc6d851877b461579903cbb5b5dc588eabececcf1ebe636f6cb4da406cd01b64757f8c7e7f62e9a276  inputrc
ced50af353ed527f6ec0eac5f65261f2ed208825ec72fe2acf5f0217f34f84f33dcbf01b895325f6b33664b5a426bac99506193e2ddb6eea8c79ccad37364b89  readline83-001.patch
e45ad6443bd4e271ec8e8ab883de561b6420aec362b0b7f0256086cb5a023d946df55994ed99c76ceb191e8a25e8059ae9b553ef1d546626d671b80af292f04d  readline83-002.patch
6b3ebffe994d0cd4d3466b15e3aee9a73613109283a4442f3bf10e28edcd1204df824c71356d66d01ac21014a806023a101fedf94526a19f6f590d9ffdc864cd  readline83-003.patch
"
