71594b6ea5
* build-package.sh: allow for arrays in TERMUX_PKG_{SRCURL,SHA256} Packages that require several source archives can then set these parameters to arrays instead of downloading them "manually" in termux_step_post_extract. Downloaded files are extracted into subfolders in TERMUX_PKG_SRCDIR. Tested for backward compatibility in a couple of packages and the combinations tar + tar, zip + tar, tar + zip, zip + zip. * perl: download perl-cross through TERMUX_PKG_SRCURL * perl: remove $PREFIX/{lib/libperl.so,include/perl} before build Otherwise building perl twice doesn't give the same results, symlinks are messed up. Also remove old remnant from when there was a Kid.pm.patch. * bash: fix tiny typo * ecj: remove hardcoded SHA256 and pkg version * elfutils: download argp-standalone through TERMUX_PKG_SRCURL * ldc: download all src archives through TERMUX_PKG_SRCURL * libgc: download libatomic_ops through TERMUX_PKG_SRCURL * libllvm: download all src archives through TERMUX_PKG_SRCURL * linux-man-pages: download src archives through TERMUX_PKG_SRCURL * ncurses: download all src archives through TERMUX_PKG_SRCURL * pngquant: download lib sources through TERMUX_PKG_SRCURL Use .zip for lib since the downloaded archives are otherwise both named $TERMUX_PKG_VERSION.tar.gz and replace each other. This causes caching to not work.
89 lines
3.2 KiB
Bash
Executable File
89 lines
3.2 KiB
Bash
Executable File
TERMUX_PKG_HOMEPAGE=http://invisible-island.net/ncurses/
|
|
TERMUX_PKG_DESCRIPTION="Library for text-based user interfaces in a terminal-independent manner"
|
|
TERMUX_PKG_VERSION=(6.1.20180512
|
|
9.22)
|
|
TERMUX_PKG_SHA256=(a0c7b776702f504200f2beb78c6f798532a8c345506aa634a57e67094316610d
|
|
e94628e9bcfa0adb1115d83649f898d6edb4baced44f5d5b769c2eeb8b95addd)
|
|
TERMUX_PKG_SRCURL=(https://dl.bintray.com/termux/upstream/ncurses-${TERMUX_PKG_VERSION:0:3}-${TERMUX_PKG_VERSION:4}.tgz
|
|
https://fossies.org/linux/misc/rxvt-unicode-${TERMUX_PKG_VERSION[1]}.tar.bz2)
|
|
# --without-normal disables static libraries:
|
|
# --disable-stripping to disable -s argument to install which does not work when cross compiling:
|
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
|
|
ac_cv_header_locale_h=no
|
|
--disable-stripping
|
|
--enable-const
|
|
--enable-ext-colors
|
|
--enable-ext-mouse
|
|
--enable-overwrite
|
|
--enable-pc-files
|
|
--enable-widec
|
|
--mandir=$TERMUX_PREFIX/share/man
|
|
--without-ada
|
|
--without-cxx-binding
|
|
--without-debug
|
|
--without-normal
|
|
--without-static
|
|
--without-tests
|
|
--with-shared
|
|
"
|
|
TERMUX_PKG_INCLUDE_IN_DEVPACKAGE="
|
|
share/man/man1/ncursesw6-config.1*
|
|
bin/ncursesw6-config
|
|
"
|
|
TERMUX_PKG_RM_AFTER_INSTALL="
|
|
bin/captoinfo
|
|
bin/infotocap
|
|
share/man/man1/captoinfo.1*
|
|
share/man/man1/infotocap.1*
|
|
share/man/man5
|
|
share/man/man7
|
|
"
|
|
|
|
termux_step_pre_configure() {
|
|
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --with-pkg-config-libdir=$PKG_CONFIG_LIBDIR"
|
|
}
|
|
|
|
termux_step_post_make_install () {
|
|
cd $TERMUX_PREFIX/lib
|
|
# we need the rm as we create(d) symlinks for the versioned so as well
|
|
for lib in form menu ncurses panel; do
|
|
rm -f lib${lib}.so*
|
|
for file in lib${lib}w.so*; do
|
|
ln -s $file ${file/w./.}
|
|
done
|
|
(cd pkgconfig; ln -sf ${lib}w.pc $lib.pc)
|
|
done
|
|
# some packages want libcurses while building/compiling
|
|
rm -f libcurses.so*
|
|
for file in libncurses.so*; do
|
|
ln -s $file ${file/libn/lib}
|
|
done
|
|
|
|
# Some packages want these:
|
|
cd $TERMUX_PREFIX/include/
|
|
rm -Rf ncurses{,w}
|
|
mkdir ncurses{,w}
|
|
ln -s ../{ncurses.h,termcap.h,panel.h,unctrl.h,menu.h,form.h,tic.h,nc_tparm.h,term.h,eti.h,term_entry.h,ncurses_dll.h,curses.h} ncurses
|
|
ln -s ../{ncurses.h,termcap.h,panel.h,unctrl.h,menu.h,form.h,tic.h,nc_tparm.h,term.h,eti.h,term_entry.h,ncurses_dll.h,curses.h} ncursesw
|
|
}
|
|
|
|
termux_step_post_massage () {
|
|
# Strip away 30 years of cruft to decrease size.
|
|
local TI=$TERMUX_PKG_MASSAGEDIR/$TERMUX_PREFIX/share/terminfo
|
|
mv $TI $TERMUX_PKG_TMPDIR/full-terminfo
|
|
mkdir -p $TI/{a,d,e,n,l,p,r,s,t,v,x}
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/a/ansi $TI/a/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/d/{dtterm,dumb} $TI/d/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/e/eterm-color $TI/e/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/n/nsterm $TI/n/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/l/linux $TI/l/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/p/putty{,-256color} $TI/p/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/r/rxvt{,-256color} $TI/r/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/s/screen{,2,-256color} $TI/s/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/t/tmux{,-256color} $TI/t/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/v/{vt52,vt100,vt102} $TI/v/
|
|
cp $TERMUX_PKG_TMPDIR/full-terminfo/x/xterm{,-color,-new,-16color,-256color,+256color} $TI/x/
|
|
|
|
tic -x -o $TI $TERMUX_PKG_SRCDIR/rxvt-unicode-${TERMUX_PKG_VERSION[1]}/doc/etc/rxvt-unicode.terminfo
|
|
}
|