blob: 024b137606b3bdcca81ff4ddd6ffe281c8d6e872 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
# $Id$
# Maintainer: Christian Hesse <mail@eworm.de>
# Maintainer: Dan McGee <dan@archlinux.org>
pkgname=git
pkgver=2.16.2
pkgrel=1
pkgdesc="the fast distributed version control system"
arch=(x86_64)
url="http://git-scm.com/"
license=('GPL2')
depends=('curl' 'expat>=2.0' 'perl-error' 'perl>=5.14.0' 'openssl' 'pcre2'
'grep' 'shadow')
makedepends=('python2' 'emacs' 'libgnome-keyring' 'xmlto' 'asciidoc')
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'
'perl-mediawiki-api: git mediawiki support'
'perl-datetime-format-iso8601: git mediawiki support'
'perl-lwp-protocol-https: git mediawiki https support'
'perl-cgi: gitweb (web interface) support'
'python2: various helper scripts'
'subversion: git svn'
'gnome-keyring: GNOME keyring credential helper')
replaces=('git-core')
provides=('git-core')
install=git.install
validpgpkeys=('96E07AF25771955980DAD10020D04E5A713660A7') # Junio C Hamano
source=("https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar."{xz,sign}
'git-daemon@.service'
'git-daemon.socket'
'git-sysusers.conf')
sha256sums=('5560578bd21468d98637f41515c165d32f69caff0838b8989dee5ce10022c717'
'SKIP'
'14c0b67cfe116b430645c19d8c4759419657e6809dfa28f438c33a005245ad91'
'ac4c90d62c44926e6d30d18d97767efc901076d4e0283ed812a349aece72f203'
'595794856bfa6087c33826640ae7b5447832233844f36dfedc18646d47154730')
build() {
export PYTHON_PATH='/usr/bin/python2'
cd "$srcdir/$pkgname-$pkgver"
make prefix=/usr gitexecdir=/usr/lib/git-core \
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
USE_LIBPCRE2=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
MAN_BOLD_LITERAL=1 \
all doc
make -C contrib/emacs prefix=/usr
make -C contrib/credential/gnome-keyring
make -C contrib/credential/libsecret
make -C contrib/subtree prefix=/usr gitexecdir=/usr/lib/git-core all doc
make -C contrib/mw-to-git prefix=/usr all
make -C contrib/diff-highlight prefix=/usr
}
check() {
export PYTHON_PATH='/usr/bin/python2'
cd "$srcdir/$pkgname-$pkgver"
local jobs
jobs=$(expr "$MAKEFLAGS" : '.*\(-j[0-9]*\).*') || true
mkdir -p /dev/shm/git-test
# 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 \
make prefix=/usr gitexecdir=/usr/lib/git-core \
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
USE_LIBPCRE2=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
MAN_BOLD_LITERAL=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 \
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS" \
USE_LIBPCRE2=1 \
NO_CROSS_DIRECTORY_HARDLINKS=1 \
MAN_BOLD_LITERAL=1 \
INSTALLDIRS=vendor DESTDIR="$pkgdir" install install-doc
# bash completion
mkdir -p "$pkgdir"/usr/share/bash-completion/completions/
install -m 0644 ./contrib/completion/git-completion.bash "$pkgdir"/usr/share/bash-completion/completions/git
# fancy git prompt
mkdir -p "$pkgdir"/usr/share/git/
install -m 0644 ./contrib/completion/git-prompt.sh "$pkgdir"/usr/share/git/git-prompt.sh
# emacs
make -C contrib/emacs prefix=/usr DESTDIR="$pkgdir" install
# gnome credentials helper
install -m 0755 contrib/credential/gnome-keyring/git-credential-gnome-keyring \
"$pkgdir"/usr/lib/git-core/git-credential-gnome-keyring
make -C contrib/credential/gnome-keyring clean
# libsecret credentials helper
install -m 0755 contrib/credential/libsecret/git-credential-libsecret \
"$pkgdir"/usr/lib/git-core/git-credential-libsecret
make -C contrib/credential/libsecret clean
# subtree installation
make -C contrib/subtree prefix=/usr gitexecdir=/usr/lib/git-core DESTDIR="$pkgdir" install install-doc
# mediawiki installation
make -C contrib/mw-to-git prefix=/usr gitexecdir=/usr/lib/git-core DESTDIR="$pkgdir" install
# the rest of the contrib stuff
find contrib/ -name '.gitignore' -delete
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/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
# perl modules from contrib/ install to site dir... move to vendor
mv "$pkgdir"/usr/share/perl5/site_perl/Git/* "$pkgdir"/usr/share/perl5/vendor_perl/Git/
rm -rf "$pkgdir"/usr/share/perl5/site_perl
# remove perllocal.pod, .packlist, and empty directories.
rm -rf "$pkgdir"/usr/lib/perl5
# 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
# sysusers file
install -D -m 0644 "$srcdir"/git-sysusers.conf "$pkgdir"/usr/lib/sysusers.d/git.conf
}
|