## START: Set by rpmautospec ## (rpmautospec version 0.8.4) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 2; 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 %global debug_package %{nil} %global miniz_hash 36b6c99f622a61b7f97d0238461d4d723aa1322b %global rcheevos_hash f1417fbf2236936e8334533628b2948dfa4a46d0 %global libchdr_hash cb077337d53392454e7100a0fd07139ca678e527 %global rairef_hash 9b999253eee5b5236f090405b9215c8c9eef00c4 Name: rahasher Version: 1.8.4 Release: %autorelease Summary: RetroAchievements ROM hash tool License: GPLv3+ URL: https://github.com/RetroAchievements/RALibretro Source0: https://github.com/RetroAchievements/RALibretro/archive/refs/tags/%{version}.tar.gz Source1: https://github.com/richgel999/miniz/archive/%{miniz_hash}.tar.gz Source2: https://github.com/RetroAchievements/rcheevos/archive/%{rcheevos_hash}.tar.gz Source3: https://github.com/rtissera/libchdr/archive/%{libchdr_hash}.tar.gz Source4: https://github.com/RetroAchievements/RAInterface/archive/%{rairef_hash}.tar.gz # RAHasher has vendored dependencies (miniz, rcheevos, libchdr), # so the only external build requirements are compiler toolchain BuildRequires: gcc-c++ BuildRequires: make BuildRequires: git %description RAHasher is a ROM hash tool from RetroAchievements. It computes ROM hashes for use with the RetroAchievements platform, supporting multiple platforms including CHD-compressed discs. %prep %autosetup -n RALibretro-%{version} -p1 # Extract bundled dependencies into their expected locations under src/ # Miniz mkdir -p src/miniz tar xzf %{SOURCE1} --strip-components=1 -C src/miniz # rcheevos mkdir -p src/rcheevos tar xzf %{SOURCE2} --strip-components=1 -C src/rcheevos # libchdr (includes its deps: lzma-24.05, zlib-1.3.1, zstd-1.5.6) mkdir -p src/libchdr tar xzf %{SOURCE3} --strip-components=1 -C src/libchdr # RAInterface (provides MakeBuildVer.sh for build version generation) mkdir -p src/RAInterface tar xzf %{SOURCE4} --strip-components=1 -C src/RAInterface %build # Initialize a git repo so RA_BuildVer.h can be generated # (RAInterface's MakeBuildVer.sh uses git describe/rev-parse) git init -q git config user.email "rpmbuild@localhost" git config user.name "RPMBuild" git add -A git commit -q -m "source-%{version}" --allow-empty-message # Fix: zlib source files (gzlib.c, gzread.c, gzwrite.c) call POSIX # functions (lseek, read, write, close) but rely on gzguts.h to declare them. # gzguts.h does not include on non-Windows, so add it. for f in src/libchdr/deps/zlib-1.3.1/gzlib.c \ src/libchdr/deps/zlib-1.3.1/gzread.c \ src/libchdr/deps/zlib-1.3.1/gzwrite.c; do if [ -f "$f" ]; then sed -i '1i\#include ' "$f" fi done # Override LDFLAGS to avoid needing libstdc++-static make HAVE_CHD=1 LDFLAGS="-static-libgcc" -f ./Makefile.RAHasher %install mkdir -p %{buildroot}%{_bindir} install -m 755 bin64/RAHasher %{buildroot}%{_bindir}/RAHasher %files %{_bindir}/RAHasher %license COPYING %changelog ## START: Generated by rpmautospec * Sat Aug 22 2026 Grillo del Mal - 1.8.4-2 - remove -m64 flag * Sat Aug 22 2026 Grillo del Mal - 1.8.4-1 - Initial commit ## END: Generated by rpmautospec