diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..1393b77 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/coreutils-0.0.23.crate +/coreutils-0.0.27.crate +/coreutils-0.7.0.crate diff --git a/README.md b/README.md new file mode 100644 index 0000000..6ce6e3e --- /dev/null +++ b/README.md @@ -0,0 +1,3 @@ +# rust-coreutils + +The rust-coreutils package diff --git a/coreutils-ctor-1_x.diff b/coreutils-ctor-1_x.diff new file mode 100644 index 0000000..bd0c110 --- /dev/null +++ b/coreutils-ctor-1_x.diff @@ -0,0 +1,33 @@ +--- a/tests/test_util_name.rs ++++ b/tests/test_util_name.rs +@@ -16,7 +16,7 @@ pub const TESTS_BINARY: &str = env!("CAR + // Set the environment variable for any tests + + // Use the ctor attribute to run this function before any tests +-#[ctor::ctor] ++#[ctor::ctor(unsafe)] + fn init() { + // No need for unsafe here + unsafe { +--- a/tests/test_uudoc.rs ++++ b/tests/test_uudoc.rs +@@ -23,7 +23,7 @@ pub const TESTS_BINARY: &str = env!("CAR + // Set the environment variable for any tests + + // Use the ctor attribute to run this function before any tests +-#[ctor::ctor] ++#[ctor::ctor(unsafe)] + fn init() { + // No need for unsafe here + unsafe { +--- a/tests/tests.rs ++++ b/tests/tests.rs +@@ -8,7 +8,7 @@ use std::env; + pub const TESTS_BINARY: &str = env!("CARGO_BIN_EXE_coreutils"); + + // Use the ctor attribute to run this function before any tests +-#[ctor::ctor] ++#[ctor::ctor(unsafe)] + fn init() { + unsafe { + // Necessary for uutests to be able to find the binary diff --git a/coreutils-fix-metadata.diff b/coreutils-fix-metadata.diff new file mode 100644 index 0000000..870dba7 --- /dev/null +++ b/coreutils-fix-metadata.diff @@ -0,0 +1,20 @@ +--- coreutils-0.7.0/Cargo.toml 2006-07-24T01:21:28+00:00 ++++ coreutils-0.7.0/Cargo.toml 2026-08-06T11:26:04.426642+00:00 +@@ -719,7 +719,7 @@ + package = "uu_runcon" + + [dependencies.selinux] +-version = "=0.6.0" ++version = "0.6.0" + optional = true + + [dependencies.seq] +@@ -930,7 +930,7 @@ + version = "0.6.8" + + [dev-dependencies.ctor] +-version = "0.6.0" ++version = "1" + + [dev-dependencies.filetime] + version = "0.2.23" diff --git a/dead.package b/dead.package deleted file mode 100644 index 4ef32ca..0000000 --- a/dead.package +++ /dev/null @@ -1 +0,0 @@ -replaced by uutils-coreutils diff --git a/rust-coreutils.spec b/rust-coreutils.spec new file mode 100644 index 0000000..5fa87a6 --- /dev/null +++ b/rust-coreutils.spec @@ -0,0 +1,1957 @@ +# Generated by rust2rpm 28 +%bcond check 1 + +%if 0%{?el9} +# systemd is too old +%bcond systemd_logind 0 +%else +%bcond systemd_logind 1 +%endif + +%if %{with systemd_logind} +%global feature_flags feat_acl,feat_os_unix,feat_selinux,feat_systemd_logind,uudoc +%else +%global feature_flags feat_acl,feat_os_unix,feat_selinux,uudoc +%endif + +# Peak memory usage is (on x86_64) roughly 4–5 GB in two parallel rustc +# processes, building the uudoc and coreutils crates. This is OK on the +# primary-architecture koji builders, but on more severely memory-constrained +# systems (like some in RISC-V koji) this may cause swapping or memory +# exhaustion. Setting a conservative memory limit per process helps. +%global _smp_tasksize_proc 8192 + +%global crate coreutils + +Name: rust-coreutils +Version: 0.7.0 +Release: %autorelease +Summary: coreutils ~ GNU coreutils reimplementation in Rust + +License: MIT +URL: https://crates.io/crates/coreutils +Source: %{crates_source} +# Manually created patch for downstream crate metadata changes +# * loosen selinux version bound from =0.6.0 to 0.6.0 +# * bump ctor from 0.6 to 1 +Patch: coreutils-fix-metadata.diff +# * compatibility fixes for ctor 1.x +Patch2: coreutils-ctor-1_x.diff + +# leaf package, SIGABRT on compile +ExcludeArch: %{ix86} + +BuildRequires: cargo-rpm-macros >= 24 +%if %{with systemd_logind} +BuildRequires: systemd-devel +%endif + +%global _description %{expand: +coreutils ~ GNU coreutils (updated); implemented as universal (cross-platform) utils, written in Rust.} + +%description %{_description} + +%package -n uutils-coreutils +Summary: %{summary} +# (MIT OR Apache-2.0) AND Unicode-DFS-2016 +# (MIT OR Apache-2.0) AND Zlib +# 0BSD OR MIT OR Apache-2.0 +# Apache-2.0 +# Apache-2.0 OR Apache-2.0 WITH LLVM-exception +# Apache-2.0 OR GPL-2.0-only +# Apache-2.0 OR MIT +# Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT +# BSD-2-Clause +# BSD-2-Clause OR Apache-2.0 OR MIT +# BSD-3-Clause +# CC0-1.0 +# ISC +# MIT +# MIT OR Apache-2.0 +# MIT OR Zlib OR Apache-2.0 +# MIT-0 OR Apache-2.0 +# Unicode-3.0 +# Unlicense OR MIT +# Zlib +License: %{shrink: + (MIT OR Apache-2.0) AND Unicode-DFS-2016 AND + Zlib AND + (0BSD OR MIT OR Apache-2.0) AND + Apache-2.0 AND + (Apache-2.0 OR Apache-2.0 WITH LLVM-exception) AND + (Apache-2.0 OR GPL-2.0-only) AND + (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND + BSD-2-Clause AND + (BSD-2-Clause OR Apache-2.0 OR MIT) AND + BSD-3-Clause AND + CC0-1.0 AND + ISC AND + MIT AND + (MIT OR Zlib OR Apache-2.0) AND + (MIT-0 OR Apache-2.0) AND + Unicode-3.0 AND + (Unlicense OR MIT) +} +# LICENSE.dependencies contains a full license breakdown + +%description -n uutils-coreutils %{_description} + +%files -n uutils-coreutils +%license LICENSE +%license LICENSE.dependencies +%doc CODE_OF_CONDUCT.md +%doc CONTRIBUTING.md +%doc DEVELOPMENT.md +%doc README.md +%doc README.package.md +%doc SECURITY.md +%{_bindir}/uutils-coreutils +%{_bindir}/uu_* +%{_mandir}/man1/* +%{bash_completions_dir}/* +%{fish_completions_dir}/* +%{zsh_completions_dir}/* + +%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}/CODE_OF_CONDUCT.md +%doc %{crate_instdir}/CONTRIBUTING.md +%doc %{crate_instdir}/DEVELOPMENT.md +%doc %{crate_instdir}/README.md +%doc %{crate_instdir}/README.package.md +%doc %{crate_instdir}/SECURITY.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 + +%package -n %{name}+arch-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+arch-devel %{_description} + +This package contains library source intended for building other packages which +use the "arch" feature of the "%{crate}" crate. + +%files -n %{name}+arch-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+b2sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+b2sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "b2sum" feature of the "%{crate}" crate. + +%files -n %{name}+b2sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+base32-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+base32-devel %{_description} + +This package contains library source intended for building other packages which +use the "base32" feature of the "%{crate}" crate. + +%files -n %{name}+base32-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+base64-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+base64-devel %{_description} + +This package contains library source intended for building other packages which +use the "base64" feature of the "%{crate}" crate. + +%files -n %{name}+base64-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+basename-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+basename-devel %{_description} + +This package contains library source intended for building other packages which +use the "basename" feature of the "%{crate}" crate. + +%files -n %{name}+basename-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+basenc-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+basenc-devel %{_description} + +This package contains library source intended for building other packages which +use the "basenc" feature of the "%{crate}" crate. + +%files -n %{name}+basenc-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+cat-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cat-devel %{_description} + +This package contains library source intended for building other packages which +use the "cat" feature of the "%{crate}" crate. + +%files -n %{name}+cat-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+chcon-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+chcon-devel %{_description} + +This package contains library source intended for building other packages which +use the "chcon" feature of the "%{crate}" crate. + +%files -n %{name}+chcon-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+chgrp-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+chgrp-devel %{_description} + +This package contains library source intended for building other packages which +use the "chgrp" feature of the "%{crate}" crate. + +%files -n %{name}+chgrp-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+chmod-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+chmod-devel %{_description} + +This package contains library source intended for building other packages which +use the "chmod" feature of the "%{crate}" crate. + +%files -n %{name}+chmod-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+chown-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+chown-devel %{_description} + +This package contains library source intended for building other packages which +use the "chown" feature of the "%{crate}" crate. + +%files -n %{name}+chown-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+chroot-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+chroot-devel %{_description} + +This package contains library source intended for building other packages which +use the "chroot" feature of the "%{crate}" crate. + +%files -n %{name}+chroot-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+cksum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cksum-devel %{_description} + +This package contains library source intended for building other packages which +use the "cksum" feature of the "%{crate}" crate. + +%files -n %{name}+cksum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+comm-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+comm-devel %{_description} + +This package contains library source intended for building other packages which +use the "comm" feature of the "%{crate}" crate. + +%files -n %{name}+comm-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+cp-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cp-devel %{_description} + +This package contains library source intended for building other packages which +use the "cp" feature of the "%{crate}" crate. + +%files -n %{name}+cp-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+csplit-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+csplit-devel %{_description} + +This package contains library source intended for building other packages which +use the "csplit" feature of the "%{crate}" crate. + +%files -n %{name}+csplit-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+cut-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+cut-devel %{_description} + +This package contains library source intended for building other packages which +use the "cut" feature of the "%{crate}" crate. + +%files -n %{name}+cut-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+date-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+date-devel %{_description} + +This package contains library source intended for building other packages which +use the "date" feature of the "%{crate}" crate. + +%files -n %{name}+date-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+dd-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+dd-devel %{_description} + +This package contains library source intended for building other packages which +use the "dd" feature of the "%{crate}" crate. + +%files -n %{name}+dd-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+df-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+df-devel %{_description} + +This package contains library source intended for building other packages which +use the "df" feature of the "%{crate}" crate. + +%files -n %{name}+df-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+dir-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+dir-devel %{_description} + +This package contains library source intended for building other packages which +use the "dir" feature of the "%{crate}" crate. + +%files -n %{name}+dir-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+dircolors-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+dircolors-devel %{_description} + +This package contains library source intended for building other packages which +use the "dircolors" feature of the "%{crate}" crate. + +%files -n %{name}+dircolors-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+dirname-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+dirname-devel %{_description} + +This package contains library source intended for building other packages which +use the "dirname" feature of the "%{crate}" crate. + +%files -n %{name}+dirname-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+du-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+du-devel %{_description} + +This package contains library source intended for building other packages which +use the "du" feature of the "%{crate}" crate. + +%files -n %{name}+du-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+echo-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+echo-devel %{_description} + +This package contains library source intended for building other packages which +use the "echo" feature of the "%{crate}" crate. + +%files -n %{name}+echo-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+env-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+env-devel %{_description} + +This package contains library source intended for building other packages which +use the "env" feature of the "%{crate}" crate. + +%files -n %{name}+env-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+expand-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+expand-devel %{_description} + +This package contains library source intended for building other packages which +use the "expand" feature of the "%{crate}" crate. + +%files -n %{name}+expand-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+expensive_tests-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+expensive_tests-devel %{_description} + +This package contains library source intended for building other packages which +use the "expensive_tests" feature of the "%{crate}" crate. + +%files -n %{name}+expensive_tests-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+expr-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+expr-devel %{_description} + +This package contains library source intended for building other packages which +use the "expr" feature of the "%{crate}" crate. + +%files -n %{name}+expr-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+factor-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+factor-devel %{_description} + +This package contains library source intended for building other packages which +use the "factor" feature of the "%{crate}" crate. + +%files -n %{name}+factor-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+false-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+false-devel %{_description} + +This package contains library source intended for building other packages which +use the "false" feature of the "%{crate}" crate. + +%files -n %{name}+false-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_Tier1-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_Tier1-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_Tier1" feature of the "%{crate}" crate. + +%files -n %{name}+feat_Tier1-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_acl-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_acl-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_acl" feature of the "%{crate}" crate. + +%files -n %{name}+feat_acl-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_common_core-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_common_core-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_common_core" feature of the "%{crate}" crate. + +%files -n %{name}+feat_common_core-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_external_libstdbuf-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_external_libstdbuf-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_external_libstdbuf" feature of the "%{crate}" crate. + +%files -n %{name}+feat_external_libstdbuf-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_macos-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_macos-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_macos" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_macos-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix_android-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix_android-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix_android" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix_android-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix_fuchsia-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix_fuchsia-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix_fuchsia" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix_fuchsia-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix_gnueabihf-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix_gnueabihf-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix_gnueabihf" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix_gnueabihf-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix_musl-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix_musl-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix_musl" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix_musl-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_unix_redox-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_unix_redox-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_unix_redox" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_unix_redox-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_windows-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_windows-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_windows" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_windows-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_os_windows_legacy-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_os_windows_legacy-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_os_windows_legacy" feature of the "%{crate}" crate. + +%files -n %{name}+feat_os_windows_legacy-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_selinux-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_selinux-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_selinux" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_selinux-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_unix-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_unix-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_unix" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_unix-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_unix_core-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_unix_core-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_unix_core" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_unix_core-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_unix_hostid-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_unix_hostid-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_unix_hostid" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_unix_hostid-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_unix_musl-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_unix_musl-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_unix_musl" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_unix_musl-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_require_unix_utmpx-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_require_unix_utmpx-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_require_unix_utmpx" feature of the "%{crate}" crate. + +%files -n %{name}+feat_require_unix_utmpx-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_selinux-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_selinux-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_selinux" feature of the "%{crate}" crate. + +%files -n %{name}+feat_selinux-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+feat_smack-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_smack-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_smack" feature of the "%{crate}" crate. + +%files -n %{name}+feat_smack-devel +%ghost %{crate_instdir}/Cargo.toml + +%if %{with systemd_logind} +%package -n %{name}+feat_systemd_logind-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_systemd_logind-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_systemd_logind" feature of the "%{crate}" crate. + +%files -n %{name}+feat_systemd_logind-devel +%ghost %{crate_instdir}/Cargo.toml +%endif + +%package -n %{name}+feat_wasm-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+feat_wasm-devel %{_description} + +This package contains library source intended for building other packages which +use the "feat_wasm" feature of the "%{crate}" crate. + +%files -n %{name}+feat_wasm-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+fmt-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+fmt-devel %{_description} + +This package contains library source intended for building other packages which +use the "fmt" feature of the "%{crate}" crate. + +%files -n %{name}+fmt-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+fold-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+fold-devel %{_description} + +This package contains library source intended for building other packages which +use the "fold" feature of the "%{crate}" crate. + +%files -n %{name}+fold-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+groups-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+groups-devel %{_description} + +This package contains library source intended for building other packages which +use the "groups" feature of the "%{crate}" crate. + +%files -n %{name}+groups-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+head-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+head-devel %{_description} + +This package contains library source intended for building other packages which +use the "head" feature of the "%{crate}" crate. + +%files -n %{name}+head-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+hostid-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+hostid-devel %{_description} + +This package contains library source intended for building other packages which +use the "hostid" feature of the "%{crate}" crate. + +%files -n %{name}+hostid-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+hostname-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+hostname-devel %{_description} + +This package contains library source intended for building other packages which +use the "hostname" feature of the "%{crate}" crate. + +%files -n %{name}+hostname-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+id-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+id-devel %{_description} + +This package contains library source intended for building other packages which +use the "id" feature of the "%{crate}" crate. + +%files -n %{name}+id-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+install-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+install-devel %{_description} + +This package contains library source intended for building other packages which +use the "install" feature of the "%{crate}" crate. + +%files -n %{name}+install-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+join-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+join-devel %{_description} + +This package contains library source intended for building other packages which +use the "join" feature of the "%{crate}" crate. + +%files -n %{name}+join-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+kill-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+kill-devel %{_description} + +This package contains library source intended for building other packages which +use the "kill" feature of the "%{crate}" crate. + +%files -n %{name}+kill-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+link-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+link-devel %{_description} + +This package contains library source intended for building other packages which +use the "link" feature of the "%{crate}" crate. + +%files -n %{name}+link-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+ln-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+ln-devel %{_description} + +This package contains library source intended for building other packages which +use the "ln" feature of the "%{crate}" crate. + +%files -n %{name}+ln-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+logname-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+logname-devel %{_description} + +This package contains library source intended for building other packages which +use the "logname" feature of the "%{crate}" crate. + +%files -n %{name}+logname-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+ls-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+ls-devel %{_description} + +This package contains library source intended for building other packages which +use the "ls" feature of the "%{crate}" crate. + +%files -n %{name}+ls-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+macos-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+macos-devel %{_description} + +This package contains library source intended for building other packages which +use the "macos" feature of the "%{crate}" crate. + +%files -n %{name}+macos-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+md5sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+md5sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "md5sum" feature of the "%{crate}" crate. + +%files -n %{name}+md5sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+mkdir-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+mkdir-devel %{_description} + +This package contains library source intended for building other packages which +use the "mkdir" feature of the "%{crate}" crate. + +%files -n %{name}+mkdir-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+mkfifo-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+mkfifo-devel %{_description} + +This package contains library source intended for building other packages which +use the "mkfifo" feature of the "%{crate}" crate. + +%files -n %{name}+mkfifo-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+mknod-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+mknod-devel %{_description} + +This package contains library source intended for building other packages which +use the "mknod" feature of the "%{crate}" crate. + +%files -n %{name}+mknod-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+mktemp-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+mktemp-devel %{_description} + +This package contains library source intended for building other packages which +use the "mktemp" feature of the "%{crate}" crate. + +%files -n %{name}+mktemp-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+more-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+more-devel %{_description} + +This package contains library source intended for building other packages which +use the "more" feature of the "%{crate}" crate. + +%files -n %{name}+more-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+mv-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+mv-devel %{_description} + +This package contains library source intended for building other packages which +use the "mv" feature of the "%{crate}" crate. + +%files -n %{name}+mv-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+nice-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+nice-devel %{_description} + +This package contains library source intended for building other packages which +use the "nice" feature of the "%{crate}" crate. + +%files -n %{name}+nice-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+nl-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+nl-devel %{_description} + +This package contains library source intended for building other packages which +use the "nl" feature of the "%{crate}" crate. + +%files -n %{name}+nl-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+nohup-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+nohup-devel %{_description} + +This package contains library source intended for building other packages which +use the "nohup" feature of the "%{crate}" crate. + +%files -n %{name}+nohup-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+nproc-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+nproc-devel %{_description} + +This package contains library source intended for building other packages which +use the "nproc" feature of the "%{crate}" crate. + +%files -n %{name}+nproc-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+numfmt-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+numfmt-devel %{_description} + +This package contains library source intended for building other packages which +use the "numfmt" feature of the "%{crate}" crate. + +%files -n %{name}+numfmt-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+od-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+od-devel %{_description} + +This package contains library source intended for building other packages which +use the "od" feature of the "%{crate}" crate. + +%files -n %{name}+od-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+paste-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+paste-devel %{_description} + +This package contains library source intended for building other packages which +use the "paste" feature of the "%{crate}" crate. + +%files -n %{name}+paste-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+pathchk-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+pathchk-devel %{_description} + +This package contains library source intended for building other packages which +use the "pathchk" feature of the "%{crate}" crate. + +%files -n %{name}+pathchk-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+pinky-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+pinky-devel %{_description} + +This package contains library source intended for building other packages which +use the "pinky" feature of the "%{crate}" crate. + +%files -n %{name}+pinky-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+pr-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+pr-devel %{_description} + +This package contains library source intended for building other packages which +use the "pr" feature of the "%{crate}" crate. + +%files -n %{name}+pr-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+printenv-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+printenv-devel %{_description} + +This package contains library source intended for building other packages which +use the "printenv" feature of the "%{crate}" crate. + +%files -n %{name}+printenv-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+printf-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+printf-devel %{_description} + +This package contains library source intended for building other packages which +use the "printf" feature of the "%{crate}" crate. + +%files -n %{name}+printf-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+ptx-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+ptx-devel %{_description} + +This package contains library source intended for building other packages which +use the "ptx" feature of the "%{crate}" crate. + +%files -n %{name}+ptx-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+pwd-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+pwd-devel %{_description} + +This package contains library source intended for building other packages which +use the "pwd" feature of the "%{crate}" crate. + +%files -n %{name}+pwd-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+readlink-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+readlink-devel %{_description} + +This package contains library source intended for building other packages which +use the "readlink" feature of the "%{crate}" crate. + +%files -n %{name}+readlink-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+realpath-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+realpath-devel %{_description} + +This package contains library source intended for building other packages which +use the "realpath" feature of the "%{crate}" crate. + +%files -n %{name}+realpath-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+rm-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+rm-devel %{_description} + +This package contains library source intended for building other packages which +use the "rm" feature of the "%{crate}" crate. + +%files -n %{name}+rm-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+rmdir-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+rmdir-devel %{_description} + +This package contains library source intended for building other packages which +use the "rmdir" feature of the "%{crate}" crate. + +%files -n %{name}+rmdir-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+runcon-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+runcon-devel %{_description} + +This package contains library source intended for building other packages which +use the "runcon" feature of the "%{crate}" crate. + +%files -n %{name}+runcon-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+selinux-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+selinux-devel %{_description} + +This package contains library source intended for building other packages which +use the "selinux" feature of the "%{crate}" crate. + +%files -n %{name}+selinux-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+seq-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+seq-devel %{_description} + +This package contains library source intended for building other packages which +use the "seq" feature of the "%{crate}" crate. + +%files -n %{name}+seq-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sha1sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sha1sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sha1sum" feature of the "%{crate}" crate. + +%files -n %{name}+sha1sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sha224sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sha224sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sha224sum" feature of the "%{crate}" crate. + +%files -n %{name}+sha224sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sha256sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sha256sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sha256sum" feature of the "%{crate}" crate. + +%files -n %{name}+sha256sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sha384sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sha384sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sha384sum" feature of the "%{crate}" crate. + +%files -n %{name}+sha384sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sha512sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sha512sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sha512sum" feature of the "%{crate}" crate. + +%files -n %{name}+sha512sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+shred-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+shred-devel %{_description} + +This package contains library source intended for building other packages which +use the "shred" feature of the "%{crate}" crate. + +%files -n %{name}+shred-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+shuf-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+shuf-devel %{_description} + +This package contains library source intended for building other packages which +use the "shuf" feature of the "%{crate}" crate. + +%files -n %{name}+shuf-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sleep-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sleep-devel %{_description} + +This package contains library source intended for building other packages which +use the "sleep" feature of the "%{crate}" crate. + +%files -n %{name}+sleep-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sort-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sort-devel %{_description} + +This package contains library source intended for building other packages which +use the "sort" feature of the "%{crate}" crate. + +%files -n %{name}+sort-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+split-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+split-devel %{_description} + +This package contains library source intended for building other packages which +use the "split" feature of the "%{crate}" crate. + +%files -n %{name}+split-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+stat-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+stat-devel %{_description} + +This package contains library source intended for building other packages which +use the "stat" feature of the "%{crate}" crate. + +%files -n %{name}+stat-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+stdbuf-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+stdbuf-devel %{_description} + +This package contains library source intended for building other packages which +use the "stdbuf" feature of the "%{crate}" crate. + +%files -n %{name}+stdbuf-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+stty-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+stty-devel %{_description} + +This package contains library source intended for building other packages which +use the "stty" feature of the "%{crate}" crate. + +%files -n %{name}+stty-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sum-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sum-devel %{_description} + +This package contains library source intended for building other packages which +use the "sum" feature of the "%{crate}" crate. + +%files -n %{name}+sum-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+sync-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+sync-devel %{_description} + +This package contains library source intended for building other packages which +use the "sync" feature of the "%{crate}" crate. + +%files -n %{name}+sync-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tac-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tac-devel %{_description} + +This package contains library source intended for building other packages which +use the "tac" feature of the "%{crate}" crate. + +%files -n %{name}+tac-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tail-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tail-devel %{_description} + +This package contains library source intended for building other packages which +use the "tail" feature of the "%{crate}" crate. + +%files -n %{name}+tail-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tee-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tee-devel %{_description} + +This package contains library source intended for building other packages which +use the "tee" feature of the "%{crate}" crate. + +%files -n %{name}+tee-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+test-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+test-devel %{_description} + +This package contains library source intended for building other packages which +use the "test" feature of the "%{crate}" crate. + +%files -n %{name}+test-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+test_risky_names-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+test_risky_names-devel %{_description} + +This package contains library source intended for building other packages which +use the "test_risky_names" feature of the "%{crate}" crate. + +%files -n %{name}+test_risky_names-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+timeout-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+timeout-devel %{_description} + +This package contains library source intended for building other packages which +use the "timeout" feature of the "%{crate}" crate. + +%files -n %{name}+timeout-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+touch-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+touch-devel %{_description} + +This package contains library source intended for building other packages which +use the "touch" feature of the "%{crate}" crate. + +%files -n %{name}+touch-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tr-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tr-devel %{_description} + +This package contains library source intended for building other packages which +use the "tr" feature of the "%{crate}" crate. + +%files -n %{name}+tr-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+true-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+true-devel %{_description} + +This package contains library source intended for building other packages which +use the "true" feature of the "%{crate}" crate. + +%files -n %{name}+true-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+truncate-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+truncate-devel %{_description} + +This package contains library source intended for building other packages which +use the "truncate" feature of the "%{crate}" crate. + +%files -n %{name}+truncate-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tsort-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tsort-devel %{_description} + +This package contains library source intended for building other packages which +use the "tsort" feature of the "%{crate}" crate. + +%files -n %{name}+tsort-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+tty-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+tty-devel %{_description} + +This package contains library source intended for building other packages which +use the "tty" feature of the "%{crate}" crate. + +%files -n %{name}+tty-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+uname-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+uname-devel %{_description} + +This package contains library source intended for building other packages which +use the "uname" feature of the "%{crate}" crate. + +%files -n %{name}+uname-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+unexpand-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+unexpand-devel %{_description} + +This package contains library source intended for building other packages which +use the "unexpand" feature of the "%{crate}" crate. + +%files -n %{name}+unexpand-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+uniq-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+uniq-devel %{_description} + +This package contains library source intended for building other packages which +use the "uniq" feature of the "%{crate}" crate. + +%files -n %{name}+uniq-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+unix-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+unix-devel %{_description} + +This package contains library source intended for building other packages which +use the "unix" feature of the "%{crate}" crate. + +%files -n %{name}+unix-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+unlink-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+unlink-devel %{_description} + +This package contains library source intended for building other packages which +use the "unlink" feature of the "%{crate}" crate. + +%files -n %{name}+unlink-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+uptime-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+uptime-devel %{_description} + +This package contains library source intended for building other packages which +use the "uptime" feature of the "%{crate}" crate. + +%files -n %{name}+uptime-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+users-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+users-devel %{_description} + +This package contains library source intended for building other packages which +use the "users" feature of the "%{crate}" crate. + +%files -n %{name}+users-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+uu_test-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+uu_test-devel %{_description} + +This package contains library source intended for building other packages which +use the "uu_test" feature of the "%{crate}" crate. + +%files -n %{name}+uu_test-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+uudoc-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+uudoc-devel %{_description} + +This package contains library source intended for building other packages which +use the "uudoc" feature of the "%{crate}" crate. + +%files -n %{name}+uudoc-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+vdir-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+vdir-devel %{_description} + +This package contains library source intended for building other packages which +use the "vdir" feature of the "%{crate}" crate. + +%files -n %{name}+vdir-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+wc-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+wc-devel %{_description} + +This package contains library source intended for building other packages which +use the "wc" feature of the "%{crate}" crate. + +%files -n %{name}+wc-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+who-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+who-devel %{_description} + +This package contains library source intended for building other packages which +use the "who" feature of the "%{crate}" crate. + +%files -n %{name}+who-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+whoami-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+whoami-devel %{_description} + +This package contains library source intended for building other packages which +use the "whoami" feature of the "%{crate}" crate. + +%files -n %{name}+whoami-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+windows-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+windows-devel %{_description} + +This package contains library source intended for building other packages which +use the "windows" feature of the "%{crate}" crate. + +%files -n %{name}+windows-devel +%ghost %{crate_instdir}/Cargo.toml + +%package -n %{name}+yes-devel +Summary: %{summary} +BuildArch: noarch + +%description -n %{name}+yes-devel %{_description} + +This package contains library source intended for building other packages which +use the "yes" feature of the "%{crate}" crate. + +%files -n %{name}+yes-devel +%ghost %{crate_instdir}/Cargo.toml + +%prep +%autosetup -n %{crate}-%{version} -p1 +%cargo_prep + +%generate_buildrequires +%cargo_generate_buildrequires -f %{feature_flags} + +%build +%cargo_build -f %{feature_flags} +%{cargo_license_summary -f %{feature_flags}} +%{cargo_license -f %{feature_flags}} > LICENSE.dependencies +mkdir -p data/man/man1 +mkdir -p data/completions/{bash,fish,zsh} + +for utility in $(target/rpm/coreutils --list); do + target/release/uudoc manpage $utility > data/man/man1/uu_${utility}.1 + for s in bash zsh; do + target/release/uudoc completion $utility $s > data/completions/$s/uu_${utility} + done + target/release/uudoc completion $utility fish > data/completions/fish/uu_${utility}.fish +done +target/release/uudoc manpage coreutils > data/man/man1/uutils-coreutils.1 +for s in bash zsh; do + target/release/uudoc completion coreutils $s > data/completions/$s/uutils-coreutils +done +target/release/uudoc completion coreutils fish > data/completions/fish/uutils-coreutils.fish + + +%install +%cargo_install -f %{feature_flags} +mv %{buildroot}/%{_bindir}/coreutils %{buildroot}/%{_bindir}/uutils-coreutils +for utility in $(target/rpm/coreutils --list); do + ln -sr %{buildroot}%{_bindir}/uutils-coreutils %{buildroot}%{_bindir}/uu_$utility +done +mkdir -p %{buildroot}%{_mandir}/man1 +cp -p data/man/man1/* %{buildroot}%{_mandir}/man1/ +mkdir -p %{buildroot}%{bash_completions_dir} +mkdir -p %{buildroot}%{fish_completions_dir} +mkdir -p %{buildroot}%{zsh_completions_dir} +cp -p data/completions/bash/* %{buildroot}%{bash_completions_dir}/ +cp -p data/completions/fish/* %{buildroot}%{fish_completions_dir}/ +cp -p data/completions/zsh/* %{buildroot}%{zsh_completions_dir}/ + +# unneeded, and contain compiled fixtures +rm -rf %{buildroot}%{crate_instdir}/tests + +# unneeded at runtime +rm %{buildroot}%{_bindir}/uudoc + + +%if %{with check} +%check +# * --test-threads 1: tests fail with permission denied error if run with too +# many threads (currently not needed) +# * common::util::tests::test_compare_xattrs: operation not supported +# * test_chcon / test_runcon: SELinux not supported in mock +# * test_cp: operation not supported +# * test_df: needs an actual filesystem to test +# * test_du: expected sublink/symlink in output +# * test_ls: need block/char device +# * test_od: s390x failures, see +# https://github.com/uutils/coreutils/issues/9017#issuecomment-4148721220 +# * test_seq: tolerances too tight +# * test_sort: formatting differences with recent unicode-width versions +# * uudoc: missing test fixture +# * various color and localization tests +%{cargo_test -f %{feature_flags} -- -- %{shrink: + --skip common::util::tests::test_compare_xattrs + --skip test_chcon:: + --skip test_runcon:: + --skip test_cp::test_copy_dir_preserve_permissions + --skip test_cp::test_copy_dir_preserve_permissions_inaccessible_file + --skip test_cp::test_copy_dir_preserve_subdir_permissions + --skip test_cp::test_copy_through_dangling_symlink_no_dereference_permissions + --skip test_cp::test_cp_current_directory_preserve_attributes + --skip test_cp::test_cp_debug_reflink_auto_sparse_always_non_sparse_file_with_long_zero_sequence + --skip test_cp::test_cp_parents_2_dirs + --skip test_cp::test_cp_parents_with_permissions_copy_dir + --skip test_cp::test_cp_parents_with_permissions_copy_file + --skip test_cp::test_cp_preserve_xattr + --skip test_cp::test_cp_sparse_always_empty + --skip test_cp::test_cp_sparse_always_non_empty + --skip test_cp::test_preserve_hardlink_attributes_in_directory + --skip test_cp::test_preserve_mode + --skip test_df::test_exclude_all_types + --skip test_df::test_file_column_width_if_filename_contains_unicode_chars + --skip test_df::test_nonexistent_file + --skip test_df::test_output_file_specific_files + --skip test_df::test_output_mp_repeat + --skip test_df::test_output_option_without_equals_sign + --skip test_df::test_total_label_in_correct_column + --skip test_df::test_type_option_with_file + --skip test_du::test_du_dereference_args + --skip test_du::test_du_no_dereference + --skip test_env::test_env_french + --skip test_ls::test_device_number + --skip test_ls::test_localized_possible_values + --skip test_ls::test_ls_allocation_size + --skip test_ls::test_ls_inode + --skip test_ls::test_ls_long_format + --skip test_ls::test_ls_long_formats +%ifarch s390x + --skip test_od::test_od_options_after_filename + --skip test_od::test_suppress_duplicates +%endif + --skip test_seq::test_count_down_floats + --skip test_seq::test_float_precision_increment + --skip test_seq::test_inf_width + --skip test_seq::test_neg_inf_width + --skip test_seq::test_separator_and_terminator_floats + --skip test_seq::test_width_decimal_scientific_notation_increment + --skip test_seq::test_width_decimal_scientific_notation_trailing_zeros_end + --skip test_seq::test_width_decimal_scientific_notation_trailing_zeros_increment + --skip test_seq::test_width_floats + --skip test_seq::test_width_negative_zero_decimal_notation + --skip test_seq::test_width_negative_zero_scientific_notation + --skip test_sort::test_argument_suggestion + --skip test_sort::test_clap_localization_help_message + --skip test_sort::test_clap_localization_invalid_value + --skip test_sort::test_clap_localization_unknown_argument + --skip test_sort::test_error_colors_disabled + --skip test_sort::test_error_colors_enabled + --skip test_sort::test_french_translations + --skip test_sort::test_help_colors_disabled + --skip test_sort::test_help_colors_enabled + --skip test_sort::test_keys_closed_range + --skip test_sort::test_keys_multiple_ranges + --skip test_sort::test_keys_no_field_match + --skip test_sort::test_keys_open_ended + --skip test_tail::test_follow_name_truncate4 + --skip test_tail::test_retry7 + --skip test_tail::test_retry9 + --skip test_error_messages_french_translation + --skip test_french_colored_error_messages + --skip test_help_messages_french_translation + --skip uudoc_check_sums + --skip uudoc_check_test +}} +%endif + +%changelog +%autochangelog diff --git a/rust2rpm.toml b/rust2rpm.toml new file mode 100644 index 0000000..b15fbfa --- /dev/null +++ b/rust2rpm.toml @@ -0,0 +1,166 @@ +[package] +summary = "coreutils ~ GNU coreutils reimplementation in Rust" +description = "coreutils ~ GNU coreutils (updated); implemented as universal (cross-platform) utils, written in Rust." + +cargo-toml-patch-comments = [ + "loosen selinux version bound from =0.6.0 to 0.6.0", + "bump ctor from 0.6 to 1", +] + +bin-package-name = "uutils-coreutils" + +extra-files = [ + "%{_bindir}/uu_*", + "%{_mandir}/man1/*", + "%{bash_completions_dir}/*", + "%{fish_completions_dir}/*", + "%{zsh_completions_dir}/*", +] + +[package.bin-renames] +coreutils = "uutils-coreutils" + +[[package.extra-patches]] +number = 2 +file = "uutests-ctor-1_x.diff" +comments = ["compatibility fixes for ctor 1.x"] + +[features] +enable = [ + "feat_os_unix", + "feat_acl", + "feat_selinux", + "feat_systemd_logind", +] + +[requires] +build = [ + "systemd-devel", +] + +[scripts] +build.post = ["""\ +mkdir -p data/man/man1 +mkdir -p data/completions/{bash,fish,zsh} + +for utility in $(target/rpm/coreutils --list); do + target/release/uudoc manpage $utility > data/man/man1/uu_${utility}.1 + for s in bash zsh; do + target/release/uudoc completion $utility $s > data/completions/$s/uu_${utility} + done + target/release/uudoc completion $utility fish > data/completions/fish/uu_${utility}.fish +done +target/release/uudoc manpage coreutils > data/man/man1/uutils-coreutils.1 +for s in bash zsh; do + target/release/uudoc completion coreutils $s > data/completions/$s/uutils-coreutils +done +target/release/uudoc completion coreutils fish > data/completions/fish/uutils-coreutils.fish +"""] + +install.post = ["""\ +for utility in $(target/rpm/coreutils --list); do + ln -sr %{buildroot}%{_bindir}/uutils-coreutils %{buildroot}%{_bindir}/uu_$utility +done +mkdir -p %{buildroot}%{_mandir}/man1 +cp -p data/man/man1/* %{buildroot}%{_mandir}/man1/ +mkdir -p %{buildroot}%{bash_completions_dir} +mkdir -p %{buildroot}%{fish_completions_dir} +mkdir -p %{buildroot}%{zsh_completions_dir} +cp -p data/completions/bash/* %{buildroot}%{bash_completions_dir}/ +cp -p data/completions/fish/* %{buildroot}%{fish_completions_dir}/ +cp -p data/completions/zsh/* %{buildroot}%{zsh_completions_dir}/ + +# unneeded, and contain compiled fixtures +rm -rf %{buildroot}%{crate_instdir}/tests + +# unneeded at runtime +rm %{buildroot}%{_bindir}/uudoc +"""] + +[tests] +comments = [ + "--test-threads 1: tests fail with permission denied error if run with too many threads (currently not needed)", + "common::util::tests::test_compare_xattrs: operation not supported", + "test_chcon / test_runcon: SELinux not supported in mock", + "test_cp: operation not supported", + "test_df: needs an actual filesystem to test", + "test_du: expected sublink/symlink in output", + "test_ls: need block/char device", + "test_od: s390x failures, see https://github.com/uutils/coreutils/issues/9017#issuecomment-4148721220", + "test_seq: tolerances too tight", + "test_sort: formatting differences with recent unicode-width versions", + "uudoc: missing test fixture", + "various color and localization tests", +] + + +skip = [ + "common::util::tests::test_compare_xattrs", + "test_chcon::", + "test_runcon::", + "test_cp::test_copy_dir_preserve_permissions", + "test_cp::test_copy_dir_preserve_permissions_inaccessible_file", + "test_cp::test_copy_dir_preserve_subdir_permissions", + "test_cp::test_copy_through_dangling_symlink_no_dereference_permissions", + "test_cp::test_cp_current_directory_preserve_attributes", + "test_cp::test_cp_debug_reflink_auto_sparse_always_non_sparse_file_with_long_zero_sequence", + "test_cp::test_cp_parents_2_dirs", + "test_cp::test_cp_parents_with_permissions_copy_dir", + "test_cp::test_cp_parents_with_permissions_copy_file", + "test_cp::test_cp_preserve_xattr", + "test_cp::test_cp_sparse_always_empty", + "test_cp::test_cp_sparse_always_non_empty", + "test_cp::test_preserve_hardlink_attributes_in_directory", + "test_cp::test_preserve_mode", + "test_df::test_exclude_all_types", + "test_df::test_file_column_width_if_filename_contains_unicode_chars", + "test_df::test_nonexistent_file", + "test_df::test_output_file_specific_files", + "test_df::test_output_mp_repeat", + "test_df::test_output_option_without_equals_sign", + "test_df::test_total_label_in_correct_column", + "test_df::test_type_option_with_file", + "test_du::test_du_dereference_args", + "test_du::test_du_no_dereference", + "test_env::test_env_french", + "test_ls::test_device_number", + "test_ls::test_localized_possible_values", + "test_ls::test_ls_allocation_size", + "test_ls::test_ls_inode", + "test_ls::test_ls_long_format", + "test_ls::test_ls_long_formats", + "test_od::test_od_options_after_filename", # fails on s390x + "test_od::test_suppress_duplicates", # fails on s390x + "test_seq::test_count_down_floats", + "test_seq::test_float_precision_increment", + "test_seq::test_inf_width", + "test_seq::test_neg_inf_width", + "test_seq::test_separator_and_terminator_floats", + "test_seq::test_width_decimal_scientific_notation_increment", + "test_seq::test_width_decimal_scientific_notation_trailing_zeros_end", + "test_seq::test_width_decimal_scientific_notation_trailing_zeros_increment", + "test_seq::test_width_floats", + "test_seq::test_width_negative_zero_decimal_notation", + "test_seq::test_width_negative_zero_scientific_notation", + "test_sort::test_argument_suggestion", + "test_sort::test_clap_localization_help_message", + "test_sort::test_clap_localization_invalid_value", + "test_sort::test_clap_localization_unknown_argument", + "test_sort::test_error_colors_disabled", + "test_sort::test_error_colors_enabled", + "test_sort::test_french_translations", + "test_sort::test_help_colors_disabled", + "test_sort::test_help_colors_enabled", + "test_sort::test_keys_closed_range", + "test_sort::test_keys_multiple_ranges", + "test_sort::test_keys_no_field_match", + "test_sort::test_keys_open_ended", + "test_tail::test_follow_name_truncate4", # fails on x86_64 + "test_tail::test_retry7", + "test_tail::test_retry9", + "test_error_messages_french_translation", + "test_french_colored_error_messages", + "test_help_messages_french_translation", + "uudoc_check_sums", + "uudoc_check_test", +] diff --git a/series b/series new file mode 100644 index 0000000..27b8738 --- /dev/null +++ b/series @@ -0,0 +1,2 @@ +coreutils-fix-metadata.diff +coreutils-ctor-1_x.diff diff --git a/sources b/sources new file mode 100644 index 0000000..f53f96f --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (coreutils-0.7.0.crate) = da73aa7ae600164da31ae1ba84c6ac5a73ca62a492520aa6fc65816557d68452246e9adec66b3902172f4b0851680610479c8b51a2a095bc19ebd1fbf6036993