@@ -5141,6 +5141,7 @@ with pkgs;
51415141 gcc12Stdenv = overrideCC gccStdenv buildPackages.gcc12;
51425142 gcc13Stdenv = overrideCC gccStdenv buildPackages.gcc13;
51435143 gcc14Stdenv = overrideCC gccStdenv buildPackages.gcc14;
5144+ gcc15Stdenv = overrideCC gccStdenv buildPackages.gcc15;
51445145
51455146 # This is not intended for use in nixpkgs but for providing a faster-running
51465147 # compiler to nixpkgs users by building gcc with reproducibility-breaking
@@ -5245,9 +5246,10 @@ with pkgs;
52455246 gcc12
52465247 gcc13
52475248 gcc14
5249+ gcc15
52485250 ;
52495251
5250- gcc_latest = gcc14 ;
5252+ gcc_latest = gcc15 ;
52515253
52525254 libgccjit = gcc.cc.override {
52535255 name = "libgccjit";
@@ -5373,6 +5375,34 @@ with pkgs;
53735375 }
53745376 );
53755377
5378+ gnat15 = wrapCC (
5379+ gcc15.cc.override {
5380+ name = "gnat";
5381+ langC = true;
5382+ langCC = false;
5383+ langAda = true;
5384+ profiledCompiler = false;
5385+ # As per upstream instructions building a cross compiler
5386+ # should be done with a (native) compiler of the same version.
5387+ # If we are cross-compiling GNAT, we may as well do the same.
5388+ gnat-bootstrap =
5389+ if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform then
5390+ buildPackages.gnat-bootstrap14
5391+ else
5392+ buildPackages.gnat15;
5393+ stdenv =
5394+ if
5395+ stdenv.hostPlatform == stdenv.targetPlatform
5396+ && stdenv.buildPlatform == stdenv.hostPlatform
5397+ && stdenv.buildPlatform.isDarwin
5398+ && stdenv.buildPlatform.isx86_64
5399+ then
5400+ overrideCC stdenv gnat-bootstrap14
5401+ else
5402+ stdenv;
5403+ }
5404+ );
5405+
53765406 gnat-bootstrap = gnat-bootstrap12;
53775407 gnat-bootstrap11 = wrapCC (
53785408 callPackage ../development/compilers/gnat-bootstrap { majorVersion = "11"; }
@@ -5405,6 +5435,7 @@ with pkgs;
54055435 gnat12Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat12; });
54065436 gnat13Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat13; });
54075437 gnat14Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat14; });
5438+ gnat15Packages = recurseIntoAttrs (callPackage ./ada-packages.nix { gnat = buildPackages.gnat15; });
54085439 gnatPackages = gnat13Packages;
54095440
54105441 inherit (gnatPackages)
@@ -5472,6 +5503,21 @@ with pkgs;
54725503 }
54735504 );
54745505
5506+ gccgo15 = wrapCC (
5507+ gcc15.cc.override {
5508+ name = "gccgo";
5509+ langCC = true; # required for go.
5510+ langC = true;
5511+ langGo = true;
5512+ langJit = true;
5513+ profiledCompiler = false;
5514+ }
5515+ // {
5516+ # not supported on darwin: https://github.com/golang/go/issues/463
5517+ meta.broken = stdenv.hostPlatform.isDarwin;
5518+ }
5519+ );
5520+
54755521 ghdl-mcode = callPackage ../by-name/gh/ghdl/package.nix { backend = "mcode"; };
54765522
54775523 ghdl-gcc = callPackage ../by-name/gh/ghdl/package.nix { backend = "gcc"; };
0 commit comments