ddnet/ddnet.spec
Carsten Ziepke 0a61481a48 - Update to version 18.9.1:
* [Client] Rework name plates
  * [Client] Run server on Android
  * [Client] Support reading demo files larger than 2 GiB
  * [Client] Add 'sv_maps_base_url' to support map download
    https urls
  * [Client] Fix Tele Commands during Dyncam Zoom and Make Aiming
    Consistent across Zoom Levels
  * [Client] Use remote tee angle when spectating
  * [Client] Send camera type flag to prevent unexpected viewpos
    and target update
  * [Client] Fix console behavior when pasting multiple lines
    of text
  * [Client] Reset color in RenderLoading
  * [Client] Translations for graphics errors
  * [Client] Make client/graphics warnings thread-safe
  * [Client] Support double quotes in translations
  * [Client] Don't merge diffrent colored client msgs
  * [Client] Minor improvement of entities background map settings
  * [Client] Improve entities/menu background map loading
  * [Client] Makes winter_night menu theme background can display
    properly on a wider resolution
  * [Client] Make Rendering the angle used by the hookcoll be
    fixed when spectating
  * [Client] Fix jump effect opacity
  * [Client] Improve key & main menu hotkey handling
  * [Client] Fix Android crash in release build due to ProGuard
  * [Client] Minor improvements to random skin generation
  * [Client] Add button to open Touch controls wiki page to
    controls editor
  * [Client] Fix tuning velramp graphs not being updated when
    tuning changed
  * [Client] Improve sound sample thread-safety
  * [Client] Fix current server's community information not
    being set
  * [Client] Don't count fire if spec menu is opened
  * [Client] Fix incorrect loading progress due to 0.7 images
  * [Client&Server] Set a recursion limit for config files
  * [Editor] Revert Tele popup
  * [Editor] Allow invalid commands too if unknown commands
    are allowed
  * [Server] Ignore case when map voting with full match
  * [Server] Fix server handling when vote creator leaves
  * [Server] Add death sounds/particles on spike in practice
  * [Server] Spikes freeze instead of kill in practice
  * [Server] Disable auto rescue in spike in practice
  * [Tooling] Fix stack-overflow in demo_extract_chat tool

OBS-URL: https://build.opensuse.org/package/show/games/ddnet?expand=0&rev=57
2025-02-06 19:59:23 +00:00

152 lines
4.5 KiB
RPMSpec

#
# spec file for package ddnet
#
# 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: ddnet
Version: 18.9.1
Release: 0
Summary: DDraceNetwork, a cooperative racing mod of Teeworlds
License: Apache-2.0 AND CC-BY-SA-3.0 AND Zlib AND MIT AND SUSE-Public-Domain
Group: Amusements/Games/Action/Race
URL: https://ddnet.org/
Source0: https://github.com/ddnet/ddnet/archive/%{version}/%{name}-%{version}.tar.gz
Source1: vendor.tar.xz
Source2: cargo_config
BuildRequires: Mesa-libGLESv3-devel
BuildRequires: appstream-glib
BuildRequires: cargo
BuildRequires: cmake
BuildRequires: desktop-file-utils
BuildRequires: fdupes
BuildRequires: glslang-devel
BuildRequires: hicolor-icon-theme
BuildRequires: libminiupnpc-devel
BuildRequires: pkgconfig
BuildRequires: pnglite-devel
BuildRequires: python3
BuildRequires: rust
BuildRequires: rust-std
BuildRequires: pkgconfig(freetype2)
BuildRequires: pkgconfig(glew)
BuildRequires: pkgconfig(gtest)
BuildRequires: pkgconfig(libcurl)
BuildRequires: pkgconfig(libnotify)
BuildRequires: pkgconfig(libpng)
BuildRequires: pkgconfig(ogg)
BuildRequires: pkgconfig(openssl)
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(opusfile)
BuildRequires: pkgconfig(sdl2)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(vulkan)
BuildRequires: pkgconfig(wavpack)
BuildRequires: pkgconfig(zlib)
Requires: %{name}-data = %{version}-%{release}
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000 && 0%{?is_opensuse}
BuildRequires: gcc11
BuildRequires: gcc11-c++
%else
BuildRequires: gcc-c++
%endif
%description
DDraceNetwork (DDNet) is an actively maintained version of DDRace,
a Teeworlds modification with a unique cooperative gameplay.
Help each other play through custom maps with up to 64 players,
compete against the best in international tournaments, design your
own maps, or run your own server.
%package data
Summary: Data files for %{name}
Requires: %{name} = %{version}-%{release}
BuildArch: noarch
%description data
Data files for DDraceNetwork (DDNet).
%package server
Summary: Standalone server for %{name}
Requires: %{name}%{?_isa} = %{version}-%{release}
%description server
Standalone server for DDraceNetwork (DDNet).
%prep
%setup -qa1
mkdir cargo-home
cat >cargo-home/config <<EOF
[source.crates-io]
registry = 'https://github.com/rust-lang/crates.io-index'
replace-with = 'vendored-sources'
[source."https://github.com/selaux/android-ndk-rs"]
git = "https://github.com/selaux/android-ndk-rs"
replace-with = "vendored-sources"
[source.vendored-sources]
directory = './vendor'
EOF
%build
%if 0%{?sle_version} >= 150400 && 0%{?sle_version} < 160000 && 0%{?is_opensuse}
export CC="gcc-11"
export CXX="g++-11"
%endif
export CARGO_HOME=`pwd`/cargo-home/
mkdir -p build && cd build
# NOTE that %%cmake macro breaks linking.
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
-DPREFER_BUNDLED_LIBS=OFF \
-DAUTOUPDATE=OFF \
-DANTIBOT=ON \
-DUPNP=ON \
-DSTEAM=OFF \
-DVIDEORECORDER=OFF
# Fix for "error: failed to run custom build command for `link-cplusplus v1.0.6` - error occurred: Failed to find tool. Is `c++` installed?"
%make_build \
OPTFLAGS="%{optflags} -std=gnu++17"
%install
export CARGO_HOME=`pwd`/cargo-home/
%cmake_install
install -Dp -m 0644 man/DDNet.6 %{buildroot}%{_mandir}/man6/DDNet.6
install -Dp -m 0644 man/DDNet-Server.6 %{buildroot}%{_mandir}/man6/DDNet-Server.6
%fdupes %{buildroot}%{_datadir}
%files
%license license.txt
%doc README.md
%{_mandir}/man6/DDNet.6%{?ext_man}
%{_bindir}/DDNet
%{_libdir}/%{name}/
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/*/apps/%{name}.png
%files data
%{_datadir}/%{name}/
%files server
%{_mandir}/man6/DDNet-Server.6%{?ext_man}
%{_bindir}/DDNet-Server
%{_datadir}/icons/hicolor/*/apps/%{name}-server.png
%changelog