Blob Blame History Raw
# Generated by rust2rpm 21
%bcond_without check
%global debug_package %{nil}

%global crate curl-sys
%global upstream_version 0.4.55+curl-7.83.1

Name:           rust-%{crate}
Version:        0.4.55
Release:        %autorelease
Summary:        Native bindings to the libcurl library

# Upstream license specification: MIT
License:        MIT
URL:            https://crates.io/crates/curl-sys
Source:         %{crates_source %{crate} %{upstream_version}}
# Initial patched metadata
# * remove curl version suffix from crate version
# * drop windows-specific features and dependencies
# * drop optional dependencies and unused features (libnghttp2, mesalink)
# * drop rustls support (rustls is not supported on all architectures)
# * drop optional, unused zlib-ng support
Patch0:         curl-sys-fix-metadata.diff
# Make static-curl/static-ssl features a noop, not for upstream
Patch0001:      0001-Make-static-curl-static-ssl-features-a-noop.patch

ExclusiveArch:  %{rust_arches}

BuildRequires:  rust-packaging >= 21

%global _description %{expand:
Native bindings to the libcurl library.}

%description %{_description}

%package        devel
Summary:        %{summary}
BuildArch:      noarch
Requires:       pkgconfig(libcurl)

%description    devel %{_description}

This package contains library source intended for building other packages which
use the "%{crate}" crate.

%files          devel
%license %{crate_instdir}/LICENSE
%{crate_instdir}/

%package     -n %{name}+default-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+default-devel %{_description}

This package contains library source intended for building other packages which
use the "default" feature of the "%{crate}" crate.

%files       -n %{name}+default-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+force-system-lib-on-osx-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+force-system-lib-on-osx-devel %{_description}

This package contains library source intended for building other packages which
use the "force-system-lib-on-osx" feature of the "%{crate}" crate.

%files       -n %{name}+force-system-lib-on-osx-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+http2-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+http2-devel %{_description}

This package contains library source intended for building other packages which
use the "http2" feature of the "%{crate}" crate.

%files       -n %{name}+http2-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+ntlm-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+ntlm-devel %{_description}

This package contains library source intended for building other packages which
use the "ntlm" feature of the "%{crate}" crate.

%files       -n %{name}+ntlm-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+openssl-sys-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+openssl-sys-devel %{_description}

This package contains library source intended for building other packages which
use the "openssl-sys" feature of the "%{crate}" crate.

%files       -n %{name}+openssl-sys-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+poll_7_68_0-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+poll_7_68_0-devel %{_description}

This package contains library source intended for building other packages which
use the "poll_7_68_0" feature of the "%{crate}" crate.

%files       -n %{name}+poll_7_68_0-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+protocol-ftp-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+protocol-ftp-devel %{_description}

This package contains library source intended for building other packages which
use the "protocol-ftp" feature of the "%{crate}" crate.

%files       -n %{name}+protocol-ftp-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+spnego-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+spnego-devel %{_description}

This package contains library source intended for building other packages which
use the "spnego" feature of the "%{crate}" crate.

%files       -n %{name}+spnego-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+ssl-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+ssl-devel %{_description}

This package contains library source intended for building other packages which
use the "ssl" feature of the "%{crate}" crate.

%files       -n %{name}+ssl-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+static-curl-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+static-curl-devel %{_description}

This package contains library source intended for building other packages which
use the "static-curl" feature of the "%{crate}" crate.

%files       -n %{name}+static-curl-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+static-ssl-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+static-ssl-devel %{_description}

This package contains library source intended for building other packages which
use the "static-ssl" feature of the "%{crate}" crate.

%files       -n %{name}+static-ssl-devel
%ghost %{crate_instdir}/Cargo.toml

%package     -n %{name}+upkeep_7_62_0-devel
Summary:        %{summary}
BuildArch:      noarch

%description -n %{name}+upkeep_7_62_0-devel %{_description}

This package contains library source intended for building other packages which
use the "upkeep_7_62_0" feature of the "%{crate}" crate.

%files       -n %{name}+upkeep_7_62_0-devel
%ghost %{crate_instdir}/Cargo.toml

%prep
%autosetup -n %{crate}-%{upstream_version} -p1
# remove bundled curl sources
rm -vrf curl
%cargo_prep

%generate_buildrequires
%cargo_generate_buildrequires
echo 'pkgconfig(libcurl)'

%build
%cargo_build

%install
%cargo_install

%if %{with check}
%check
%cargo_test
%endif

%changelog
%autochangelog