Gentoo Archives: gentoo-commits

From: Lars Wendler <polynomial-c@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-vcs/git/
Date: Tue, 06 Oct 2015 07:30:26
Message-Id: 1444116611.cbba5ceebf555ead79fe3c9be71135038756d5bf.polynomial-c@gentoo
1 commit: cbba5ceebf555ead79fe3c9be71135038756d5bf
2 Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
3 AuthorDate: Tue Oct 6 07:29:58 2015 +0000
4 Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
5 CommitDate: Tue Oct 6 07:30:11 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cbba5cee
7
8 dev-vcs/git: Removed old.
9
10 Package-Manager: portage-2.2.22
11 Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>
12
13 dev-vcs/git/git-2.6.0.ebuild | 640 -------------------------------------------
14 1 file changed, 640 deletions(-)
15
16 diff --git a/dev-vcs/git/git-2.6.0.ebuild b/dev-vcs/git/git-2.6.0.ebuild
17 deleted file mode 100644
18 index c38a8ea..0000000
19 --- a/dev-vcs/git/git-2.6.0.ebuild
20 +++ /dev/null
21 @@ -1,640 +0,0 @@
22 -# Copyright 1999-2015 Gentoo Foundation
23 -# Distributed under the terms of the GNU General Public License v2
24 -# $Id$
25 -
26 -EAPI=5
27 -
28 -GENTOO_DEPEND_ON_PERL=no
29 -
30 -# bug #329479: git-remote-testgit is not multiple-version aware
31 -PYTHON_COMPAT=( python2_7 )
32 -[[ ${PV} == *9999 ]] && SCM="git-2"
33 -EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
34 -EGIT_MASTER=pu
35 -
36 -inherit toolchain-funcs eutils elisp-common perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
37 -
38 -MY_PV="${PV/_rc/.rc}"
39 -MY_P="${PN}-${MY_PV}"
40 -
41 -DOC_VER=${MY_PV}
42 -
43 -DESCRIPTION="GIT - the stupid content tracker, the revision control system heavily used by the Linux kernel team"
44 -HOMEPAGE="http://www.git-scm.com/"
45 -if [[ ${PV} != *9999 ]]; then
46 - SRC_URI_SUFFIX="xz"
47 - SRC_URI_GOOG="https://git-core.googlecode.com/files"
48 - SRC_URI_KORG="mirror://kernel/software/scm/git"
49 - SRC_URI="${SRC_URI_GOOG}/${MY_P}.tar.${SRC_URI_SUFFIX}
50 - ${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
51 - ${SRC_URI_GOOG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
52 - ${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
53 - doc? (
54 - ${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
55 - ${SRC_URI_GOOG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
56 - )"
57 - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x64-freebsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~arm-linux ~ia64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
58 -fi
59 -
60 -LICENSE="GPL-2"
61 -SLOT="0"
62 -IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg gtk highlight +iconv libressl mediawiki +nls +pcre +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
63 -
64 -# Common to both DEPEND and RDEPEND
65 -CDEPEND="
66 - !libressl? ( dev-libs/openssl:0= )
67 - libressl? ( dev-libs/libressl:= )
68 - sys-libs/zlib
69 - pcre? ( dev-libs/libpcre )
70 - perl? ( dev-lang/perl:=[-build(-)] )
71 - tk? ( dev-lang/tk:0= )
72 - curl? (
73 - net-misc/curl
74 - webdav? ( dev-libs/expat )
75 - )
76 - emacs? ( virtual/emacs )
77 - gnome-keyring? ( gnome-base/libgnome-keyring )"
78 -
79 -RDEPEND="${CDEPEND}
80 - gpg? ( app-crypt/gnupg )
81 - mediawiki? (
82 - dev-perl/HTML-Tree
83 - dev-perl/MediaWiki-API
84 - )
85 - perl? ( dev-perl/Error
86 - dev-perl/Net-SMTP-SSL
87 - dev-perl/Authen-SASL
88 - cgi? ( dev-perl/CGI highlight? ( app-text/highlight ) )
89 - cvs? ( >=dev-vcs/cvsps-2.1:0 dev-perl/DBI dev-perl/DBD-SQLite )
90 - subversion? ( dev-vcs/subversion[-dso,perl] dev-perl/libwww-perl dev-perl/TermReadKey )
91 - )
92 - python? ( gtk?
93 - (
94 - >=dev-python/pygtk-2.8[${PYTHON_USEDEP}]
95 - >=dev-python/pygtksourceview-2.10.1-r1:2[${PYTHON_USEDEP}]
96 - )
97 - ${PYTHON_DEPS} )"
98 -
99 -# This is how info docs are created with Git:
100 -# .txt/asciidoc --(asciidoc)---------> .xml/docbook
101 -# .xml/docbook --(docbook2texi.pl)--> .texi
102 -# .texi --(makeinfo)---------> .info
103 -DEPEND="${CDEPEND}
104 - doc? (
105 - app-text/asciidoc
106 - app-text/docbook2X
107 - sys-apps/texinfo
108 - app-text/xmlto
109 - )
110 - nls? ( sys-devel/gettext )
111 - test? ( app-crypt/gnupg )"
112 -
113 -# Live ebuild builds man pages and HTML docs, additionally
114 -if [[ ${PV} == *9999 ]]; then
115 - DEPEND="${DEPEND}
116 - app-text/asciidoc"
117 -fi
118 -
119 -SITEFILE=50${PN}-gentoo.el
120 -S="${WORKDIR}/${MY_P}"
121 -
122 -REQUIRED_USE="
123 - cgi? ( perl )
124 - cvs? ( perl )
125 - mediawiki? ( perl )
126 - subversion? ( perl )
127 - webdav? ( curl )
128 - gtk? ( python )
129 - python? ( ${PYTHON_REQUIRED_USE} )
130 -"
131 -
132 -pkg_setup() {
133 - if use subversion && has_version "dev-vcs/subversion[dso]"; then
134 - ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
135 - ewarn "with USE=dso, there may be weird crashes in git-svn. You"
136 - ewarn "have been warned."
137 - fi
138 - if use python ; then
139 - python-single-r1_pkg_setup
140 - fi
141 -}
142 -
143 -# This is needed because for some obscure reasons future calls to make don't
144 -# pick up these exports if we export them in src_unpack()
145 -exportmakeopts() {
146 - local myopts
147 -
148 - if use blksha1 ; then
149 - myopts+=" BLK_SHA1=YesPlease"
150 - elif use ppcsha1 ; then
151 - myopts+=" PPC_SHA1=YesPlease"
152 - fi
153 -
154 - if use curl ; then
155 - use webdav || myopts+=" NO_EXPAT=YesPlease"
156 - else
157 - myopts+=" NO_CURL=YesPlease"
158 - fi
159 -
160 - # broken assumptions, because of broken build system ...
161 - myopts+=" NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease"
162 - myopts+=" INSTALL=install TAR=tar"
163 - myopts+=" SHELL_PATH=${EPREFIX}/bin/sh"
164 - myopts+=" SANE_TOOL_PATH="
165 - myopts+=" OLD_ICONV="
166 - myopts+=" NO_EXTERNAL_GREP="
167 -
168 - # For svn-fe
169 - extlibs="-lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '')"
170 -
171 - # can't define this to null, since the entire makefile depends on it
172 - sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile
173 -
174 - use iconv \
175 - || myopts+=" NO_ICONV=YesPlease"
176 - use nls \
177 - || myopts+=" NO_GETTEXT=YesPlease"
178 - use tk \
179 - || myopts+=" NO_TCLTK=YesPlease"
180 - use pcre \
181 - && myopts+=" USE_LIBPCRE=yes" \
182 - && extlibs+=" -lpcre"
183 - use perl \
184 - && myopts+=" INSTALLDIRS=vendor" \
185 - || myopts+=" NO_PERL=YesPlease"
186 - use python \
187 - || myopts+=" NO_PYTHON=YesPlease"
188 - use subversion \
189 - || myopts+=" NO_SVN_TESTS=YesPlease"
190 - use threads \
191 - && myopts+=" THREADED_DELTA_SEARCH=YesPlease" \
192 - || myopts+=" NO_PTHREADS=YesPlease"
193 - use cvs \
194 - || myopts+=" NO_CVS=YesPlease"
195 -# Disabled until ~m68k-mint can be keyworded again
196 -# if [[ ${CHOST} == *-mint* ]] ; then
197 -# myopts+=" NO_MMAP=YesPlease"
198 -# myopts+=" NO_IPV6=YesPlease"
199 -# myopts+=" NO_STRLCPY=YesPlease"
200 -# myopts+=" NO_MEMMEM=YesPlease"
201 -# myopts+=" NO_MKDTEMP=YesPlease"
202 -# myopts+=" NO_MKSTEMPS=YesPlease"
203 -# fi
204 - if [[ ${CHOST} == ia64-*-hpux* ]]; then
205 - myopts+=" NO_NSEC=YesPlease"
206 - fi
207 - if [[ ${CHOST} == *-*-aix* ]]; then
208 - myopts+=" NO_FNMATCH_CASEFOLD=YesPlease"
209 - fi
210 - if [[ ${CHOST} == *-solaris* ]]; then
211 - myopts+=" NEEDS_LIBICONV=YesPlease"
212 - fi
213 -
214 - has_version '>=app-text/asciidoc-8.0' \
215 - && myopts+=" ASCIIDOC8=YesPlease"
216 - myopts+=" ASCIIDOC_NO_ROFF=YesPlease"
217 -
218 - # Bug 290465:
219 - # builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
220 - [[ "${CHOST}" == *-uclibc* ]] && \
221 - myopts+=" NO_NSEC=YesPlease"
222 -
223 - export MY_MAKEOPTS="${myopts}"
224 - export EXTLIBS="${extlibs}"
225 -}
226 -
227 -src_unpack() {
228 - if [[ ${PV} != *9999 ]]; then
229 - unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
230 - cd "${S}"
231 - unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
232 - use doc && \
233 - cd "${S}"/Documentation && \
234 - unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
235 - cd "${S}"
236 - else
237 - git-2_src_unpack
238 - cd "${S}"
239 - #cp "${FILESDIR}"/GIT-VERSION-GEN .
240 - fi
241 -
242 -}
243 -
244 -src_prepare() {
245 - # bug #350330 - automagic CVS when we don't want it is bad.
246 - epatch "${FILESDIR}"/git-2.2.2-optional-cvs.patch
247 -
248 - # install mediawiki perl modules also in vendor_dir
249 - # hack, needs better upstream solution
250 - epatch "${FILESDIR}"/git-1.8.5-mw-vendor.patch
251 -
252 - epatch "${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
253 -
254 - # Bug #493306, where FreeBSD 10.x merged libiconv into its libc.
255 - epatch "${FILESDIR}"/git-2.5.1-freebsd-10.x-no-iconv.patch
256 -
257 - epatch_user
258 -
259 - sed -i \
260 - -e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
261 - -e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
262 - -e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
263 - -e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
264 - -e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
265 - -e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
266 - Makefile contrib/svn-fe/Makefile || die "sed failed"
267 -
268 - # Never install the private copy of Error.pm (bug #296310)
269 - sed -i \
270 - -e '/private-Error.pm/s,^,#,' \
271 - perl/Makefile.PL
272 -
273 - # Fix docbook2texi command
274 - sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
275 - Documentation/Makefile || die "sed failed"
276 -
277 - # Fix git-subtree missing DESTDIR
278 - sed -i \
279 - -e '/$(INSTALL)/s/ $(libexecdir)/ $(DESTDIR)$(libexecdir)/g' \
280 - -e '/$(INSTALL)/s/ $(man1dir)/ $(DESTDIR)$(man1dir)/g' \
281 - contrib/subtree/Makefile
282 -}
283 -
284 -git_emake() {
285 - # bug #326625: PERL_PATH, PERL_MM_OPT
286 - # bug #320647: PYTHON_PATH
287 - PYTHON_PATH=""
288 - use python && PYTHON_PATH="${PYTHON}"
289 - emake ${MY_MAKEOPTS} \
290 - DESTDIR="${D}" \
291 - OPTCFLAGS="${CFLAGS}" \
292 - OPTLDFLAGS="${LDFLAGS}" \
293 - OPTCC="$(tc-getCC)" \
294 - OPTAR="$(tc-getAR)" \
295 - prefix="${EPREFIX}"/usr \
296 - htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
297 - sysconfdir="${EPREFIX}"/etc \
298 - PYTHON_PATH="${PYTHON_PATH}" \
299 - PERL_MM_OPT="" \
300 - GIT_TEST_OPTS="--no-color" \
301 - V=1 \
302 - "$@"
303 - # This is the fix for bug #326625, but it also causes breakage, see bug
304 - # #352693.
305 - # PERL_PATH="${EPREFIX}/usr/bin/env perl" \
306 -}
307 -
308 -src_configure() {
309 - exportmakeopts
310 -}
311 -
312 -src_compile() {
313 - if use perl ; then
314 - git_emake perl/PM.stamp || die "emake perl/PM.stamp failed"
315 - git_emake perl/perl.mak || die "emake perl/perl.mak failed"
316 - fi
317 - git_emake || die "emake failed"
318 -
319 - if use emacs ; then
320 - elisp-compile contrib/emacs/git{,-blame}.el
321 - fi
322 -
323 - if use perl && use cgi ; then
324 - git_emake \
325 - gitweb \
326 - || die "emake gitweb (cgi) failed"
327 - fi
328 -
329 - if [[ ${CHOST} == *-darwin* ]]; then
330 - cd "${S}"/contrib/credential/osxkeychain || die "cd credential/osxkeychain"
331 - git_emake || die "emake credential-osxkeychain"
332 - fi
333 -
334 - cd "${S}"/Documentation
335 - if [[ ${PV} == *9999 ]] ; then
336 - git_emake man \
337 - || die "emake man failed"
338 - if use doc ; then
339 - git_emake info html \
340 - || die "emake info html failed"
341 - fi
342 - else
343 - if use doc ; then
344 - git_emake info \
345 - || die "emake info html failed"
346 - fi
347 - fi
348 -
349 - if use subversion ; then
350 - cd "${S}"/contrib/svn-fe
351 - # by defining EXTLIBS we override the detection for libintl and
352 - # libiconv, bug #516168
353 - local nlsiconv=
354 - use nls && use !elibc_glibc && nlsiconv+=" -lintl"
355 - use iconv && use !elibc_glibc && nlsiconv+=" -liconv"
356 - git_emake EXTLIBS="${EXTLIBS} ${nlsiconv}" || die "emake svn-fe failed"
357 - if use doc ; then
358 - git_emake svn-fe.{1,html} || die "emake svn-fe.1 svn-fe.html failed"
359 - fi
360 - cd "${S}"
361 - fi
362 -
363 - if use gnome-keyring ; then
364 - cd "${S}"/contrib/credential/gnome-keyring
365 - git_emake || die "emake git-credential-gnome-keyring failed"
366 - fi
367 -
368 - cd "${S}"/contrib/subtree
369 - git_emake
370 - use doc && git_emake doc
371 -
372 - if use mediawiki ; then
373 - cd "${S}"/contrib/mw-to-git
374 - git_emake
375 - fi
376 -}
377 -
378 -src_install() {
379 - git_emake \
380 - install || \
381 - die "make install failed"
382 -
383 - if [[ ${CHOST} == *-darwin* ]]; then
384 - dobin contrib/credential/osxkeychain/git-credential-osxkeychain
385 - fi
386 -
387 - # Depending on the tarball and manual rebuild of the documentation, the
388 - # manpages may exist in either OR both of these directories.
389 - find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
390 - find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
391 -
392 - dodoc README Documentation/{SubmittingPatches,CodingGuidelines}
393 - use doc && dodir /usr/share/doc/${PF}/html
394 - for d in / /howto/ /technical/ ; do
395 - docinto ${d}
396 - dodoc Documentation${d}*.txt
397 - use doc && dohtml -p ${d} Documentation${d}*.html
398 - done
399 - docinto /
400 - # Upstream does not ship this pre-built :-(
401 - use doc && doinfo Documentation/{git,gitman}.info
402 -
403 - newbashcomp contrib/completion/git-completion.bash ${PN}
404 - bashcomp_alias git gitk
405 - # Not really a bash-completion file (bug #477920)
406 - # but still needed uncompressed (bug #507480)
407 - insinto /usr/share/${PN}
408 - doins contrib/completion/git-prompt.sh
409 -
410 - if use emacs ; then
411 - elisp-install ${PN} contrib/emacs/git.{el,elc}
412 - elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
413 - #elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
414 - # don't add automatically to the load-path, so the sitefile
415 - # can do a conditional loading
416 - touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
417 - elisp-site-file-install "${FILESDIR}"/${SITEFILE}
418 - fi
419 -
420 - if use python && use gtk ; then
421 - python_doscript "${S}"/contrib/gitview/gitview
422 - dodoc "${S}"/contrib/gitview/gitview.txt
423 - fi
424 -
425 - #dobin contrib/fast-import/git-p4 # Moved upstream
426 - #dodoc contrib/fast-import/git-p4.txt # Moved upstream
427 - newbin contrib/fast-import/import-tars.perl import-tars
428 - exeinto /usr/libexec/git-core/
429 - newexe contrib/git-resurrect.sh git-resurrect
430 -
431 - # git-subtree
432 - cd "${S}"/contrib/subtree
433 - git_emake install || die "Failed to emake install git-subtree"
434 - if use doc ; then
435 - git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
436 - fi
437 - newdoc README README.git-subtree
438 - dodoc git-subtree.txt
439 - cd "${S}"
440 -
441 - if use mediawiki ; then
442 - cd "${S}"/contrib/mw-to-git
443 - git_emake install
444 - cd "${S}"
445 - fi
446 -
447 - # diff-highlight
448 - dobin contrib/diff-highlight/diff-highlight
449 - newdoc contrib/diff-highlight/README README.diff-highlight
450 -
451 - # git-jump
452 - exeinto /usr/libexec/git-core/
453 - doexe contrib/git-jump/git-jump
454 - newdoc contrib/git-jump/README git-jump.txt
455 -
456 - # git-contacts
457 - exeinto /usr/libexec/git-core/
458 - doexe contrib/contacts/git-contacts
459 - dodoc contrib/contacts/git-contacts.txt
460 -
461 - if use gnome-keyring ; then
462 - cd "${S}"/contrib/credential/gnome-keyring
463 - dobin git-credential-gnome-keyring
464 - fi
465 -
466 - if use subversion ; then
467 - cd "${S}"/contrib/svn-fe
468 - dobin svn-fe
469 - dodoc svn-fe.txt
470 - use doc && doman svn-fe.1 && dohtml svn-fe.html
471 - cd "${S}"
472 - fi
473 -
474 - dodir /usr/share/${PN}/contrib
475 - # The following are excluded:
476 - # completion - installed above
477 - # credential/gnome-keyring TODO
478 - # diff-highlight - done above
479 - # emacs - installed above
480 - # examples - these are stuff that is not used in Git anymore actually
481 - # git-jump - done above
482 - # gitview - installed above
483 - # p4import - excluded because fast-import has a better one
484 - # patches - stuff the Git guys made to go upstream to other places
485 - # persistent-https - TODO
486 - # mw-to-git - TODO
487 - # subtree - build seperately
488 - # svnimport - use git-svn
489 - # thunderbird-patch-inline - fixes thunderbird
490 - for i in \
491 - buildsystems convert-objects fast-import \
492 - hg-to-git hooks remotes2config.sh rerere-train.sh \
493 - stats workdir \
494 - ; do
495 - cp -rf \
496 - "${S}"/contrib/${i} \
497 - "${ED}"/usr/share/${PN}/contrib \
498 - || die "Failed contrib ${i}"
499 - done
500 -
501 - if use perl && use cgi ; then
502 - # We used to install in /usr/share/${PN}/gitweb
503 - # but upstream installs in /usr/share/gitweb
504 - # so we will install a symlink and use their location for compat with other
505 - # distros
506 - dosym /usr/share/gitweb /usr/share/${PN}/gitweb
507 -
508 - # INSTALL discusses configuration issues, not just installation
509 - docinto /
510 - newdoc "${S}"/gitweb/INSTALL INSTALL.gitweb
511 - newdoc "${S}"/gitweb/README README.gitweb
512 -
513 - find "${ED}"/usr/lib64/perl5/ \
514 - -name .packlist \
515 - -exec rm \{\} \;
516 - else
517 - rm -rf "${ED}"/usr/share/gitweb
518 - fi
519 -
520 - if ! use subversion ; then
521 - rm -f "${ED}"/usr/libexec/git-core/git-svn \
522 - "${ED}"/usr/share/man/man1/git-svn.1*
523 - fi
524 -
525 - if use xinetd ; then
526 - insinto /etc/xinetd.d
527 - newins "${FILESDIR}"/git-daemon.xinetd git-daemon
528 - fi
529 -
530 - if use !prefix ; then
531 - newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
532 - newconfd "${FILESDIR}"/git-daemon.confd git-daemon
533 - systemd_newunit "${FILESDIR}/git-daemon_at.service" "git-daemon@.service"
534 - systemd_dounit "${FILESDIR}/git-daemon.socket"
535 - fi
536 -
537 - perl_delete_localpod
538 -}
539 -
540 -src_test() {
541 - local disabled="" #t7004-tag.sh" #520270
542 - local tests_cvs="t9200-git-cvsexportcommit.sh \
543 - t9400-git-cvsserver-server.sh \
544 - t9401-git-cvsserver-crlf.sh \
545 - t9402-git-cvsserver-refs.sh \
546 - t9600-cvsimport.sh \
547 - t9601-cvsimport-vendor-branch.sh \
548 - t9602-cvsimport-branches-tags.sh \
549 - t9603-cvsimport-patchsets.sh \
550 - t9604-cvsimport-timestamps.sh"
551 - local tests_perl="t3701-add-interactive.sh \
552 - t5502-quickfetch.sh \
553 - t5512-ls-remote.sh \
554 - t5520-pull.sh \
555 - t7106-reset-unborn-branch.sh \
556 - t7501-commit.sh"
557 - # Bug #225601 - t0004 is not suitable for root perm
558 - # Bug #219839 - t1004 is not suitable for root perm
559 - # t0001-init.sh - check for init notices EPERM* fails
560 - local tests_nonroot="t0001-init.sh \
561 - t0004-unwritable.sh \
562 - t0070-fundamental.sh \
563 - t1004-read-tree-m-u-wf.sh \
564 - t3700-add.sh \
565 - t7300-clean.sh"
566 - # t9100 still fails with symlinks in SVN 1.7
567 - local test_svn="t9100-git-svn-basic.sh"
568 -
569 - # Unzip is used only for the testcase code, not by any normal parts of Git.
570 - if ! has_version app-arch/unzip ; then
571 - einfo "Disabling tar-tree tests"
572 - disabled="${disabled} t5000-tar-tree.sh"
573 - fi
574 -
575 - cvs=0
576 - use cvs && let cvs=$cvs+1
577 - if [[ ${EUID} -eq 0 ]]; then
578 - if [[ $cvs -eq 1 ]]; then
579 - ewarn "Skipping CVS tests because CVS does not work as root!"
580 - ewarn "You should retest with FEATURES=userpriv!"
581 - disabled="${disabled} ${tests_cvs}"
582 - fi
583 - einfo "Skipping other tests that require being non-root"
584 - disabled="${disabled} ${tests_nonroot}"
585 - else
586 - [[ $cvs -gt 0 ]] && \
587 - has_version dev-vcs/cvs && \
588 - let cvs=$cvs+1
589 - [[ $cvs -gt 1 ]] && \
590 - has_version "dev-vcs/cvs[server]" && \
591 - let cvs=$cvs+1
592 - if [[ $cvs -lt 3 ]]; then
593 - einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
594 - disabled="${disabled} ${tests_cvs}"
595 - fi
596 - fi
597 -
598 - if ! use perl ; then
599 - einfo "Disabling tests that need Perl"
600 - disabled="${disabled} ${tests_perl}"
601 - fi
602 -
603 - einfo "Disabling tests that fail with SVN 1.7"
604 - disabled="${disabled} ${test_svn}"
605 -
606 - # Reset all previously disabled tests
607 - cd "${S}/t"
608 - for i in *.sh.DISABLED ; do
609 - [[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
610 - done
611 - einfo "Disabled tests:"
612 - for i in ${disabled} ; do
613 - [[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled $i"
614 - done
615 -
616 - # Avoid the test system removing the results because we want them ourselves
617 - sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
618 - -i "${S}"/t/Makefile
619 -
620 - # Clean old results first, must always run
621 - cd "${S}/t"
622 - nonfatal git_emake clean
623 -
624 - # Now run the tests, keep going if we hit an error, and don't terminate on
625 - # failure
626 - cd "${S}"
627 - einfo "Start test run"
628 - #MAKEOPTS=-j1
629 - nonfatal git_emake --keep-going test
630 - rc=$?
631 -
632 - # Display nice results, now print the results
633 - cd "${S}/t"
634 - nonfatal git_emake aggregate-results
635 -
636 - # And bail if there was a problem
637 - [ $rc -eq 0 ] || die "tests failed. Please file a bug."
638 -}
639 -
640 -showpkgdeps() {
641 - local pkg=$1
642 - shift
643 - elog " $(printf "%-17s:" ${pkg}) ${@}"
644 -}
645 -
646 -pkg_postinst() {
647 - use emacs && elisp-site-regen
648 - einfo "Please read /usr/share/bash-completion/git for Git bash command completion"
649 - einfo "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
650 - einfo "Note that the prompt bash code is now in that separate script"
651 - elog "These additional scripts need some dependencies:"
652 - echo
653 - showpkgdeps git-quiltimport "dev-util/quilt"
654 - showpkgdeps git-instaweb \
655 - "|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
656 - echo
657 -}
658 -
659 -pkg_postrm() {
660 - use emacs && elisp-site-regen
661 -}