2010-06-15 07:01:50 +08:00
pkgname = git
2018-05-30 06:37:10 +08:00
pkgver = 2.17.1
2013-07-20 07:30:38 +08:00
pkgrel = 1
2012-11-23 12:47:22 +08:00
pkgdesc = "Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency."
2012-12-15 09:22:06 +08:00
arch = ( 'x86_64' )
2017-09-27 21:23:01 +08:00
url = "https://git-scm.com/"
2010-06-15 07:01:50 +08:00
license = ( 'GPL2' )
2018-05-30 06:37:10 +08:00
depends = ( 'curl' 'expat>=2.0' 'perl-error' 'perl' 'openssl' 'pcre2' 'perl-mailtools' 'shadow' 'grep' )
2017-09-27 21:23:01 +08:00
makedepends = ( 'python2' 'emacs' 'asciidoc' 'xmlto' 'asciidoc' )
2011-07-25 04:38:45 +08:00
optdepends = ( 'tk: gitk and git gui'
'perl-libwww: git svn'
2010-06-15 07:01:50 +08:00
'perl-term-readkey: git svn'
2010-12-12 08:35:24 +08:00
'perl-net-smtp-ssl: git send-email TLS support'
'python2: various helper scripts'
2014-12-24 19:43:34 +08:00
'subversion: git svn' )
2012-11-23 12:47:22 +08:00
install = "git.install"
2016-09-10 16:35:47 +08:00
source = ( " https://www.kernel.org/pub/software/scm/git/git- $pkgver .tar " { .xz,.sign}
2018-05-30 06:37:10 +08:00
'0001-perl-fix-installing-modules-from-contrib.patch'
'git-daemon@.service'
'git-daemon.socket'
'git-sysusers.conf' )
sha256sums = ( '79136e7aa83abae4d8a25c8111f113d3c5a63aeb5fd93cc72c26d49c6d5ba65e'
'SKIP'
'c105015d2e5e4e671cb766edf4169e853021b07296e6d449b3209b4de7848afc'
'3bc3250d9e04b05c41975c01f85f512d3386d60b41475cbc7292bc88148852f6'
'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203'
'7630e8245526ad80f703fac9900a1328588c503ce32b37b9f8811674fcda4a45' )
2016-09-10 16:35:47 +08:00
validpgpkeys = ( '96E07AF25771955980DAD10020D04E5A713660A7' ) # Junio C Hamano
2010-06-15 07:01:50 +08:00
2018-05-30 06:37:10 +08:00
make_paths = (
prefix = '/usr'
gitexecdir = '/usr/lib/git-core'
perllibdir = " $( /usr/bin/perl -MConfig -wle 'print $Config{installvendorlib}' ) "
)
make_options = (
CFLAGS = " $CFLAGS "
LDFLAGS = " $LDFLAGS "
USE_LIBPCRE2 = 1
NO_CROSS_DIRECTORY_HARDLINKS = 1
NO_PERL_CPAN_FALLBACKS = 1
MAN_BOLD_LITERAL = 1
)
2010-06-15 07:01:50 +08:00
build( ) {
2010-12-12 08:35:24 +08:00
export PYTHON_PATH = '/usr/bin/python2'
2012-11-23 12:47:22 +08:00
cd " ${ srcdir } / ${ pkgname } - ${ pkgver } "
2018-05-30 06:37:10 +08:00
# perl: fix installing modules from contrib
patch -Np1 < ../0001-perl-fix-installing-modules-from-contrib.patch
make \
" ${ make_paths [@] } " \
" ${ make_options [@] } " \
2014-04-18 23:51:11 +08:00
all doc
2012-09-10 04:34:56 +08:00
2014-04-18 23:51:11 +08:00
make -C contrib/emacs prefix = /usr
2014-12-24 19:43:34 +08:00
make -C contrib/subtree prefix = /usr gitexecdir = /usr/lib/git-core all doc
2012-09-10 04:34:56 +08:00
}
check( ) {
export PYTHON_PATH = '/usr/bin/python2'
2014-07-23 06:22:56 +08:00
cd " $srcdir / $pkgname - $pkgver "
local jobs
2014-12-24 19:43:34 +08:00
jobs = $( expr " $MAKEFLAGS " : '.*\(-j[0-9]*\).*' ) || true
2012-09-10 04:34:56 +08:00
mkdir -p /dev/shm/git-test
2017-09-27 21:23:01 +08:00
# explicitly specify SHELL to avoid a test failure in t/t9903-bash-prompt.sh
# which is caused by 'git rebase' trying to use builduser's SHELL inside the
# build chroot (i.e.: /usr/bin/nologin)
SHELL = /bin/sh \
2018-05-30 06:37:10 +08:00
make \
" ${ make_paths [@] } " \
" ${ make_options [@] } " \
2014-07-23 06:22:56 +08:00
NO_SVN_TESTS = y \
DEFAULT_TEST_TARGET = prove \
GIT_PROVE_OPTS = " $jobs -Q " \
GIT_TEST_OPTS = "--root=/dev/shm/git-test" \
test
2010-06-15 07:01:50 +08:00
}
package( ) {
2010-12-12 08:35:24 +08:00
export PYTHON_PATH = '/usr/bin/python2'
2012-11-23 12:47:22 +08:00
cd " ${ srcdir } / ${ pkgname } - ${ pkgver } "
2018-05-30 06:37:10 +08:00
make \
" ${ make_paths [@] } " \
" ${ make_options [@] } " \
DESTDIR = " $pkgdir " \
install install-doc
2010-12-12 08:35:24 +08:00
2010-06-15 07:01:50 +08:00
# bash completion
2012-11-23 12:47:22 +08:00
mkdir -p " ${ pkgdir } /usr/share/bash-completion/completions/ "
install -m644 ./contrib/completion/git-completion.bash " ${ pkgdir } /usr/share/bash-completion/completions/git "
2012-09-10 04:34:56 +08:00
# fancy git prompt
2012-11-23 12:47:22 +08:00
mkdir -p " ${ pkgdir } /usr/share/git/ "
install -m644 ./contrib/completion/git-prompt.sh " ${ pkgdir } /usr/share/git/git-prompt.sh "
2018-05-30 06:37:10 +08:00
# emacs
2014-04-18 23:51:11 +08:00
make -C contrib/emacs prefix = /usr DESTDIR = " $pkgdir " install
2014-07-23 06:22:56 +08:00
# subtree installation
2014-12-24 19:43:34 +08:00
make -C contrib/subtree prefix = /usr gitexecdir = /usr/lib/git-core DESTDIR = " $pkgdir " install install-doc
# the rest of the contrib stuff
cp -a ./contrib/* $pkgdir /usr/share/git/
2012-11-24 01:56:54 +08:00
2010-12-12 08:35:24 +08:00
# scripts are for python 2.x
2014-12-24 19:43:34 +08:00
sed -i 's|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|' \
$( find " $pkgdir " -name '*.py' ) \
" $pkgdir " /usr/share/git/remote-helpers/git-remote-bzr \
" $pkgdir " /usr/share/git/remote-helpers/git-remote-hg
sed -i 's|#![ ]*/usr/bin/python$|#!/usr/bin/python2|' \
" $pkgdir " /usr/share/git/svn-fe/svnrdump_sim.py
2010-12-12 08:35:24 +08:00
2018-05-30 06:37:10 +08:00
# git-daemon via systemd socket activation
install -D -m 0644 " $srcdir " /git-daemon@.service " $pkgdir " /usr/lib/systemd/system/git-daemon@.service
install -D -m 0644 " $srcdir " /git-daemon.socket " $pkgdir " /usr/lib/systemd/system/git-daemon.socket
2010-12-12 08:35:24 +08:00
2018-05-30 06:37:10 +08:00
# sysusers file
install -D -m 0644 " $srcdir " /git-sysusers.conf " $pkgdir " /usr/lib/sysusers.d/git.conf
2012-09-10 04:34:56 +08:00
}