nixpkgs/pkgs/top-level/ada-packages.nix
Sergei Trofimovich 5af8e1ffe0 gcc16, gccgo16, gfortran16, gnat16: init at 16.1.0
Changes: https://gcc.gnu.org/gcc-16/changes.html
Porting guide: https://gcc.gnu.org/gcc-16/porting_to.html

Added logic to avoid evaluation of gnatprove on gnat16, as it isn't
ported to that compiler version yet.

Co-authored-by: sempiternal-aurora <78790545+sempiternal-aurora@users.noreply.github.com>
2026-05-14 23:36:55 +10:00

82 lines
2.9 KiB
Nix

{
lib,
pkgs,
makeScopeWithSplicing',
generateSplicesForMkScope,
gnat,
}:
let
gnat_version = lib.versions.major gnat.version;
in
makeScopeWithSplicing' {
otherSplices = generateSplicesForMkScope ("gnat" + gnat_version + "Packages");
f = (
self: {
inherit gnat;
gpr2 = self.callPackage ../development/ada-modules/gpr2 { };
gprbuild-boot = self.callPackage ../development/ada-modules/gprbuild/boot.nix { };
gprbuild = self.callPackage ../development/ada-modules/gprbuild { };
xmlada = self.callPackage ../development/ada-modules/xmlada { };
gnatprove =
# They haven't released a version of gnatprove for gnat16 yet
if lib.versionOlder gnat.version "16" then
self.callPackage ../development/ada-modules/gnatprove {
ocamlPackages = pkgs.ocaml-ng.ocamlPackages_4_14;
}
else
null;
gnatcoll-core = self.callPackage ../development/ada-modules/gnatcoll/core.nix { };
# gnatcoll-bindings repository
gnatcoll-cpp = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "cpp";
};
gnatcoll-gmp = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "gmp";
};
gnatcoll-iconv = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "iconv";
};
gnatcoll-lzma = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "lzma";
};
gnatcoll-omp = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "omp";
};
gnatcoll-python3 = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "python3";
python3 = pkgs.python312;
};
gnatcoll-readline = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "readline";
};
gnatcoll-syslog = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "syslog";
};
gnatcoll-zlib = self.callPackage ../development/ada-modules/gnatcoll/bindings.nix {
component = "zlib";
};
# gnatcoll-db repository
gnatcoll-postgres = self.callPackage ../development/ada-modules/gnatcoll/db.nix {
component = "postgres";
};
gnatcoll-sql = self.callPackage ../development/ada-modules/gnatcoll/db.nix { component = "sql"; };
gnatcoll-sqlite = self.callPackage ../development/ada-modules/gnatcoll/db.nix {
component = "sqlite";
};
gnatcoll-xref = self.callPackage ../development/ada-modules/gnatcoll/db.nix { component = "xref"; };
gnatcoll-db2ada = self.callPackage ../development/ada-modules/gnatcoll/db.nix {
component = "gnatcoll_db2ada";
};
gnatinspect = self.callPackage ../development/ada-modules/gnatcoll/db.nix {
component = "gnatinspect";
};
}
);
}