From 6130c92db65606145f7d7f869f08f59f37af5edf Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Fri, 10 Jun 2022 09:18:09 +0100 Subject: [PATCH] retroarchBare: add -fcommon workaround Workaround build failure on -fno-common toolchains like upstream gcc-10 or llvm-11. Otherwise build fails as: duplicate symbol '_apple_platform' in:ui_cocoa.o cocoa_common.o --- pkgs/applications/emulators/retroarch/default.nix | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/emulators/retroarch/default.nix b/pkgs/applications/emulators/retroarch/default.nix index e9aa7d80d57f..0a078f68c7a3 100644 --- a/pkgs/applications/emulators/retroarch/default.nix +++ b/pkgs/applications/emulators/retroarch/default.nix @@ -126,7 +126,12 @@ stdenv.mkDerivation rec { # Workaround for the following error affecting newer versions of Clang: # ./config.def.h:xxx:x: error: 'TARGET_OS_TV' is not defined, evaluates to 0 [-Werror,-Wundef-prefix=TARGET_OS_] - NIX_CFLAGS_COMPILE = lib.optional stdenv.cc.isClang [ "-Wno-undef-prefix" ]; + NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isClang [ "-Wno-undef-prefix" ] + # Workaround build failure on -fno-common toolchains: + # duplicate symbol '_apple_platform' in:ui_cocoa.o cocoa_common.o + # TODO: drop when upstream gets a fix for it: + # https://github.com/libretro/RetroArch/issues/14025 + ++ lib.optionals stdenv.isDarwin [ "-fcommon" ]; meta = with lib; { homepage = "https://libretro.com";