X-Git-Url: https://git.distorted.org.uk/~mdw/termux-packages/blobdiff_plain/7466509fd2147a3a63682a2dfe8a3a0dafa319c1..41c3c03a0158264ddc1140120a7fca972f774c0a:/packages/git/build.sh diff --git a/packages/git/build.sh b/packages/git/build.sh index 6e3226d5..7873abae 100755 --- a/packages/git/build.sh +++ b/packages/git/build.sh @@ -1,26 +1,69 @@ -TERMUX_PKG_HOMEPAGE=http://git-scm.com/ +TERMUX_PKG_HOMEPAGE=https://git-scm.com/ TERMUX_PKG_DESCRIPTION="Distributed version control system designed to handle everything from small to very large projects with speed and efficiency" -# less is required as a pager for git log, -# and the busybox less does not handle used -# escape sequences: -TERMUX_PKG_DEPENDS="openssl, libcurl, less" -TERMUX_PKG_VERSION=2.6.3 -TERMUX_PKG_BUILD_REVISION=1 +# less is required as a pager for git log, and the busybox less does not handle used escape sequences. +TERMUX_PKG_DEPENDS="libcurl, less" +TERMUX_PKG_VERSION=2.11.1 TERMUX_PKG_SRCURL=https://www.kernel.org/pub/software/scm/git/git-${TERMUX_PKG_VERSION}.tar.xz -## This requires a /system/bin/sh on the host building: -TERMUX_PKG_EXTRA_CONFIGURE_ARGS="--without-tcltk --with-curl --with-shell=/system/bin/sh ac_cv_header_libintl_h=no ac_cv_fread_reads_directories=yes ac_cv_snprintf_returns_bogus=yes" +TERMUX_PKG_SHA256=c0a779cae325d48a1d5ba08b6ee1febcc31d0657a6da01fd1dec1c6e10976415 +## This requires a working $TERMUX_PREFIX/bin/sh on the host building: +TERMUX_PKG_EXTRA_CONFIGURE_ARGS=" +ac_cv_fread_reads_directories=yes +ac_cv_header_libintl_h=no +ac_cv_snprintf_returns_bogus=no +--with-curl +--without-tcltk +--with-shell=$TERMUX_PREFIX/bin/sh +" # expat is only used by git-http-push for remote lock management over DAV, so disable: # NO_INSTALL_HARDLINKS to use symlinks instead of hardlinks (which does not work on Android M): -TERMUX_PKG_EXTRA_MAKE_ARGS="NO_NSEC=1 NO_PERL=1 NO_GETTEXT=1 NO_EXPAT=1 NO_INSTALL_HARDLINKS=1 PERL_PATH=$TERMUX_PREFIX/bin/perl" +TERMUX_PKG_EXTRA_MAKE_ARGS="NO_NSEC=1 NO_GETTEXT=1 NO_EXPAT=1 NO_INSTALL_HARDLINKS=1 PERL_PATH=$TERMUX_PREFIX/bin/perl" TERMUX_PKG_BUILD_IN_SRC="yes" # Things to remove to save space: # bin/git-cvsserver - server emulating CVS # bin/git-shell - restricted login shell for Git-only SSH access -# lib/perl5 - perl scripts -TERMUX_PKG_RM_AFTER_INSTALL="bin/git-cvsserver bin/git-shell lib/perl5 Library" +TERMUX_PKG_RM_AFTER_INSTALL=" +bin/git-cvsserver +bin/git-shell +libexec/git-core/git-shell +libexec/git-core/git-cvsserver +share/man/man1/git-cvsserver.1 +share/man/man1/git-shell.1 +" + +termux_step_pre_configure () { + # Setup perl so that the build process can execute it: + rm -f $TERMUX_PREFIX/bin/perl + ln -s `which perl` $TERMUX_PREFIX/bin/perl + + # Force fresh perl files (otherwise files from earlier builds + # remains without bumped modification times, so are not picked + # up by the package): + rm -Rf $TERMUX_PREFIX/share/git-perl +} termux_step_post_make_install () { # Installing man requires asciidoc and xmlto, so git uses separate make targets for man pages make install-man + + mkdir -p $TERMUX_PREFIX/etc/bash_completion.d/ + cp $TERMUX_PKG_SRCDIR/contrib/completion/git-completion.bash \ + $TERMUX_PREFIX/etc/bash_completion.d/ + + # Remove the build machine perl setup in termux_step_pre_configure to avoid it being packaged: + rm $TERMUX_PREFIX/bin/perl + + # Remove clutter: + rm -Rf $TERMUX_PREFIX/lib/*-linux*/perl + + # Remove duplicated binaries in bin/ with symlink to the one in libexec/git-core: + (cd $TERMUX_PREFIX/bin; ln -s -f ../libexec/git-core/git git) + (cd $TERMUX_PREFIX/bin; ln -s -f ../libexec/git-core/git-upload-pack git-upload-pack) +} + +termux_step_post_massage () { + if [ ! -f libexec/git-core/git-remote-https ]; then + echo "ERROR: Built without https support" + exit 1 + fi }