diff options
author | Adam Joseph <adam@westernsemico.com> | 2023-11-06 13:58:27 -0800 |
---|---|---|
committer | Adam Joseph <54836058+amjoseph-nixpkgs@users.noreply.github.com> | 2023-11-07 09:57:54 +0000 |
commit | 78706a9184a7626e907fef3b97a916220efde67b (patch) | |
tree | d43a6d2b3558268f7509473dab270022441cff11 /pkgs/development/compilers/gcc | |
parent | 452cebfb5aac0ad67872106275eb977da214fa8a (diff) | |
download | nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar.gz nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar.bz2 nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar.lz nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar.xz nixlib-78706a9184a7626e907fef3b97a916220efde67b.tar.zst nixlib-78706a9184a7626e907fef3b97a916220efde67b.zip |
gcc: move version information to gcc/versions.nix
Diffstat (limited to 'pkgs/development/compilers/gcc')
-rw-r--r-- | pkgs/development/compilers/gcc/default.nix | 28 | ||||
-rw-r--r-- | pkgs/development/compilers/gcc/versions.nix | 38 |
2 files changed, 42 insertions, 24 deletions
diff --git a/pkgs/development/compilers/gcc/default.nix b/pkgs/development/compilers/gcc/default.nix index 4544f3862fea..0980944dfc29 100644 --- a/pkgs/development/compilers/gcc/default.nix +++ b/pkgs/development/compilers/gcc/default.nix @@ -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; diff --git a/pkgs/development/compilers/gcc/versions.nix b/pkgs/development/compilers/gcc/versions.nix new file mode 100644 index 000000000000..261ffc634544 --- /dev/null +++ b/pkgs/development/compilers/gcc/versions.nix @@ -0,0 +1,38 @@ +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; +} |