anchor.diff:      targetPackages.stdenv.cc.bintools # For linking code at run-time
     ] ++ (optional (isl != null) isl)
       ++ (optional (zlib != null) zlib)
  -    ++ (optionals langJava [ boehmgc zip unzip ])
  -    ++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
       ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
   
       # The builder relies on GNU sed (for instance, Darwin's `sed' fails with
  
positive.code: , langC ? true, langCC ? true, langFortran ? false
  , langObjC ? targetPlatform.isDarwin
  , langObjCpp ? targetPlatform.isDarwin
  , langJava ? false
  , langGo ? false
  , profiledCompiler ? false
  , staticCompiler ? false
  , enableShared ? true
  , texinfo ? null
  , perl ? null # optional, for texi2pod (then pod2man); required for Java
  , gmp, mpfr, libmpc, gettext, which
  , libelf                      # optional, for link-time optimizations (LTO)
  , isl ? null # optional, for the Graphite optimization framework.
  , zlib ? null, boehmgc ? null
  , zip ? null, unzip ? null, pkgconfig ? null
  , gtk2 ? null, libart_lgpl ? null
  , libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
  , libXrender ? null, xproto ? null, renderproto ? null, xextproto ? null
  , libXrandr ? null, libXi ? null, inputproto ? null, randrproto ? null
  , x11Support ? langJava
  , enableMultilib ? false
  , enablePlugin ? hostPlatform == buildPlatform # Whether to support user-supplied plug-ins
  , name ? "gcc"
  
negative.code:       })
        ++ optional langFortran ../gfortran-driving.patch;
  
      xlibs = [
        libX11 libXt libSM libICE libXtst libXrender libXrandr libXi
        xproto renderproto xextproto inputproto randrproto
      ];
  
      /* Platform flags */
      platformFlags = let
  