44* [ Compiler compatibility] ( #compatibility )
55* [ Target] ( #target )
66* [ Run time system] ( #rts )
7- * [ In ` $lib ` :] ( #in-lib )
87 * [ In ` $prefix/arm-eabi/lib/gnat ` :] ( #with-compiler )
8+ * [ In ` $lib ` :] ( #in-lib )
99 * [ In the build location:] ( #in-build )
1010* [ Link map file] ( #link-map )
1111
@@ -30,26 +30,19 @@ well, if at all.
3030## Compiler compatibility <a name =" compatibility " /> ##
3131
3232During compiler development, the interface between the compiler and
33- the run time system it's generating code for changes. As released,
34- these RTSs match the FSF GCC 7 compiler.
33+ the run time system it's generating code for changes.
3534
36- If you're using a different compiler, alternate versions of the
37- affected units, all in ` common ` , are provided; in the table below,
38- 'copy over corresponding ` .ad[bs] ` ' means that, for example,
39- ` s-tarest.ads-gcc6 ` should be copied over ` s-tarest.ads ` .
35+ This is managed here using different branches.
4036
4137<!-- This renders OK at Github, but not with Markdown.pl. -->
4238
43- | Compiler | copy over corresponding ` .ad[bs] ` |
39+ | Compiler | Branch |
4440| ---------| ----------------------------------- |
45- | FSF GCC 6 | ` environment_task.adb-gcc6 ` , ` s-tarest.adb-gcc6 ` , ` s-tarest.ads-gcc6 ` |
46- | GNAT GPL 2016 | as FSF GCC 6 |
47- | FSF GCC 8 | ` a-tags.adb-gcc8 ` , ` a-tags.ads-gcc8 ` |
48- | GNAT GPL 2017 | as FSF GCC 8 |
49-
50- If, instead, you've cloned the repository, then FSF GCC 6 and GNAT GPL
51- 2016 are supported on branch ` gcc6 ` , while FSF GCC 8 and GNAT GPL 2017
52- are supported on branch ` gcc8 ` .
41+ | FSF GCC 6 | ` gcc6 ` |
42+ | FSF GCC 7 | ` gcc7 ` (or ` gcc7-finalization ` ) |
43+ | FSF GCC 8 | ` gcc8 ` (or ` gcc8-finalization ` ) |
44+ | GNAT GPL 2016 | ` gcc6 ` |
45+ | GNAT GPL 2017 | ` gnat-gpl-2017 ` |
5346
5447## Target <a name =" target " /> ##
5548
@@ -89,15 +82,21 @@ or, with GPRBUILD GPL 2015 or later, via an attribute:
8982
9083There are two places where RTSs can be installed:
9184
85+ * in ` $prefix/arm-eabi/lib/gnat ` . This is the preferred location, and
86+ is where the ` install ` make target will place the RTS.
87+
9288* in the location indicated by the directory part of `arm-eabi-gcc
9389 -print-libgcc-file-name`; for GNAT GPL 2015, that would be
9490 ` $prefix/lib/gcc/arm-eabi/4.9.3/ ` , referred to from here on as
9591 ` $lib ` .
9692
97- * in ` $prefix/arm-eabi/lib/gnat ` .
98-
9993You can also work with an RTS in its build location.
10094
95+ ### In ` $prefix/arm-eabi/lib/gnat ` : <a name =" with-compiler " /> ###
96+
97+ The directory containing the RTS is just called {name},
98+ e.g. ` stm32f429i/ ` .
99+
101100### In ` $lib ` : <a name =" in-lib " /> ###
102101
103102The directory containing the RTS should be called ` rts-{name} ` , for
@@ -120,11 +119,6 @@ Alternative RTSs are found here if they are in directories named
120119` rts-{name} ` , for example ` rts-stm32f429i/ ` corresponds to
121120` --RTS=stm32f429i ` .
122121
123- ### In ` $prefix/arm-eabi/lib/gnat ` : <a name =" with-compiler " /> ###
124-
125- The directory containing the RTS is just called {name},
126- e.g. ` stm32f429i/ ` . This is the best place.
127-
128122### In the build location: <a name =" in-build " /> ###
129123
130124RTSs can also be located by giving the explicit path in the `Runtime
0 commit comments