-%define crates_ver 0.9.1
+#
+# Conditional build:
+%bcond_without system_libgit2 # use system installed libgit2
+
+%define crates_ver 0.17.0
Summary: A viewer for git and diff output
Name: delta
-Version: 0.9.2
+Version: 0.17.0
Release: 1
License: MIT
Group: Applications
Source0: https://github.com/dandavison/delta/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: ac2fdd216bf881d846396e3d5c1b6282
-# ./create-crates.sh
+# Source0-md5: 323ef94cc3d9c0b21691ecc5e250708f
Source1: %{name}-crates-%{crates_ver}.tar.xz
-# Source1-md5: f073e176f66640cb303e80ab296efd7e
+# Source1-md5: c32b2651ccef34736929edaca477a269
URL: https://github.com/dandavison/delta
BuildRequires: cargo
-BuildRequires: libgit2-devel >= 1.1.0
-BuildRequires: oniguruma-devel >= 6.9.3
+%if %{with system_libgit2}
+BuildRequires: libgit2-devel < 1.8.0
+BuildRequires: libgit2-devel >= 1.7.2
+%endif
+BuildRequires: oniguruma-devel >= 6.9.8
BuildRequires: pkgconfig
BuildRequires: rpmbuild(macros) >= 2.004
BuildRequires: rust
+BuildRequires: rust-bindgen
BuildRequires: tar >= 1:1.22
BuildRequires: xz
-Requires: libgit2 >= 1.1.0
-Requires: oniguruma >= 6.9.3
+%{?with_system_libgit2:Requires: libgit2 >= 1.7.2}
+Requires: oniguruma >= 6.9.8
ExclusiveArch: %{rust_arches}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
rm -rf $RPM_BUILD_ROOT
export CARGO_HOME="$(pwd)/.cargo"
+export RUSTONIG_SYSTEM_LIBONIG=true
%cargo_install --frozen --root $RPM_BUILD_ROOT%{_prefix} --path $PWD
%{__rm} $RPM_BUILD_ROOT%{_prefix}/.crates*