From 0b3eecc56f119d2307da27ffc081af4a714b8c0a Mon Sep 17 00:00:00 2001 From: Sergei Trofimovich Date: Sat, 14 May 2022 13:41:11 +0100 Subject: [PATCH] gerbv: pull fix pending upstream inclusion for -fno-common toolchains Without the change build fails on upstream gcc-10 as: ld: interface.o:/build/gerbv/src/callbacks.h:50: multiple definition of `toggle_layer'; callbacks.o:/build/gerbv/src/callbacks.h:50: first defined here ld: interface.o:/build/gerbv/src/callbacks.h:44: multiple definition of `CALLBACKS_SAVE_FILE_TYPE'; callbacks.o:/build/gerbv/src/callbacks.h:44: first defined here ld: render.o:/build/gerbv/src/callbacks.h:44: multiple definition of `CALLBACKS_SAVE_FILE_TYPE'; callbacks.o:/build/gerbv/src/callbacks.h:44: first defined here --- .../science/electronics/gerbv/default.nix | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pkgs/applications/science/electronics/gerbv/default.nix b/pkgs/applications/science/electronics/gerbv/default.nix index a16d5f32e27a..f83cfa1bf04e 100644 --- a/pkgs/applications/science/electronics/gerbv/default.nix +++ b/pkgs/applications/science/electronics/gerbv/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchgit, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2, autoreconfHook }: +{ lib, stdenv, fetchgit, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2, autoreconfHook }: stdenv.mkDerivation { pname = "gerbv"; @@ -10,6 +10,16 @@ stdenv.mkDerivation { sha256 = "00jn1xhf6kblxc5gac1wvk8zm12fy6sk81nj3jwdag0z6wk3z446"; }; + patches = [ + # Pull patch pending upstream inclusion for -fno-common toolchains: + # https://sourceforge.net/p/gerbv/patches/84/ + (fetchpatch { + name = "fnoc-mmon.patch"; + url = "https://sourceforge.net/p/gerbv/patches/84/attachment/0001-gerbv-fix-build-on-gcc-10-fno-common.patch"; + sha256 = "1avfbkqhxl7wxn1z19y30ilkwvdgpdkzhzawrs5y3damxmqq8ggk"; + }) + ]; + nativeBuildInputs = [ autoreconfHook pkg-config automake autoconf ]; buildInputs = [ gettext libtool cairo gtk2 ];