# Maintainer: David Runge # Contributor: Allan McRae # Contributor: judd _name=ncurses pkgname=lib32-${_name} pkgver=6.5 pkgrel=1 pkgdesc='System V Release 4.0 curses emulation library (32-bit)' arch=(x86_64) url='https://invisible-island.net/ncurses/ncurses.html' license=(MIT) depends=(lib32-gcc-libs lib32-glibc $_name=$pkgver) provides=(libncurses++w.so libformw.so libmenuw.so libpanelw.so libncursesw.so) source=( $_name::https://invisible-island.net/archives/${_name}/${_name}-${pkgver}.tar.gz $_name.asc::https://invisible-island.net/archives/${_name}/${_name}-${pkgver}.tar.gz.asc $_name-6.3-libs.patch $_name-6.3-pkgconfig.patch ) sha512sums=('fc5a13409d2a530a1325776dcce3a99127ddc2c03999cfeb0065d0eee2d68456274fb1c7b3cc99c1937bc657d0e7fca97016e147f93c7821b5a4a6837db821e8' '96a9cb7b3e8a0c4d058129d4aadbc4388b4f022eee6605cca8d270f31c54d1f06429a7c1af09e7de13f2bfeee71fc33d9581b0773830914c8a431be7e7f0e6ba' 'adb02b838c40f1e58a1b31c26d5cd0f2a1c43f3b6d68e839981764c0f6c905a9eb51dd36ff018628fdeb20747cc7467727d57135408ab4848259384077a52b28' '2d2c0ec3c880e638ab4aa3dbff5e28e4cd233153e24816bd87e077f848aa3edd5114cd0f2a7f6e8869dd1861a2746e512886c18264ff1676927dcc320c5ef958') b2sums=('d0a05c218b5f320ba9abe2f322787baef1d15d764e503c81d49772b54b2927d28ecbeb500c8e514996226b41f69445b4de44ff423cec25b61847307fe61682ec' '079233fb8f52ec596182b69d9a44dd59982d4925715c817d21b5d2f4fc9ef7aa4c9ac2b4e14694ac177e49913a75f46e914fec64136620c5be891ee8c2c1710d' '31bb10e82dd018a75e57252052650d9f0f5eb5e7e887118c2ea40032b11f59ec6aa4d9bae804c615cbecdf3382f3434e0c9e9e8440fdefe66a507be020b8965c' 'fb6cf606cf3db7f6b306272696a63bce83d52cfa91e850f9a7bdb9d3d8455a26943529a9cf79731dddc7f763c27211a9afab9c4c31dbb6d12fd720eb390eb0a3') validpgpkeys=('19882D92DDA4C400C22C0D56CC2AF4472167BE03') # Thomas Dickey prepare() { # do not link against test libraries patch -Np1 -d $_name-${pkgver} -i ../$_name-6.3-libs.patch # do not leak build-time LDFLAGS into the pkgconfig files: # https://bugs.archlinux.org/task/68523 patch -Np1 -d $_name-${pkgver} -i ../$_name-6.3-pkgconfig.patch # NOTE: can't run autoreconf because the autotools setup is custom and ancient } build() { local configure_options=( --prefix=/usr --libdir=/usr/lib32 --disable-db-install --disable-root-access --disable-root-environ --disable-setuid-environ --enable-widec --enable-pc-files --mandir=/usr/share/man --with-cxx-binding --with-cxx-shared --with-pkg-config-libdir=/usr/lib32/pkgconfig --with-shared --with-versioned-syms --without-ada --without-debug --without-manpages --without-progs --without-tack --without-tests ) export CC="gcc -m32" export CXX="g++ -m32" export PKG_CONFIG_LIBDIR='/usr/lib32/pkgconfig' cd $_name-${pkgver} ./configure "${configure_options[@]}" make } package() { local _pkgver=${pkgver/_*/} make DESTDIR="$pkgdir" install -C $_name-${pkgver} install -vDm 644 $_name-${pkgver}/COPYING -t "$pkgdir/usr/share/licenses/$pkgname/" # fool packages looking to link to non-wide-character ncurses libraries for lib in ncurses ncurses++ form panel menu; do printf "INPUT(-l%sw)\n" "$lib" > "$pkgdir/usr/lib32/lib$lib.so" ln -sv ${lib}w.pc "$pkgdir/usr/lib32/pkgconfig/$lib.pc" done # some packages look for -lcurses during build printf 'INPUT(-lncursesw)\n' > "$pkgdir/usr/lib32/libcursesw.so" ln -sv libncurses.so "$pkgdir/usr/lib32/libcurses.so" # tic and ticinfo functionality is built in by default # make sure that anything linking against it links against libncursesw.so instead for lib in tic tinfo; do printf "INPUT(libncursesw.so.%s)\n" "${_pkgver:0:1}" > "${pkgdir}/usr/lib32/lib$lib.so" ln -sv libncursesw.so.${pkgver:0:1} "$pkgdir/usr/lib32/lib$lib.so.${_pkgver:0:1}" ln -fsv ncursesw.pc "$pkgdir/usr/lib32/pkgconfig/$lib.pc" done # remove all files conflicting with ncurses rm -frv "$pkgdir/usr/"{bin,include} } # vim: set et ts=2 sw=2: