From 41b2d014496ce39e98cc90f20c940875b7ad2632 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Fri, 22 May 2026 19:26:05 +0200 Subject: [PATCH 1/4] gnat16Packages.gprbuild{,-boot}: fix build https://github.com/AdaCore/gprbuild/commit/6421e350274b3018a26bd058b1c90d033b053f71 https://github.com/AdaCore/gprbuild/commit/6b6be939d69d534beb7faca17664d7a1ffa9c81e Hydra: https://hydra.nixos.org/build/329281640 --- pkgs/development/ada-modules/gprbuild/boot.nix | 15 +++++++++++++++ pkgs/development/ada-modules/gprbuild/default.nix | 12 +++++++----- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/pkgs/development/ada-modules/gprbuild/boot.nix b/pkgs/development/ada-modules/gprbuild/boot.nix index 3ba3c4e52daa..0f8227d50d35 100644 --- a/pkgs/development/ada-modules/gprbuild/boot.nix +++ b/pkgs/development/ada-modules/gprbuild/boot.nix @@ -2,6 +2,7 @@ stdenv, lib, fetchFromGitHub, + fetchpatch2, gnat, which, xmlada, # for src @@ -36,6 +37,20 @@ stdenv.mkDerivation { which ]; + # Fix compilation with GNAT 16 + patches = lib.optionals (lib.versionAtLeast gnat.version "16") [ + # gpr-compilation-process.adb:44:29: error: operator for type "String" is not declared in "Env_Maps" + (fetchpatch2 { + url = "https://github.com/AdaCore/gprbuild/commit/6421e350274b3018a26bd058b1c90d033b053f71.patch?full_index=1"; + hash = "sha256-u9bmr8abmthlyHoeqW5nS2CnaxXmbx6WVwhemxVtw+0="; + }) + # gpr-compilation-protocol.adb:981:13: error: "time_t" is undefined + (fetchpatch2 { + url = "https://github.com/AdaCore/gprbuild/commit/6b6be939d69d534beb7faca17664d7a1ffa9c81e.patch?full_index=1"; + hash = "sha256-YUjBvA4bBsrCB46o5WVHOZR6qOf2bkMg+A9qlystDbc="; + }) + ]; + postPatch = '' # The Makefile uses gprbuild to build gprbuild which # we can't do at this point, delete it to prevent the diff --git a/pkgs/development/ada-modules/gprbuild/default.nix b/pkgs/development/ada-modules/gprbuild/default.nix index c8d530466ca7..b722f012d431 100644 --- a/pkgs/development/ada-modules/gprbuild/default.nix +++ b/pkgs/development/ada-modules/gprbuild/default.nix @@ -47,11 +47,13 @@ stdenv.mkDerivation { NIX_LDFLAGS = "-headerpad_max_install_names"; }; - # Fixes gprbuild being linked statically always. Based on the AUR's patch: - # https://aur.archlinux.org/cgit/aur.git/plain/0001-Makefile-build-relocatable-instead-of-static-binary.patch?h=gprbuild&id=bac524c76cd59c68fb91ef4dfcbe427357b9f850 - patches = lib.optionals (!stdenv.hostPlatform.isStatic) [ - ./gprbuild-relocatable-build.patch - ]; + patches = + gprbuild-boot.patches + # Fixes gprbuild being linked statically always. Based on the AUR's patch: + # https://aur.archlinux.org/cgit/aur.git/plain/0001-Makefile-build-relocatable-instead-of-static-binary.patch?h=gprbuild&id=bac524c76cd59c68fb91ef4dfcbe427357b9f850 + ++ lib.optionals (!stdenv.hostPlatform.isStatic) [ + ./gprbuild-relocatable-build.patch + ]; buildFlags = [ "all" From 9c940973d48d3a41580352bfbd6768fa8dc891db Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Fri, 22 May 2026 20:17:21 +0200 Subject: [PATCH 2/4] gnat16Packages.gnatcoll-core: fix build https://github.com/AdaCore/gnatcoll-core/commit/b266466e0a05b30615ec43d72782c345470455b9 --- pkgs/development/ada-modules/gnatcoll/core.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/ada-modules/gnatcoll/core.nix b/pkgs/development/ada-modules/gnatcoll/core.nix index 4e8e8b6c2e8e..90a1fb025365 100644 --- a/pkgs/development/ada-modules/gnatcoll/core.nix +++ b/pkgs/development/ada-modules/gnatcoll/core.nix @@ -36,6 +36,12 @@ stdenv.mkDerivation rec { url = "https://github.com/AdaCore/gnatcoll-core/commit/515db1c9f1eea8095f2d9ff9570159a78c981ec6.patch"; sha256 = "1ghnkhp5fncb7qcmf59kyqvy0sd0pzf1phnr2z7b4ljwlkbmcp36"; }) + # Fix compilation with GNAT 16 + (fetchpatch2 { + name = "gnatcoll-core-gnat-16.patch"; + url = "https://github.com/AdaCore/gnatcoll-core/commit/b266466e0a05b30615ec43d72782c345470455b9.patch?full_index=1"; + hash = "sha256-rG0D1y2dbXA2M2Arnto+f7iAhg3yCfTPDbDRN+pMJKQ="; + }) ]; postPatch = '' From a261d6ec3c79cf291e8d78c9eef0efed92b5ab14 Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Fri, 22 May 2026 20:23:42 +0200 Subject: [PATCH 3/4] gnatPackages.gnatcoll-core: remove redundant gnat 12 patch We don't ship gnat 12 anymore. --- pkgs/development/ada-modules/gnatcoll/core.nix | 6 ------ 1 file changed, 6 deletions(-) diff --git a/pkgs/development/ada-modules/gnatcoll/core.nix b/pkgs/development/ada-modules/gnatcoll/core.nix index 90a1fb025365..e60230332945 100644 --- a/pkgs/development/ada-modules/gnatcoll/core.nix +++ b/pkgs/development/ada-modules/gnatcoll/core.nix @@ -30,12 +30,6 @@ stdenv.mkDerivation rec { }; patches = [ - # Fix compilation with GNAT 12 https://github.com/AdaCore/gnatcoll-core/issues/88 - (fetchpatch2 { - name = "gnatcoll-core-gnat-12.patch"; - url = "https://github.com/AdaCore/gnatcoll-core/commit/515db1c9f1eea8095f2d9ff9570159a78c981ec6.patch"; - sha256 = "1ghnkhp5fncb7qcmf59kyqvy0sd0pzf1phnr2z7b4ljwlkbmcp36"; - }) # Fix compilation with GNAT 16 (fetchpatch2 { name = "gnatcoll-core-gnat-16.patch"; From f1840faeb1c85b0d53c7e705e38d83de62bdcbda Mon Sep 17 00:00:00 2001 From: Tom Hunze Date: Sat, 23 May 2026 22:37:05 +0200 Subject: [PATCH 4/4] gnat15Packages.gnatprove: fix build on `aarch64-linux` Co-Authored-By: sempiternal-aurora <78790545+sempiternal-aurora@users.noreply.github.com> --- pkgs/development/ada-modules/gnatprove/default.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/development/ada-modules/gnatprove/default.nix b/pkgs/development/ada-modules/gnatprove/default.nix index 2eba4ae77a11..d4e39a3506d1 100644 --- a/pkgs/development/ada-modules/gnatprove/default.nix +++ b/pkgs/development/ada-modules/gnatprove/default.nix @@ -86,6 +86,9 @@ let patches = [ # Disable Coq related targets which are missing in the fsf-15 branch ./0001-fix-install-fsf-15.patch + + # Suppress warnings on aarch64: https://github.com/AdaCore/spark2014/issues/54 + ./0002-mute-aarch64-warnings.patch ]; commit_date = "2025-06-10"; };