simh: add -fcommon workaround

Without the change -fno-common toolchains like upstream gcc-10
or clang-11+ fail to build simh as:

    $ nix build --impure --expr 'with import ~/nm {}; simh.override { stdenv = clang13Stdenv; }'
    ...
    ld: /build/pdp11_io-0c74f0.o:(.bss+0x10c00):
      multiple definition of `uc15_memsize'; /build/pdp11_cis-17339e.o:(.bss+0x118): first defined here
    ld: /build/pdp11_io_lib-296a06.o:(.bss+0x8000):
      multiple definition of `uc15_memsize'; /build/pdp11_cis-17339e.o:(.bss+0x118): first defined here
This commit is contained in:
Sergei Trofimovich 2022-05-07 07:36:11 +01:00
parent 94c97dfa94
commit 71f10994f2

View File

@ -22,6 +22,11 @@ stdenv.mkDerivation rec {
dontConfigure = true;
# Workaround to build against upstream gcc-10 and clang-11.
# Can be removed when next release contains
# https://github.com/simh/simh/issues/794
NIX_CFLAGS_COMPILE = [ "-fcommon" ];
makeFlags = [ "GCC=${stdenv.cc.targetPrefix}cc" "CC_STD=-std=c99" "LDFLAGS=-lm" ];
preInstall = ''