core/git/PKGBUILD
2012-12-15 01:22:06 +00:00

116 lines
3.8 KiB
Bash

#
# Core Packages for Chakra, part of chakra-project.org
#
# maintainer abveritas[at]chakra-project[dot]org>
pkgname=git
pkgver=1.8.0.2
pkgrel=2
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."
arch=('x86_64')
url="http://git-scm.com/"
license=('GPL2')
depends=('curl' 'expat>=2.0' 'perl-error' 'perl' 'pcre')
makedepends=('python2' 'emacs')
optdepends=('tk: gitk and git gui'
'perl-libwww: git svn'
'perl-term-readkey: git svn'
'perl-net-smtp-ssl: git send-email TLS support'
'python2: various helper scripts'
'subversion: git svn'
'cvsps: git cvsimport')
replaces=('git-core')
provides=('git-core')
backup=('etc/conf.d/git-daemon.conf')
install="git.install"
source=("http://git-core.googlecode.com/files/git-${pkgver}.tar.gz"
"http://git-core.googlecode.com/files/git-manpages-${pkgver}.tar.gz"
'git-daemon.conf'
'git-daemon@.service'
'git-daemon.socket')
md5sums=('1aca109d4a719fe5bc43d25927fbc7d9'
'ab83283a5b3c73ab711a9f02896ca12e'
'2e42bf97779a1c6411d89043334c9e78'
'042524f942785772d7bd52a1f02fe5ae'
'f67869315c2cc112e076f0c73f248002')
build() {
export PYTHON_PATH='/usr/bin/python2'
cd "${srcdir}/${pkgname}-${pkgver}"
make prefix=/usr gitexecdir=/usr/lib/git-core \
USE_LIBPCRE=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
all
cd contrib/emacs
make prefix=/usr
}
check() {
export PYTHON_PATH='/usr/bin/python2'
cd "${srcdir}/${pkgname}-${pkgver}"
local jobs="$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*')"
mkdir -p /dev/shm/git-test
# We used to use this, but silly git regressions:
#GIT_TEST_OPTS="--root=/dev/shm/" \
# http://comments.gmane.org/gmane.comp.version-control.git/202020
make prefix=/usr gitexecdir=/usr/lib/git-core \
USE_LIBPCRE=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
NO_SVN_TESTS=y \
DEFAULT_TEST_TARGET=prove \
GIT_PROVE_OPTS="${jobs} -Q" \
GIT_TEST_OPTS="--root=/dev/shm/git-test" \
test
}
package() {
export PYTHON_PATH='/usr/bin/python2'
cd "${srcdir}/${pkgname}-${pkgver}"
make prefix=/usr gitexecdir=/usr/lib/git-core \
USE_LIBPCRE=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
INSTALLDIRS=vendor DESTDIR="${pkgdir}" install
# bash completion
mkdir -p "${pkgdir}/usr/share/bash-completion/completions/"
install -m644 ./contrib/completion/git-completion.bash "${pkgdir}/usr/share/bash-completion/completions/git"
# fancy git prompt
mkdir -p "${pkgdir}/usr/share/git/"
install -m644 ./contrib/completion/git-prompt.sh "${pkgdir}/usr/share/git/git-prompt.sh"
# more contrib stuff
cp -a ./contrib/* "${pkgdir}/usr/share/git/"
# scripts are for python 2.x
find "${pkgdir}" -name '*.py' \
-exec sed -e 's|#![ ]*/usr/bin/env python|#!/usr/bin/env python2|' -i \{\} \+
sed -e 's|#![ ]*/usr/bin/env python|#!/usr/bin/env python2|' \
-i "${pkgdir}/usr/lib/git-core/git-p4" \
-i "${pkgdir}/usr/share/git/gitview/gitview"
# emacs interface
cd contrib/emacs
make prefix=/usr DESTDIR="${pkgdir}" install
# how 'bout some manpages?
for mansect in man1 man5 man7; do
for manpage in "${srcdir}/${mansect}"/*; do
install -D -m644 "${manpage}" "${pkgdir}/usr/share/man/${mansect}/$(basename ${manpage})"
done
done
# remove perllocal.pod, .packlist, and empty directories.
rm -rf "${pkgdir}/usr/lib/perl5"
# git daemon script
install -D -m644 "${srcdir}/git-daemon.conf" "${pkgdir}/etc/conf.d/git-daemon.conf"
# systemd stuff
install -D -m644 "${srcdir}/git-daemon@.service" "${pkgdir}/usr/lib/systemd/system/git-daemon@.service"
install -D -m644 "${srcdir}/git-daemon.socket" "${pkgdir}/usr/lib/systemd/system/git-daemon.socket"
}
# vim:set ts=2 sw=2 et: