diff options
Diffstat (limited to 'testing/git')
-rw-r--r-- | testing/git/ChangeLog | 57 | ||||
-rw-r--r-- | testing/git/PKGBUILD | 115 | ||||
-rw-r--r-- | testing/git/git-daemon | 70 | ||||
-rw-r--r-- | testing/git/git-daemon.conf | 5 | ||||
-rw-r--r-- | testing/git/git-daemon.socket | 10 | ||||
-rw-r--r-- | testing/git/git-daemon@.service | 11 | ||||
-rw-r--r-- | testing/git/git.install | 22 |
7 files changed, 290 insertions, 0 deletions
diff --git a/testing/git/ChangeLog b/testing/git/ChangeLog new file mode 100644 index 000000000..f0c15233e --- /dev/null +++ b/testing/git/ChangeLog @@ -0,0 +1,57 @@ +Simple version bumps are omitted from the following ChangeLog. + +2011-08-16 Dan McGee <dan@archlinux.org> + Version 1.7.6.1-1 + * Enable USE_LIBPCRE for `git grep -P` usage + +2011-05-05 Dan McGee <dan@archlinux.org> + Version 1.7.5.1-1 + * Byte compile emacs files (FS#20874) + * Respect CFLAGS/LDFLAGS (FS#23963) + +2011-04-27 Dan McGee <dan@archlinux.org> + Version 1.7.5-1 + * Add missing optdepends for git send-email (FS#20923) + +2011-01-05 Dan McGee <dan@archlinux.org> + Version 1.7.3.5-1 + * More flexible git-daemon RC scripts (FS#20575) + +2010-10-01 Allan McRae <allan@archlinux.org> + Version 1.7.3.1-2 + * Python 2/3 rebuild + +2010-06-29 Dan McGee <dan@archlinux.org> + Version 1.7.1.1-1 + * Add emacs completion files (FS#17968) + * Add git-daemon RC scripts (FS#19291) + +2009-06-05 Dan McGee <dan@archlinux.org> + Version 1.6.3.2-1 + * Remove gitweb from /usr/share; it needs customization to be helpful + * Add NO_CROSS_DIRECTORY_HARDLINKS option to build (FS#13683) + +2008-09-14 Dan McGee <dan@archlinux.org> + Version 1.6.0.2-1 + * Moved optional depends from install file to optdepends array + +2008-06-15 Dan McGee <dan@archlinux.org> + Version 1.5.6-1 + * Removed 'cpio' dependency, clone is now a builtin and no longer needs it + +2008-02-02 Dan McGee <dan@archlinux.org> + Version 1.5.4-1 + * Upstream version 1.5.4 + * Enable pthreads support in pack-objects. To use, set the pack.threads + git config option. Read manpages of pack-objects and config for more + details. + * Changelog added (with entries going back a bit). + +2008-01-28 Kevin Piche <kevin@archlinux.org> + Version 1.5.3.7-2 + * Updated for new perl policy (vendor dirs) + * Change license to GPL2 + +2007-11-01 Eric Belanger <eric@archlinux.org> + Version 1.5.3.5-2 + * Fix Perl module location diff --git a/testing/git/PKGBUILD b/testing/git/PKGBUILD new file mode 100644 index 000000000..bc0f8c8df --- /dev/null +++ b/testing/git/PKGBUILD @@ -0,0 +1,115 @@ +# $Id: PKGBUILD 165368 2012-08-16 14:45:26Z dan $ +# Maintainer: Dan McGee <dan@archlinux.org> + +pkgname=git +pkgver=1.7.11.5 +pkgrel=2 +pkgdesc="the fast distributed version control system" +arch=(i686 x86_64) +url="http://git-scm.com/" +license=('GPL2') +depends=('curl' 'expat>=2.0' 'perl-error' 'perl>=5.14.0' 'openssl' 'pcre') +makedepends=('python2' 'emacs') +optdepends=('tk: gitk and git gui' + 'perl-libwww: git svn' + 'perl-term-readkey: git svn' + 'perl-mime-tools: git send-email' + 'perl-net-smtp-ssl: git send-email TLS support' + 'perl-authen-sasl: 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 + git-daemon.conf + git-daemon@.service + git-daemon.socket) +changelog=ChangeLog + +build() { + export PYTHON_PATH='/usr/bin/python2' + cd "$srcdir/$pkgname-$pkgver" + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + 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 + jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + 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/" \ + test +} + +package() { + export PYTHON_PATH='/usr/bin/python2' + cd "$srcdir/$pkgname-$pkgver" + make prefix=/usr gitexecdir=/usr/lib/git-core \ + CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \ + USE_LIBPCRE=1 \ + NO_CROSS_DIRECTORY_HARDLINKS=1 \ + INSTALLDIRS=vendor DESTDIR="$pkgdir" install + + # bash completion + # until this is fixed, no point in loading it dynamically: + # http://git.661346.n2.nabble.com/bash-completion-now-loads-completions-dynamically-so-git-ps1-is-not-defined-when-you-open-a-shell-td7415323.html + #mkdir -p "$pkgdir"/usr/share/bash-completion/completions/ + #install -m644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git + mkdir -p "$pkgdir"/etc/bash_completion.d/ + install -m644 ./contrib/completion/git-completion.bash "$pkgdir"/etc/bash_completion.d/git + # more contrib stuff + cp -a ./contrib $pkgdir/usr/share/git/ + # scripts are for python 2.x + sed -i 's|#![ ]*/usr/bin/env python|#!/usr/bin/env python2|' \ + $(find "$pkgdir" -name '*.py') \ + "$pkgdir"/usr/lib/git-core/git-p4 \ + "$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 -m755 "$srcdir"/git-daemon "$pkgdir"/etc/rc.d/git-daemon + install -D -m644 "$srcdir"/git-daemon.conf "$pkgdir"/etc/conf.d/git-daemon.conf + + # systemd stuff + install -D -m 644 "$srcdir"/git-daemon@.service "$pkgdir"/usr/lib/systemd/system/git-daemon@.service + install -D -m 644 "$srcdir"/git-daemon.socket "$pkgdir"/usr/lib/systemd/system/git-daemon.socket +} + +md5sums=('9985d35c11531d546426ebefb327c847' + 'f08a5a60e57f00399bbd384cfd7791f3' + '8e2648910fd5dd4f1c41d3c7fa9e9156' + '2e42bf97779a1c6411d89043334c9e78' + '198ef9d9e79bd8d5868f95ed9f79cc34' + '779c00deb490291c6b477b8cc0161123') diff --git a/testing/git/git-daemon b/testing/git/git-daemon new file mode 100644 index 000000000..21ba73ed5 --- /dev/null +++ b/testing/git/git-daemon @@ -0,0 +1,70 @@ +#!/bin/bash + +daemon_bin="/usr/lib/git-core/git-daemon" +daemon_name=$(basename $daemon_bin) +PIDF="/var/run/$daemon_name.pid" + +. /etc/rc.conf +. /etc/rc.d/functions +. /etc/conf.d/$daemon_name.conf + +get_pid() { + pidof -o %PPID $daemon_name +} + +case "$1" in + start) + stat_busy "Starting $daemon_name daemon" + + PID=$(get_pid) + if [ -z "$PID" ]; then + [ -f $PIDF ] && rm -f $PIDF + # RUN + $daemon_bin --pid-file=$PIDF $GIT_DAEMON_ARGS + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + echo $(get_pid) > $PIDF + add_daemon $daemon_name + stat_done + fi + else + stat_fail + exit 1 + fi + ;; + + stop) + stat_busy "Stopping $daemon_name daemon" + PID=$(get_pid) + # KILL + [ ! -z "$PID" ] && kill $PID &> /dev/null + # + if [ $? -gt 0 ]; then + stat_fail + exit 1 + else + rm -f $PIDF &> /dev/null + rm_daemon $daemon_name + stat_done + fi + ;; + + restart) + $0 stop + sleep 3 + $0 start + ;; + + status) + stat_busy "Checking $daemon_name status"; + ck_status $daemon_name + ;; + + *) + echo "usage: $0 {start|stop|restart|status}" +esac + +exit 0 diff --git a/testing/git/git-daemon.conf b/testing/git/git-daemon.conf new file mode 100644 index 000000000..3f9a12060 --- /dev/null +++ b/testing/git/git-daemon.conf @@ -0,0 +1,5 @@ +# path to git repositories served +GIT_REPO="/srv/git/" +# see `man git-daemon` for all available options +# $GIT_REPO will be present twice in most configs +GIT_DAEMON_ARGS="--detach --syslog --verbose --base-path=$GIT_REPO $GIT_REPO" diff --git a/testing/git/git-daemon.socket b/testing/git/git-daemon.socket new file mode 100644 index 000000000..c84740588 --- /dev/null +++ b/testing/git/git-daemon.socket @@ -0,0 +1,10 @@ +[Unit] +Description=Git Daemon Socket +After=network.target + +[Socket] +ListenStream=9418 +Accept=true + +[Install] +WantedBy=sockets.target diff --git a/testing/git/git-daemon@.service b/testing/git/git-daemon@.service new file mode 100644 index 000000000..67d4cfa9c --- /dev/null +++ b/testing/git/git-daemon@.service @@ -0,0 +1,11 @@ +[Unit] +Description=Git Daemon Instance +After=network.target + +[Service] +User=git +# The '-' is to ignore non-zero exit statuses +ExecStart=-/usr/lib/git-core/git-daemon --inetd --export-all --base-path=/srv/git +StandardInput=socket +StandardOutput=inherit +StandardError=journal diff --git a/testing/git/git.install b/testing/git/git.install new file mode 100644 index 000000000..9edc065ba --- /dev/null +++ b/testing/git/git.install @@ -0,0 +1,22 @@ +post_install() { + if ! getent group git >/dev/null; then + groupadd --system git + fi + if ! getent passwd git >/dev/null; then + useradd --system -c 'git daemon user' -g git -d / -s /bin/bash git + passwd -l git >/dev/null + fi +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + if getent passwd git >/dev/null; then + userdel git + fi + if getent group git >/dev/null; then + groupdel git + fi +} |