mc: multple fixes (#2367)
[termux-packages] / packages / ncurses / build.sh
index e18f907..f709dca 100755 (executable)
@@ -1,58 +1,70 @@
 TERMUX_PKG_HOMEPAGE=http://invisible-island.net/ncurses/
 TERMUX_PKG_DESCRIPTION="Library for text-based user interfaces in a terminal-independent manner"
-_MAJOR_VERSION=6.0
-# This is the patch number used for fetching a patch from ftp://invisible-island.net/ncurses/6.0/
-# in termux_step_post_extract_package below:
-_MINOR_VERSION=20160423
-TERMUX_PKG_VERSION=${_MAJOR_VERSION}.${_MINOR_VERSION}
-TERMUX_PKG_SRCURL=http://ftp.gnu.org/pub/gnu/ncurses/ncurses-${_MAJOR_VERSION}.tar.gz
+TERMUX_PKG_VERSION=6.1.20180331
+TERMUX_PKG_REVISION=1
+TERMUX_PKG_SHA256=031337b0f1b7a2b4a0752deb4dde78f5c21a6dd1c3880e2a8da15796767169b7
+TERMUX_PKG_SRCURL=https://dl.bintray.com/termux/upstream/ncurses-${TERMUX_PKG_VERSION:0:3}-${TERMUX_PKG_VERSION:4}.tgz
 # --without-normal disables static libraries:
-TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--enable-overwrite --enable-const --without-cxx-binding --without-normal --without-static --with-shared --without-debug --enable-widec --enable-ext-colors --enable-ext-mouse --enable-pc-files --with-pkg-config-libdir=$PKG_CONFIG_LIBDIR --without-ada --without-tests --mandir=$TERMUX_PREFIX/share/man ac_cv_header_locale_h=no"
-TERMUX_PKG_RM_AFTER_INSTALL="bin/ncursesw6-config share/man/man1/ncursesw6-config.1 bin/infotocap share/man/man1/infotocap.1m bin/captoinfo share/man/man1/captoinfo.1m"
+# --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_post_extract_package () {
-       cd $TERMUX_PKG_SRCDIR
-       _PATCH_FILENAME=ncurses-${_MAJOR_VERSION}-${_MINOR_VERSION}-patch.sh
-       _PATCHFILE=$TERMUX_PKG_CACHEDIR/$_PATCH_FILENAME
-       test ! -f $_PATCHFILE && curl "ftp://invisible-island.net/ncurses/${_MAJOR_VERSION}/${_PATCH_FILENAME}.bz2" | bunzip2 - > $_PATCHFILE
-       sh $_PATCHFILE
+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
        for lib in form menu ncurses panel; do
-               for file in lib${lib}w.so*; do 
+               for file in lib${lib}w.so*; do
                        ln -s -f $file `echo $file | sed 's/w//'`
                done
                (cd pkgconfig && ln -s -f ${lib}w.pc `echo $lib | sed 's/w//'`.pc)
        done
+       # some packages want libcurses while building/compiling
+       ln -sf libncurses.so libcurses.so
 
-       # Some packages wants this:
+       # Some packages want these:
        cd $TERMUX_PREFIX/include/
-       rm -Rf ncursesw
-       mkdir ncursesw
-       cd ncursesw
-       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} .
-
-       if [ `uname` = Darwin ]; then
-               cd $TERMUX_PREFIX/share/terminfo
-               for l in *; do 
-                       if [ ${#l} -eq 2 ]; then
-                               char=`echo 0x$l | awk '{printf "%c\n", $1}'`
-                               rm -Rf $char
-                               mv $l $char
-                       fi
-               done
-               cd -
-       fi
+       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 () {
-       cd $TERMUX_PKG_MASSAGEDIR
        # Strip away 30 years of cruft to decrease size.
-       local TI=./$TERMUX_PREFIX/share/terminfo
+       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,v,x}
+       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/
@@ -61,6 +73,16 @@ termux_step_post_massage () {
        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/
+
+       local RXVT_TAR=$TERMUX_PKG_CACHEDIR/rxvt-unicode-9.22.tar.bz2
+       termux_download https://fossies.org/linux/misc/rxvt-unicode-9.22.tar.bz2 \
+               $RXVT_TAR \
+               e94628e9bcfa0adb1115d83649f898d6edb4baced44f5d5b769c2eeb8b95addd
+       cd $TERMUX_PKG_TMPDIR
+       local TI_FILE=rxvt-unicode-9.22/doc/etc/rxvt-unicode.terminfo
+       tar xf $RXVT_TAR $TI_FILE
+       tic -x -o $TI $TI_FILE
 }