summaryrefslogtreecommitdiff
path: root/testing/git
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-08-18 00:02:28 +0000
committerroot <root@rshg054.dnsready.net>2012-08-18 00:02:28 +0000
commit948da5eabcbf8d74270e661d0730ba1c203913f5 (patch)
tree8536fd0b4622f9f6c77cb4716bf5c315c457038a /testing/git
parentbbf2c63849bdf1654e767058f277da2e983c5f0b (diff)
Sat Aug 18 00:02:28 UTC 2012
Diffstat (limited to 'testing/git')
-rw-r--r--testing/git/ChangeLog57
-rw-r--r--testing/git/PKGBUILD115
-rw-r--r--testing/git/git-daemon70
-rw-r--r--testing/git/git-daemon.conf5
-rw-r--r--testing/git/git-daemon.socket10
-rw-r--r--testing/git/git-daemon@.service11
-rw-r--r--testing/git/git.install22
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
+}