mirror of
https://github.com/terrapkg/packages.git
synced 2026-06-09 13:17:37 +00:00
fix(anda): Add workaround for rustc 1.95.0, enable debuginfo, split shell completions into subpackages (#11860) (#11865)
(cherry picked from commit 9410e02506)
Co-authored-by: Gilver <roachy@fyralabs.com>
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
project pkg {
|
||||
rpm {
|
||||
spec = "rust-anda.spec"
|
||||
spec = "anda.spec"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
# Work around a bug in rustc 1.95.0 with GCC
|
||||
%global toolchain clang
|
||||
%global crate anda
|
||||
|
||||
Name: anda
|
||||
Version: 0.5.4
|
||||
Release: 2%{?dist}
|
||||
Summary: Andaman Build toolchain
|
||||
SourceLicense: MIT
|
||||
License: ((MIT OR Apache-2.0) AND Unicode-3.0) AND (0BSD OR MIT OR Apache-2.0) AND (Apache-2.0 AND ISC) AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND Apache-2.0 AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND BSL-1.0 AND CDLA-Permissive-2.0 AND ISC AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0) AND (MIT OR Zlib OR Apache-2.0) AND MIT AND MPL-2.0-or-later AND MPL-2.0-only AND Unicode-3.0 AND (Unlicense OR MIT)
|
||||
URL: https://crates.io/crates/anda
|
||||
Source0: https://github.com/FyraLabs/anda/archive/refs/tags/%{version}.tar.gz
|
||||
%if %["%{toolchain}" == "clang"]
|
||||
BuildRequires: clang
|
||||
%else
|
||||
BuildRequires: gcc
|
||||
%endif
|
||||
BuildRequires: rust-packaging >= 21
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: openssl-devel
|
||||
%if %{defined fedora}
|
||||
BuildRequires: openssl-devel-engine
|
||||
%endif
|
||||
BuildRequires: git-core
|
||||
BuildRequires: libgit2-devel
|
||||
BuildRequires: libssh2-devel
|
||||
BuildRequires: mold
|
||||
Requires: mock
|
||||
Requires: rpm-build
|
||||
Requires: createrepo_c
|
||||
Requires: git-core
|
||||
Requires: libgit2
|
||||
%if 0%{?fedora} >= 42
|
||||
Requires: mock-filesystem
|
||||
Requires: util-linux-script
|
||||
%endif
|
||||
Packager: Terra Packaging Team <terra@fyralabs.com>
|
||||
|
||||
%description
|
||||
Andaman Build toolchain.
|
||||
|
||||
%pkg_completion -bfz
|
||||
|
||||
%prep
|
||||
%autosetup -n %{crate}-%{version}
|
||||
%cargo_prep_online
|
||||
%{__cargo} fetch --locked
|
||||
|
||||
%build
|
||||
%{cargo_build} --frozen
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
%{__cargo} run --release -p xtask -- manpage
|
||||
%{__cargo} run --release -p xtask -- completion
|
||||
|
||||
%install
|
||||
%crate_install_bin
|
||||
|
||||
# Install shell completions
|
||||
COMPDIR="target/assets/completion"
|
||||
|
||||
install -Dm644 $COMPDIR/bash/anda.bash -t %{buildroot}%{bash_completions_dir}
|
||||
install -Dm644 $COMPDIR/zsh/_anda -t %{buildroot}%{zsh_completions_dir}
|
||||
install -Dm644 $COMPDIR/fish/anda.fish -t %{buildroot}%{fish_completions_dir}
|
||||
|
||||
# Install man pages
|
||||
install -Dm644 target/assets/man_pages/* -t %{buildroot}%{_mandir}/man1
|
||||
|
||||
%files
|
||||
%doc README.md
|
||||
%license LICENSE.dependencies LICENSE.md
|
||||
%{_bindir}/anda
|
||||
%{_mandir}/man1/anda*.1.*
|
||||
|
||||
%changelog
|
||||
* Sun May 3 2026 Gilver E. <roachy@fyralabs.com> - 0.5.4-2
|
||||
- Fix build on Fedora 43
|
||||
- Add shell completions subpackages
|
||||
@@ -1,89 +0,0 @@
|
||||
# Generated by rust2rpm 22
|
||||
%bcond_without check
|
||||
%define debug_package %{nil}
|
||||
|
||||
%global crate anda
|
||||
|
||||
Name: rust-anda
|
||||
Version: 0.5.4
|
||||
Release: 1%{?dist}
|
||||
Summary: Andaman Build toolchain
|
||||
|
||||
License: MIT
|
||||
URL: https://crates.io/crates/anda
|
||||
Source: https://github.com/FyraLabs/anda/archive/refs/tags/%{version}.tar.gz
|
||||
|
||||
ExclusiveArch: %{rust_arches}
|
||||
|
||||
BuildRequires: rust-packaging >= 21
|
||||
BuildRequires: anda-srpm-macros
|
||||
BuildRequires: openssl-devel
|
||||
%if %{defined fedora}
|
||||
BuildRequires: openssl-devel-engine
|
||||
%endif
|
||||
BuildRequires: git-core
|
||||
BuildRequires: libgit2-devel
|
||||
BuildRequires: libssh2-devel
|
||||
BuildRequires: mold
|
||||
|
||||
%global _description %{expand:
|
||||
Andaman Build toolchain.}
|
||||
|
||||
%description %{_description}
|
||||
|
||||
%package -n %{crate}
|
||||
Summary: %{summary}
|
||||
Requires: mock
|
||||
Requires: rpm-build
|
||||
Requires: createrepo_c
|
||||
Requires: git-core
|
||||
Requires: libgit2
|
||||
%if 0%{?fedora} >= 42
|
||||
Requires: mock-filesystem
|
||||
Requires: util-linux-script
|
||||
%endif
|
||||
|
||||
%description -n %{crate} %{_description}
|
||||
|
||||
%files -n %{crate}
|
||||
%license LICENSE.dependencies LICENSE.md
|
||||
%{_bindir}/anda
|
||||
%{_mandir}/man1/anda*.1*
|
||||
%config %{_sysconfdir}/bash_completion.d/anda.bash
|
||||
%{_datadir}/zsh/site-functions/_anda
|
||||
%{_datadir}/fish/completions/anda.fish
|
||||
|
||||
%prep
|
||||
%autosetup -n %{crate}-%{version_no_tilde} -p1
|
||||
%cargo_prep_online
|
||||
|
||||
%build
|
||||
%cargo_build
|
||||
%{cargo_license_online} > LICENSE.dependencies
|
||||
cargo run --release -p xtask -- manpage
|
||||
cargo run --release -p xtask -- completion
|
||||
|
||||
%install
|
||||
install -Dpm755 target/rpm/anda -t %buildroot%_bindir/
|
||||
|
||||
mkdir -p %{buildroot}%{_mandir}/man1/
|
||||
|
||||
# Install shell completions
|
||||
|
||||
COMPDIR="target/assets/completion"
|
||||
|
||||
mkdir -p %{buildroot}%{_sysconfdir}/bash_completion.d/
|
||||
cp -v $COMPDIR/bash/anda.bash %{buildroot}%{_sysconfdir}/bash_completion.d/anda.bash
|
||||
mkdir -p %{buildroot}%{_datadir}/zsh/site-functions/
|
||||
cp -v $COMPDIR/zsh/_anda %{buildroot}%{_datadir}/zsh/site-functions/_anda
|
||||
mkdir -p %{buildroot}%{_datadir}/fish/completions/
|
||||
cp -v $COMPDIR/fish/anda.fish %{buildroot}%{_datadir}/fish/completions/anda.fish
|
||||
|
||||
# install man pages
|
||||
cp -v target/assets/man_pages/* %{buildroot}%{_mandir}/man1/
|
||||
|
||||
|
||||
rm -rf %{buildroot}%{cargo_registry}
|
||||
|
||||
%changelog
|
||||
%autochangelog
|
||||
Reference in New Issue
Block a user