diff options
Diffstat (limited to 'system/ncurses/APKBUILD')
-rw-r--r-- | system/ncurses/APKBUILD | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/system/ncurses/APKBUILD b/system/ncurses/APKBUILD new file mode 100644 index 000000000..541010af1 --- /dev/null +++ b/system/ncurses/APKBUILD @@ -0,0 +1,106 @@ +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +pkgname=ncurses +pkgver=6.0_p20180121 +_ver=${pkgver%_p*}-${pkgver#*_p} +pkgrel=1 +pkgdesc="Console display library" +url="https://www.gnu.org/software/ncurses/" +arch="all" +options="!check" # "tests" are actual demo programs, not a test suite. +license="MIT" +depends= +makedepends_build="ncurses" +source="http://invisible-mirror.net/archives/ncurses/current/ncurses-$_ver.tgz" +subpackages="$pkgname-static $pkgname-dev $pkgname-doc $pkgname-libs + $pkgname-terminfo-base:base:noarch $pkgname-terminfo:terminfo:noarch" + +builddir="$srcdir"/ncurses-$_ver + +# secfixes: +# 6.0_p20171125-r0: +# - CVE-2017-16879 +# 6.0_p20170701-r0: +# - CVE-2017-10684 + +build() { + cd "$builddir" + + ./configure \ + --build=$CBUILD \ + --host=$CHOST \ + --mandir=/usr/share/man \ + --without-ada \ + --without-tests \ + --disable-termcap \ + --disable-rpath-hack \ + --disable-stripping \ + --with-pkg-config-libdir=/usr/lib/pkgconfig \ + --without-cxx-binding \ + --with-terminfo-dirs="/etc/terminfo:/usr/share/terminfo" \ + --enable-pc-files \ + --with-shared \ + --enable-widec + make +} + +package() { + cd "$builddir" + make -j1 DESTDIR="$pkgdir" install + + # Install basic terms in /etc/terminfo + for i in ansi console dumb linux rxvt screen sun vt52 vt100 vt102 \ + vt200 vt220 xterm xterm-color xterm-xfree86; do + local termfile=$(find "$pkgdir"/usr/share/terminfo/ -name "$i" 2>/dev/null) || true + local basedir=$(basename $(dirname "$termfile")) + + [ -z "$termfile" ] && continue + + install -d "$pkgdir"/etc/terminfo/$basedir + mv ${termfile} "$pkgdir"/etc/terminfo/$basedir/ + ln -s ../../../../etc/terminfo/$basedir/$i \ + "$pkgdir"/usr/share/terminfo/$basedir/$i + done +} + +dev() { + default_dev + # force link against *w.so + for lib in ncurses ncurses++ form panel menu; do + echo "INPUT(-l${lib}w)" > "$subpkgdir"/usr/lib/lib${lib}.so + ln -s ${lib}w.pc "$subpkgdir"/usr/lib/pkgconfig/${lib}.pc + done + # link curses -> ncurses + echo "INPUT(-lncursesw)" > "$subpkgdir"/usr/lib/libcursesw.so + ln -s libncurses.so "$subpkgdir"/usr/lib/libcurses.so +} + +terminfo() { + pkgdesc="$pkgdesc (other terminfo files)" + depends="$pkgname-terminfo-base" + rm -rf $subpkgdir + mkdir -p $subpkgdir/usr/share + mv $pkgdir/usr/share/terminfo $subpkgdir/usr/share +} + +libs() { + pkgdesc="Ncurses libraries" + depends="$pkgname-terminfo-base" + provides="ncurses-widec-libs=$pkgver-r$pkgrel" + + mkdir -p "$subpkgdir"/usr/ + mv "$pkgdir"/usr/lib "$subpkgdir"/usr/ +} + +base() { + pkgdesc="Descriptions of common terminals" + mkdir -p "$subpkgdir"/etc + mv "$pkgdir"/etc/terminfo "$subpkgdir"/etc/ +} + +static() { + pkgdesc="Static libraries for the ncurses library" + mkdir -p "$subpkgdir"/usr/lib + mv "$pkgdir"/usr/lib/*.a "$subpkgdir"/usr/lib/ +} + +sha512sums="f233a0630df01d96e01c5fabfb8a3d96860c9d8827c910019af410ee1b3190979a8f357ca292b083914c5ef41532f068d46685d4919b4c1d9258add5fb4dc343 ncurses-6.0-20180121.tgz" |