From 5d7780931ea29da3ea762b78fc939151cf5c16df Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sun, 23 Feb 2025 13:20:14 +0000 Subject: [PATCH] openttd: fix build against icu-76 Without the change `openttd` build fails in `master` as https://hydra.nixos.org/build/290760688: [100%] Linking CXX executable openttd ld: CMakeFiles/openttd_lib.dir/src/survey.cpp.o: undefined reference to symbol 'u_versionToString_76' ld: /nix/store/...-icu4c-76.1/lib/libicuuc.so.76: error adding symbols: DSO missing from command line collect2: error: ld returned 1 exit status --- pkgs/games/openttd/default.nix | 11 +++++++++++ pkgs/games/openttd/jgrpp.nix | 1 + 2 files changed, 12 insertions(+) diff --git a/pkgs/games/openttd/default.nix b/pkgs/games/openttd/default.nix index 4a5e15514124..47e607e42159 100644 --- a/pkgs/games/openttd/default.nix +++ b/pkgs/games/openttd/default.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchzip, + fetchpatch, cmake, pkg-config, SDL2, @@ -71,6 +72,16 @@ stdenv.mkDerivation rec { hash = "sha256-YT4IE/rJ9pnpeMWKbOra6AbSUwW19RwOKlXkxwoMeKY="; }; + patches = [ + # Fix build against icu-76: + # https://github.com/OpenTTD/OpenTTD/pull/13048 + (fetchpatch { + name = "icu-75.patch"; + url = "https://github.com/OpenTTD/OpenTTD/commit/14fac2ad37bfb9cec56b4f9169d864f6f1c7b96e.patch"; + hash = "sha256-L35ybnTKPO+HVP/7ZYzWM2mA+s1RAywhofSuzpy/6sc="; + }) + ]; + nativeBuildInputs = [ cmake pkg-config diff --git a/pkgs/games/openttd/jgrpp.nix b/pkgs/games/openttd/jgrpp.nix index d1e89f298e5c..7a47074e00e9 100644 --- a/pkgs/games/openttd/jgrpp.nix +++ b/pkgs/games/openttd/jgrpp.nix @@ -10,6 +10,7 @@ openttd.overrideAttrs (oldAttrs: rec { rev = "jgrpp-${version}"; hash = "sha256-aEmuwWNxqjuLmiWMrqwTUtCwdwDMA00eQspCHntxEXw="; }; + patches = []; buildInputs = oldAttrs.buildInputs ++ [ zstd ];