Five distro recipes in packaging/, all following the same recipe: unpack the Gitea release archive (which extracts to fastwc/), run autoreconf -fi (the generated configure/Makefile.in are not committed), configure, make, make install - the binary needs only glibc. Each recipe notes the release prerequisite: the archive URL requires a v0.1.0 tag on the remote, and Arch/Nix/Void carry an integrity placeholder to fill in once the tag exists. The PKGBUILD was validated with makepkg --printsrcinfo, and the full build recipe was run end-to-end from a Gitea-layout tarball (autoreconf, configure, make, make install DESTDIR) producing a working /usr/bin/fastwc.
44 lines
1.0 KiB
RPMSpec
44 lines
1.0 KiB
RPMSpec
Name: fastwc
|
|
Version: 0.1.0
|
|
Release: 1%{?dist}
|
|
Summary: A wc replacement that beats GNU wc
|
|
|
|
License: MIT
|
|
URL: https://git.spectoria.dev/huntedbytheirs/fastwc
|
|
# requires a v0.1.0 tag on the Gitea remote
|
|
Source0: %{url}/archive/v%{version}.tar.gz
|
|
|
|
BuildRequires: gcc
|
|
BuildRequires: make
|
|
BuildRequires: autoconf
|
|
BuildRequires: automake
|
|
BuildRequires: libtool
|
|
|
|
%description
|
|
fastwc is a single-file wc replacement. It counts lines, words, and
|
|
bytes with SIMD kernels (AVX-512, AVX-2, SSE2, runtime-dispatched),
|
|
maps regular files instead of copying them, and splits large files
|
|
across cores. It never loses to GNU wc on the benchmark suite, and
|
|
never disagrees with its counts.
|
|
|
|
%prep
|
|
# Gitea archives extract to a directory named after the repo
|
|
%autosetup -n fastwc
|
|
|
|
%build
|
|
autoreconf -fi
|
|
%configure
|
|
%make_build
|
|
|
|
%install
|
|
%make_install
|
|
|
|
%files
|
|
%{_bindir}/fastwc
|
|
%license LICENSE
|
|
%doc README.md docs/PERFORMANCE.md
|
|
|
|
%changelog
|
|
* Sat Aug 29 2026 huntedbytheirs <[email protected]> - 0.1.0-1
|
|
- Initial packaging
|