# Generated by rust2rpm 26 # * The crate ships without the data or additional sources required for tests %bcond_with check %global debug_package %{nil} %global crate tree-sitter Name: rust-tree-sitter Version: 0.24.3 Release: %autorelease Summary: Rust bindings to the Tree-sitter parsing library # tree-sitter license: MIT # The rest comes from bundled ICU4C sources License: MIT AND Unicode-DFS-2016 AND BSD-2-Clause AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain URL: https://crates.io/crates/tree-sitter Source0: %{crates_source} # Upstream license file - tree-sitter/tree-sitter#1520 Source1: https://github.com/tree-sitter/tree-sitter/raw/v%{version}/LICENSE#/LICENSE.upstream # Manually created patch for downstream crate metadata changes # * Fixup license for bundled ICU # * Drop 'wasmtime' features Patch: tree-sitter-fix-metadata.diff # Always generate bindings with bindgen Patch: tree-sitter-build-bindings-unconditionally.patch BuildRequires: cargo-rpm-macros >= 24 %global _description %{expand: Rust bindings to the Tree-sitter parsing library.} %description %{_description} %package devel Summary: %{summary} BuildArch: noarch # The create contains a bundled copy of the tree-sitter C library. # MIT Provides: bundled(tree-sitter) = %{version} # The tree-sitter C library contains a small subset of files from the ICU library # Unicode-DFS-2016 AND BSD-2-Clause AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain Provides: bundled(icu) = 65.1 %description devel %{_description} This package contains library source intended for building other packages which use the "%{crate}" crate. %files devel %license %{crate_instdir}/LICENSE %license %{crate_instdir}/src/unicode/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 %prep %autosetup -n %{crate}-%{version} -p1 %cargo_prep # drop pre-generated bindings; we don't want to accidentally use these rm -f binding_rust/bindings.rs %generate_buildrequires %cargo_generate_buildrequires %build %cargo_build %install %cargo_install # prepare upstream license file for %%license install -D -m 0644 -pv %{SOURCE1} %{buildroot}%{crate_instdir}/LICENSE %if %{with check} %check %cargo_test %endif %changelog %autochangelog