diff --git a/pkgs/development/compilers/gnatboot/default.nix b/pkgs/development/compilers/gnatboot/default.nix index 4e1301e47a95..65f6269e2f00 100644 --- a/pkgs/development/compilers/gnatboot/default.nix +++ b/pkgs/development/compilers/gnatboot/default.nix @@ -1,14 +1,29 @@ { stdenv, lib, autoPatchelfHook, fetchzip, xz, ncurses5, readline, gmp, mpfr , expat, libipt, zlib, dejagnu, sourceHighlight, python3, elfutils, guile, glibc +, majorVersion }: +let + versionMap = { + "11" = { + version = "11.2.0-4"; + hash = "sha256-8fMBJp6igH+Md5jE4LMubDmC4GLt4A+bZG/Xcz2LAJQ="; + }; + "12" = { + version = "12.1.0-2"; + hash = "sha256-EPDPOOjWJnJsUM7GGxj20/PXumjfLoMIEFX1EDtvWVY="; + }; + }; + +in with versionMap.${majorVersion}; + stdenv.mkDerivation rec { pname = "gnatboot"; - version = "12.1.0-2"; + inherit version; src = fetchzip { url = "https://github.com/alire-project/GNAT-FSF-builds/releases/download/gnat-${version}/gnat-x86_64-linux-${version}.tar.gz"; - hash = "sha256-EPDPOOjWJnJsUM7GGxj20/PXumjfLoMIEFX1EDtvWVY="; + inherit hash; }; nativeBuildInputs = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index aa0c6b4c803a..ab549f5f9e48 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14191,7 +14191,7 @@ with pkgs; gnatboot = if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform - then buildPackages.gnatboot + then buildPackages.gnatboot11 else buildPackages.gnat11; }); @@ -14207,11 +14207,13 @@ with pkgs; gnatboot = if stdenv.hostPlatform == stdenv.targetPlatform && stdenv.buildPlatform == stdenv.hostPlatform - then buildPackages.gnatboot + then buildPackages.gnatboot12 else buildPackages.gnat12; }); - gnatboot = wrapCC (callPackage ../development/compilers/gnatboot { }); + gnatboot = gnatboot12; + gnatboot11 = wrapCC (callPackage ../development/compilers/gnatboot { majorVersion = "11"; }); + gnatboot12 = wrapCC (callPackage ../development/compilers/gnatboot { majorVersion = "12"; }); gnu-smalltalk = callPackage ../development/compilers/gnu-smalltalk { };