ddnet/ddnet.spec
Carsten Ziepke 3358a41cef - Update to version 18.8:
* [Client] Android support
  * [Client] Add cl_hook_coll_size_other & +hookcoll button in UI
  * [Client] Overhaul console design: replace background, improve
    contrast
  * [Client] Fix cursor drifting when using smooth dyncam and zoom
  * [Client] Remove self from spectator menu unless in demo
  * [Client] Visual changes to friends and server tab
  * [Client] Auto rcon auth both main and dummy
  * [Client] Send password on reconnect
  * [Client] Change default q bind to /spec
  * [Client] Fix alignment of dropdown popup menu
  * [Client] Fix player info being resent too fast/slow depending
    on FPS
  * [Client] More efficient glyph uploading, fix crash with very
    large glyphs and font sizes
  * [Client] Improve map sound/image validation and performance
  * [Client] Fix incorrect rendering of menu and entities
    background maps
  * [Client] Use quad container for race flag in finish
    infomessages
  * [Client] Make the client able to have tee's without weapons
  * [Client] Echo colors persist
  * [Client] Fix client hanging when rendering text with small
    maximum width
  * [Client] Fix damage indicators being stuck after connecting
    dummy
  * [Client] Fix gametime debug graph when dummy is connected
  * [Client] Allow decimal value for demo_speed command
  * [Client] Allow float zoom levels
  * [Client] Fix clipboard not being sanitized when pasting
    multiple lines
  * [Editor] Replace background texture with noise texture
  * [Editor] Show size of images in editor images list and
    file browser
  * [Editor] Fix Save As confirmation, prevent opening empty
    filename
  * [Editor] Fix envelope point popup
  * [Server] Implement bans_find command
  * [Server] Fix crashes with whisper command
  * [Server] Fix incomplete Teehistorian chunks being written
  * [Server] Add dbg_sql config to hide non-error SQL logs
  * [Server] Fix jetpack strength always being set to 0
  * [Server] Allow empty map settings
  * [Masterserver] Allow 128 players
  * [Build] Fix FindMySQL not finding mysql under NixOS

OBS-URL: https://build.opensuse.org/package/show/games/ddnet?expand=0&rev=51
2024-12-28 08:20:59 +00:00

152 lines
4.5 KiB
RPMSpec

#
# spec file for package ddnet
#
# Copyright (c) 2024 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.8
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