mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2026-02-25 01:31:34 +01:00
249 lines
7.0 KiB
Plaintext
249 lines
7.0 KiB
Plaintext
# Contributor: Łukasz Jendrysik <scadu@yandex.com>
|
|
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
|
|
pkgname=git
|
|
pkgver=2.5.2
|
|
pkgrel=0
|
|
pkgdesc="A distributed version control system"
|
|
url="https://www.git-scm.com/"
|
|
arch="all"
|
|
license="GPL2+"
|
|
depends=
|
|
replaces="git-perl"
|
|
|
|
# note that order matters
|
|
subpackages="$pkgname-doc
|
|
$pkgname-bash-completion:completion
|
|
perl-$pkgname-svn:_perl_git_svn
|
|
perl-$pkgname:_perl_git
|
|
$pkgname-svn
|
|
$pkgname-email
|
|
$pkgname-cvs
|
|
$pkgname-p4
|
|
$pkgname-daemon
|
|
$pkgname-gitweb
|
|
$pkgname-subtree
|
|
$pkgname-subtree-doc:subtree_doc
|
|
$pkgname-perl:_git_perl
|
|
$pkgname-gui
|
|
$pkgname-gitk
|
|
"
|
|
# we need tcl and tk to be built before git due to git-gui and gitk
|
|
makedepends="zlib-dev openssl-dev curl-dev expat-dev perl-dev python-dev
|
|
pcre-dev asciidoc xmlto perl-error tcl tk"
|
|
source="git-$pkgver.tar.xz::https://www.kernel.org/pub/software/scm/git/git-$pkgver.tar.xz
|
|
bb-tar.patch
|
|
git-daemon.initd
|
|
git-daemon.confd
|
|
"
|
|
|
|
_makeopts="
|
|
NO_GETTEXT=YesPlease
|
|
NO_NSEC=YesPlease
|
|
NO_SVN_TESTS=YesPlease
|
|
USE_LIBPCRE=1"
|
|
|
|
_gitcoredir=/usr/libexec/git-core
|
|
|
|
prepare() {
|
|
cd "$srcdir"/$pkgname-$pkgver
|
|
for i in $source; do
|
|
case $i in
|
|
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
|
|
esac
|
|
done
|
|
}
|
|
|
|
build() {
|
|
cd "$srcdir"/$pkgname-$pkgver
|
|
make prefix=/usr DESTDIR="$pkgdir" $_makeopts || return 1
|
|
}
|
|
|
|
package() {
|
|
cd "$srcdir"/$pkgname-$pkgver
|
|
make prefix=/usr \
|
|
DESTDIR="$pkgdir" \
|
|
INSTALLDIRS=vendor \
|
|
$_makeopts install || return 1
|
|
mkdir -p "$pkgdir"/var/git
|
|
install -Dm755 "$srcdir"/git-daemon.initd \
|
|
"$pkgdir"/etc/init.d/git-daemon || return 1
|
|
install -Dm644 "$srcdir"/git-daemon.confd \
|
|
"$pkgdir"/etc/conf.d/git-daemon || return 1
|
|
|
|
make prefix=/usr DESTDIR="$pkgdir" install-man || return 1
|
|
}
|
|
|
|
_perl_git_svn() {
|
|
pkgdesc="Perl interface to Git::SVN"
|
|
depends="git=$pkgver-r$pkgrel"
|
|
arch="noarch"
|
|
replaces="git-perl"
|
|
eval local `perl -V:vendorlib`
|
|
mkdir -p "$subpkgdir"/$vendorlib/Git
|
|
mv "$pkgdir"/$vendorlib/Git/SVN* "$subpkgdir"/$vendorlib/Git/
|
|
}
|
|
|
|
_perl_git() {
|
|
pkgdesc="Perl interface to Git"
|
|
depends="git=$pkgver-r$pkgrel perl-error"
|
|
arch="noarch"
|
|
replaces="git-perl"
|
|
eval local `perl -V:vendorlib`
|
|
eval local `perl -V:vendorarch`
|
|
for i in $vendorlib $vendorarch; do
|
|
mkdir -p "$subpkgdir"/${i%/*} || return 1
|
|
mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
|
|
done
|
|
}
|
|
|
|
email() {
|
|
depends="perl perl-git=$pkgver-r$pkgrel perl-net-smtp-ssl
|
|
perl-authen-sasl"
|
|
pkgdesc="Git tools for sending email"
|
|
arch="noarch"
|
|
replaces="git"
|
|
mkdir -p "$subpkgdir"/$_gitcoredir
|
|
mv "$pkgdir"/$_gitcoredir/*email* "$subpkgdir"/$_gitcoredir
|
|
}
|
|
|
|
|
|
svn() {
|
|
depends="perl perl-git-svn=$pkgver-r$pkgrel perl-subversion
|
|
perl-term-readkey"
|
|
pkgdesc="Subversion support for git"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
mkdir -p "$subpkgdir"/$_gitcoredir
|
|
mv "$pkgdir"/$_gitcoredir/git-svn "$subpkgdir"/$_gitcoredir/
|
|
}
|
|
|
|
cvs() {
|
|
pkgdesc="Git tools for importing CVS repositories"
|
|
depends="perl perl-git=$pkgver-r$pkgrel cvs perl-dbd-sqlite"
|
|
arch="noarch"
|
|
replaces="git-perl"
|
|
mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/$_gitcoredir
|
|
mv "$pkgdir"/usr/bin/git-cvs* "$subpkgdir"/usr/bin/ || return 1
|
|
mv "$pkgdir"/$_gitcoredir/*cvs* "$subpkgdir"/$_gitcoredir \
|
|
|| return 1
|
|
}
|
|
|
|
p4() {
|
|
pkgdesc="Git tools for working with Perforce depots"
|
|
depends="git=$pkgver-r$pkgrel"
|
|
arch="noarch"
|
|
replaces="git"
|
|
mkdir -p "$subpkgdir"/$_gitcoredir/mergetools
|
|
mv "$pkgdir"/$_gitcoredir/*p4* "$subpkgdir"/$_gitcoredir/ || return 1
|
|
mv "$pkgdir"/$_gitcoredir/mergetools/*p4* \
|
|
"$subpkgdir"/$_gitcoredir/mergetools/ || return 1
|
|
}
|
|
|
|
daemon() {
|
|
pkgdesc="Git protocol daemon"
|
|
depends="git=$pkgver-r$pkgrel"
|
|
replaces="git"
|
|
mkdir -p "$subpkgdir"/$_gitcoredir
|
|
mv "$pkgdir"/$_gitcoredir/git-daemon "$subpkgdir"/$_gitcoredir \
|
|
|| return 1
|
|
mv "$pkgdir"/etc "$subpkgdir"/ || return 1
|
|
}
|
|
|
|
gitweb() {
|
|
pkgdesc="Simple web interface to git repositories"
|
|
depends="git=$pkgver-r$pkgrel perl"
|
|
arch="noarch"
|
|
replaces="git"
|
|
mkdir -p "$subpkgdir"/usr/share
|
|
mv "$pkgdir"/usr/share/gitweb "$subpkgdir"/usr/share/
|
|
}
|
|
|
|
completion() {
|
|
depends=""
|
|
pkgdesc="Bash completion script for git"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
install -Dm644 "$srcdir"/git-$pkgver/contrib/completion/git-completion.bash \
|
|
"$subpkgdir"/usr/share/bash-completion/completions/git
|
|
}
|
|
|
|
subtree() {
|
|
depends="git=$pkgver-r$pkgrel"
|
|
pkgdesc="Split git repository into subtrees"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
cd "$srcdir"/$pkgname-$pkgver/contrib/subtree
|
|
make prefix=/usr DESTDIR="$pkgdir" || return 1
|
|
make install prefix=/usr DESTDIR="$subpkgdir"
|
|
}
|
|
|
|
subtree_doc() {
|
|
depends=""
|
|
pkgdesc="Split git repository into subtrees (documentation)"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
cd "$srcdir"/$pkgname-$pkgver/contrib/subtree
|
|
make install-man prefix=/usr DESTDIR="$subpkgdir" || return 1
|
|
gzip -9 "$subpkgdir"/usr/share/man/man1/git-subtree.1
|
|
}
|
|
|
|
gui() {
|
|
depends="git=$pkgver-r$pkgrel tcl tk"
|
|
pkgdesc="GUI interface for git"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
mkdir -p "$subpkgdir"/usr/share "$subpkgdir"/usr/libexec/git-core
|
|
mv "$pkgdir"/usr/share/git-gui "$subpkgdir"/usr/share/
|
|
mv "$pkgdir"/usr/libexec/git-core/git-citool \
|
|
"$pkgdir"/usr/libexec/git-core/git-gui \
|
|
"$pkgdir"/usr/libexec/git-core/git-gui--askpass \
|
|
"$subpkgdir"/usr/libexec/git-core/
|
|
}
|
|
|
|
gitk() {
|
|
depends="git=$pkgver-r$pkgrel tcl tk"
|
|
pkgdesc="Gitk interface for git"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
mkdir -p "$subpkgdir"/usr/share "$subpkgdir"/usr/bin
|
|
mv "$pkgdir"/usr/share/gitk "$subpkgdir"/usr/share/
|
|
mv "$pkgdir"/usr/bin/gitk "$subpkgdir"/usr/bin/
|
|
}
|
|
|
|
# catch-the-rest of stuff that needs perl
|
|
_git_perl() {
|
|
depends="git=$pkgver-r$pkgrel perl-git=$pkgver-r$pkgrel perl"
|
|
pkgdesc="Additional Git commands that requires perl"
|
|
arch="noarch"
|
|
replaces=""
|
|
|
|
mkdir -p "$subpkgdir"/usr/lib
|
|
mv "$pkgdir"/usr/lib/perl* "$subpkgdir"/usr/lib/
|
|
cd "$pkgdir"
|
|
find -type f | xargs file --mime-type | grep perl | cut -d: -f1| while read f; do
|
|
mkdir -p "$subpkgdir"/${f%/*}
|
|
mv "$f" "$subpkgdir"/${f%/*}
|
|
done
|
|
find "$subpkgdir" -name perllocal.pod -delete
|
|
}
|
|
|
|
|
|
md5sums="1774d5f56024630af9eb78a8d060aae1 git-2.5.2.tar.xz
|
|
e63a201556c4f089de790805c09a2e5b bb-tar.patch
|
|
75b9d8f33fbec38a8e0e06baf5165b19 git-daemon.initd
|
|
2258e95d389ccc6de0b5111d53d9eed6 git-daemon.confd"
|
|
sha256sums="4b4760a90ede51accee703bd6815f1f79afef68670acdcf3ea31dcc846a40c9b git-2.5.2.tar.xz
|
|
cb6319f47d81605e199771350154cbed0a6e85ef9042a689f2b405c64039f49c bb-tar.patch
|
|
7918837f77b4cebce70b600b2f6da00e4c0df6b946f4ff5671c797c37b2ffc4f git-daemon.initd
|
|
aaa80bd059db549dadf4c4e27a9aa41a4b5def844f8e563c493bc8513dcd981e git-daemon.confd"
|
|
sha512sums="b553aa521ac43c33323fc9ceed084a411fb5924ee48f6f30808152dd1185f36d339678788d05d8e62099d496be22a4b6b0242529505cff702884c394e13c58aa git-2.5.2.tar.xz
|
|
6fa088a753c2a697e8dbef2032ed63e8c2a0553a41cff2fcff893c2f35c51d2c697054cc921c23ee606f77b93d0f340df85220b15e1c470bd352f7fba3986cd0 bb-tar.patch
|
|
1e707250d133d56100f0311e7c2610920d6d81809c425ebf3e6acb4a289b958707a90dc38e1c17720da6dc2758dd84bf957fe6aed3854eacea79226eb616e885 git-daemon.initd
|
|
9640f8078d68ed2678e5249da3f946fc21f50e858b94127a4221de73c6132101afcd46bc1fe33861e9a7f731c0dc9591915b8ebf376b8e690cd7135703966509 git-daemon.confd"
|