Name: ecwolf # renovate: datasource=bitbucket-tags depName=ecwolf/ecwolf Version: 1.4.2 Release: 1%{?dist} Summary: Advanced source port of the Wolfenstein 3D engine # Wolf3D/Wolf4SDL-derived code is "GPL-2.0-or-later OR id Software EULA"; the EULA # is not a free license, so this package takes the GPL. Then, for what gets built: # GPL-2.0-or-later src/dosbox (OPL emulator, used with -DGPL=ON) # BSD-3-Clause ZDoom-derived and new code, src/sfmt # MIT src/dobjgc.cpp, src/tarray.h (from Lua) # SMLNJ deps/gdtoa (Lucent permission notice) # LicenseRef-Fedora-Public-Domain deps/lzma (LZMA SDK) License: GPL-2.0-or-later AND BSD-3-Clause AND MIT AND SMLNJ AND LicenseRef-Fedora-Public-Domain URL: https://maniacsvault.net/ecwolf/ # Upstream's tarball with the non-free MAME code removed; generate it with # scripts/repack-source.sh, which downloads # https://maniacsvault.net/ecwolf/files/ecwolf/1.x/ecwolf-%%{version}-src.tar.xz Source0: ecwolf-%{version}-free.tar.xz BuildRequires: cmake BuildRequires: desktop-file-utils BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: libappstream-glib BuildRequires: pkgconfig(bzip2) # optional upstream: the graphical game data picker, else a console prompt BuildRequires: pkgconfig(gtk+-3.0) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(SDL2_mixer) BuildRequires: pkgconfig(SDL2_net) BuildRequires: pkgconfig(sdl2) BuildRequires: pkgconfig(zlib) # Always built from the vendored copies; Fedora has no packaged equivalents Provides: bundled(gdtoa) Provides: bundled(lzma-sdk) Provides: bundled(sfmt) %description ECWolf is an advanced source port of the Wolfenstein 3D engine, based on Wolf4SDL with code from ZDoom. It plays Wolfenstein 3D, Spear of Destiny and Super 3-D Noah's Ark, adding widescreen resolutions, modern controls and support for mods. The original game data files are not included and must be supplied separately. %prep %autosetup -n %{name}-%{version}-src # Generated header that upstream ships for its Windows/macOS builds. It hardcodes # INSTALL_PREFIX "/usr/local" and, sitting next to the sources, would shadow the # copy CMake generates, so the engine would look for ecwolf.pk3 in /usr/local. # Not every release ships it (1.4.1 didn't), hence -f here and below. rm -f src/versiondefs.h # Vendored copies of libraries Fedora ships. CMake falls back to them when it # can't find a system library, so remove them to make that a build error instead. rm -rf android-libs deps/SDL deps/SDL_mixer deps/SDL_net deps/bzip2 deps/jpeg-6b deps/textscreen deps/zlib %build # upstream defaults the binary to games/, per Debian policy, and sets an $ORIGIN # RUNPATH for its self-contained binary builds %cmake -DGPL=ON -DCMAKE_INSTALL_BINDIR=bin -DCMAKE_SKIP_RPATH=ON %cmake_build %install %cmake_install # CMake installs docs/copyright and a gzipped docs/changelog here; ship them # through %%license and %%doc instead rm -r %{buildroot}%{_docdir}/%{name} %check desktop-file-validate %{buildroot}%{_datadir}/applications/org.ecwolf.ECWolf.desktop appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/org.ecwolf.ECWolf.metainfo.xml %files %license docs/copyright docs/license-gpl.txt %doc README.md docs/changelog %{_bindir}/%{name} %{_datadir}/%{name}/ %{_datadir}/applications/org.ecwolf.ECWolf.desktop %{_datadir}/icons/hicolor/scalable/apps/org.ecwolf.ECWolf.svg %{_metainfodir}/org.ecwolf.ECWolf.metainfo.xml %{_mandir}/man6/%{name}.6* # Hand-maintained: Renovate version bumps don't add entries, and CI doesn't require them %changelog * Sat Oct 17 2026 Aaron Jordan - 1.4.2-1 - Initial package