public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Robin H. Johnson" <robbat2@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-vcs/git/
Date: Tue, 10 Dec 2019 19:36:45 +0000 (UTC)	[thread overview]
Message-ID: <1576006601.e2c18c18104d5ef0c65195f6f51af9f8ca861dda.robbat2@gentoo> (raw)

commit:     e2c18c18104d5ef0c65195f6f51af9f8ca861dda
Author:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 10 19:00:00 2019 +0000
Commit:     Robin H. Johnson <robbat2 <AT> gentoo <DOT> org>
CommitDate: Tue Dec 10 19:36:41 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2c18c18

dev-vcs/git: bump for multiple vulnerabilities

- Upstream fix CVE-2019-1348
- Upstream fix CVE-2019-1349
- Upstream fix CVE-2019-1350
- Upstream fix CVE-2019-1351
- Upstream fix CVE-2019-1352
- Upstream fix CVE-2019-1353
- Upstream fix CVE-2019-1354
- Upstream fix CVE-2019-1387
- Upstream fix CVE-2019-19604

Bug: https://bugs.gentoo.org/702296
Package-Manager: Portage-2.3.79, Repoman-2.3.18
Signed-off-by: Robin H. Johnson <robbat2 <AT> gentoo.org>

 dev-vcs/git/Manifest             |   9 +
 dev-vcs/git/git-2.21.1.ebuild    | 715 ++++++++++++++++++++++++++++++++++++++
 dev-vcs/git/git-2.23.1-r1.ebuild | 725 ++++++++++++++++++++++++++++++++++++++
 dev-vcs/git/git-2.24.1.ebuild    | 728 +++++++++++++++++++++++++++++++++++++++
 4 files changed, 2177 insertions(+)

diff --git a/dev-vcs/git/Manifest b/dev-vcs/git/Manifest
index 48c44c585f1..3cf9445e925 100644
--- a/dev-vcs/git/Manifest
+++ b/dev-vcs/git/Manifest
@@ -1,9 +1,18 @@
 DIST git-2.21.0.tar.xz 5491296 BLAKE2B c5e66f4d4045f99bb4306e8f096ae9299908383df78bdf2a954cd415f4778eb59ea0ee7d501689313617de7dc1d2ee4ae15ab70dee564add5de877109073ddff SHA512 83f57c3950a07f6773a3aea66611d22daba0e5599e5d8f0751a16f6fdbeab0f3844d942a39a5642051212df99d1d4513253c36829b1454b4f0977cc6026fd973
+DIST git-2.21.1.tar.xz 5496840 BLAKE2B 8b61c5ca8940422238e48931b502f2a876e20181e66232fbd8a7311969c27c862524b384792d4a35a61c33ba3297c90e6df5febf3a820281eaab00233f48b02c SHA512 c4f1930effe4b7cddbdc3a5ea0f1503683089d5dfdae491dd7f752f35b655b31fbef569a993ef412962cf9c74a225eafe095f792d493f37b20789e5c643261a1
 DIST git-2.23.0.tar.xz 5707148 BLAKE2B a57642cfc297615c9510d9d746d83fc4174195bfefe22fc77098419e424d4f6e383896ad5509370c8cc35b2f4b531dcf5c5a4e9c2d2e99041ad15a40399ec4d2 SHA512 c0bb29b3689ec2e157f90df849599ca149a08fc0c69f6a68b1f3219b6335d521983e6ed58cd364b86398e4dcf9e84892fb9eded79a1c97b74150edca299cf671
+DIST git-2.23.1.tar.xz 5713672 BLAKE2B 50db7bafbadcefbc5a56db478ea0464d289c45190a0454e0b8f3d99d48e6251071482df0240ee1ee8a1f733c91e9e46d34794bca8ca70d3c4ecc3b5da6d5d529 SHA512 708f8b9a7c65c1c9d3117b1b7ee9383044b66fe8a5c168a52ba561985670f659d514aa34988ea8ba85c127da6a23c39c511919a6d661bffc9cf782e30fd62373
 DIST git-2.24.0.tar.xz 5766056 BLAKE2B 85c7cdcae01a71cc6e5d3d5985f4c54439879273ba981b73b732d6db10e348c812d7817001242976b67f78537f7fdf9c9298173b7393ad7ab5237cd9e3d9b5a2 SHA512 31c8c001fdea3b1e3e732cc42299979f1329d564f76d3950c90a0090afc1fa1ba50bdb7f86da92066843887986cc73a34c13dd651566d1af9036ecbe8aee42c3
+DIST git-2.24.1.tar.xz 5772304 BLAKE2B 45e49325221cd0407968b4e2ff7bcab7ea021863119ae29fec5c7a9ff10461b5af0ea05f587647c7d4965c38e25f1140f194be72ff5f1bea8851c0485effbfa2 SHA512 010c13d4023c142876d0e075a394b74bef422944d8ca602325d0b2b47bf28b1d534283c7f295751113c83fdfcc0c91f97090e8f906560d44b04a94607fd8fcf7
 DIST git-htmldocs-2.21.0.tar.xz 1234956 BLAKE2B d8ef32acbad7eeb8758f711e09c380dbf3ca72526067b3a86ed0865e37351c4fac1f0c7e845e7b0c27a1d955c64622f10c999389446b53191acdc05a44647847 SHA512 4537b3f67d03050e5daefaa6f274d3acdf6e116dc8c7f76566b33100e76a445c3e3894b5ff63b5ddb024e1c691a3bf08acea42dbec681da1b0f1de2e5736c9c4
+DIST git-htmldocs-2.21.1.tar.xz 1236408 BLAKE2B 173892327d27d918cc0a15e982145d5f0f638deeda56be1cbf16c953b7b3454555ecf3e708c6117b1d4e781ca332199457d9c5b619c91735e0c6e85449be528f SHA512 41819a75656afab0fd56407e7141c8176b708099546cdc7cdc5e765a35401e1148a7165c41bc12a68e124335532450748b27cc3f8c0e372d596f27a992e23e95
 DIST git-htmldocs-2.23.0.tar.xz 1294240 BLAKE2B 7420eb836d582448a996d8302d1e4873316baadd3a1baae555935443028af6a9c9e1fa629d5e0667901b8c63cce19bbf5e46c5fcb09b50382751e6b2cbc3d514 SHA512 165c8989ed9c0c09125e2e99beeddd1f2bb4d00ecae4aa58bcbfb1f1a8cd5a6ad646035e984471484fd1e943437d5d42d917e8c32b1207c590a1fc7c9bebc2dc
+DIST git-htmldocs-2.23.1.tar.xz 1296144 BLAKE2B 5be4a8afdd79234d220c119b8a4239e640486dc52236d980d08e6b3cad1be61b683c0e3dff6bdd67035a1e23f1d07858d3344f9f2ae90b44188395f34c22fea4 SHA512 c005be3baf129c9320893270d1d3b69e01546a29d482d29e5bc7baefbaab33e45d877c5c09e47312bbdb8b3dfcff27735c2427dcae9eb21fd3500ec30e214ae1
 DIST git-htmldocs-2.24.0.tar.xz 1306680 BLAKE2B fe3c9f2f56e8e6073be449d19336873ee06d1101eff12d2c5690bbe38510e7f60c3805fca3a46ce85be79d78161aea669b0ee595599aea816f42093f7c6f1a49 SHA512 61b8fbbc55cd66561b76866933de4478a526dd9428e419b8a8c046c323b26c780421e771b1ed7aa890962c3b90f9f3832b4a880fe1f67b1edb764f6d58db00ad
+DIST git-htmldocs-2.24.1.tar.xz 1307992 BLAKE2B 80b39d2fcf47d20a584109572414ff8d275245afb80c3946e2fa62346fdaee3b1c873a0dccfb44af52290756d26d5e53021a1bf1ace7ada34e50e03244f05e92 SHA512 4da610ba1ee307e4f53414e324ef63ab25cf3945a74bf813aeacd4cf714710eab31776c2402c9567f1a3805e3d8576a158c78a72722c0178fb7c2dec2dcebf5a
 DIST git-manpages-2.21.0.tar.xz 440096 BLAKE2B 6cbedf6e497b0d13c62003b166293a0d438d163255bce845eaf75e08a3eec49060c314e73d24c1c015101868d9149e9b0cd1c2e8cb3ce2245b8acae5701fe8ba SHA512 61e01cd312dbade8aac0144e32edc5eea2708b274273c207889a291cea18d131c9c2d83cc405ba8a955d387fd1e6dd74b7bdae4003f2062501073a0844122d30
+DIST git-manpages-2.21.1.tar.xz 440316 BLAKE2B 658232d29bbca3b55a6797d5008f2f6f82d0c04d22ae5af8c689d8cb00e35bfbbccf658d269b96dd868cf3e1cf8f3304eb97cfee428ff8c762f914d1cde4e4f4 SHA512 1a687e4cb2dc90854067b164d6142b88205ba40dbc283432296afafde4370afc900096c5aedc9a7a959b8aa910196d42c399c5c4eed7e2f1ce0f98d8005f3581
 DIST git-manpages-2.23.0.tar.xz 448272 BLAKE2B 34dcb535caf54bfa9ea8e9f2d8104fe74e4c38398d685a712735c0199dab59cfeac16f863c6285a1122139cb2be99cfad4ba7c3f71e88603284815536172ccbc SHA512 f4316f28d8f462804cee3e6f5d19a1426087dbeb0e6141148d9b021562c86723cbd4f96d30cc650b2b41230e097c3a1f574055b8b7e5025cbb90089484bf9e96
+DIST git-manpages-2.23.1.tar.xz 448432 BLAKE2B 0de4b2c0dcc3a70188a66d8aa6e16aeaad84a9f16b764934b06f61773db2d5141cc0b1091780d126f29a1f50c767a54fbb7d01a36f86d387d8ccb4060f48156e SHA512 16145c0c2215ce6a3aa9045f35f670258f6823a765ed2feec680ed980420d1bb008fc39d8f379c81cd0b259fc582d15e42395d4f954171b20bcf214ab25e41d7
 DIST git-manpages-2.24.0.tar.xz 453600 BLAKE2B 9ccbbe8e18689cac078ade0f55a1ca45a7c566ee5591df3442e3499fa1e4231f91e68922a54527fd2ce6102ac0148f9a360586a7c47922b39b383895f6742ba8 SHA512 18fff078b0ddf79aca216d9e2667e7a0b474eb8876739efd3928be2347bbb8db486e0367353b4e3d48f9d0e9c1dbd6f784e55ba535a009c1f3150405abdd02d2
+DIST git-manpages-2.24.1.tar.xz 453752 BLAKE2B 51a549099205341bfec5a7998e5f66e9fc78ffd05fd04e745401a8bcc5bffcb64f26a64c7e24c9822bc2d62d000ea2b13779ffe19f065124a8e42b306fb5a2d3 SHA512 ee1e70fdbfc6eae97dc3b3180fa119b0d1189db7cae3e45b8baa9311d0c1162a5b46824a785e91288522a9fd00b8e4ff07590f4e4722a08955d6a9d048cc3a90

diff --git a/dev-vcs/git/git-2.21.1.ebuild b/dev-vcs/git/git-2.21.1.ebuild
new file mode 100644
index 00000000000..326cb03d9f1
--- /dev/null
+++ b/dev-vcs/git/git-2.21.1.ebuild
@@ -0,0 +1,715 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python2_7 )
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	SCM="git-r3"
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd ${SCM}
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER=${MY_PV}
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" = *_rc* ]] || \
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit +perl +python ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+CDEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( virtual/emacs )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${CDEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	python? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+DEPEND="${CDEPEND}
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		sys-apps/texinfo
+		app-text/xmlto
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	DEPEND="${DEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	python? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.18.0_rc1-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use python ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex python '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		grep -q getdelim "${ROOT%/}"/usr/include/stdio.h && \
+			myopts+=( HAVE_GETDELIM=1 )
+	fi
+
+	has_version '>=app-text/asciidoc-8.0' \
+		&& myopts+=( ASCIIDOC8=YesPlease )
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use python && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			git_emake svn-fe.{1,html} \
+				|| die "emake svn-fe.1 svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake
+	use doc && git_emake doc
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake \
+		install || \
+		die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED%/}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install git-subtree"
+	if use doc ; then
+		git_emake install-man install-doc || die "Failed to emake install-doc install-mangit-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED%/}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym /usr/share/gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED%/}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED%/}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED%/}"/usr/libexec/git-core/git-svn \
+			"${ED%/}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED%/}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED%/}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[ ${rc} -eq 0 ] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-vcs/git/git-2.23.1-r1.ebuild b/dev-vcs/git/git-2.23.1-r1.ebuild
new file mode 100644
index 00000000000..7603e0fc91b
--- /dev/null
+++ b/dev-vcs/git/git-2.23.1-r1.ebuild
@@ -0,0 +1,725 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+CDEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( virtual/emacs )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${CDEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+DEPEND="${CDEPEND}
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	DEPEND="${DEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+
+	"${FILESDIR}"/git-2.23.0-avoid_empty_remote_line.patch #698384
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		grep -q getdelim "${ROOT%/}"/usr/include/stdio.h && \
+			myopts+=( HAVE_GETDELIM=1 )
+	fi
+
+	has_version '>=app-text/asciidoc-8.0' \
+		&& myopts+=( ASCIIDOC8=YesPlease )
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED%/}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED%/}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym /usr/share/gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED%/}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED%/}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED%/}"/usr/libexec/git-core/git-svn \
+			"${ED%/}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED%/}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED%/}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[ ${rc} -eq 0 ] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}

diff --git a/dev-vcs/git/git-2.24.1.ebuild b/dev-vcs/git/git-2.24.1.ebuild
new file mode 100644
index 00000000000..4bee6fa6ca9
--- /dev/null
+++ b/dev-vcs/git/git-2.24.1.ebuild
@@ -0,0 +1,728 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+GENTOO_DEPEND_ON_PERL=no
+
+# bug #329479: git-remote-testgit is not multiple-version aware
+PYTHON_COMPAT=( python{2_7,3_{5,6,7}} )
+
+inherit toolchain-funcs elisp-common l10n perl-module bash-completion-r1 python-single-r1 systemd
+
+PLOCALES="bg ca de es fr is it ko pt_PT ru sv vi zh_CN"
+if [[ ${PV} == *9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="git://git.kernel.org/pub/scm/git/git.git"
+	# Please ensure that all _four_ 9999 ebuilds get updated; they track the 4 upstream branches.
+	# See https://git-scm.com/docs/gitworkflows#_graduation
+	# In order of stability:
+	# 9999-r0: maint
+	# 9999-r1: master
+	# 9999-r2: next
+	# 9999-r3: pu
+	case "${PVR}" in
+		9999) EGIT_BRANCH=maint ;;
+		9999-r1) EGIT_BRANCH=master ;;
+		9999-r2) EGIT_BRANCH=next;;
+		9999-r3) EGIT_BRANCH=pu ;;
+	esac
+fi
+
+MY_PV="${PV/_rc/.rc}"
+MY_P="${PN}-${MY_PV}"
+
+DOC_VER="${MY_PV}"
+
+DESCRIPTION="stupid content tracker: distributed VCS designed for speed and efficiency"
+HOMEPAGE="https://www.git-scm.com/"
+if [[ ${PV} != *9999 ]]; then
+	SRC_URI_SUFFIX="xz"
+	SRC_URI_KORG="https://www.kernel.org/pub/software/scm/git"
+	[[ "${PV/rc}" != "${PV}" ]] && SRC_URI_KORG+='/testing'
+	SRC_URI="${SRC_URI_KORG}/${MY_P}.tar.${SRC_URI_SUFFIX}
+			${SRC_URI_KORG}/${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			doc? (
+			${SRC_URI_KORG}/${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			)"
+	[[ "${PV}" == *_rc* ]] || \
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="+blksha1 +curl cgi doc emacs gnome-keyring +gpg highlight +iconv libressl mediawiki mediawiki-experimental +nls +pcre +pcre-jit perforce +perl ppcsha1 tk +threads +webdav xinetd cvs subversion test"
+
+# Common to both DEPEND and RDEPEND
+DEPEND="
+	gnome-keyring? ( app-crypt/libsecret )
+	!libressl? ( dev-libs/openssl:0= )
+	libressl? ( dev-libs/libressl:= )
+	sys-libs/zlib
+	pcre? (
+		pcre-jit? ( dev-libs/libpcre2[jit(+)] )
+		!pcre-jit? ( dev-libs/libpcre )
+	)
+	perl? ( dev-lang/perl:=[-build(-)] )
+	tk? ( dev-lang/tk:0= )
+	curl? (
+		net-misc/curl
+		webdav? ( dev-libs/expat )
+	)
+	emacs? ( virtual/emacs )
+	iconv? ( virtual/libiconv )
+"
+
+RDEPEND="${DEPEND}
+	gpg? ( app-crypt/gnupg )
+	perl? (
+		dev-perl/Error
+		dev-perl/MailTools
+		dev-perl/Authen-SASL
+		cgi? (
+			dev-perl/CGI
+			highlight? ( app-text/highlight )
+		)
+		cvs? (
+			>=dev-vcs/cvsps-2.1:0
+			dev-perl/DBI
+			dev-perl/DBD-SQLite
+		)
+		mediawiki? (
+			dev-perl/DateTime-Format-ISO8601
+			dev-perl/HTML-Tree
+			dev-perl/MediaWiki-API
+		)
+		subversion? (
+			dev-vcs/subversion[-dso,perl]
+			dev-perl/libwww-perl
+			dev-perl/TermReadKey
+		)
+	)
+	perforce? ( ${PYTHON_DEPS} )
+"
+
+# This is how info docs are created with Git:
+#   .txt/asciidoc --(asciidoc)---------> .xml/docbook
+#   .xml/docbook  --(docbook2texi.pl)--> .texi
+#   .texi         --(makeinfo)---------> .info
+BDEPEND="
+	doc? (
+		app-text/asciidoc
+		app-text/docbook2X
+		app-text/xmlto
+		sys-apps/texinfo
+	)
+	nls? ( sys-devel/gettext )
+	test? (	app-crypt/gnupg	)
+"
+
+# Live ebuild builds man pages and HTML docs, additionally
+if [[ ${PV} == *9999 ]]; then
+	BDEPEND="${BDEPEND}
+		app-text/asciidoc"
+fi
+
+SITEFILE="50${PN}-gentoo.el"
+S="${WORKDIR}/${MY_P}"
+
+REQUIRED_USE="
+	cgi? ( perl )
+	cvs? ( perl )
+	mediawiki? ( perl )
+	mediawiki-experimental? ( mediawiki )
+	subversion? ( perl )
+	webdav? ( curl )
+	pcre-jit? ( pcre )
+	perforce? ( ${PYTHON_REQUIRED_USE} )
+"
+
+RESTRICT="!test? ( test )"
+
+PATCHES=(
+	# bug #350330 - automagic CVS when we don't want it is bad.
+	"${FILESDIR}"/git-2.22.0_rc0-optional-cvs.patch
+
+	"${FILESDIR}"/git-2.2.0-svn-fe-linking.patch
+
+	# Make submodule output quiet
+	"${FILESDIR}"/git-2.21.0-quiet-submodules-testcase.patch
+)
+
+pkg_setup() {
+	if use subversion && has_version "dev-vcs/subversion[dso]"; then
+		ewarn "Per Gentoo bugs #223747, #238586, when subversion is built"
+		ewarn "with USE=dso, there may be weird crashes in git-svn. You"
+		ewarn "have been warned."
+	fi
+	if use perforce ; then
+		python-single-r1_pkg_setup
+	fi
+}
+
+# This is needed because for some obscure reasons future calls to make don't
+# pick up these exports if we export them in src_unpack()
+exportmakeopts() {
+	local extlibs myopts
+
+	myopts=(
+		ASCIIDOC_NO_ROFF=YesPlease
+		$(usex cvs '' NO_CVS=YesPlease)
+		$(usex elibc_musl NO_REGEX=YesPlease '')
+		$(usex iconv '' NO_ICONV=YesPlease)
+		$(usex nls '' NO_GETTEXT=YesPlease)
+		$(usex perl 'INSTALLDIRS=vendor NO_PERL_CPAN_FALLBACKS=YesPlease' NO_PERL=YesPlease)
+		$(usex perforce '' NO_PYTHON=YesPlease)
+		$(usex subversion '' NO_SVN_TESTS=YesPlease)
+		$(usex threads '' NO_PTHREAD=YesPlease)
+		$(usex tk '' NO_TCLTK=YesPlease)
+	)
+
+	if use blksha1 ; then
+		myopts+=( BLK_SHA1=YesPlease )
+	elif use ppcsha1 ; then
+		myopts+=( PPC_SHA1=YesPlease )
+	fi
+
+	if use curl ; then
+		use webdav || myopts+=( NO_EXPAT=YesPlease )
+	else
+		myopts+=( NO_CURL=YesPlease )
+	fi
+
+	# broken assumptions, because of static build system ...
+	myopts+=(
+		NO_FINK=YesPlease
+		NO_DARWIN_PORTS=YesPlease
+		INSTALL=install
+		TAR=tar
+		SHELL_PATH="${EPREFIX}/bin/sh"
+		SANE_TOOL_PATH=
+		OLD_ICONV=
+		NO_EXTERNAL_GREP=
+	)
+
+	# For svn-fe
+	extlibs=( -lz -lssl ${S}/xdiff/lib.a $(usex threads -lpthread '') )
+
+	# can't define this to null, since the entire makefile depends on it
+	sed -i -e '/\/usr\/local/s/BASIC_/#BASIC_/' Makefile || die
+
+	if use pcre; then
+		if use pcre-jit; then
+			myopts+=( USE_LIBPCRE2=YesPlease )
+			extlibs+=( -lpcre2-8 )
+		else
+			myopts+=(
+				USE_LIBPCRE1=YesPlease
+				NO_LIBPCRE1_JIT=YesPlease
+			)
+			extlibs+=( -lpcre )
+		fi
+	fi
+# Disabled until ~m68k-mint can be keyworded again
+#	if [[ ${CHOST} == *-mint* ]] ; then
+#		myopts+=(
+#			NO_MMAP=YesPlease
+#			NO_IPV6=YesPlease
+#			NO_STRLCPY=YesPlease
+#			NO_MEMMEM=YesPlease
+#			NO_MKDTEMP=YesPlease
+#			NO_MKSTEMPS=YesPlease
+#		)
+#	fi
+	if [[ ${CHOST} == ia64-*-hpux* ]]; then
+		myopts+=( NO_NSEC=YesPlease )
+	fi
+	if [[ ${CHOST} == *-*-aix* ]]; then
+		myopts+=( NO_FNMATCH_CASEFOLD=YesPlease )
+	fi
+	if [[ ${CHOST} == *-solaris* ]]; then
+		myopts+=(
+			NEEDS_LIBICONV=YesPlease
+			HAVE_CLOCK_MONOTONIC=1
+		)
+		if grep -q getdelim "${EROOT}"/usr/include/stdio.h ; then
+			myopts+=( HAVE_GETDELIM=1 )
+		fi
+	fi
+
+	if has_version '>=app-text/asciidoc-8.0' ; then
+		myopts+=( ASCIIDOC8=YesPlease )
+	fi
+
+	# Bug 290465:
+	# builtin-fetch-pack.c:816: error: 'struct stat' has no member named 'st_mtim'
+	if [[ "${CHOST}" == *-uclibc* ]] ; then
+		myopts+=( NO_NSEC=YesPlease )
+		use iconv && myopts+=( NEEDS_LIBICONV=YesPlease )
+	fi
+
+	export MY_MAKEOPTS="${myopts[@]}"
+	export EXTLIBS="${extlibs[@]}"
+}
+
+src_unpack() {
+	if [[ ${PV} != *9999 ]]; then
+		unpack ${MY_P}.tar.${SRC_URI_SUFFIX}
+		cd "${S}" || die
+		unpack ${PN}-manpages-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+		if use doc ; then
+			pushd "${S}"/Documentation &>/dev/null || die
+			unpack ${PN}-htmldocs-${DOC_VER}.tar.${SRC_URI_SUFFIX}
+			popd &>/dev/null || die
+		fi
+	else
+		git-r3_src_unpack
+		#cp "${FILESDIR}"/GIT-VERSION-GEN .
+	fi
+
+}
+
+src_prepare() {
+	# add experimental patches to improve mediawiki support
+	# see patches for origin
+	if use mediawiki-experimental ; then
+		PATCHES+=(
+			"${FILESDIR}"/git-2.7.0-mediawiki-namespaces.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-subpages.patch
+			"${FILESDIR}"/git-2.7.0-mediawiki-500pages.patch
+		)
+	fi
+
+	default
+
+	sed -i \
+		-e 's:^\(CFLAGS[[:space:]]*=\).*$:\1 $(OPTCFLAGS) -Wall:' \
+		-e 's:^\(LDFLAGS[[:space:]]*=\).*$:\1 $(OPTLDFLAGS):' \
+		-e 's:^\(CC[[:space:]]* =\).*$:\1$(OPTCC):' \
+		-e 's:^\(AR[[:space:]]* =\).*$:\1$(OPTAR):' \
+		-e "s:\(PYTHON_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		-e "s:\(PERL_PATH[[:space:]]\+=[[:space:]]\+\)\(.*\)$:\1${EPREFIX}\2:" \
+		Makefile contrib/svn-fe/Makefile || die
+
+	# Fix docbook2texi command
+	sed -r -i 's/DOCBOOK2X_TEXI[[:space:]]*=[[:space:]]*docbook2x-texi/DOCBOOK2X_TEXI = docbook2texi.pl/' \
+		Documentation/Makefile || die
+}
+
+git_emake() {
+	# bug #320647: PYTHON_PATH
+	local PYTHON_PATH=""
+	use perforce && PYTHON_PATH="${PYTHON}"
+	emake ${MY_MAKEOPTS} \
+		prefix="${EPREFIX}"/usr \
+		htmldir="${EPREFIX}"/usr/share/doc/${PF}/html \
+		perllibdir="$(use perl && perl_get_raw_vendorlib)" \
+		sysconfdir="${EPREFIX}"/etc \
+		DESTDIR="${D}" \
+		GIT_TEST_OPTS="--no-color" \
+		OPTAR="$(tc-getAR)" \
+		OPTCC="$(tc-getCC)" \
+		OPTCFLAGS="${CFLAGS}" \
+		OPTLDFLAGS="${LDFLAGS}" \
+		PERL_PATH="${EPREFIX}/usr/bin/perl" \
+		PERL_MM_OPT="" \
+		PYTHON_PATH="${PYTHON_PATH}" \
+		V=1 \
+		"$@"
+}
+
+src_configure() {
+	exportmakeopts
+}
+
+src_compile() {
+	git_emake || die "emake failed"
+
+	if use emacs ; then
+		elisp-compile contrib/emacs/git{,-blame}.el
+	fi
+
+	if use perl && use cgi ; then
+		git_emake \
+			gitweb \
+			|| die "emake gitweb (cgi) failed"
+	fi
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		pushd contrib/credential/osxkeychain &>/dev/null || die
+		git_emake CC=$(tc-getCC) CFLAGS="${CFLAGS}" \
+			|| die "emake credential-osxkeychain"
+		popd &>/dev/null || die
+	fi
+
+	pushd Documentation &>/dev/null || die
+	if [[ ${PV} == *9999 ]] ; then
+		git_emake man \
+			|| die "emake man failed"
+		if use doc ; then
+			git_emake info html \
+				|| die "emake info html failed"
+		fi
+	else
+		if use doc ; then
+			git_emake info \
+				|| die "emake info html failed"
+		fi
+	fi
+	popd &>/dev/null || die
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		# by defining EXTLIBS we override the detection for libintl and
+		# libiconv, bug #516168
+		local nlsiconv=()
+		use nls && use !elibc_glibc && nlsiconv+=( -lintl )
+		use iconv && use !elibc_glibc && nlsiconv+=( -liconv )
+		git_emake EXTLIBS="${EXTLIBS} ${nlsiconv[@]}" \
+			|| die "emake svn-fe failed"
+		if use doc ; then
+			# svn-fe.1 requires the full USE=doc dependency stack
+			git_emake svn-fe.1 \
+				|| die "emake svn-fe.1 failed"
+			git_emake svn-fe.html \
+				|| die "svn-fe.html failed"
+		fi
+		popd &>/dev/null || die
+	fi
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		git_emake || die "emake git-credential-libsecret failed"
+		popd &>/dev/null || die
+	fi
+
+	pushd contrib/subtree &>/dev/null || die
+	git_emake git-subtree
+	# git-subtree.1 requires the full USE=doc dependency stack
+	use doc && git_emake git-subtree.html git-subtree.1
+	popd &>/dev/null || die
+
+	pushd contrib/diff-highlight &>/dev/null || die
+	git_emake
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake
+		popd &>/dev/null || die
+
+	fi
+}
+
+src_install() {
+	git_emake install || die "make install failed"
+
+	if [[ ${CHOST} == *-darwin* ]]; then
+		dobin contrib/credential/osxkeychain/git-credential-osxkeychain
+	fi
+
+	# Depending on the tarball and manual rebuild of the documentation, the
+	# manpages may exist in either OR both of these directories.
+	find man?/*.[157] >/dev/null 2>&1 && doman man?/*.[157]
+	find Documentation/*.[157] >/dev/null 2>&1 && doman Documentation/*.[157]
+	dodoc README* Documentation/{SubmittingPatches,CodingGuidelines}
+	use doc && dodir /usr/share/doc/${PF}/html
+	local d
+	for d in / /howto/ /technical/ ; do
+		docinto ${d}
+		dodoc Documentation${d}*.txt
+		if use doc ; then
+			docinto ${d}/html
+			dodoc Documentation${d}*.html
+		fi
+	done
+	docinto /
+	# Upstream does not ship this pre-built :-(
+	use doc && doinfo Documentation/{git,gitman}.info
+
+	newbashcomp contrib/completion/git-completion.bash ${PN}
+	bashcomp_alias git gitk
+	# Not really a bash-completion file (bug #477920)
+	# but still needed uncompressed (bug #507480)
+	insinto /usr/share/${PN}
+	doins contrib/completion/git-prompt.sh
+
+	if use emacs ; then
+		elisp-install ${PN} contrib/emacs/git.{el,elc}
+		elisp-install ${PN} contrib/emacs/git-blame.{el,elc}
+		#elisp-install ${PN}/compat contrib/emacs/vc-git.{el,elc}
+		# don't add automatically to the load-path, so the sitefile
+		# can do a conditional loading
+		touch "${ED}${SITELISP}/${PN}/compat/.nosearch"
+		elisp-site-file-install "${FILESDIR}"/${SITEFILE}
+	fi
+
+	#dobin contrib/fast-import/git-p4 # Moved upstream
+	#dodoc contrib/fast-import/git-p4.txt # Moved upstream
+	newbin contrib/fast-import/import-tars.perl import-tars
+	exeinto /usr/libexec/git-core/
+	newexe contrib/git-resurrect.sh git-resurrect
+
+	# git-subtree
+	pushd contrib/subtree &>/dev/null || die
+	git_emake install || die "Failed to emake install for git-subtree"
+	if use doc ; then
+		# Do not move git subtree install-man outside USE=doc!
+		git_emake install-man install-html || die "Failed to emake install-html install-man for git-subtree"
+	fi
+	newdoc README README.git-subtree
+	dodoc git-subtree.txt
+	popd &>/dev/null || die
+
+	if use mediawiki ; then
+		pushd contrib/mw-to-git &>/dev/null || die
+		git_emake install
+		popd &>/dev/null || die
+	fi
+
+	# diff-highlight
+	dobin contrib/diff-highlight/diff-highlight
+	newdoc contrib/diff-highlight/README README.diff-highlight
+
+	# git-jump
+	exeinto /usr/libexec/git-core/
+	doexe contrib/git-jump/git-jump
+	newdoc contrib/git-jump/README git-jump.txt
+
+	# git-contacts
+	exeinto /usr/libexec/git-core/
+	doexe contrib/contacts/git-contacts
+	dodoc contrib/contacts/git-contacts.txt
+
+	if use gnome-keyring ; then
+		pushd contrib/credential/libsecret &>/dev/null || die
+		dobin git-credential-libsecret
+		popd &>/dev/null || die
+	fi
+
+	if use subversion ; then
+		pushd contrib/svn-fe &>/dev/null || die
+		dobin svn-fe
+		dodoc svn-fe.txt
+		if use doc ; then
+			# Do not move svn-fe.1 outside USE=doc!
+			doman svn-fe.1
+			docinto html
+			dodoc svn-fe.html
+		fi
+		popd &>/dev/null || die
+	fi
+
+	dodir /usr/share/${PN}/contrib
+	# The following are excluded:
+	# completion - installed above
+	# diff-highlight - done above
+	# emacs - installed above
+	# examples - these are stuff that is not used in Git anymore actually
+	# git-jump - done above
+	# gitview - installed above
+	# p4import - excluded because fast-import has a better one
+	# patches - stuff the Git guys made to go upstream to other places
+	# persistent-https - TODO
+	# mw-to-git - TODO
+	# subtree - build  seperately
+	# svnimport - use git-svn
+	# thunderbird-patch-inline - fixes thunderbird
+	local contrib_objects=(
+		buildsystems
+		fast-import
+		hg-to-git
+		hooks
+		remotes2config.sh
+		rerere-train.sh
+		stats
+		workdir
+	)
+	local i
+	for i in "${contrib_objects[@]}" ; do
+		cp -rf \
+			"${S}"/contrib/${i} \
+			"${ED}"/usr/share/${PN}/contrib \
+			|| die "Failed contrib ${i}"
+	done
+
+	if use perl && use cgi ; then
+		# We used to install in /usr/share/${PN}/gitweb
+		# but upstream installs in /usr/share/gitweb
+		# so we will install a symlink and use their location for compat with other
+		# distros
+		dosym ../gitweb /usr/share/${PN}/gitweb
+
+		# INSTALL discusses configuration issues, not just installation
+		docinto /
+		newdoc  "${S}"/gitweb/INSTALL INSTALL.gitweb
+		newdoc  "${S}"/gitweb/README README.gitweb
+
+		for d in "${ED}"/usr/lib{,64}/perl5/ ; do
+			if test -d "${d}" ; then find "${d}" \
+				-name .packlist \
+				-delete || die
+			fi
+		done
+	else
+		rm -rf "${ED}"/usr/share/gitweb
+	fi
+
+	if ! use subversion ; then
+		rm -f "${ED}"/usr/libexec/git-core/git-svn \
+			"${ED}"/usr/share/man/man1/git-svn.1*
+	fi
+
+	if use xinetd ; then
+		insinto /etc/xinetd.d
+		newins "${FILESDIR}"/git-daemon.xinetd git-daemon
+	fi
+
+	if use !prefix ; then
+		newinitd "${FILESDIR}"/git-daemon-r1.initd git-daemon
+		newconfd "${FILESDIR}"/git-daemon.confd git-daemon
+		systemd_newunit "${FILESDIR}/git-daemon_at-r1.service" "git-daemon@.service"
+		systemd_dounit "${FILESDIR}/git-daemon.socket"
+	fi
+
+	perl_delete_localpod
+
+	# Remove disabled linguas
+	# we could remove sources in src_prepare, but install does not
+	# handle missing locale dir well
+	rm_loc() {
+		if [[ -e "${ED}/usr/share/locale/${1}" ]]; then
+			rm -r "${ED}/usr/share/locale/${1}" || die
+		fi
+	}
+	l10n_for_each_disabled_locale_do rm_loc
+}
+
+src_test() {
+	local disabled=()
+	local tests_cvs=(
+		t9200-git-cvsexportcommit.sh
+		t9400-git-cvsserver-server.sh
+		t9401-git-cvsserver-crlf.sh
+		t9402-git-cvsserver-refs.sh
+		t9600-cvsimport.sh
+		t9601-cvsimport-vendor-branch.sh
+		t9602-cvsimport-branches-tags.sh
+		t9603-cvsimport-patchsets.sh
+		t9604-cvsimport-timestamps.sh
+	)
+	local tests_perl=(
+		t3701-add-interactive.sh
+		t5502-quickfetch.sh
+		t5512-ls-remote.sh
+		t5520-pull.sh
+		t7106-reset-unborn-branch.sh
+		t7501-commit.sh
+	)
+	# Bug #225601 - t0004 is not suitable for root perm
+	# Bug #219839 - t1004 is not suitable for root perm
+	# t0001-init.sh - check for init notices EPERM*  fails
+	local tests_nonroot=(
+		t0001-init.sh
+		t0004-unwritable.sh
+		t0070-fundamental.sh
+		t1004-read-tree-m-u-wf.sh
+		t3700-add.sh
+		t7300-clean.sh
+	)
+	# t9100 still fails with symlinks in SVN 1.7
+	local test_svn=( t9100-git-svn-basic.sh )
+
+	# Unzip is used only for the testcase code, not by any normal parts of Git.
+	if ! has_version app-arch/unzip ; then
+		einfo "Disabling tar-tree tests"
+		disabled+=( t5000-tar-tree.sh )
+	fi
+
+	local cvs=0
+	use cvs && let cvs=${cvs}+1
+	if [[ ${EUID} -eq 0 ]]; then
+		if [[ ${cvs} -eq 1 ]]; then
+			ewarn "Skipping CVS tests because CVS does not work as root!"
+			ewarn "You should retest with FEATURES=userpriv!"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+		einfo "Skipping other tests that require being non-root"
+		disabled+=( ${tests_nonroot[@]} )
+	else
+		[[ ${cvs} -gt 0 ]] && \
+			has_version dev-vcs/cvs && \
+			let cvs=${cvs}+1
+		[[ ${cvs} -gt 1 ]] && \
+			has_version "dev-vcs/cvs[server]" && \
+			let cvs=${cvs}+1
+		if [[ ${cvs} -lt 3 ]]; then
+			einfo "Disabling CVS tests (needs dev-vcs/cvs[USE=server])"
+			disabled+=( ${tests_cvs[@]} )
+		fi
+	fi
+
+	if ! use perl ; then
+		einfo "Disabling tests that need Perl"
+		disabled+=( ${tests_perl[@]} )
+	fi
+
+	einfo "Disabling tests that fail with SVN 1.7"
+	disabled+=( ${test_svn[@]} )
+
+	# Reset all previously disabled tests
+	pushd t &>/dev/null || die
+	local i
+	for i in *.sh.DISABLED ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i%.DISABLED}"
+	done
+	einfo "Disabled tests:"
+	for i in ${disabled[@]} ; do
+		[[ -f "${i}" ]] && mv -f "${i}" "${i}.DISABLED" && einfo "Disabled ${i}"
+	done
+
+	# Avoid the test system removing the results because we want them ourselves
+	sed -e '/^[[:space:]]*$(MAKE) clean/s,^,#,g' \
+		-i Makefile || die
+
+	# Clean old results first, must always run
+	nonfatal git_emake clean
+	popd &>/dev/null || die
+
+	# Now run the tests, keep going if we hit an error, and don't terminate on
+	# failure
+	local rc
+	einfo "Start test run"
+	#MAKEOPTS=-j1
+	nonfatal git_emake --keep-going test
+	rc=$?
+
+	# Display nice results, now print the results
+	pushd t &>/dev/null || die
+	nonfatal git_emake aggregate-results
+
+	# And bail if there was a problem
+	[[ ${rc} -eq 0 ]] || die "tests failed. Please file a bug."
+}
+
+showpkgdeps() {
+	local pkg=$1
+	shift
+	elog "  $(printf "%-17s:" ${pkg}) ${@}"
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+	elog "Please read /usr/share/bash-completion/completions/git for Git bash command"
+	elog "completion."
+	elog "Please read /usr/share/git/git-prompt.sh for Git bash prompt"
+	elog "Note that the prompt bash code is now in that separate script"
+	elog "These additional scripts need some dependencies:"
+	echo
+	showpkgdeps git-quiltimport "dev-util/quilt"
+	showpkgdeps git-instaweb \
+		"|| ( www-servers/lighttpd www-servers/apache www-servers/nginx )"
+	echo
+	use mediawiki-experimental && ewarn "Using experimental git-mediawiki patches. The stability of cloned wiki filesystems is not guaranteed."
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}


             reply	other threads:[~2019-12-10 19:36 UTC|newest]

Thread overview: 731+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-12-10 19:36 Robin H. Johnson [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-11-16 23:27 [gentoo-commits] repo/gentoo:master commit in: dev-vcs/git/ Sam James
2024-11-02  2:37 Sam James
2024-10-08 18:36 Sam James
2024-10-08 18:36 Sam James
2024-10-08 17:38 Sam James
2024-09-25 14:50 Sam James
2024-09-24 15:03 Arthur Zamarin
2024-09-22 17:22 Arthur Zamarin
2024-09-22 17:22 Arthur Zamarin
2024-09-22 16:01 Sam James
2024-09-22 16:01 Sam James
2024-09-22 16:01 Sam James
2024-09-22 16:01 Sam James
2024-09-22 11:28 Sam James
2024-09-22 11:27 Sam James
2024-09-22 11:27 Sam James
2024-09-22 11:06 Sam James
2024-09-22 11:06 Sam James
2024-09-22 11:06 Sam James
2024-09-22 11:06 Sam James
2024-09-20  8:39 Sam James
2024-08-14 14:28 Sam James
2024-08-10  6:30 Michał Górny
2024-08-10  5:27 Michał Górny
2024-08-09  8:50 Jakov Smolić
2024-08-07 14:15 James Le Cuirot
2024-07-05  9:17 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:53 Arthur Zamarin
2024-06-25 15:52 Arthur Zamarin
2024-06-19 18:42 Sam James
2024-06-16 19:11 Arthur Zamarin
2024-06-16 19:11 Arthur Zamarin
2024-06-16 19:11 Arthur Zamarin
2024-06-16 19:11 Arthur Zamarin
2024-06-16 19:11 Arthur Zamarin
2024-06-01  3:56 Sam James
2024-06-01  3:44 Sam James
2024-06-01  3:44 Sam James
2024-06-01  3:31 Sam James
2024-06-01  3:07 Sam James
2024-06-01  3:07 Sam James
2024-06-01  3:07 Sam James
2024-06-01  2:25 Sam James
2024-06-01  2:25 Sam James
2024-06-01  2:25 Sam James
2024-06-01  2:25 Sam James
2024-06-01  1:38 Sam James
2024-06-01  1:38 Sam James
2024-06-01  1:27 Sam James
2024-06-01  1:27 Sam James
2024-06-01  0:50 Sam James
2024-06-01  0:50 Sam James
2024-06-01  0:50 Sam James
2024-06-01  0:50 Sam James
2024-06-01  0:50 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  2:20 Sam James
2024-05-16  1:12 Sam James
2024-05-16  1:12 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:51 Sam James
2024-05-16  0:09 Sam James
2024-05-16  0:08 Sam James
2024-05-16  0:08 Sam James
2024-05-16  0:08 Sam James
2024-05-15 12:06 Sam James
2024-05-15 12:06 Sam James
2024-05-15 12:06 Sam James
2024-05-15 12:06 Sam James
2024-05-15 12:06 Sam James
2024-04-29 18:11 Sam James
2024-04-25  8:55 Sam James
2024-03-26 20:17 Ionen Wolkens
2024-03-10  9:02 Arthur Zamarin
2024-03-10  5:42 Sam James
2024-03-10  5:42 Sam James
2024-03-10  5:42 Sam James
2024-03-10  5:42 Sam James
2024-03-10  5:42 Sam James
2024-03-10  5:42 Sam James
2024-03-04 11:32 Sam James
2024-02-26  7:52 Fabian Groffen
2024-02-25  7:16 Sam James
2024-02-22  4:45 Ionen Wolkens
2024-02-16  1:26 Sam James
2024-02-12 16:25 Sam James
2024-02-02  1:02 Sam James
2024-01-23  5:43 Sam James
2024-01-12 18:20 Sam James
2024-01-12 14:04 Sam James
2024-01-12  8:17 Arthur Zamarin
2024-01-12  8:17 Arthur Zamarin
2023-12-28  4:56 Sam James
2023-11-20 18:34 Sam James
2023-11-01 21:05 Robin H. Johnson
2023-08-25 17:00 Arthur Zamarin
2023-08-25 16:59 Arthur Zamarin
2023-08-21 18:35 Sam James
2023-08-11  3:26 Sam James
2023-08-04 20:20 Arthur Zamarin
2023-07-18 19:18 Sam James
2023-07-08  3:39 Sam James
2023-07-07 10:14 Sam James
2023-07-07 10:14 Sam James
2023-07-07  4:47 Sam James
2023-07-07  4:40 Sam James
2023-06-01 22:39 Sam James
2023-05-30 18:47 Arthur Zamarin
2023-05-18 12:17 Andreas Sturmlechner
2023-05-04 15:05 Arthur Zamarin
2023-05-04 15:05 Arthur Zamarin
2023-05-04 15:05 Arthur Zamarin
2023-05-04 15:04 Arthur Zamarin
2023-05-04 15:04 Arthur Zamarin
2023-05-04 12:45 Sam James
2023-05-04 12:35 Arthur Zamarin
2023-05-04 11:20 Arthur Zamarin
2023-05-04 10:52 Sam James
2023-04-25 23:17 Sam James
2023-04-25 23:17 Sam James
2023-04-09  3:42 Sam James
2023-03-13 21:14 Sam James
2023-03-07 15:49 Sam James
2023-02-26 18:25 Arthur Zamarin
2023-02-25  5:49 Robin H. Johnson
2023-02-20 21:31 Arthur Zamarin
2023-02-16  3:29 Sam James
2023-02-15 19:22 Arthur Zamarin
2023-02-15 19:22 Arthur Zamarin
2023-02-15 19:22 Arthur Zamarin
2023-02-15  5:05 Sam James
2023-02-15  5:05 Sam James
2023-02-15  5:05 Sam James
2023-02-15  5:03 Sam James
2023-02-15  5:03 Sam James
2023-02-15  5:03 Sam James
2023-02-15  5:03 Sam James
2023-02-15  5:03 Sam James
2023-02-15  5:03 Sam James
2023-02-15  4:06 Sam James
2023-02-15  4:06 Sam James
2023-02-15  4:06 Sam James
2023-02-15  4:06 Sam James
2023-02-15  4:06 Sam James
2023-02-15  4:06 Sam James
2023-02-15  1:39 Sam James
2023-02-15  1:39 Sam James
2023-02-15  1:39 Sam James
2023-01-21 19:28 Arthur Zamarin
2023-01-21 19:28 Arthur Zamarin
2023-01-21 19:28 Arthur Zamarin
2023-01-21 19:28 Arthur Zamarin
2023-01-21 19:28 Arthur Zamarin
2023-01-21 19:28 Arthur Zamarin
2023-01-21 15:54 Arthur Zamarin
2023-01-21 15:54 Arthur Zamarin
2023-01-21 15:54 Arthur Zamarin
2023-01-18  0:46 Sam James
2023-01-18  0:46 Sam James
2023-01-18  0:46 Sam James
2023-01-17 23:20 Sam James
2023-01-17 23:20 Sam James
2023-01-17 23:20 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2023-01-17 23:19 Sam James
2022-12-16 20:50 Arthur Zamarin
2022-12-16 20:50 Arthur Zamarin
2022-12-16  7:38 Sam James
2022-12-16  7:38 Sam James
2022-12-12 17:47 Sam James
2022-12-11  7:07 Robin H. Johnson
2022-12-09 22:43 Andreas K. Hüttel
2022-12-09 22:36 Andreas K. Hüttel
2022-12-06  6:39 Sam James
2022-11-30  9:22 Sam James
2022-11-30  7:48 Sam James
2022-11-24  5:00 Sam James
2022-11-18  7:23 Arthur Zamarin
2022-10-22 15:00 Arthur Zamarin
2022-10-20 10:56 Jakov Smolić
2022-10-20 10:52 Jakov Smolić
2022-10-19  6:36 Agostino Sarubbo
2022-10-19  6:36 Agostino Sarubbo
2022-10-19  0:28 Sam James
2022-10-19  0:01 Sam James
2022-10-19  0:01 Sam James
2022-10-18 17:58 Robin H. Johnson
2022-10-11 18:26 Sam James
2022-10-11  9:19 Agostino Sarubbo
2022-10-11  9:19 Agostino Sarubbo
2022-10-11  6:46 Agostino Sarubbo
2022-10-10 23:36 Sam James
2022-10-10 23:36 Sam James
2022-10-10 22:35 Sam James
2022-10-04  0:07 Sam James
2022-09-28 19:36 Sam James
2022-09-23  5:41 Sam James
2022-09-16 23:25 Sam James
2022-09-16 23:25 Sam James
2022-08-30 19:36 Sam James
2022-08-12 15:46 Sam James
2022-07-28 13:59 Sam James
2022-07-13  4:32 Sam James
2022-07-03 13:48 Sam James
2022-07-03 13:48 Sam James
2022-06-23  6:23 Lars Wendler
2022-05-07 11:17 Lars Wendler
2022-04-27 21:14 Sam James
2022-04-18 20:09 Lars Wendler
2022-04-14  6:45 Lars Wendler
2022-04-12 21:26 Lars Wendler
2022-04-12 21:22 Lars Wendler
2022-04-12 21:22 Lars Wendler
2022-04-08 14:33 Arthur Zamarin
2022-04-08 14:33 Arthur Zamarin
2022-04-02 12:04 Arthur Zamarin
2022-04-01  6:53 Arthur Zamarin
2022-03-30 11:48 Agostino Sarubbo
2022-03-28  6:52 Agostino Sarubbo
2022-03-28  6:52 Agostino Sarubbo
2022-03-28  0:19 Sam James
2022-01-29 13:23 Lars Wendler
2022-01-24 22:35 Lars Wendler
2022-01-20  8:00 Lars Wendler
2022-01-16  9:34 Fabian Groffen
2022-01-15 18:36 Lars Wendler
2022-01-10 22:41 Lars Wendler
2021-12-31  0:46 Sam James
2021-12-31  0:46 Sam James
2021-12-30 13:10 Sam James
2021-12-30  5:49 Sam James
2021-12-28 10:20 Sam James
2021-12-28  9:02 Jakov Smolić
2021-12-28  9:02 Jakov Smolić
2021-12-28  7:03 Sam James
2021-12-27 22:26 Sam James
2021-12-27 14:14 Agostino Sarubbo
2021-12-26  8:07 Agostino Sarubbo
2021-12-25 17:52 Arthur Zamarin
2021-12-25 17:52 Arthur Zamarin
2021-12-25 17:45 Arthur Zamarin
2021-12-25 17:43 Arthur Zamarin
2021-12-06  9:01 Lars Wendler
2021-11-25  9:17 Lars Wendler
2021-11-15 18:38 Mike Gilbert
2021-11-15 18:18 Robin H. Johnson
2021-11-15 17:49 Robin H. Johnson
2021-11-14  3:23 Sam James
2021-11-10  7:44 Lars Wendler
2021-11-10  6:33 Robin H. Johnson
2021-11-08 18:42 Mike Gilbert
2021-11-04 17:53 Lars Wendler
2021-11-04 17:53 Lars Wendler
2021-10-13  6:48 Lars Wendler
2021-10-13  6:48 Lars Wendler
2021-09-28 12:39 James Le Cuirot
2021-09-07 17:45 Sam James
2021-09-05  6:03 Sam James
2021-09-05  6:03 Sam James
2021-09-01 21:51 Sam James
2021-08-31 21:55 Sam James
2021-08-31 18:15 Sam James
2021-08-31 18:11 Sam James
2021-08-31 18:11 Sam James
2021-08-17 21:39 Sam James
2021-06-06 18:25 Lars Wendler
2021-06-02 14:05 Lars Wendler
2021-05-30  5:35 Sam James
2021-05-30  5:35 Sam James
2021-05-30  5:35 Sam James
2021-05-30  5:35 Sam James
2021-05-28 18:55 Lars Wendler
2021-05-27 16:51 Sergei Trofimovich
2021-05-25 11:16 Sam James
2021-05-25 11:10 Sam James
2021-05-25  0:55 Sam James
2021-05-22 15:36 Lars Wendler
2021-05-17  8:31 Lars Wendler
2021-05-17  8:31 Lars Wendler
2021-05-17  8:31 Lars Wendler
2021-04-30 22:18 Thomas Deutschmann
2021-04-30  9:54 Mikle Kolyada
2021-03-28 20:20 Sam James
2021-03-27 15:51 Lars Wendler
2021-03-26 11:50 Agostino Sarubbo
2021-03-26 11:34 Sam James
2021-03-25 23:17 Sam James
2021-03-22 18:17 Sergei Trofimovich
2021-03-22 10:07 David Seifert
2021-03-22 10:07 David Seifert
2021-03-22  0:10 Sam James
2021-03-19 18:57 Sergei Trofimovich
2021-03-19 18:06 Mikle Kolyada
2021-03-18  9:21 Lars Wendler
2021-03-18  9:21 Lars Wendler
2021-03-18  9:21 Lars Wendler
2021-03-16 13:37 Lars Wendler
2021-03-16 13:19 Lars Wendler
2021-03-16  0:39 Lars Wendler
2021-03-16  0:39 Lars Wendler
2021-03-09 21:18 Lars Wendler
2021-03-09 20:05 Robin H. Johnson
2021-03-05 10:04 Lars Wendler
2021-03-03 16:10 Lars Wendler
2021-02-26  9:30 Lars Wendler
2021-02-09 10:26 Lars Wendler
2021-02-09  9:50 Lars Wendler
2021-02-09  9:20 Lars Wendler
2021-01-06 22:58 Fabian Groffen
2020-12-28 19:44 Lars Wendler
2020-12-27 19:28 Fabian Groffen
2020-12-27 16:38 Fabian Groffen
2020-12-24 23:17 Lars Wendler
2020-12-19 18:09 Lars Wendler
2020-12-15  7:12 Lars Wendler
2020-12-07  4:46 Robin H. Johnson
2020-11-29 10:11 Fabian Groffen
2020-10-30  8:27 Lars Wendler
2020-10-26 17:08 Lars Wendler
2020-10-23 18:56 Lars Wendler
2020-10-19 20:22 Lars Wendler
2020-10-19 14:59 Lars Wendler
2020-10-19 14:59 Lars Wendler
2020-09-10 10:00 Lars Wendler
2020-07-27 18:16 Lars Wendler
2020-06-02  8:40 Lars Wendler
2020-05-27 10:54 Lars Wendler
2020-05-20 19:14 Lars Wendler
2020-05-19  8:04 Andreas K. Hüttel
2020-05-07 15:08 Michał Górny
2020-05-04 17:36 Thomas Deutschmann
2020-04-29  8:39 Lars Wendler
2020-04-26  8:58 Sergei Trofimovich
2020-04-26  8:58 Sergei Trofimovich
2020-04-26  8:58 Sergei Trofimovich
2020-04-26  8:58 Sergei Trofimovich
2020-04-23  6:29 Agostino Sarubbo
2020-04-23  6:27 Agostino Sarubbo
2020-04-23  6:26 Agostino Sarubbo
2020-04-23  6:24 Agostino Sarubbo
2020-04-23  6:21 Agostino Sarubbo
2020-04-22 17:07 Sergei Trofimovich
2020-04-22 17:07 Sergei Trofimovich
2020-04-22 17:07 Sergei Trofimovich
2020-04-22 17:07 Sergei Trofimovich
2020-04-22 13:46 Mikle Kolyada
2020-04-21 20:52 Mart Raudsepp
2020-04-21  8:24 Lars Wendler
2020-04-16 18:05 Sergei Trofimovich
2020-04-16 18:05 Sergei Trofimovich
2020-04-16 18:05 Sergei Trofimovich
2020-04-15 16:06 Lars Wendler
2020-04-15 14:33 Mart Raudsepp
2020-04-15 13:40 Agostino Sarubbo
2020-04-15 13:37 Agostino Sarubbo
2020-04-15 12:13 Agostino Sarubbo
2020-04-15  9:34 Agostino Sarubbo
2020-04-15  9:33 Agostino Sarubbo
2020-04-15  9:33 Agostino Sarubbo
2020-04-15  8:26 Agostino Sarubbo
2020-04-14 18:11 Robin H. Johnson
2020-03-23  9:11 Lars Wendler
2020-03-21 20:09 Lars Wendler
2020-03-18 10:40 Lars Wendler
2020-03-18 10:40 Lars Wendler
2020-03-15 12:54 Mikle Kolyada
2020-02-17  9:48 Lars Wendler
2020-02-12  9:35 Agostino Sarubbo
2020-01-14  8:07 Lars Wendler
2020-01-13 21:54 Robin H. Johnson
2020-01-03 13:57 Agostino Sarubbo
2019-12-25 20:39 Sergei Trofimovich
2019-12-25 20:39 Sergei Trofimovich
2019-12-24 14:06 Mikle Kolyada
2019-12-13  0:07 Thomas Deutschmann
2019-12-12 21:52 Sergei Trofimovich
2019-12-12 21:52 Sergei Trofimovich
2019-12-12  7:05 Sergei Trofimovich
2019-12-12  7:05 Sergei Trofimovich
2019-12-11 23:06 Matt Turner
2019-12-11 20:10 Sergei Trofimovich
2019-12-11 20:10 Sergei Trofimovich
2019-12-11 14:32 Aaron Bauman
2019-12-11 12:52 Mikle Kolyada
2019-12-10 20:20 Robin H. Johnson
2019-11-14 11:55 Agostino Sarubbo
2019-11-07 18:10 Aaron Bauman
2019-11-06  8:21 Lars Wendler
2019-11-04  8:49 Lars Wendler
2019-11-04  8:35 Michał Górny
2019-11-03 15:25 Lars Wendler
2019-11-03 15:06 Lars Wendler
2019-11-03 14:41 Lars Wendler
2019-11-01 10:39 Mikle Kolyada
2019-10-26 23:19 Thomas Deutschmann
2019-10-24 14:25 Lars Wendler
2019-10-21 19:21 Sergei Trofimovich
2019-10-21 12:11 Agostino Sarubbo
2019-10-21 12:09 Agostino Sarubbo
2019-10-21  8:15 Lars Wendler
2019-10-21  8:15 Lars Wendler
2019-10-20 14:25 Agostino Sarubbo
2019-10-19  2:31 Matt Turner
2019-10-19  2:19 Matt Turner
2019-10-19  2:19 Matt Turner
2019-10-18 10:25 Agostino Sarubbo
2019-08-18 23:02 Lars Wendler
2019-08-16 23:55 Matt Turner
2019-08-16 22:58 Matt Turner
2019-08-13  8:40 Lars Wendler
2019-08-11 18:57 Lars Wendler
2019-08-03 19:37 Lars Wendler
2019-08-03 18:32 Lars Wendler
2019-06-13  8:45 Lars Wendler
2019-06-13  8:45 Lars Wendler
2019-06-11 15:35 Robin H. Johnson
2019-06-10 17:56 Robin H. Johnson
2019-06-04  9:55 Lars Wendler
2019-05-31 19:37 Lars Wendler
2019-05-20  9:24 Lars Wendler
2019-05-14  8:58 Lars Wendler
2019-05-04 22:30 Andreas K. Hüttel
2019-05-04 15:21 Mikle Kolyada
2019-04-26 10:03 Lars Wendler
2019-04-24 11:17 Lars Wendler
2019-04-23 20:59 Sergei Trofimovich
2019-04-23 20:59 Sergei Trofimovich
2019-04-20 22:48 Lars Wendler
2019-04-20 14:42 Lars Wendler
2019-04-11 19:15 Sergei Trofimovich
2019-04-09 13:53 Aaron Bauman
2019-04-07 21:58 Mikle Kolyada
2019-04-06 13:41 Mikle Kolyada
2019-04-05 19:03 Sergei Trofimovich
2019-04-05 13:06 Lars Wendler
2019-04-02 13:25 Lars Wendler
2019-03-30 19:05 Mikle Kolyada
2019-03-29 21:54 Mikle Kolyada
2019-03-03 15:36 Lars Wendler
2019-02-25  0:38 Lars Wendler
2019-02-25  0:38 Lars Wendler
2019-02-20 23:38 Lars Wendler
2019-02-19 20:24 James Le Cuirot
2019-02-15 13:25 Lars Wendler
2019-02-15 13:25 Lars Wendler
2018-12-23 15:57 Mikle Kolyada
2018-12-23 15:57 Mikle Kolyada
2018-12-16 22:52 Lars Wendler
2018-12-10  8:31 Lars Wendler
2018-12-10  8:31 Lars Wendler
2018-12-04 15:54 Mikle Kolyada
2018-12-03 11:19 Lars Wendler
2018-11-29 20:06 Sergei Trofimovich
2018-11-29 15:54 Lars Wendler
2018-11-29 10:09 Mart Raudsepp
2018-11-28 22:35 Sergei Trofimovich
2018-11-28 22:33 Sergei Trofimovich
2018-11-28 22:28 Sergei Trofimovich
2018-11-27 21:55 Thomas Deutschmann
2018-11-27 20:48 Sergei Trofimovich
2018-11-27 15:09 Mikle Kolyada
2018-11-22  0:12 Lars Wendler
2018-11-21  8:52 Lars Wendler
2018-10-31 17:17 Markus Meier
2018-10-27 18:43 Sergei Trofimovich
2018-10-14 16:19 Mikle Kolyada
2018-10-14 12:06 Mart Raudsepp
2018-10-14  9:14 Sergei Trofimovich
2018-10-14  8:59 Sergei Trofimovich
2018-10-13 16:14 Sergei Trofimovich
2018-10-13  6:56 Tobias Klausmann
2018-10-09 21:24 Thomas Deutschmann
2018-10-09 21:14 Sergei Trofimovich
2018-10-09  8:33 Mikle Kolyada
2018-10-06 22:08 Sergei Trofimovich
2018-10-06 16:48 Matt Turner
2018-10-05 20:26 Robin H. Johnson
2018-10-05  4:10 Thomas Deutschmann
2018-10-04 22:36 Sergei Trofimovich
2018-10-02 18:32 Sergei Trofimovich
2018-10-02 14:21 Mikle Kolyada
2018-09-11  8:42 Lars Wendler
2018-09-11  8:42 Lars Wendler
2018-09-05 13:19 Lars Wendler
2018-09-04 15:53 Lars Wendler
2018-08-20 15:01 Patrice Clement
2018-06-22  9:12 Lars Wendler
2018-06-15 12:36 Lars Wendler
2018-06-06 14:34 Lars Wendler
2018-06-03 13:55 Mike Frysinger
2018-06-01  6:51 Jeroen Roovers
2018-05-31 22:51 Thomas Deutschmann
2018-05-31 21:34 Mikle Kolyada
2018-05-31  8:13 Sergei Trofimovich
2018-05-31  7:50 Sergei Trofimovich
2018-05-30  8:48 Mart Raudsepp
2018-05-30  4:08 Matt Turner
2018-05-30  4:08 Matt Turner
2018-05-30  4:08 Matt Turner
2018-05-30  1:44 Aaron Bauman
2018-05-30  1:29 Thomas Deutschmann
2018-05-30  1:19 Thomas Deutschmann
2018-05-29 23:37 Thomas Deutschmann
2018-05-21  5:08 Robin H. Johnson
2018-05-20  1:10 Robin H. Johnson
2018-04-03 16:57 Patrice Clement
2018-04-03 10:34 Lars Wendler
2018-04-03 10:24 Lars Wendler
2018-03-29 20:04 Lars Wendler
2018-03-29 19:55 Lars Wendler
2018-03-23 19:47 Lars Wendler
2018-03-23 11:23 Lars Wendler
2018-03-23  8:53 Lars Wendler
2018-03-12 18:55 Lars Wendler
2018-03-12  2:07 Matt Turner
2018-03-12  2:07 Matt Turner
2018-03-06 19:40 Markus Meier
2018-03-05 13:57 Tobias Klausmann
2018-03-02 23:51 Mart Raudsepp
2018-02-25 11:58 Sergei Trofimovich
2018-02-17 21:46 Sergei Trofimovich
2018-02-17 17:36 Lars Wendler
2018-02-16  8:33 Sergei Trofimovich
2018-02-14 16:57 Jason Zaman
2018-02-14 14:30 Thomas Deutschmann
2018-02-14 13:28 Lars Wendler
2018-02-05 22:19 Robin H. Johnson
2018-01-22 20:53 Robin H. Johnson
2018-01-18  9:36 Lars Wendler
2018-01-13 17:56 Lars Wendler
2018-01-13 12:42 Lars Wendler
2018-01-12  4:10 Mike Frysinger
2018-01-08 11:59 Lars Wendler
2018-01-06 11:32 Lars Wendler
2017-12-30  1:13 Lars Wendler
2017-12-30  1:13 Lars Wendler
2017-11-29  5:15 Robin H. Johnson
2017-11-13  7:54 Sergei Trofimovich
2017-11-06  9:40 Lars Wendler
2017-11-02 19:11 Robin H. Johnson
2017-10-23  8:55 Lars Wendler
2017-10-20 13:48 Lars Wendler
2017-10-16 18:15 Markus Meier
2017-10-13 13:04 Lars Wendler
2017-10-13 13:04 Lars Wendler
2017-10-04 22:52 Thomas Deutschmann
2017-10-03  8:25 Sergei Trofimovich
2017-10-02  3:16 Robin H. Johnson
2017-09-30  7:18 Sergei Trofimovich
2017-09-30  4:12 Sergei Trofimovich
2017-09-30  2:58 Sergei Trofimovich
2017-09-27 11:21 Agostino Sarubbo
2017-09-26 17:03 Robin H. Johnson
2017-09-26 17:03 Robin H. Johnson
2017-09-08 22:12 Sergei Trofimovich
2017-09-07 20:59 Sergei Trofimovich
2017-08-27  9:08 Fabian Groffen
2017-08-23  5:00 Markus Meier
2017-08-20 16:59 Thomas Deutschmann
2017-08-19 20:56 Richard Freeman
2017-08-19 15:16 Sergei Trofimovich
2017-08-11 22:09 Sergei Trofimovich
2017-08-11 19:37 Tobias Klausmann
2017-08-10 20:13 Robin H. Johnson
2017-08-10  4:43 Robin H. Johnson
2017-08-06  0:12 Robin H. Johnson
2017-08-06  0:12 Robin H. Johnson
2017-08-04 19:18 Robin H. Johnson
2017-08-02  7:10 Lars Wendler
2017-08-02  7:10 Lars Wendler
2017-07-15 21:24 Lars Wendler
2017-07-13  9:16 Lars Wendler
2017-07-13  9:16 Lars Wendler
2017-06-25 10:31 Lars Wendler
2017-06-06 21:35 Robin H. Johnson
2017-06-06 21:35 Robin H. Johnson
2017-05-24  8:49 Lars Wendler
2017-05-20 18:34 Sergei Trofimovich
2017-05-16 21:59 Michael Weber
2017-05-16  8:01 Agostino Sarubbo
2017-05-16  4:44 Markus Meier
2017-05-13 11:09 Jeroen Roovers
2017-05-12 17:56 Tobias Klausmann
2017-05-12 14:55 Agostino Sarubbo
2017-05-11 22:00 Lars Wendler
2017-05-11 22:00 Lars Wendler
2017-05-11 14:41 Agostino Sarubbo
2017-05-10  9:14 Lars Wendler
2017-05-06 22:32 Lars Wendler
2017-04-27  7:44 Lars Wendler
2017-04-27  7:44 Lars Wendler
2017-03-27  6:27 Lars Wendler
2017-03-27  6:27 Lars Wendler
2017-03-21  9:29 Lars Wendler
2017-03-17 11:12 Michael Haubenwallner
2017-02-26 11:58 Jeroen Roovers
2017-02-26 11:31 Lars Wendler
2017-02-25 20:57 Robin H. Johnson
2017-02-24  4:16 Mike Frysinger
2017-02-02 23:14 Robin H. Johnson
2017-01-20  5:18 Jeroen Roovers
2016-12-26 16:05 Lars Wendler
2016-12-26 16:05 Lars Wendler
2016-12-17 15:36 Markus Meier
2016-12-12 10:57 Lars Wendler
2016-12-09 19:01 Tobias Klausmann
2016-11-30  1:06 Robin H. Johnson
2016-11-18 18:48 Robin H. Johnson
2016-11-05 23:45 Robin H. Johnson
2016-10-29 20:33 Lars Wendler
2016-10-29 20:33 Lars Wendler
2016-10-04  8:16 Lars Wendler
2016-09-03 19:19 Lars Wendler
2016-08-13  9:45 Lars Wendler
2016-08-13  9:45 Lars Wendler
2016-07-16 10:28 Lars Wendler
2016-07-16 10:28 Lars Wendler
2016-07-12  7:17 Lars Wendler
2016-06-14  7:02 Lars Wendler
2016-06-14  7:02 Lars Wendler
2016-06-07 12:26 Lars Wendler
2016-06-07 12:26 Lars Wendler
2016-05-20  8:02 Lars Wendler
2016-05-20  8:02 Lars Wendler
2016-05-08 23:43 Mike Gilbert
2016-04-30 15:24 Lars Wendler
2016-04-30 15:24 Lars Wendler
2016-04-09  7:59 Fabian Groffen
2016-04-04  8:07 Lars Wendler
2016-03-29 20:11 Robin H. Johnson
2016-03-29  7:39 Lars Wendler
2016-03-26  0:56 Robin H. Johnson
2016-03-22 20:28 Patrick McLean
2016-03-22 18:28 Robin H. Johnson
2016-03-22  2:25 Mike Frysinger
2016-03-20 10:21 Jeroen Roovers
2016-03-17 21:33 Robin H. Johnson
2016-03-17 10:01 Agostino Sarubbo
2016-03-17  1:56 Manuel Rüger
2016-03-16 20:32 Robin H. Johnson
2016-03-16 11:51 Agostino Sarubbo
2016-03-16 11:00 Agostino Sarubbo
2016-03-16 10:58 Agostino Sarubbo
2016-03-12 11:37 Ulrich Müller
2016-03-11  0:46 Robin H. Johnson
2016-02-23  8:52 Lars Wendler
2016-02-23  8:52 Lars Wendler
2016-02-22 18:51 Fabian Groffen
2016-02-09 19:43 Lars Wendler
2016-02-07 14:45 Lars Wendler
2016-02-07 14:45 Lars Wendler
2016-01-11 21:12 Robin H. Johnson
2016-01-05 10:04 Lars Wendler
2015-12-19 23:29 Mike Frysinger
2015-12-09  9:43 Lars Wendler
2015-12-09  9:43 Lars Wendler
2015-11-19 14:23 Lars Wendler
2015-11-08 19:45 Mikle Kolyada
2015-11-06  8:48 Lars Wendler
2015-11-05 10:58 Agostino Sarubbo
2015-11-04 14:38 Agostino Sarubbo
2015-11-03 19:18 Markus Meier
2015-11-03 19:17 Markus Meier
2015-10-21 15:17 Tobias Klausmann
2015-10-21 14:22 Tobias Klausmann
2015-10-19  4:10 Jeroen Roovers
2015-10-18 13:24 Mikle Kolyada
2015-10-18  6:39 Jeroen Roovers
2015-10-17  9:32 Mikle Kolyada
2015-10-17  9:15 Lars Wendler
2015-10-17  9:15 Lars Wendler
2015-10-11 13:40 Markus Meier
2015-10-11 13:39 Markus Meier
2015-10-06  7:30 Lars Wendler
2015-10-06  7:30 Lars Wendler
2015-09-30 10:21 Lars Wendler
2015-09-29  7:51 Lars Wendler
2015-09-29  7:51 Lars Wendler
2015-09-24  7:59 Agostino Sarubbo
2015-09-22  8:57 Agostino Sarubbo
2015-09-21 11:27 Agostino Sarubbo
2015-09-20 17:02 Julian Ospald
2015-09-20  9:30 Agostino Sarubbo
2015-09-20  6:19 Jeroen Roovers
2015-09-19 12:32 Agostino Sarubbo
2015-09-18  8:12 Lars Wendler
2015-09-18  8:12 Lars Wendler
2015-09-17 12:08 Tobias Klausmann
2015-09-17 11:29 Tobias Klausmann
2015-09-11  9:38 Lars Wendler
2015-09-11  9:38 Lars Wendler
2015-09-06 13:25 Agostino Sarubbo
2015-08-31 18:44 Fabian Groffen
2015-08-31  7:23 Lars Wendler
2015-08-31  7:23 Lars Wendler
2015-08-19  5:37 Jeroen Roovers
2015-08-14 20:55 Julian Ospald
2015-08-14 20:55 Julian Ospald
2015-08-11 16:12 Julian Ospald

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1576006601.e2c18c18104d5ef0c65195f6f51af9f8ca861dda.robbat2@gentoo \
    --to=robbat2@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox