Merge pull request #226366 from mmlb/rename-gnatboot

gnatboot: rename to gnat-bootstrap
This commit is contained in:
Adam Joseph 2023-04-16 22:37:53 +00:00 committed by GitHub
commit 9e3b2a5822
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 41 additions and 38 deletions

View file

@ -166,7 +166,7 @@ stdenv.mkDerivation {
# If we are asked to wrap `gas` and this bintools has it,
# then symlink it (`as` will be symlinked next).
# This is mainly for the wrapped gnatboot on x86-64 Darwin,
# This is mainly for the wrapped gnat-bootstrap on x86-64 Darwin,
# as it must have both the GNU assembler from cctools (installed as `gas`)
# and the Clang integrated assembler (installed as `as`).
# See pkgs/os-specific/darwin/binutils/default.nix for details.

View file

@ -16,7 +16,7 @@
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null
, gnatboot ? null
, gnat-bootstrap ? null
, enableMultilib ? false
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
, name ? "gcc"
@ -34,7 +34,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
# The go frontend is written in c++
assert langGo -> langCC;
assert langAda -> gnatboot != null;
assert langAda -> gnat-bootstrap != null;
# threadsCross is just for MinGW
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
@ -111,7 +111,7 @@ let majorVersion = "10";
fetchurl
gettext
gmp
gnatboot
gnat-bootstrap
gnused
isl
langAda

View file

@ -16,7 +16,7 @@
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null
, gnatboot ? null
, gnat-bootstrap ? null
, enableMultilib ? false
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
, name ? "gcc"
@ -37,7 +37,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
# The go frontend is written in c++
assert langGo -> langCC;
assert langAda -> gnatboot != null;
assert langAda -> gnat-bootstrap != null;
# threadsCross is just for MinGW
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
@ -126,7 +126,7 @@ let majorVersion = "11";
fetchurl
gettext
gmp
gnatboot
gnat-bootstrap
gnused
isl
langAda

View file

@ -17,7 +17,7 @@
, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null
, libucontext ? null
, gnatboot ? null
, gnat-bootstrap ? null
, enableMultilib ? false
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
, name ? "gcc"
@ -39,7 +39,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
# The go frontend is written in c++
assert langGo -> langCC;
assert langAda -> gnatboot != null;
assert langAda -> gnat-bootstrap != null;
# TODO: fixup D bootstapping, probably by using gdc11 (and maybe other changes).
# error: GDC is required to build d
@ -159,7 +159,7 @@ let majorVersion = "12";
fetchurl
gettext
gmp
gnatboot
gnat-bootstrap
gnused
isl
langAda

View file

@ -17,7 +17,7 @@
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null, boehmgc ? null
, gnatboot ? null
, gnat-bootstrap ? null
, zip ? null, unzip ? null, pkg-config ? null
, gtk2 ? null, libart_lgpl ? null
, libX11 ? null, libXt ? null, libSM ? null, libICE ? null, libXtst ? null
@ -45,7 +45,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
# The go frontend is written in c++
assert langGo -> langCC;
assert langAda -> gnatboot != null;
assert langAda -> gnat-bootstrap != null;
# threadsCross is just for MinGW
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
@ -151,7 +151,7 @@ let majorVersion = "6";
flex
gettext
gmp
gnatboot
gnat-bootstrap
gnused
gtk2
isl

View file

@ -16,7 +16,7 @@
, gmp, mpfr, libmpc, gettext, which, patchelf, binutils
, isl ? null # optional, for the Graphite optimization framework.
, zlib ? null
, gnatboot ? null
, gnat-bootstrap ? null
, enableMultilib ? false
, enablePlugin ? stdenv.hostPlatform == stdenv.buildPlatform # Whether to support user-supplied plug-ins
, name ? "gcc"
@ -38,7 +38,7 @@ assert stdenv.buildPlatform.isDarwin -> gnused != null;
# The go frontend is written in c++
assert langGo -> langCC;
assert langAda -> gnatboot != null;
assert langAda -> gnat-bootstrap != null;
# threadsCross is just for MinGW
assert threadsCross != {} -> stdenv.targetPlatform.isWindows;
@ -112,7 +112,7 @@ let majorVersion = "9";
fetchurl
gettext
gmp
gnatboot
gnat-bootstrap
gnused
isl
langAda

View file

@ -17,7 +17,7 @@
, cloog ? null
, isl ? null
, zlib ? null
, gnatboot ? null
, gnat-bootstrap ? null
, flex ? null
, boehmgc ? null
, zip ? null
@ -51,7 +51,7 @@ in
++ optionals (perl != null) [ perl ]
++ optionals javaAwtGtk [ pkg-config ]
++ optionals (with stdenv.targetPlatform; isVc4 || isRedox && flex != null) [ flex ]
++ optionals langAda [ gnatboot ]
++ optionals langAda [ gnat-bootstrap ]
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ optionals buildPlatform.isDarwin [ gnused ]

View file

@ -1,5 +1,5 @@
{ lib, version, buildPlatform, hostPlatform, targetPlatform
, gnatboot ? null
, gnat-bootstrap ? null
, langAda ? false
, langJava ? false
, langJit ? false
@ -9,7 +9,7 @@
}:
assert langJava -> lib.versionOlder version "7";
assert langAda -> gnatboot != null; let
assert langAda -> gnat-bootstrap != null; let
needsLib
= (lib.versionOlder version "7" && (langJava || langGo))
|| (lib.versions.major version == "4" && lib.versions.minor version == "9" && targetPlatform.isDarwin);
@ -21,13 +21,13 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
'' + lib.optionalString needsLib ''
export lib=$out;
'' + lib.optionalString langAda ''
export PATH=${gnatboot}/bin:$PATH
export PATH=${gnat-bootstrap}/bin:$PATH
''
# On x86_64-darwin, the gnatboot bootstrap compiler that we need to build a
# On x86_64-darwin, the gnat-bootstrap bootstrap compiler that we need to build a
# native GCC with Ada support emits assembly that is accepted by the Clang
# integrated assembler, but not by the GNU assembler in cctools-port that Nix
# usually in the x86_64-darwin stdenv. In particular, x86_64-darwin gnatboot
# usually in the x86_64-darwin stdenv. In particular, x86_64-darwin gnat-bootstrap
# emits MOVQ as the mnemonic for quadword interunit moves, such as between XMM
# and general registers (e.g "movq %xmm0, %rbp"); the cctools-port assembler,
# however, only recognises MOVD for such moves.
@ -35,7 +35,7 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
# Therefore, for native x86_64-darwin builds that support Ada, we have to use
# the Clang integrated assembler to build (at least stage 1 of) GCC, but have to
# target GCC at the cctools-port GNU assembler. In the wrapped x86_64-darwin
# gnatboot, the former is provided as `as`, while the latter is provided as
# gnat-bootstrap, the former is provided as `as`, while the latter is provided as
# `gas`.
#
+ lib.optionalString (
@ -45,8 +45,8 @@ in lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
&& targetPlatform.isx86_64
&& targetPlatform.isDarwin
) ''
export AS_FOR_BUILD=${gnatboot}/bin/as
export AS_FOR_TARGET=${gnatboot}/bin/gas
export AS_FOR_BUILD=${gnat-bootstrap}/bin/as
export AS_FOR_TARGET=${gnat-bootstrap}/bin/gas
''
# NOTE 2020/3/18: This environment variable prevents configure scripts from

View file

@ -38,7 +38,7 @@ let
in with versionMap.${majorVersion};
stdenv.mkDerivation rec {
pname = "gnatboot";
pname = "gnat-bootstrap";
inherit gccVersion alireRevision;
version = "${gccVersion}-${alireRevision}";
@ -86,7 +86,7 @@ stdenv.mkDerivation rec {
cp -ar * $out/
''
# So far with the Darwin gnatboot binary packages, there have been two
# So far with the Darwin gnat-bootstrap binary packages, there have been two
# types of dylib path references to other dylibs that need fixups:
#
# 1. Dylibs in $out/lib with paths starting with

View file

@ -60,7 +60,7 @@ stdenv.mkDerivation {
makeWrapper "${clang-unwrapped}/bin/clang" "$out/bin/${targetPrefix}as" \
--add-flags "-x assembler -integrated-as -c"
''
# x86-64 Darwin gnatboot emits assembly
# x86-64 Darwin gnat-bootstrap emits assembly
# with MOVQ as the mnemonic for quadword interunit moves
# such as `movq %rbp, %xmm0`.
# The clang integrated assembler recognises this as valid,

View file

@ -570,6 +570,9 @@ mapAliases ({
gmic-qt-krita = throw "gmic-qt-krita was removed as it's no longer supported upstream."; # Converted to throw 2023-02-02
gmvault = throw "gmvault has been removed because it is unmaintained, mostly broken, and insecure"; # Added 2021-03-08
gnash = throw "gnash has been removed; broken and abandoned upstream"; # added 2022-02-06
gnatboot11 = gnat-bootstrap11;
gnatboot12 = gnat-bootstrap12;
gnatboot = gnat-bootstrap;
gnome-breeze = throw "gnome-breeze has been removed, use libsForQt5.breeze-gtk instead"; # Added 2022-04-22
gnome-firmware-updater = gnome-firmware; # added 2022-04-14
gnome-passwordsafe = gnome-secrets; # added 2022-01-30

View file

@ -14990,10 +14990,10 @@ with pkgs;
# As per upstream instructions building a cross compiler
# should be done with a (native) compiler of the same version.
# If we are cross-compiling GNAT, we may as well do the same.
gnatboot =
gnat-bootstrap =
if stdenv.hostPlatform == stdenv.targetPlatform
&& stdenv.buildPlatform == stdenv.hostPlatform
then buildPackages.gnatboot11
then buildPackages.gnat-bootstrap11
else buildPackages.gnat11;
});
@ -15006,24 +15006,24 @@ with pkgs;
# As per upstream instructions building a cross compiler
# should be done with a (native) compiler of the same version.
# If we are cross-compiling GNAT, we may as well do the same.
gnatboot =
gnat-bootstrap =
if stdenv.hostPlatform == stdenv.targetPlatform
&& stdenv.buildPlatform == stdenv.hostPlatform
then buildPackages.gnatboot12
then buildPackages.gnat-bootstrap12
else buildPackages.gnat12;
stdenv =
if stdenv.hostPlatform == stdenv.targetPlatform
&& stdenv.buildPlatform == stdenv.hostPlatform
&& stdenv.buildPlatform.isDarwin
&& stdenv.buildPlatform.isx86_64
then overrideCC stdenv gnatboot12
then overrideCC stdenv gnat-bootstrap12
else stdenv;
});
gnatboot = gnatboot12;
gnatboot11 = wrapCC (callPackage ../development/compilers/gnatboot { majorVersion = "11"; });
gnatboot12 = wrapCCWith ({
cc = callPackage ../development/compilers/gnatboot { majorVersion = "12"; };
gnat-bootstrap = gnat-bootstrap12;
gnat-bootstrap11 = wrapCC (callPackage ../development/compilers/gnat-bootstrap { majorVersion = "11"; });
gnat-bootstrap12 = wrapCCWith ({
cc = callPackage ../development/compilers/gnat-bootstrap { majorVersion = "12"; };
} // lib.optionalAttrs (stdenv.hostPlatform.isDarwin) {
bintools = bintoolsDualAs;
});