diff options
Diffstat (limited to 'pkgs/development/compilers/gcc/6/default.nix')
-rw-r--r-- | pkgs/development/compilers/gcc/6/default.nix | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix index 4ec24dbe88e..fa69a2818c7 100644 --- a/pkgs/development/compilers/gcc/6/default.nix +++ b/pkgs/development/compilers/gcc/6/default.nix @@ -1,4 +1,4 @@ -{ stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs +{ stdenv, targetPackages, fetchurl, fetchpatch, fetchFromGitHub, noSysDirs , langC ? true, langCC ? true, langFortran ? false , langObjC ? stdenv.targetPlatform.isDarwin , langObjCpp ? stdenv.targetPlatform.isDarwin @@ -9,6 +9,7 @@ , enableShared ? true , enableLTO ? true , texinfo ? null +, flex , perl ? null # optional, for texi2pod (then pod2man); required for Java , gmp, mpfr, libmpc, gettext, which , libelf # optional, for link-time optimizations (LTO) @@ -94,8 +95,8 @@ let majorVersion = "6"; /* Cross-gcc settings (build == host != target) */ crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt"; - stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final"; - crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else ""; + stageNameAddon = if crossStageStatic then "stage-static" else "stage-final"; + crossNameAddon = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-${stageNameAddon}-"; in @@ -103,11 +104,16 @@ in assert x11Support -> (filter (x: x == null) ([ gtk2 libart_lgpl ] ++ xlibs)) == []; stdenv.mkDerivation ({ - name = crossNameAddon + "${name}${if stripped then "" else "-debug"}-${version}"; + name = "${crossNameAddon}${name}${if stripped then "" else "-debug"}-${version}"; builder = ../builder.sh; - src = fetchurl { + src = if stdenv.targetPlatform.isVc4 then fetchFromGitHub { + owner = "itszor"; + repo = "gcc-vc4"; + rev = "e90ff43f9671c760cf0d1dd62f569a0fb9bf8918"; + sha256 = "0gxf66hwqk26h8f853sybphqa5ca0cva2kmrw5jsiv6139g0qnp8"; + } else fetchurl { url = "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz"; sha256 = "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby"; }; @@ -172,7 +178,8 @@ stdenv.mkDerivation ({ depsBuildBuild = [ buildPackages.stdenv.cc ]; nativeBuildInputs = [ texinfo which gettext ] ++ (optional (perl != null) perl) - ++ (optional javaAwtGtk pkgconfig); + ++ (optional javaAwtGtk pkgconfig) + ++ (optional (stdenv.targetPlatform.isVc4) flex); # For building runtime libs depsBuildTarget = |