diff options
author | Ghjuvan Lacambre <lacambre@adacore.com> | 2020-11-12 09:38:58 +0100 |
---|---|---|
committer | Pierre-Marie de Rodat <derodat@adacore.com> | 2020-11-30 09:16:18 -0500 |
commit | a18d46a4b6cd2b3c6f6506d09a3bd547b20293bf (patch) | |
tree | 233dbccaf253b1af1fa284e358ce8124f6a2339f /gcc/ada/doc/gnat_ugn | |
parent | b514643caeac517d06482a70f8fa38328601dd7a (diff) | |
download | gcc-a18d46a4b6cd2b3c6f6506d09a3bd547b20293bf.zip gcc-a18d46a4b6cd2b3c6f6506d09a3bd547b20293bf.tar.gz gcc-a18d46a4b6cd2b3c6f6506d09a3bd547b20293bf.tar.bz2 |
[Ada] Implement -gnateb switch
gcc/ada/
* doc/gnat_ugn/building_executable_programs_with_gnat.rst:
Describe -gnateb switch.
* doc/gnat_ugn/the_gnat_compilation_model.rst: Mention -gnateb
switch in configuration pragma files section.
* gnat_ugn.texi: Regenerate.
* lib-writ.adb (Write_ALI): Strip directories from configuration
files path if needed.
* opt.ads: Declare Config_Files_Store_Basename option.
* par.adb (Par): Save configuration file checksum.
* switch-c.adb (Scan_Front_End_Switches): Set
Config_Files_Store_Basename true if -gnateb is present.
Diffstat (limited to 'gcc/ada/doc/gnat_ugn')
-rw-r--r-- | gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst | 7 | ||||
-rw-r--r-- | gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst | 4 |
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst b/gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst index 6993f0d..9c62d6e 100644 --- a/gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst +++ b/gcc/ada/doc/gnat_ugn/building_executable_programs_with_gnat.rst @@ -1517,6 +1517,13 @@ Alphabetical List of All Switches an exception because ``Self(Obj)`` produces an anonymous object which does not share the memory location of ``Obj``. +.. index:: -gnateb (gcc) + +:switch:`-gnateb` + Store configuration files by their basename in ALI files. This switch is + used for instance by gprbuild for distributed builds in order to prevent + issues where machine-specific absolute paths could end up being stored in + ALI files. .. index:: -gnatec (gcc) diff --git a/gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst b/gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst index 2f0e10c..46d589a 100644 --- a/gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst +++ b/gcc/ada/doc/gnat_ugn/the_gnat_compilation_model.rst @@ -1560,6 +1560,10 @@ temporary files that are immediately deleted; it doesn't make sense to depend on a file that no longer exists. Such tools include ``gprbuild``, ``gnatmake``, and ``gnatcheck``. +By default, configuration pragma files are stored by their absolute paths in +ALI files. You can use the :switch:`-gnateb` switch in order to store them by +their basename instead. + If you are using project file, a separate mechanism is provided using project attributes. |