Commit 78706a91 authored by Adam Joseph's avatar Adam Joseph Committed by Adam Joseph
Browse files

gcc: move version information to gcc/versions.nix

parent 452cebfb
Loading
Loading
Loading
Loading
+4 −24
Original line number Diff line number Diff line
@@ -47,18 +47,8 @@
}:

let
  version = {
    "13" = "13.2.0";
    "12" = "12.3.0";
    "11" = "11.4.0";
    "10" = "10.5.0";
    "9"  =  "9.5.0";
    "8"  =  "8.5.0";
    "7"  =  "7.5.0";
    "6"  =  "6.5.0";
    "4.9"=  "4.9.4";
    "4.8"=  "4.8.5";
  }."${majorMinorVersion}";
  versions = import ./versions.nix;
  version = versions.fromMajorMinor majorMinorVersion;

  majorVersion = lib.versions.major version;
  atLeast13 = lib.versionAtLeast version "13";
@@ -255,18 +245,8 @@ lib.pipe ((callFile ./common/builder.nix {}) ({
          else if atLeast6
          then "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.xz"
          else "mirror://gnu/gcc/gcc-${version}/gcc-${version}.tar.bz2";
    ${if is10 || is11 || is13 then "hash" else "sha256"} = {
      "13.2.0" = "sha256-4nXnZEKmBnNBon8Exca4PYYTFEAEwEE1KIY9xrXHQ9o=";
      "12.3.0" = "sha256-lJpdT5nnhkIak7Uysi/6tVeN5zITaZdbka7Jet/ajDs=";
      "11.4.0" = "sha256-Py2yIrAH6KSiPNW6VnJu8I6LHx6yBV7nLBQCzqc6jdk=";
      "10.5.0" = "sha256-JRCVQ/30bzl8NHtdi3osflaUpaUczkucbh6opxyjB8E=";
      "9.5.0"  = "13ygjmd938m0wmy946pxdhz9i1wq7z4w10l6pvidak0xxxj9yxi7";
      "8.5.0"  = "0l7d4m9jx124xsk6xardchgy2k5j5l2b15q322k31f0va4d8826k";
      "7.5.0"  = "0qg6kqc5l72hpnj4vr6l0p69qav0rh4anlkk3y55540zy3klc6dq";
      "6.5.0"  = "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby";
      "4.9.4"  = "14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc";
      "4.8.5"  = "08yggr18v373a1ihj0rg2vd6psnic42b518xcgp3r9k81xz1xyr2";
    }."${version}";
    ${if is10 || is11 || is13 then "hash" else "sha256"} =
      versions.srcHashForVersion version;
  };

  inherit patches;
+38 −0
Original line number Diff line number Diff line
let
  majorMinorToVersionMap = {
    "13" = "13.2.0";
    "12" = "12.3.0";
    "11" = "11.4.0";
    "10" = "10.5.0";
    "9"  =  "9.5.0";
    "8"  =  "8.5.0";
    "7"  =  "7.5.0";
    "6"  =  "6.5.0";
    "4.9"=  "4.9.4";
    "4.8"=  "4.8.5";
  };

  fromMajorMinor = majorMinorVersion:
    majorMinorToVersionMap."${majorMinorVersion}";

  # TODO(amjoseph): convert older hashes to SRI form
  srcHashForVersion = version: {
    # NOTE: there is no need to remove hashes of obsolete minor
    # versions when adding a new minor version.
    "13.2.0" = "sha256-4nXnZEKmBnNBon8Exca4PYYTFEAEwEE1KIY9xrXHQ9o=";
    "12.3.0" = "sha256-lJpdT5nnhkIak7Uysi/6tVeN5zITaZdbka7Jet/ajDs=";
    "11.4.0" = "sha256-Py2yIrAH6KSiPNW6VnJu8I6LHx6yBV7nLBQCzqc6jdk=";
    "10.5.0" = "sha256-JRCVQ/30bzl8NHtdi3osflaUpaUczkucbh6opxyjB8E=";
    "9.5.0"  = "13ygjmd938m0wmy946pxdhz9i1wq7z4w10l6pvidak0xxxj9yxi7";
    "8.5.0"  = "0l7d4m9jx124xsk6xardchgy2k5j5l2b15q322k31f0va4d8826k";
    "7.5.0"  = "0qg6kqc5l72hpnj4vr6l0p69qav0rh4anlkk3y55540zy3klc6dq";
    "6.5.0"  = "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby";
    "4.9.4"  = "14l06m7nvcvb0igkbip58x59w3nq6315k6jcz3wr9ch1rn9d44bc";
    "4.8.5"  = "08yggr18v373a1ihj0rg2vd6psnic42b518xcgp3r9k81xz1xyr2";
  }."${version}";

in {
  inherit fromMajorMinor;
  inherit srcHashForVersion;
  allMajorVersions = builtins.attrNames majorMinorToVersionMap;
}