summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: dad48ac0b80146c0373fdd2d4bea4900eb90bba1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# $Id$
# Maintainer: Eden Rose(endlesseden) <eenov1988 "at"  gmail.com >
# Contributor:  Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

_pkgname=ncurses
pkgname=ncurses-full-git
_pkgver=6.0-20170902
pkgver=${_pkgver/-/+}
pkgrel=1
pkgdesc='System V Release 4.0 curses emulation library, with static and shared libraries, Inclusion of libTinfo.'
arch=(i686 x86_64)
url='http://invisible-island.net/ncurses/ncurses.html'
license=(MIT)
depends=(glibc gcc-libs)
provides=(libncurses++w.a libformw.a libmenuw.a libpanelw.a libncursesw.a libncurses++w.so libformw.so libmenuw.so 
libpanelw.so libncursesw.so libtinfo.a libtinfo.so ncurses ncurses-full libtinfo)
conflicts=(libtinfo ncurses ncurses-full ncurses5-compat-libs)
source=(ncurses::git+https://github.com/mirror/ncurses.git)
md5sums=('SKIP')

_pkgver() {
cd $srcdir/$_pkgname
VER="$(git log -1 --decorate=short | grep ncurses | sed -e 's/ /\n/g' | tail -4 | head -1)"
PATCH="$(git log -1 --decorate=short | grep ncurses | sed -e 's/ /\n/g' | tail -1 | head -1)"
echo -n $VER+$PATCH
}
short-pkgver () {
cd $srcdir/$_pkgname
VER="$(git log -1 --decorate=short | grep ncurses | sed -e 's/ /\n/g' | tail -4 | head -1)"
echo -n $VER
}


build() {
  cd $_pkgname

  ./configure --prefix=/usr --mandir=/usr/share/man \
    --with-pkg-config-libdir=/usr/lib/pkgconfig \
    --with-static --with-normal --without-debug --without-ada \
    --enable-widec --enable-pc-files --with-cxx-binding --with-cxx-static \
    --with-shared --with-cxx-shared

  make
}

package() {

  cd $_pkgname
  make DESTDIR="$pkgdir" install

  # fool packages looking to link to non-wide-character ncurses libraries
  for lib in ncurses ncurses++ form panel menu; do
    echo "INPUT(-l${lib}w)" > "$pkgdir/usr/lib/lib${lib}.a"
    echo "INPUT(-l${lib}w)" > "$pkgdir/usr/lib/lib${lib}.so"
    ln -s ${lib}w.pc "$pkgdir/usr/lib/pkgconfig/${lib}.pc"
  done

  # some packages look for -lcurses during build
  echo "INPUT(-lncursesw)" > "$pkgdir/usr/lib/libcursesw.a"
  ln -s libncurses.a "$pkgdir/usr/lib/libcurses.a"

  echo "INPUT(-lncursesw)" > "$pkgdir/usr/lib/libcursesw.so"
  ln -s libncurses.so "$pkgdir/usr/lib/libcurses.so"

  # install license, rip it from the readme
  install -d "$pkgdir/usr/share/licenses/$pkgname"
  grep -B 100 '$Id' README > "$pkgdir/usr/share/licenses/$pkgname/LICENSE"

  # install libtinfo
  install -d "$pkgdir"/usr/lib
  ln -s /usr/lib/libncursesw.so.$short-pkgver "$pkgdir"/usr/lib/libtinfo.so."$short-pkgver"
  ln -s /usr/lib/libtinfo.so."$short-pkgver" "$pkgdir"/usr/lib/libtinfo.so
  ln -s /usr/lib/libncursesw.a.$short-pkgver "$pkgdir"/usr/lib/libtinfo.a."$short-pkgver"
  ln -s /usr/lib/libtinfo.a."$short-pkgver" "$pkgdir"/usr/lib/libtinfo.a

}