File libgit2.spec of Package libgit2.28345
#
# spec file for package libgit2
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2011, Sascha Peilicke <saschpe@gmx.de>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
%define sover 26
Name: libgit2
Version: 0.26.8
Release: 0
Summary: C git library
License: GPL-2.0 WITH GCC-exception-2.0
Group: Development/Libraries/C and C++
Url: http://libgit2.github.com/
Source0: https://github.com/libgit2/libgit2/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source99: baselibs.conf
Patch0: 0001-win32-emulate-Git-for-Windows-in-symlink-support.patch
Patch1: 0002-make-proxy_stream_close-close-target-stream-even-on-errors.patch
Patch2: 0003-repository-free-memory-in-symlink-detection-function.patch
Patch3: 0004-config-validate-ownership-of-C__ProgramData_Git_config-before-using-it.patch
Patch4: 0005-buffer-git_buf_sanitize-should-return-a-value.patch
Patch5: 0001-path-refactor-ownership-checks-into-current-user-and.patch
Patch6: 0002-repo-ensure-that-repo-dir-is-owned-by-current-user.patch
Patch7: 0003-fs_path-mock-ownership-checks.patch
Patch8: 0004-repo-test-configuration-ownership-validation.patch
Patch9: 0005-repo-refactor-global-config-loader-function.patch
Patch10: 0006-repo-honor-safe.directory-during-ownership-checks.patch
Patch11: 0007-repo-make-ownership-checks-optional.patch
Patch12: 0010-revparse-Remove-error-prone-redundant-test.patch
Patch13: 0014-repo-add-tests-for-bare-repo-permissions.patch
Patch14: 0015-fs-remove-mock-naming-from-change-ownership-constant.patch
Patch15: 0016-fs-refactor-file-ownership-checks.patch
Patch16: 0017-fs-allow-ownership-match-if-user-is-in-admin-group.patch
Patch17: 0018-repo-allow-admin-owned-configs-by-admin-users.patch
Patch18: 0019-repo-validate-gitdir-and-gitlink-ownership.patch
Patch19: 0020-repo-allow-users-running-with-sudo-to-access-their-r.patch
Patch20: 0001-cl_git_fail-do-not-report-bogus-error-message.patch
Patch21: 0002-Protect-against-8.3-short-name-attacks-also-on-Linux-macOS.patch
Patch22: 0003-Disallow-NTFS-Alternate-Data-Stream-attacks-even-on-Linux-macOS.patch
Patch23: 0004-path-also-guard-gitmodules-against-NTFS-Alternate-Data-Streams.patch
Patch24: 0005-path-rename-function-that-detects-end-of-filename.patch
Patch25: 0006-path-protect-NTFS-everywhere.patch
Patch26: 0007-tree-ensure-we-protect-NTFS-paths-everywhere.patch
Patch27: 0008-index-ensure-that-we-respect-core.protectNTFS-false.patch
Patch28: 0009-commit_list-fix-possible-buffer-overflow-in-commit_quick_parse.patch
Patch29: 0001-ssh-verify-the-remote-s-host-key-against-known_hosts.patch
Patch30: 0002-tests-append-the-github.com-ssh-keys-so-we-have-acce.patch
Patch31: 0003-tests-move-online-clone-ssh_auth_methods-into-the-ss.patch
Patch32: 0004-ssh-look-for-a-key-in-known_hosts-to-set-the-key-typ.patch
BuildRequires: cmake >= 2.8
BuildRequires: http-parser-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libssh2)
%if 0%{?fedora_version} || 0%{?rhel_version} || 0%{?centos_version}
BuildRequires: openssl-devel
%else
BuildRequires: libopenssl-devel
%endif
%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 -n %{name}-%{sover}
Summary: C git library
Group: System/Libraries
%description -n %{name}-%{sover}
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: C git library
Group: Development/Libraries/C and C++
Requires: %{name}-%{sover} >= %{version}
%description devel
This package contains all necessary include files and libraries needed
to compile and develop applications that use libgit2.
%prep
%autosetup -p1
find examples -type f -name ".gitignore" -print -delete
%build
%cmake \
-DTHREADSAFE:BOOL=ON \
-DUSE_SSH:BOOL=ON \
-DUSE_SHA1DC:BOOL=ON
make %{?_smp_mflags}
%install
%cmake_install
%post -n %{name}-%{sover} -p /sbin/ldconfig
%postun -n %{name}-%{sover} -p /sbin/ldconfig
%files -n %{name}-%{sover}
%license COPYING
%doc AUTHORS README.md
%{_libdir}/%{name}.so.*%{sover}*
%files devel
%doc examples
%{_libdir}/%{name}.so
%{_includedir}/git2*
%{_libdir}/pkgconfig/libgit2.pc
%changelog