2024-07-31 17:39:48 +00:00
|
|
|
# libssh2 is not available on RHEL
|
|
|
|
%if 0%{?rhel}
|
|
|
|
%bcond_with libssh2
|
|
|
|
%else
|
|
|
|
%bcond_without libssh2
|
|
|
|
%endif
|
|
|
|
|
2020-10-15 14:04:45 +00:00
|
|
|
Name: libgit2
|
2024-07-31 17:39:48 +00:00
|
|
|
Version: 1.7.2
|
2024-07-31 18:19:02 +00:00
|
|
|
Release: 2%{?dist}
|
2020-10-15 14:04:45 +00:00
|
|
|
Summary: C implementation of the Git core methods as a library with a solid API
|
|
|
|
License: GPLv2 with exceptions
|
|
|
|
URL: https://libgit2.org/
|
2024-07-31 17:39:48 +00:00
|
|
|
Source0: https://github.com/libgit2/libgit2/archive/refs/tags/v%{version}.tar.gz#/libgit2-%{version}.tar.gz
|
|
|
|
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
BuildRequires: gcc
|
|
|
|
BuildRequires: cmake >= 3.5.1
|
|
|
|
BuildRequires: ninja-build
|
2024-07-31 17:42:56 +00:00
|
|
|
BuildRequires: http-parser-devel
|
2024-07-31 17:39:48 +00:00
|
|
|
BuildRequires: krb5-devel
|
2020-10-15 14:04:45 +00:00
|
|
|
BuildRequires: libcurl-devel
|
2024-07-31 17:39:48 +00:00
|
|
|
%if %{with libssh2}
|
2020-10-15 14:04:45 +00:00
|
|
|
BuildRequires: libssh2-devel
|
2024-07-31 17:39:48 +00:00
|
|
|
%endif
|
2020-10-15 14:04:45 +00:00
|
|
|
BuildRequires: openssl-devel
|
|
|
|
BuildRequires: pcre2-devel
|
|
|
|
BuildRequires: python3
|
|
|
|
BuildRequires: zlib-devel
|
|
|
|
Provides: bundled(libxdiff)
|
2024-07-31 17:39:48 +00:00
|
|
|
%if 0%{?fedora} >= 38
|
|
|
|
Obsoletes: libgit2_1.3 < 1.3.2-3
|
|
|
|
Obsoletes: libgit2_1.4 < 1.4.6-3
|
|
|
|
%endif
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%description
|
|
|
|
libgit2 is a portable, pure C implementation of the Git core methods
|
|
|
|
provided as a re-entrant linkable library with a solid API, allowing
|
|
|
|
you to write native speed custom Git applications in any language
|
|
|
|
with bindings.
|
|
|
|
|
|
|
|
%package devel
|
|
|
|
Summary: Development files for %{name}
|
|
|
|
Requires: %{name}%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
|
2024-07-31 17:39:48 +00:00
|
|
|
%if 0%{?fedora} >= 38
|
|
|
|
Obsoletes: libgit2_1.3-devel < 1.3.2-3
|
|
|
|
Obsoletes: libgit2_1.4-devel < 1.4.6-3
|
|
|
|
%endif
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%description devel
|
|
|
|
This package contains libraries and header files for
|
|
|
|
developing applications that use %{name}.
|
|
|
|
|
|
|
|
%prep
|
2024-07-31 17:39:48 +00:00
|
|
|
%autosetup -p1 -n libgit2-%{version}
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
# Remove VCS files from examples
|
|
|
|
find examples -name ".gitignore" -delete -print
|
|
|
|
|
|
|
|
# Don't run "online" tests
|
2024-07-31 17:39:48 +00:00
|
|
|
sed -i '/-sonline/s/^/#/' tests/libgit2/CMakeLists.txt
|
|
|
|
|
|
|
|
%if 0%{?fedora} >= 40 || 0%{?rhel} >= 10
|
|
|
|
# On Fedora 40+ and RHEL 10+, we're using zlib-ng rather than
|
|
|
|
# zlib for compression. As a result, all of the pack tests fail
|
|
|
|
# due to checking the hashes of the packed data against static
|
|
|
|
# values that were created with zlib.
|
|
|
|
# https://github.com/libgit2/libgit2/issues/6728
|
|
|
|
sed -i 's/-xonline/-xonline -xpack/' tests/libgit2/CMakeLists.txt
|
|
|
|
%endif
|
|
|
|
|
|
|
|
# Remove bundled libraries (except libxdiff)
|
|
|
|
pushd deps
|
|
|
|
find . -maxdepth 1 -not -name xdiff -exec rm -rf {} ';'
|
|
|
|
popd
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%build
|
2024-07-31 17:39:48 +00:00
|
|
|
%cmake \
|
2020-10-15 14:04:45 +00:00
|
|
|
-GNinja \
|
|
|
|
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
|
|
|
-DREGEX_BACKEND=pcre2 \
|
2024-07-31 17:39:48 +00:00
|
|
|
-DBUILD_CLI=OFF \
|
2024-07-31 17:42:56 +00:00
|
|
|
-DUSE_HTTP_PARSER=system \
|
2020-10-15 14:04:45 +00:00
|
|
|
-DUSE_SHA1=HTTPS \
|
|
|
|
-DUSE_HTTPS=OpenSSL \
|
|
|
|
-DUSE_NTLMCLIENT=OFF \
|
2024-07-31 17:39:48 +00:00
|
|
|
%if %{with libssh2}
|
|
|
|
-DUSE_SSH=ON \
|
|
|
|
%else
|
|
|
|
-DUSE_SSH=OFF \
|
|
|
|
%endif
|
2020-10-15 14:04:45 +00:00
|
|
|
%{nil}
|
2024-07-31 17:39:48 +00:00
|
|
|
%cmake_build
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%install
|
2024-07-31 17:39:48 +00:00
|
|
|
%cmake_install
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%check
|
2024-07-31 17:39:48 +00:00
|
|
|
%ctest
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%files
|
|
|
|
%license COPYING
|
2024-07-31 17:39:48 +00:00
|
|
|
%{_libdir}/libgit2.so.1.7*
|
2020-10-15 14:04:45 +00:00
|
|
|
|
|
|
|
%files devel
|
|
|
|
%doc AUTHORS docs examples README.md
|
|
|
|
%{_libdir}/libgit2.so
|
|
|
|
%{_libdir}/pkgconfig/libgit2.pc
|
|
|
|
%{_includedir}/git2.h
|
|
|
|
%{_includedir}/git2/
|
|
|
|
|
|
|
|
%changelog
|
2024-07-31 18:19:02 +00:00
|
|
|
* Wed Jul 31 2024 Stephen Gallagher <sgallagh@redhat.com> - 1.7.2-2.el9
|
|
|
|
- Fix release tag
|
|
|
|
- Add gating configuration
|
|
|
|
|
2024-07-31 17:42:56 +00:00
|
|
|
* Wed Jul 31 2024 Stephen Gallagher <sgallagh@redhat.com> - 1.7.2-1
|
|
|
|
- Import from Fedora into CentOS Stream 9
|