60 lines
1.8 KiB
Bash
60 lines
1.8 KiB
Bash
#!/bin/bash
|
|
name=ncurses
|
|
version=6.3
|
|
release=1
|
|
source=(https://invisible-mirror.net/archives/$name/$name-$version.tar.gz)
|
|
md5sums=(a2736befde5fee7d2b7eb45eb281cdbe)
|
|
depends=(glibc)
|
|
so_ver=6
|
|
cd $name-$version
|
|
unset CFLAGS
|
|
unset CXXFLAGS
|
|
|
|
setup(){
|
|
./configure --prefix=/usr \
|
|
--libdir=/lib64 \
|
|
--without-ada \
|
|
--without-tests \
|
|
--disable-termcap \
|
|
--disable-rpath-hack \
|
|
--disable-stripping \
|
|
--with-pkg-config-libdir=/usr/lib64/pkgconfig \
|
|
--without-cxx-binding \
|
|
--with-terminfo-dirs="/etc/terminfo:/usr/share/terminfo:/lib/terminfo:/usr/lib/terminfo" \
|
|
--enable-pc-files \
|
|
--with-shared \
|
|
--enable-widec
|
|
}
|
|
|
|
build(){
|
|
make -j$(nproc)
|
|
}
|
|
|
|
package(){
|
|
make install
|
|
|
|
for lib in ncurses ncurses++ form panel menu; do
|
|
printf "INPUT(-l%sw)\n" "${lib}" > "$DESTDIR/lib64/lib${lib}.so"
|
|
ln -sv ${lib}w.pc "$DESTDIR/usr/lib64/pkgconfig/${lib}.pc"
|
|
done
|
|
ln -s libncurses.so.6 "$DESTDIR/lib64/libtinfo.so.${so_ver}"
|
|
|
|
# some packages look for -lcurses during build
|
|
printf 'INPUT(-lncursesw)\n' > "$DESTDIR/lib64/libcursesw.so"
|
|
ln -sv libncurses.so "$DESTDIR/lib64/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" "${so_ver}" > "$DESTDIR/lib64/lib${lib}.so"
|
|
if ! ls $DESTDIR/lib64/lib${lib}.so.${so_ver} ; then
|
|
ln -sv libncursesw.so.${so_ver} "$DESTDIR/lib64/lib${lib}.so.${so_ver}"
|
|
ln -sv ncursesw.pc "$DESTDIR/usr/lib64/pkgconfig/${lib}.pc"
|
|
fi
|
|
done
|
|
# legacy binary support
|
|
for lib in libncursesw libncurses libtinfo libpanelw libformw libmenuw ; do
|
|
ln -sv ${lib}.${so_ver} "$DESTDIR"/lib64/${lib}.5
|
|
done
|
|
}
|