commit:     c176e89191344e0396c6427bf5798739a794af83
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Mon Apr 11 06:47:34 2022 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Mon Apr 11 07:41:18 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c176e891

dev-libs/libgit2: Use libpcre2

Closes: https://bugs.gentoo.org/837731
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>

 dev-libs/libgit2/libgit2-1.4.2-r1.ebuild | 71 ++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)

diff --git a/dev-libs/libgit2/libgit2-1.4.2-r1.ebuild 
b/dev-libs/libgit2/libgit2-1.4.2-r1.ebuild
new file mode 100644
index 000000000000..1e4d9b1196a3
--- /dev/null
+++ b/dev-libs/libgit2/libgit2-1.4.2-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit cmake python-any-r1
+
+DESCRIPTION="A linkable library for Git"
+HOMEPAGE="https://libgit2.org";
+SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+S=${WORKDIR}/${P/_/-}
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0/$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86 ~ppc-macos"
+IUSE="examples gssapi +ssh test +threads trace"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+       dev-libs/libpcre2:=
+       net-libs/http-parser:=
+       sys-libs/zlib
+       dev-libs/openssl:0=
+       gssapi? ( virtual/krb5 )
+       ssh? ( net-libs/libssh2 )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       ${PYTHON_DEPS}
+       virtual/pkgconfig
+"
+
+src_prepare() {
+       cmake_src_prepare
+       # relying on forked http-parser to support some obscure URI form
+       sed -i -e '/empty_port/s:test:_&:' tests/network/url/parse.c || die
+}
+
+src_configure() {
+       local mycmakeargs=(
+               -DBUILD_TESTS=$(usex test)
+               -DUSE_SSH=$(usex ssh)
+               -DUSE_GSSAPI=$(usex gssapi ON OFF)
+               -DUSE_HTTP_PARSER=system
+               -DREGEX_BACKEND=pcre2
+       )
+       cmake_src_configure
+}
+
+src_test() {
+       if [[ ${EUID} -eq 0 ]] ; then
+               # repo::iterator::fs_preserves_error fails if run as root
+               # since root can still access dirs with 0000 perms
+               ewarn "Skipping tests: non-root privileges are required for all 
tests to pass"
+       else
+               local TEST_VERBOSE=1
+               cmake_src_test -R offline
+       fi
+}
+
+src_install() {
+       cmake_src_install
+       dodoc docs/*.{md,txt}
+
+       if use examples ; then
+               find examples -name '.gitignore' -delete || die
+               dodoc -r examples
+               docompress -x /usr/share/doc/${PF}/examples
+       fi
+}

Reply via email to