# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
setvar pkgname = 'readline'
setvar pkgver = '7.0.003'
setvar pkgrel = '0'
setvar _myver = ${pkgver%.*}
setvar pkgdesc = ""GNU readline library""
setvar url = ""https://cnswww.cns.cwru.edu/php/chet/readline/rltop.html""
setvar arch = ""all""
setvar options = ""!check""
setvar license = ""GPL""
setvar depends = ''
setvar makedepends_host = ""ncurses-dev""
setvar subpackages = ""$pkgname-dev $pkgname-doc libhistory""
setvar source = ""http://ftp.gnu.org/gnu/$pkgname/$pkgname-$_myver.tar.gz
	fix-ncurses-underlinking.patch
	""

for _patch in $(seq -w 001 ${pkgver##*.}) {
	setvar _name = "$pkgname${_myver//./}-$_patch"
	setvar source = ""$source $_name.diff::http://ftp.gnu.org/gnu/$pkgname/$pkgname-$_myver-patches/$_name""
}

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

proc prepare {
	local i
	cd $builddir
	for i in $source {
		case{
		*.diff { msg ${i#*::}; patch -p0 -i "$srcdir"/${i%::*} || return 1}
		}
	}
	default_prepare || return 1
	update_config_sub
}

proc build {
	cd $builddir
	./configure \
		--build=$CBUILD \
		--host=$CHOST \
		--prefix=/usr \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--enable-static \
		--enable-shared \
		|| return 1
	make || return 1
}

proc package {
	make -C $builddir DESTDIR="$pkgdir" install || return 1
	# verfy that its not underlinked as upstream designed it
	if ! readelf -d "$pkgdir"/usr/lib/libreadline.so | grep 'NEEDED.*ncurses' {
		error "readline needs to be linked against ncurses"
		return 1
	}
	rmdir "$pkgdir"/usr/bin
}

proc libhistory {
	setvar pkgdesc = ""GNU History Library""
	mkdir -p "$subpkgdir"/usr/lib || return 1
	mv "$pkgdir"/usr/lib/$subpkgname.* "$subpkgdir"/usr/lib || return 1
}

setvar sha512sums = ""18243189d39bf0d4c8a76cddcce75243c1bae8824c686e9b6ba352667607e5b10c5feb79372a1093c1c388d821841670702e940df12eae94bcebdeed90047870  readline-7.0.tar.gz
325dcf74e9f463a74fb116cb6f3ff8d9708dbec24b423a778eeda3a5ac4fe6df131e0e99d034053ad356b01502894ecc8facc09160d4c29b2291bd95cff6b635  fix-ncurses-underlinking.patch
4402186905af8cd42c609d640c2e13b9ad61c7778e5a3fd2c2d9da301f0deab05b04d7836f31527262f44f406517823dbb18cb07f2c73931186c806b494699ec  readline70-001.diff
13d1489578508d4d2c3a1618024198a709dbce74a6bbf0f6d7ec67d2419c55bfec9f0ca9de0ed93f129d21d5c3a94307ccdc49408455bbb301c5e3a772b03185  readline70-002.diff
eaf962a1480eb3870519017b81ecc5cef171e4c41fcf8c17da61ccbfd0379ed6bca85c17b03e2207ae4d51509f33fd010294c75f4bd0433a52118015d4160385  readline70-003.diff""