nixpkgs/pkgs/applications/science/electronics/gerbv/default.nix
Sergei Trofimovich 0b3eecc56f 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
2022-05-14 13:41:11 +01:00

36 lines
1.2 KiB
Nix

{ lib, stdenv, fetchgit, fetchpatch, pkg-config, gettext, libtool, automake, autoconf, cairo, gtk2, autoreconfHook }:
stdenv.mkDerivation {
pname = "gerbv";
version = "2015-10-08";
src = fetchgit {
url = "git://git.geda-project.org/gerbv.git";
rev = "76b8b67bfa10823ce98f1c4c3b49a2afcadf7659";
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 ];
configureFlags = ["--disable-update-desktop-database"];
meta = with lib; {
description = "A Gerber (RS-274X) viewer";
homepage = "http://gerbv.geda-project.org/";
maintainers = with maintainers; [ mog ];
platforms = platforms.linux;
license = licenses.gpl2;
};
}