void-packages/srcpkgs/git/template

137 lines
4.1 KiB
Bash

# Template file for 'git'
pkgname=git
version=2.31.1
revision=1
build_style=gnu-configure
configure_args="--with-curl --with-expat --with-tcltk --with-libpcre2"
hostmakedepends="asciidoc gettext perl pkg-config tar tk xmlto"
makedepends="libglib-devel libcurl-devel libsecret-devel pcre2-devel tk-devel"
# Required by https://
depends="ca-certificates perl-Authen-SASL perl-MIME-tools perl-Net-SMTP-SSL"
short_desc="Git Tree History Storage Tool"
maintainer="Đoàn Trần Công Danh <congdanhqx@gmail.com>"
license="GPL-2.0-only"
homepage="https://git-scm.com/"
changelog="https://raw.githubusercontent.com/git/git/master/Documentation/RelNotes/${version}.txt"
distfiles="https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz"
checksum=9f61417a44d5b954a5012b6f34e526a3336dcf5dd720e2bb7ada92ad8b3d6680
replaces="git-perl>=0"
register_shell=/usr/bin/git-shell
python_version=3
subpackages="git-cvs git-svn gitk git-gui git-all git-libsecret git-netrc"
post_configure() {
cat <<-EOF >config.mak
NO_INSTALL_HARDLINKS=Yes
INSTALLDIRS=vendor
perllibdir=/usr/share/perl5/vendor_perl
PYTHON_PATH=/usr/bin/python3
EOF
}
post_build() {
make ${makejobs} -C Documentation man
make ${makejobs} -C contrib/contacts all git-contacts.1
make ${makejobs} -C contrib/diff-highlight all
make ${makejobs} -C contrib/subtree all man
make ${makejobs} -C contrib/credential/libsecret
make ${makejobs} -C contrib/credential/netrc
}
do_check() {
make ${makejobs} test
make -C contrib/diff-highlight test
make -C contrib/subtree test
make -C contrib/credential/netrc test
}
post_install() {
make DESTDIR=${DESTDIR} install-doc
vinstall contrib/completion/git-completion.bash 644 \
usr/share/bash-completion/completions git
vinstall contrib/completion/git-prompt.sh 644 usr/share/git
make -C contrib/contacts DESTDIR=${DESTDIR} install install-man
vbin contrib/diff-highlight/diff-highlight
vdoc contrib/diff-highlight/README diff-highlight
vinstall contrib/git-jump/git-jump 755 usr/libexec/git-core
vdoc contrib/git-jump/README git-jump
make -C contrib/subtree DESTDIR=${DESTDIR} install install-man
vinstall contrib/credential/libsecret/git-credential-libsecret 755 \
usr/libexec/git-core
make -C contrib/credential/netrc DESTDIR=${DESTDIR} install
}
git-cvs_package() {
depends="${sourcepkg}-${version}_${revision} cvs cvsps2 perl-DBD-SQLite"
short_desc+=" - CVS support"
pkg_install() {
vmove usr/bin/git-cvsserver
vmove usr/libexec/git-core/git-cvsexportcommit
vmove usr/libexec/git-core/git-cvsimport
vmove usr/libexec/git-core/git-cvsserver
vmove usr/share/man/man1/git-cvsexportcommit.1
vmove usr/share/man/man1/git-cvsimport.1
vmove usr/share/man/man1/git-cvsserver.1
vmove usr/share/man/man7/gitcvs-migration.7
}
}
git-svn_package() {
depends="${sourcepkg}-${version}_${revision} subversion-perl perl-Term-ReadKey"
short_desc+=" - Subversion support"
pkg_install() {
vmove "usr/share/perl5/vendor_perl/Git/SVN*"
vmove usr/libexec/git-core/git-svn
vmove usr/share/man/man1/git-svn.1
}
}
gitk_package() {
depends="git-${version}_${revision} tk"
short_desc="Git repository browser"
license="GPL-2.0-or-later"
pkg_install() {
vmove usr/bin/gitk
vmove usr/share/gitk
vmove usr/share/man/man1/gitk.1
}
}
git-gui_package() {
depends="git-${version}_${revision} tk"
short_desc+=" - GUI tool"
license="GPL-2.0-or-later"
pkg_install() {
vmove usr/libexec/git-core/git-gui--askpass
vmove usr/libexec/git-core/git-gui
vmove usr/libexec/git-core/git-citool
vmove usr/share/man/man1/git-gui.1
vmove usr/share/man/man1/git-citool.1
vmove usr/share/git-gui
}
}
git-all_package() {
build_style=meta
depends="${subpackages/git-all/}"
short_desc+=" - meta-package for complete Git installation"
}
git-libsecret_package() {
depends="git-${version}_${revision}"
short_desc+=" - libsecret credential helper"
license="GPL-2.0-or-later"
pkg_install() {
vmove usr/libexec/git-core/git-credential-libsecret
}
}
git-netrc_package() {
depends="git-${version}_${revision}"
short_desc+=" - netrc credential helper"
pkg_install() {
vmove usr/libexec/git-core/git-credential-netrc
}
}