File alephone.spec of Package alephone
#
# spec file for package alephone
#
# Copyright (c) 2025 SUSE LLC
#
# 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: alephone
Version: 20250302
Release: 0
Summary: Open Source continuation of Bungie’s Marathon 2 game engine
License: GPL-3.0-only
Group: Amusements/Games/3D/Shoot
URL: https://alephone.lhowon.org/
Source: https://github.com/Aleph-One-Marathon/%{name}/releases/download/release-%{version}/AlephOne-%{version}.tar.bz2
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: hicolor-icon-theme
BuildRequires: icoutils
BuildRequires: libboost_filesystem-devel
BuildRequires: libboost_system-devel
BuildRequires: pkgconfig
BuildRequires: pkgconfig(SDL2_image)
BuildRequires: pkgconfig(SDL2_net)
BuildRequires: pkgconfig(SDL2_ttf)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(glu)
BuildRequires: pkgconfig(libavcodec) >= 54.35.0
BuildRequires: pkgconfig(libavformat) >= 54.20.0
BuildRequires: pkgconfig(libavutil) >= 52.3.0
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(libswresample) >= 3.0.0
BuildRequires: pkgconfig(libswscale) >= 2.1.1
BuildRequires: pkgconfig(lua)
BuildRequires: pkgconfig(mad)
BuildRequires: pkgconfig(miniupnpc)
BuildRequires: pkgconfig(openal)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(sndfile)
BuildRequires: pkgconfig(speex)
BuildRequires: pkgconfig(vorbis)
BuildRequires: pkgconfig(zziplib)
%description
This is the fan improved Marathon 2 engine after the the source code
release by developer Bungie. It was also enabled to access the MariusNet
matchmaking server for multiplayer.
Aleph One supports Marathon, Marathon 2 and Marathon Infinity natively.
Many third party scenarios and net maps are also available.
%prep
%setup -q -n AlephOne-%{version}
# lowercase for (folder) name
sed "s|PACKAGE='AlephOne'|PACKAGE='alephone'|g" -i configure
# this is done for reproducible builds
DATE="\"$(date -d "@${SOURCE_DATE_EPOCH}" "+%%b %%e %%Y")\""
TIME="\"$(date -d "@${SOURCE_DATE_EPOCH}" "+%%R")\""
sed -i -e "s/__DATE__/$DATE/" -e "s/__TIME__/$TIME/" Source_Files/Network/Metaserver/metaserver_messages.cpp
pushd Resources/Windows
icotool -x -w 48 alephone.ico -o ../alephone.png
popd
%build
%configure \
%if %{suse_version} >= 1600
--without-ffmpeg \
%endif
--with-boost=%{_prefix}
%make_build
%install
%make_install
# icons
install -d %{buildroot}%{_datadir}/pixmaps
install -m644 Resources/*.png %{buildroot}%{_datadir}/pixmaps
%fdupes -s %{buildroot}/%{_prefix}
%files
%license COPYING
%doc docs/*.html AUTHORS README.md THANKS
%{_bindir}/%{name}
%{_datadir}/%{name}
%{_datadir}/icons/hicolor/*/mimetypes/*%{name}*.png
%{_datadir}/mime/packages/alephone.xml
%{_datadir}/pixmaps/*.png
%{_mandir}/man6/%{name}.6%{?ext_man}
%changelog