## START: Set by rpmautospec
## (rpmautospec version 0.7.3)
## RPMAUTOSPEC: autorelease, autochangelog
%define autorelease(e:s:pb:n) %{?-p:0.}%{lua:
    release_number = 1;
    base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}"));
    print(release_number + base_release_number - 1);
}%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}}
## END: Set by rpmautospec

# Generated by rust2rpm 27
# * Requires unpublished crate tree-sitter-tests-proc-macro
%bcond check 0

%global crate tree-sitter-cli

Name:           rust-tree-sitter-cli
Version:        0.25.2
Release:        %autorelease
Summary:        CLI tool for developing, testing, and using Tree-sitter parsers

License:        MIT
URL:            https://crates.io/crates/tree-sitter-cli
Source:         %{crates_source}
# * Upstream license file - tree-sitter/tree-sitter#1520
Source2:        https://github.com/tree-sitter/tree-sitter/raw/v%{version}/LICENSE#/LICENSE.upstream
# Manually created patch for downstream crate metadata changes
# * Disable feature 'wasm'
# * Downgrade dependencies to the versions available in Fedora
Patch:          tree-sitter-cli-fix-metadata.diff

BuildRequires:  cargo-rpm-macros >= 24

%global _description %{expand:
CLI tool for developing, testing, and using Tree-sitter parsers.}

%description %{_description}

%package     -n %{crate}
Summary:        %{summary}
# (MIT OR Apache-2.0) AND Unicode-DFS-2016
# Apache-2.0
# Apache-2.0 OR BSL-1.0
# Apache-2.0 OR MIT
# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT
# BSD-2-Clause OR Apache-2.0 OR MIT
# ISC
# LGPL-3.0-or-later
# MIT
# MIT AND Unicode-DFS-2016 AND BSD-2-Clause AND BSD-3-Clause AND LicenseRef-Fedora-Public-Domain
# MIT OR Apache-2.0
# MIT OR Apache-2.0 OR Zlib
# Unlicense OR MIT
# Zlib
# Zlib OR Apache-2.0 OR MIT
License:        %{shrink:
                MIT
                AND (MIT OR Apache-2.0)
                AND Unicode-DFS-2016
                AND Apache-2.0
                AND (Apache-2.0 OR BSL-1.0)
                AND (Apache-2.0 OR MIT)
                AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT)
                AND (BSD-2-Clause OR Apache-2.0 OR MIT)
                AND ISC
                AND BSD-2-Clause
                AND BSD-3-Clause
                AND LGPL-3.0-or-later
                AND LicenseRef-Fedora-Public-Domain
                AND (MIT OR Apache-2.0 OR Zlib)
                AND (Unlicense OR MIT)
                AND Zlib
                }
# LICENSE.dependencies contains a full license breakdown

# tree-sitter build wants a C compiler
Recommends:     gcc

# tree-sitter generate runs JavaScript
Recommends:     nodejs

%description -n %{crate} %{_description}

%files       -n %{crate}
%license LICENSE
%license LICENSE.dependencies
%doc README.md
%{_bindir}/tree-sitter

%package        devel
Summary:        %{summary}
BuildArch:      noarch

%description    devel %{_description}

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

%files          devel
%license %{crate_instdir}/LICENSE
%doc %{crate_instdir}/README.md
%{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
cp -pav %{SOURCE2} LICENSE
# Delete unwanted files
rm -rf npm

%generate_buildrequires
%cargo_generate_buildrequires

%build
%cargo_build
%{cargo_license_summary}
%{cargo_license} > LICENSE.dependencies

%install
%cargo_install

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

%changelog
## START: Generated by rpmautospec
* Tue Feb 18 2025 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.25.2-1
- Update to 0.25.2

* Sat Feb 01 2025 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.24.7-1
- Update to 0.24.7

* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 0.23.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild

* Sat Oct 26 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.23.2-1
- Update to 0.23.2

* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.22.5-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild

* Thu May 23 2024 Fabio Valentini <decathorpe@gmail.com> - 0.22.5-2
- Rebuild with Rust 1.78 to fix incomplete debuginfo and backtraces

* Fri May 03 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.22.5-1
- Update to 0.22.5

* Sat Apr 13 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.22.4-1
- Update to 0.22.4 (#2274825)

* Tue Apr 02 2024 Peter Oliver <git@mavit.org.uk> - 0.22.2-3
- Recommend nodejs, for `tree-sitter generate`

* Wed Mar 20 2024 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.22.2-1
- Update to 0.22.2 (rhbz#2265406)

* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.8-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild

* Mon Nov 06 2023 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.20.8-1
- Update to 0.20.8 (rhbz#2184712)

* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.7-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

* Sun Feb 05 2023 Fabio Valentini <decathorpe@gmail.com> - 0.20.7-3
- Rebuild for fixed frame pointer compiler flags in Rust RPM macros

* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.7-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Mon Sep 05 2022 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.20.7-1
- Update to 0.20.7 (#2123893)

* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.20.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Wed Apr 06 2022 Aleksei Bavshin <alebastr@fedoraproject.org> - 0.20.6-1
- Initial import (#2028900)
## END: Generated by rpmautospec