# Maintainer: Natanael Copa pkgname=git pkgver=1.8.5.1 pkgrel=4 pkgdesc="A distributed version control system" url="http://git.or.cz/" 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-perl:_git_perl " makedepends="zlib-dev openssl-dev curl-dev expat-dev perl-dev python-dev pcre-dev asciidoc xmlto" source="http://git-core.googlecode.com/files/git-$pkgver.tar.gz 0001-config-add-_cb-suffix-to-callback-functions.patch bb-tar.patch git-daemon.initd git-daemon.confd " _makeopts="NO_ICONV=YesPlease NO_GETTEXT=YesPlease NO_NSEC=YesPlease NO_TCLTK=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" 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" 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" 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" 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" 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" 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 } # catch-the-rest of stuff that needs perl _git_perl() { depends="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="7b9d622c98482aeb4532500231626210 git-1.8.5.1.tar.gz 178d2d10f9740fac4a8af0155368b3d9 0001-config-add-_cb-suffix-to-callback-functions.patch e63a201556c4f089de790805c09a2e5b bb-tar.patch 53546650670c0ab8858e91474e5ffee9 git-daemon.initd 2258e95d389ccc6de0b5111d53d9eed6 git-daemon.confd" sha256sums="1559c4d7af0377ea3133c6dfccc2f32a25bcc8e3255464f4a36ab87416f8ee44 git-1.8.5.1.tar.gz c0f66913df49d35e197ff18426b2835a3bd539373c579d253cc4fcdf6c5b77c5 0001-config-add-_cb-suffix-to-callback-functions.patch cb6319f47d81605e199771350154cbed0a6e85ef9042a689f2b405c64039f49c bb-tar.patch 817cd58dcb9a5ff32759d2132bb805a5dd34ad6fa0b0a5cbe4ab8786f3b7c0d9 git-daemon.initd aaa80bd059db549dadf4c4e27a9aa41a4b5def844f8e563c493bc8513dcd981e git-daemon.confd" sha512sums="01cddca27fbdf1e1d1d8f644558e52b14a8a464b07e4c93899d9e968c17544eae3ab841846a223bd65fa44fa7a04463f52d5ab86120f1c435cbed4c1d4a71293 git-1.8.5.1.tar.gz 3de27e2ff97be2673c218b86c5b0db515a6e6c603302ac158c8cb412e90f13b79381c432adcf661afcc2d5d0d156946bc85c2921c15066d20acf72defc0ce194 0001-config-add-_cb-suffix-to-callback-functions.patch 6fa088a753c2a697e8dbef2032ed63e8c2a0553a41cff2fcff893c2f35c51d2c697054cc921c23ee606f77b93d0f340df85220b15e1c470bd352f7fba3986cd0 bb-tar.patch 47f35d1553408236502f936d0ce5dbc6c44b6593ad5ef9ddebbfd8dbca5f968c21452df7053ac271445830d36a147a7124e2ea1cf9fb98340d975fdb0346011a git-daemon.initd 9640f8078d68ed2678e5249da3f946fc21f50e858b94127a4221de73c6132101afcd46bc1fe33861e9a7f731c0dc9591915b8ebf376b8e690cd7135703966509 git-daemon.confd"