Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

classic Classic list List threaded Threaded
16 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Maciej W. Rozycki-5
Hi,

On Wed, 3 Jul 2019, [hidden email] wrote:

> Author: pmderodat
> Date: Wed Jul  3 08:14:57 2019
> New Revision: 272976
>
> URL: https://gcc.gnu.org/viewcvs?rev=272976&root=gcc&view=rev
> Log:
> [Ada] ABE checks v3.0, foundations of Elaboration order v4.0
>
> ------------------------
> -- Elaboration checks --
> ------------------------
>
> The dynamic ABE checks model now emits the same diagnostics as those of the
> static ABE checks model.
>
> The ABE checks mechanism has been redesigned and refactored in the face of
> increasing requirements. Most of the functionality can now be toggled, thus
> allowing for various combinations of behavior. The combinations are defined
> as "initial states" and may be further altered.
>
> Scenarios and targets have been distinctly separated at the higher level,
> instead of directly working with nodes and entitites. Scenarios and targets
> now carry a representation which removes the need to constantly recompute
> relevant attributes, and offers a common interface for the various processors.
>
> Most processing has now been refactored into "services" which perform a single
> ABE-related function.
>
> -----------------------
> -- Elaboration order --
> -----------------------
>
> A new elaboration order mechanism based on the use of an invocation graph to
> provide extra information about the flow of execution at elaboration time has
> been introduced.
>
> The ABE checks mechanism has been altered to encode pieces of the invocation
> graph in the associated ALI files of units.
>
> The new elaboration order mechanism reconstructs the full invocation graph at
> bind time, and coupled with the library item graph, determines the elaboration
> order of units.
>
> The new elaboration order mechanism is currently inaccessible.

 This change (not posted to `gcc-patches' for some reason) has caused a
regression in the form of a build failure with the `riscv-linux-gnu'
target (and for the record the `x86_64-linux-gnu' build/host running GCC
8.3.0):

ali.adb:34:28: warning: use clause for package "GNAT" has no effect
ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect
ali.adb:155:52: "Bucket_Range_Type" is undefined (more references follow)
ali.adb:158:27: "Dynamic_Hash_Tables" is undefined
ali.adb:173:30: "Sig_Map" is undefined (more references follow)
gnatmake: ".../gcc/ada/ali.adb" compilation error
make[3]: *** [../gcc-interface/Makefile:469: gnatmake-re] Error 4
make[3]: Leaving directory '.../gcc/ada/tools'
make[2]: *** [Makefile:216: gnattools-cross] Error 2
make[2]: Leaving directory '.../gnattools'
make[1]: *** [Makefile:11224: all-gnattools] Error 2

-- that has persisted ever since.

 I have noticed that the `Bucket_Range_Type' data type has only been added
after GCC 8 has branched, so I tried GCC 9 instead, Debian 9.2.1 20190821
specifically, but that still fails:

ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect
ali.adb:158:27: "Dynamic_Hash_Tables" is undefined
ali.adb:173:30: "Sig_Map" is undefined (more references follow)
gnatmake: ".../gcc/ada/ali.adb" compilation error
../gcc-interface/Makefile:468: recipe for target 'gnatmake-re' failed

-- likely due to r272860, which renamed the `Dynamic_HTable' package to
`Dynamic_Hash_Tables' (r272860 is earlier than r272976, but it is only
r272976 that has made GNAT proper use `Dynamic_Hash_Tables'; previously
only `libgnat' used that package).

 This means that no released GCC version can be used to build trunk GNAT,
which would provide a clean upgrade path, and there is only a narrow
window between r272860 and r272975 inclusive that lets one move on to GNAT
10.  I find this rather unfortunate.

 Can you please look into it?

  Maciej



Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
Maciej,

>  This change (not posted to `gcc-patches' for some reason) has caused a
> regression in the form of a build failure with the `riscv-linux-gnu'
> target (and for the record the `x86_64-linux-gnu' build/host running GCC
> 8.3.0):
>
> ali.adb:34:28: warning: use clause for package "GNAT" has no effect
> ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect
> ali.adb:155:52: "Bucket_Range_Type" is undefined (more references follow)
> ali.adb:158:27: "Dynamic_Hash_Tables" is undefined
> ali.adb:173:30: "Sig_Map" is undefined (more references follow)
> gnatmake: ".../gcc/ada/ali.adb" compilation error
> make[3]: *** [../gcc-interface/Makefile:469: gnatmake-re] Error 4
> make[3]: Leaving directory '.../gcc/ada/tools'
> make[2]: *** [Makefile:216: gnattools-cross] Error 2
> make[2]: Leaving directory '.../gnattools'
> make[1]: *** [Makefile:11224: all-gnattools] Error 2
>
> -- that has persisted ever since.

As documented in https://gcc.gnu.org/install/build.html
you need a matching native GNAT compiler to build a GNAT cross compiler.

If I understood properly, you are using a GCC 8.3.0 as the host compiler
to build a GNAT cross compiler, which indeed won't work: you need to first
build a native matching compiler and then use this matching compiler to build
the cross.

Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Andreas Schwab
In reply to this post by Maciej W. Rozycki-5
On Sep 04 2019, "Maciej W. Rozycki" <[hidden email]> wrote:

>  This means that no released GCC version can be used to build trunk GNAT,
> which would provide a clean upgrade path, and there is only a narrow
> window between r272860 and r272975 inclusive that lets one move on to GNAT
> 10.  I find this rather unfortunate.

I don't see that here.  My gcc testers can still build trunk GNAT with
gcc 9.

http://gcc.gnu.org/ml/gcc-testresults/2019-09/msg00072.html
http://gcc.gnu.org/ml/gcc-testresults/2019-09/msg00349.html

Andreas.

--
Andreas Schwab, SUSE Labs, [hidden email]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Maciej W. Rozycki-5
In reply to this post by Arnaud Charlet
Arnaud,

> >  This change (not posted to `gcc-patches' for some reason) has caused a
> > regression in the form of a build failure with the `riscv-linux-gnu'
> > target (and for the record the `x86_64-linux-gnu' build/host running GCC
> > 8.3.0):
> >
> > ali.adb:34:28: warning: use clause for package "GNAT" has no effect
> > ali.adb:35:28: warning: use clause for package "Dynamic_HTables" has no effect
> > ali.adb:155:52: "Bucket_Range_Type" is undefined (more references follow)
> > ali.adb:158:27: "Dynamic_Hash_Tables" is undefined
> > ali.adb:173:30: "Sig_Map" is undefined (more references follow)
> > gnatmake: ".../gcc/ada/ali.adb" compilation error
> > make[3]: *** [../gcc-interface/Makefile:469: gnatmake-re] Error 4
> > make[3]: Leaving directory '.../gcc/ada/tools'
> > make[2]: *** [Makefile:216: gnattools-cross] Error 2
> > make[2]: Leaving directory '.../gnattools'
> > make[1]: *** [Makefile:11224: all-gnattools] Error 2
> >
> > -- that has persisted ever since.
>
> As documented in https://gcc.gnu.org/install/build.html
> you need a matching native GNAT compiler to build a GNAT cross compiler.

 Hmm, I used to use matching versions of the whole GCC suite for building
cross-compilers, but that was long ago, up to GCC 4.1, and not with GNAT
specifically in mind.  I stopped being involved with the Ada frontend in
any way then until recently.  Having come across this build problem I did
check <http://gcc.gnu.org/install/> and then
<http://gcc.gnu.org/install/prerequisites.html> and all I found was:

"  GNAT
          In order to build the Ada compiler (GNAT) you must already have
          GNAT installed because portions of the Ada frontend are written
          in Ada (with GNAT extensions.) Refer to the Ada installation
          instructions for more specific information."

Notice that an earlier "ISO C++98 compiler" section mentions GCC "version
3.4 or later" as required for building a cross-compiler, so arguably no
version restriction (including though not limited to requiring the host
compiler's version to match) being mentioned here may be interpreted as
none at all (of course the 3.4 requirement for other parts of the compiler
built alongside still applies).  Which is why I stopped looking further.

 NB I wasn't able to locate "the Ada installation instructions" referred.

> If I understood properly, you are using a GCC 8.3.0 as the host compiler
> to build a GNAT cross compiler, which indeed won't work: you need to first
> build a native matching compiler and then use this matching compiler to build
> the cross.

 Thanks for the hint.  I have now successfully natively bootstrapped
current GCC trunk using my usual `--enable-languages=all' setting, and
then used that `x86_64-linux-gnu' compiler suite to build my original
`riscv-linux-gnu' cross-compilation environment.  I guess I'll have to
wire a preparatory native build stage into my setup somehow.  Sorry about
the noise.

 Perhaps it would make sense to make the prerequisites section of the
installation instructions a little bit more explicit about the strict
version match requirement though?  I guess someone being new to a GCC
build would go through the whole document and then find this:

"  In order to build GNAT, the Ada compiler, you need a working GNAT
   compiler (GCC version 4.0 or later). This includes GNAT tools such as
   gnatmake and gnatlink, since the Ada front end is written in Ada and
   uses some GNAT-specific extensions."

and than that:

"  In order to build a cross compiler, it is suggested to install the new
   compiler as native first, and then use it to build the cross compiler."

buried in the build section.  Still I think the former paragraph really
belongs to the prerequisites section and so does the latter, perhaps with
a change to make it more explicit that building a cross-compiler may not
actually work if the versions do not match.  WDYT?

 NB I have no specific interest in the Ada frontend.  Rather I want to
have all the frontends built and included in testing so that when making
changes any regressions trigger that would not with, say, the C frontend
only.

  Maciej
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
Maciej,

Thank you for your comments, I definitely agree with you that the document is
too well hidden and could be improved, I'll work on that and put the Ada
build requirements in a single, easier to find place (probably the
prerequisites since both you and I started from there).

Can someone please remind me in which repository I can find the GCC
prerequisites doc sources?

> buried in the build section.  Still I think the former paragraph really
> belongs to the prerequisites section and so does the latter, perhaps with
> a change to make it more explicit that building a cross-compiler may not
> actually work if the versions do not match.  WDYT?

Agreed.

>  NB I have no specific interest in the Ada frontend.  Rather I want to
> have all the frontends built and included in testing so that when making
> changes any regressions trigger that would not with, say, the C frontend
> only.

Makes sense, and definitely appreciated to have more people building and
testing the Ada front-end!

Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> Can someone please remind me in which repository I can find the GCC
> prerequisites doc sources?

Answering my own question: found it under gcc/doc/install.texi

Working on it...
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> > Can someone please remind me in which repository I can find the GCC
> > prerequisites doc sources?
>
> Answering my own question: found it under gcc/doc/install.texi
>
> Working on it...

Just installed the following change on trunk, thanks again for your feedback!

2019-09-05  Arnaud Charlet  <[hidden email]>

        * doc/install.texi: Update and clarify requirements to build GNAT.

Index: doc/install.texi
===================================================================
--- doc/install.texi (revision 275399)
+++ doc/install.texi (working copy)
@@ -270,13 +270,35 @@
 @option{--disable-multilib}.  Otherwise, you may encounter an error such as
 @samp{fatal error: gnu/stubs-32.h: No such file}
 
-@item GNAT
+@item @anchor{GNAT-prerequisite}GNAT
 
-In order to build the Ada compiler (GNAT) you must already have GNAT
-installed because portions of the Ada frontend are written in Ada (with
-GNAT extensions.)  Refer to the Ada installation instructions for more
-specific information.
+In order to build GNAT, the Ada compiler, you need a working GNAT
+compiler (GCC version 4.7 or later).
 
+This includes GNAT tools such as @command{gnatmake} and
+@command{gnatlink}, since the Ada front end is written in Ada and
+uses some GNAT-specific extensions.
+
+In order to build a cross compiler, it is strongly recommended to install
+the new compiler as native first, and then use it to build the cross
+compiler. Other native compiler versions may work but this is not guaranteed and
+will typically fail with hard to understand compilation errors during the
+build.
+
+Similarly, it is strongly recommended to use an older version of GNAT to build
+GNAT. More recent versions of GNAT than the version built are not guaranteed
+to work and will often fail during the build with compilation errors.
+
+Note that @command{configure} does not test whether the GNAT installation works
+and has a sufficiently recent version; if too old a GNAT version is
+installed and @option{--enable-languages=ada} is used, the build will fail.
+
+@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables
+must not be set when building the Ada compiler, the Ada tools, or the
+Ada runtime libraries. You can check that your build environment is clean
+by verifying that @samp{gnatls -v} lists only one explicit path in each
+section.
+
 @item A ``working'' POSIX compatible shell, or GNU bash
 
 Necessary when running @command{configure} because some
@@ -2705,27 +2727,8 @@
 
 @section Building the Ada compiler
 
-In order to build GNAT, the Ada compiler, you need a working GNAT
-compiler (GCC version 4.0 or later).
-This includes GNAT tools such as @command{gnatmake} and
-@command{gnatlink}, since the Ada front end is written in Ada and
-uses some GNAT-specific extensions.
+See @ref{GNAT-prerequisite}.
 
-In order to build a cross compiler, it is suggested to install
-the new compiler as native first, and then use it to build the cross
-compiler.
-
-@command{configure} does not test whether the GNAT installation works
-and has a sufficiently recent version; if too old a GNAT version is
-installed, the build will fail unless @option{--enable-languages} is
-used to disable building the Ada front end.
-
-@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables
-must not be set when building the Ada compiler, the Ada tools, or the
-Ada runtime libraries. You can check that your build environment is clean
-by verifying that @samp{gnatls -v} lists only one explicit path in each
-section.
-
 @section Building with profile feedback
 
 It is possible to use profile feedback to optimize the compiler itself.  This
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Christophe Lyon-2
On Thu, 5 Sep 2019 at 11:52, Arnaud Charlet <[hidden email]> wrote:

>
> > > Can someone please remind me in which repository I can find the GCC
> > > prerequisites doc sources?
> >
> > Answering my own question: found it under gcc/doc/install.texi
> >
> > Working on it...
>
> Just installed the following change on trunk, thanks again for your feedback!
>
> 2019-09-05  Arnaud Charlet  <[hidden email]>
>
>         * doc/install.texi: Update and clarify requirements to build GNAT.
>
Hi Arnaud,

It seems there's a problem with this patch:
/snapshots/gcc.git~master/gcc/doc/install.texi:2730: @ref reference to
nonexistent node `GNAT-prerequisite'
Makefile:3300: recipe for target
'/builds/armv8l-unknown-linux-gnueabihf/armv8l-unknown-linux-gnueabihf/gcc.git~master-stage2/gcc/HTML/gcc-10.0.0/gccinstall/index.html'
failed

Christophe

> Index: doc/install.texi
> ===================================================================
> --- doc/install.texi    (revision 275399)
> +++ doc/install.texi    (working copy)
> @@ -270,13 +270,35 @@
>  @option{--disable-multilib}.  Otherwise, you may encounter an error such as
>  @samp{fatal error: gnu/stubs-32.h: No such file}
>
> -@item GNAT
> +@item @anchor{GNAT-prerequisite}GNAT
>
> -In order to build the Ada compiler (GNAT) you must already have GNAT
> -installed because portions of the Ada frontend are written in Ada (with
> -GNAT extensions.)  Refer to the Ada installation instructions for more
> -specific information.
> +In order to build GNAT, the Ada compiler, you need a working GNAT
> +compiler (GCC version 4.7 or later).
>
> +This includes GNAT tools such as @command{gnatmake} and
> +@command{gnatlink}, since the Ada front end is written in Ada and
> +uses some GNAT-specific extensions.
> +
> +In order to build a cross compiler, it is strongly recommended to install
> +the new compiler as native first, and then use it to build the cross
> +compiler. Other native compiler versions may work but this is not guaranteed and
> +will typically fail with hard to understand compilation errors during the
> +build.
> +
> +Similarly, it is strongly recommended to use an older version of GNAT to build
> +GNAT. More recent versions of GNAT than the version built are not guaranteed
> +to work and will often fail during the build with compilation errors.
> +
> +Note that @command{configure} does not test whether the GNAT installation works
> +and has a sufficiently recent version; if too old a GNAT version is
> +installed and @option{--enable-languages=ada} is used, the build will fail.
> +
> +@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables
> +must not be set when building the Ada compiler, the Ada tools, or the
> +Ada runtime libraries. You can check that your build environment is clean
> +by verifying that @samp{gnatls -v} lists only one explicit path in each
> +section.
> +
>  @item A ``working'' POSIX compatible shell, or GNU bash
>
>  Necessary when running @command{configure} because some
> @@ -2705,27 +2727,8 @@
>
>  @section Building the Ada compiler
>
> -In order to build GNAT, the Ada compiler, you need a working GNAT
> -compiler (GCC version 4.0 or later).
> -This includes GNAT tools such as @command{gnatmake} and
> -@command{gnatlink}, since the Ada front end is written in Ada and
> -uses some GNAT-specific extensions.
> +See @ref{GNAT-prerequisite}.
>
> -In order to build a cross compiler, it is suggested to install
> -the new compiler as native first, and then use it to build the cross
> -compiler.
> -
> -@command{configure} does not test whether the GNAT installation works
> -and has a sufficiently recent version; if too old a GNAT version is
> -installed, the build will fail unless @option{--enable-languages} is
> -used to disable building the Ada front end.
> -
> -@env{ADA_INCLUDE_PATH} and @env{ADA_OBJECT_PATH} environment variables
> -must not be set when building the Ada compiler, the Ada tools, or the
> -Ada runtime libraries. You can check that your build environment is clean
> -by verifying that @samp{gnatls -v} lists only one explicit path in each
> -section.
> -
>  @section Building with profile feedback
>
>  It is possible to use profile feedback to optimize the compiler itself.  This
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> > Just installed the following change on trunk, thanks again for your feedback!
> >
> > 2019-09-05  Arnaud Charlet  <[hidden email]>
> >
> >         * doc/install.texi: Update and clarify requirements to build GNAT.
> >
> Hi Arnaud,
>
> It seems there's a problem with this patch:
> /snapshots/gcc.git~master/gcc/doc/install.texi:2730: @ref reference to
> nonexistent node `GNAT-prerequisite'
> Makefile:3300: recipe for target
> '/builds/armv8l-unknown-linux-gnueabihf/armv8l-unknown-linux-gnueabihf/gcc.git~master-stage2/gcc/HTML/gcc-10.0.0/gccinstall/index.html'
> failed

Hmm strange, the ref should be there:

> > -@item GNAT
> > +@item @anchor{GNAT-prerequisite}GNAT

which "make" target is failing for you?

I guess the HTML generation is not handling the above anchor properly, although
it's not the first such use of @anchor{}.

Generating install.info certainly works fine and generates the proper xref.

Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Christophe Lyon-2
On Mon, 9 Sep 2019 at 17:18, Arnaud Charlet <[hidden email]> wrote:

>
> > > Just installed the following change on trunk, thanks again for your feedback!
> > >
> > > 2019-09-05  Arnaud Charlet  <[hidden email]>
> > >
> > >         * doc/install.texi: Update and clarify requirements to build GNAT.
> > >
> > Hi Arnaud,
> >
> > It seems there's a problem with this patch:
> > /snapshots/gcc.git~master/gcc/doc/install.texi:2730: @ref reference to
> > nonexistent node `GNAT-prerequisite'
> > Makefile:3300: recipe for target
> > '/builds/armv8l-unknown-linux-gnueabihf/armv8l-unknown-linux-gnueabihf/gcc.git~master-stage2/gcc/HTML/gcc-10.0.0/gccinstall/index.html'
> > failed
>
> Hmm strange, the ref should be there:
>
Indeed, that's what I thought too

> > > -@item GNAT
> > > +@item @anchor{GNAT-prerequisite}GNAT
>
> which "make" target is failing for you?

My log says:
make: *** [do-install-html] Error 2

> I guess the HTML generation is not handling the above anchor properly, although
> it's not the first such use of @anchor{}.
>
> Generating install.info certainly works fine and generates the proper xref.
>
Maybe a problem with makeinfo version?

> Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> > > It seems there's a problem with this patch:
> > > /snapshots/gcc.git~master/gcc/doc/install.texi:2730: @ref reference to
> > > nonexistent node `GNAT-prerequisite'
> > > Makefile:3300: recipe for target
> > > '/builds/armv8l-unknown-linux-gnueabihf/armv8l-unknown-linux-gnueabihf/gcc.git~master-stage2/gcc/HTML/gcc-10.0.0/gccinstall/index.html'
> > > failed
> >
> > Hmm strange, the ref should be there:
> >
> Indeed, that's what I thought too

Allright, there are already similar kludges elsewhere, so I've applied the
following patch which fixes it:

2019-09-10  Arnaud Charlet  <[hidden email]>

        * doc/install.texi: Fix syntax for html generation.

Index: doc/install.texi
===================================================================
--- doc/install.texi    (revision 275400)
+++ doc/install.texi    (working copy)
@@ -2727,7 +2727,12 @@

 @section Building the Ada compiler

-See @ref{GNAT-prerequisite}.
+@ifnothtml
+@ref{GNAT-prerequisite}.
+@end ifnothtml
+@ifhtml
+@uref{GNAT-prerequisite}.
+@end ifhtml

 @section Building with profile feedback

I've verified that the do-install-html and do-install-info targets are now
happy with the change.

Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Christophe Lyon
On 10/09/2019 12:17, Arnaud Charlet wrote:

>>>> It seems there's a problem with this patch:
>>>> /snapshots/gcc.git~master/gcc/doc/install.texi:2730: @ref reference to
>>>> nonexistent node `GNAT-prerequisite'
>>>> Makefile:3300: recipe for target
>>>> '/builds/armv8l-unknown-linux-gnueabihf/armv8l-unknown-linux-gnueabihf/gcc.git~master-stage2/gcc/HTML/gcc-10.0.0/gccinstall/index.html'
>>>> failed
>>> Hmm strange, the ref should be there:
>>>
>> Indeed, that's what I thought too
> Allright, there are already similar kludges elsewhere, so I've applied the
> following patch which fixes it:
>
> 2019-09-10  Arnaud Charlet  <[hidden email]>
>
> * doc/install.texi: Fix syntax for html generation.
>
> Index: doc/install.texi
> ===================================================================
> --- doc/install.texi    (revision 275400)
> +++ doc/install.texi    (working copy)
> @@ -2727,7 +2727,12 @@
>
>   @section Building the Ada compiler
>
> -See @ref{GNAT-prerequisite}.
> +@ifnothtml
> +@ref{GNAT-prerequisite}.
> +@end ifnothtml
> +@ifhtml
> +@uref{GNAT-prerequisite}.
> +@end ifhtml
>
>   @section Building with profile feedback
>
> I've verified that the do-install-html and do-install-info targets are now
> happy with the change.
>
> Arno
> .
>
Thanks!


Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Gerald Pfeifer
In reply to this post by Arnaud Charlet
On Tue, 10 Sep 2019, Arnaud Charlet wrote:

> Allright, there are already similar kludges elsewhere, so I've applied the
> following patch which fixes it:
>
> 2019-09-10  Arnaud Charlet  <[hidden email]>
>
> * doc/install.texi: Fix syntax for html generation.
>
> Index: doc/install.texi
> ===================================================================
> --- doc/install.texi    (revision 275400)
> +++ doc/install.texi    (working copy)
> @@ -2727,7 +2727,12 @@
>
>  @section Building the Ada compiler
>
> -See @ref{GNAT-prerequisite}.
> +@ifnothtml
> +@ref{GNAT-prerequisite}.
> +@end ifnothtml
> +@ifhtml
> +@uref{GNAT-prerequisite}.
> +@end ifhtml

Hmm, I'm afraid this does not work as intended.

https://gcc.gnu.org/install/build.html now links to
https://gcc.gnu.org/install/GNAT-prerequisite which simply does not
exit.

Mind looking into this?

Thanks,
Gerald
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> > 2019-09-10  Arnaud Charlet  <[hidden email]>
> >
> > * doc/install.texi: Fix syntax for html generation.
> >
> > Index: doc/install.texi
> > ===================================================================
> > --- doc/install.texi    (revision 275400)
> > +++ doc/install.texi    (working copy)
> > @@ -2727,7 +2727,12 @@
> >
> >  @section Building the Ada compiler
> >
> > -See @ref{GNAT-prerequisite}.
> > +@ifnothtml
> > +@ref{GNAT-prerequisite}.
> > +@end ifnothtml
> > +@ifhtml
> > +@uref{GNAT-prerequisite}.
> > +@end ifhtml
>
> Hmm, I'm afraid this does not work as intended.
>
> https://gcc.gnu.org/install/build.html now links to
> https://gcc.gnu.org/install/GNAT-prerequisite which simply does not
> exit.
>
> Mind looking into this?

OK. Would be good to switch to another doc generation tool one of these
days, these things are not fun to deal with.

(I'm on vacation this week, so will take a look next week).

Arno
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Andreas Schwab
In reply to this post by Arnaud Charlet
On Sep 10 2019, Arnaud Charlet wrote:

> Allright, there are already similar kludges elsewhere, so I've applied the
> following patch which fixes it:
>
> 2019-09-10  Arnaud Charlet  <[hidden email]>
>
> * doc/install.texi: Fix syntax for html generation.
>
> Index: doc/install.texi
> ===================================================================
> --- doc/install.texi    (revision 275400)
> +++ doc/install.texi    (working copy)
> @@ -2727,7 +2727,12 @@
>
>  @section Building the Ada compiler
>
> -See @ref{GNAT-prerequisite}.
> +@ifnothtml
> +@ref{GNAT-prerequisite}.
> +@end ifnothtml
> +@ifhtml
> +@uref{GNAT-prerequisite}.

That should be @uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.

Andreas.

--
Andreas Schwab, SUSE Labs, [hidden email]
GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE  1748 E4D4 88E3 0EEA B9D7
"And now for something completely different."
Reply | Threaded
Open this post in threaded view
|

Re: r272976 - in /trunk/gcc/ada: ChangeLog ali.adb ...

Arnaud Charlet
> That should be @uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.

Thanks. I wouldn't have been able to guess that!

Corresponding patch installed.

2019-11-05  Arnaud Charlet  <[hidden email]>

        * doc/install.texi: Further fix syntax for html generation.

Index: doc/install.texi
===================================================================
--- doc/install.texi    (revision 277823)
+++ doc/install.texi    (working copy)
@@ -2731,7 +2731,7 @@
 @ref{GNAT-prerequisite}.
 @end ifnothtml
 @ifhtml
-@uref{GNAT-prerequisite}.
+@uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.
 @end ifhtml

 @section Building with profile feedback