nixpkgs-suyu/pkgs/games/crossfire/crossfire-server.nix
Manuel Frischknecht b3d48a4f32 crossfire-server: fix build due to missing cstdint include
GCC 13 stopped including `cstdint` (and other headers) transitively
in most scenarios, causing build failures in programs that relied
on that behavior.

This change adds a missing `cstdint` include via patch to the
`crossfire-server` source, fixing such a build failure.
2024-01-26 23:20:49 +00:00

56 lines
1.1 KiB
Nix

{ stdenv
, lib
, fetchsvn
, autoreconfHook
, autoconf
, automake
, libtool
, flex
, perl
, check
, pkg-config
, python39 # crossfire-server relies on a parser wich was removed in python >3.9
, version
, rev
, sha256
, maps
, arch
}:
stdenv.mkDerivation rec {
pname = "crossfire-server";
version = rev;
src = fetchsvn {
url = "http://svn.code.sf.net/p/crossfire/code/server/trunk/";
inherit sha256;
rev = "r${rev}";
};
patches = [
./add-cstdint-include-to-crossfire-server.patch
];
nativeBuildInputs = [ autoconf automake libtool flex perl check pkg-config python39 ];
hardeningDisable = [ "format" ];
preConfigure = ''
ln -s ${arch} lib/arch
ln -s ${maps} lib/maps
sh autogen.sh
'';
configureFlags = [ "--with-python=${python39}" ];
postInstall = ''
ln -s ${maps} "$out/share/crossfire/maps"
'';
meta = with lib; {
description = "Server for the Crossfire free MMORPG";
homepage = "http://crossfire.real-time.com/";
license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ ToxicFrog ];
};
}