File realrtcw.spec of Package realrtcw

#
# spec file for package realrtcw
#
# Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2022-2025, Martin Hauke <mardnh@gmx.de>
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


Name:           realrtcw
Version:        5.2
Release:        0
Summary:        An overhaul mod for critically acclaimed Return To Castle Wolfenstein
License:        GPL-3.0-or-later
Group:          Amusements/Games/3D/Shoot
URL:            http://www.moddb.com/mods/realrtcw-realism-mod
#Git-Clone:     https://github.com/wolfetplayer/RealRTCW.git
Source:         https://github.com/wolfetplayer/RealRTCW/archive/refs/tags/%{version}.tar.gz#/RealRTCW-%{version}.tar.gz
# # PATCH-FIX-OPENSUSE realrtcw-disable-steam_integration.patch - upstream dropped the non steam package
Patch0:         realrtcw-disable-steam_integration.patch
%if 0%{?sle_version} >= 150600 && 0%{?sle_version} < 160000 && 0%{?is_opensuse}
BuildRequires:  gcc13
BuildRequires:  gcc13-c++
%else
BuildRequires:  gcc-c++
%endif
BuildRequires:  hicolor-icon-theme
BuildRequires:  pkgconfig
BuildRequires:  update-desktop-files
BuildRequires:  pkgconfig(freetype2)
BuildRequires:  pkgconfig(libjpeg)
BuildRequires:  pkgconfig(openal)
BuildRequires:  pkgconfig(opus)
BuildRequires:  pkgconfig(opusfile)
BuildRequires:  pkgconfig(sdl2)
BuildRequires:  pkgconfig(vorbisfile)
BuildRequires:  pkgconfig(zlib)

%description
RealRTCW is an overhaul mod for critically acclaimed Wolfenstein classic.
It features new renderer, expanded arsenal, rebalanced gunplay, new
high quality models,textures and sounds.

Features:
 * Mod is based on ioRTCW source port, which provides proper widescreen
   support, high quality sound engine and 64-bit systems support
 * Expanded arsenal which includes 12 new weapons
 * New HQ models for the vanilla weapons
 * HQ textures for the environment and characters, which are still
   faithful to the original style and atmosphere
 * Atmospheric effects support - rain and snow
 * New inventory items - adrenaline and bandages
 * Real recoil system
 * Rebalanced weapons characteristics
 * Rebalanced AI
 * Overhauled sounds
 * New HUD and UI
 * New difficulty system
 * Subtitles support
 * Restored cut content including training level and unused soundtrack

Note:
Game data must be placed in ~/.realrtcw/main/ .

%prep
%setup -q -n RealRTCW-%{version}
%autopatch -p1

%build
%if 0%{?sle_version} >= 150600 && 0%{?sle_version} < 160000 && 0%{?is_opensuse}
export CC="gcc-13"
export CXX="g++-13"
%endif
export CFLAGS="%optflags -Wdangling-pointer=0 -Wno-error=incompatible-pointer-types -Wno-implicit-function-declaration"
%make_build \
  USE_INTERNAL_LIBS=0 \
  V=1

%install
realrtcwdir="%{buildroot}%{_libexecdir}/realrtcw"
install -d %{buildroot}%{_bindir}
install -d $realrtcwdir
install -d $realrtcwdir/main/
install -m 755 build/release-linux-*/RealRTCW.* $realrtcwdir/realrtcw
install -m 644 build/release-linux-*/renderer_*.so $realrtcwdir/
install -m 644 build/release-linux-*/main/cgame.sp.*.so $realrtcwdir/main/
install -m 644 build/release-linux-*/main/qagame.sp.*.so $realrtcwdir/main/
install -m 644 build/release-linux-*/main/ui.sp.*.so $realrtcwdir/main/

# wrapper
echo -e "#!/bin/sh\nexec %{_libexecdir}/realrtcw/realrtcw \"\$@\"" > %{buildroot}%{_bindir}/realrtcw
chmod 755 %{buildroot}%{_bindir}/realrtcw

# icons
install -Dm 0644 misc/wolf.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/realrtcw.svg
install -Dm 0644 misc/wolf512.png %{buildroot}%{_datadir}/icons/hicolor/512x512/apps/realrtcw.png

# desktop file
%suse_update_desktop_file -c %{name} 'RealRTCW SP' 'RealRTCW (Single Player)' %{name} %{name} Game ActionGame

%files
%license COPYING.txt
%doc README.md README.txt rend2-readme.md voip-readme.txt
%{_bindir}/realrtcw
%dir %{_libexecdir}/realrtcw
%{_libexecdir}/realrtcw/realrtcw
%{_libexecdir}/realrtcw/renderer_*.so
%dir %{_libexecdir}/realrtcw/main
%{_libexecdir}/realrtcw/main/cgame.sp.*.so
%{_libexecdir}/realrtcw/main/qagame.sp.*.so
%{_libexecdir}/realrtcw/main/qagame.sp.*.so
%{_libexecdir}/realrtcw/main/ui.sp.*.so
%{_datadir}/icons/hicolor/*/apps/realrtcw.??g
%{_datadir}/applications/realrtcw.desktop

%changelog
openSUSE Build Service is sponsored by