summaryrefslogtreecommitdiffstats
path: root/abs/core/ncurses/PKGBUILD
blob: 008e2093c193bf69b8d188b96babb10f1d6b86a5 (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
# $Id$
# Maintainer:  Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

pkgname=ncurses
pkgver=5.9_20141101
pkgrel=1
pkgdesc='System V Release 4.0 curses emulation library'
arch=('i686' 'x86_64')
url='http://invisible-island.net/ncurses/ncurses.html'
license=('MIT')
depends=('glibc' 'gcc-libs' 'sh')
provides=('libmenu.so' 'libpanel.so' 'libform.so' 'libncurses.so' 'libncurses++w.so'
          'libformw.so' 'libmenuw.so' 'libpanelw.so' 'libncursesw.so')
source=(ftp://invisible-island.net/ncurses/current/ncurses-${pkgver/_/-}.tgz{,.asc})
md5sums=('87500270f8b1ba911228c940bad30ed1'
         'SKIP')

prepare() {
  mkdir ncurses{,w}-build
}

build() {
  cd ncursesw-build
  ../$pkgname-${pkgver/_/-}/configure --prefix=/usr --mandir=/usr/share/man \
     --with-shared --with-normal --without-debug --without-ada \
     --enable-widec --enable-pc-files --with-cxx-binding --with-cxx-shared
  # add --enable-ext-colors and --enable-ext-mouse with next soname bump
  make

  # libraries for external binary support
  cd ${srcdir}/ncurses-build
  [[ $CARCH = "x86_64" ]] && CONFIGFLAG="--with-chtype=long"
  ../$pkgname-${pkgver/_/-}/configure --prefix=/usr \
    --with-shared --with-normal --without-debug --without-ada $CONFIGFLAG \
    --with-cxx-binding --with-cxx-shared
  make
}

package() {
  cd ncursesw-build
  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}.so
  done

  for lib in ncurses ncurses++ form panel menu; do
    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.so
  ln -s libncurses.so "$pkgdir"/usr/lib/libcurses.so

  # non-widec compatibility libraries
  cd "$srcdir"/ncurses-build
  for lib in ncurses form panel menu; do
    install -Dm755 lib/lib${lib}.so.${pkgver%_*} "$pkgdir"/usr/lib/lib${lib}.so.${pkgver%_*}
    ln -s lib${lib}.so.${pkgver%_*} "$pkgdir"/usr/lib/lib${lib}.so.5
  done

  # install license, rip it from the readme
  cd "$srcdir"/$pkgname-${pkgver/_/-}
  install -dm755 "$pkgdir"/usr/share/licenses/$pkgname
  grep -B 100 '$Id' README > "$pkgdir"/usr/share/licenses/$pkgname/LICENSE
}