Re: [PING, PATCH] doc, d: Add note that D front end now requires GDC installed in order to bootstrap.

2021-12-01 Thread Richard Biener via Gcc-patches
On Tue, Nov 30, 2021 at 6:01 PM Iain Buclaw via Gcc-patches
 wrote:
>
> Ping.

OK.

> Excerpts from Iain Buclaw's message of November 18, 2021 2:06 am:
> > Hi,
> >
> > As asked for, this adds the documentation note in install.texi about the
> > upcoming bootstrap requirements.
> >
> > Obviously this will be applied alongside the patch posted previously:
> >
> > https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582917.html
> >
> > Final batch of testing before proceeding has taking a bit longer than I
> > expected.  Currently bootstrapping on sparcv9-sun-solaris2.11, and will
> > push forward once have confirmed that it works as well as the current
> > C++ implementation of the D front end.
> >
> > OK for mainline?  Any improvements on wording?
> >
> > Thanks,
> > Iain.
> >
> > ---
> > gcc/ChangeLog:
> >
> >   * doc/install.texi (Prerequisites): Add note that D front end now
> >   requires GDC installed in order to bootstrap.
> >   (Building): Add D compiler section, referencing prerequisites.
> > ---
> >  gcc/doc/install.texi | 28 
> >  1 file changed, 28 insertions(+)
> >
> > diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
> > index 094469b9a4e..6f999a2fd5a 100644
> > --- a/gcc/doc/install.texi
> > +++ b/gcc/doc/install.texi
> > @@ -289,6 +289,25 @@ 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 @anchor{GDC-prerequisite}GDC
> > +
> > +In order to build GDC, the D compiler, you need a working GDC
> > +compiler (GCC version 9.1 or later), as the D front end is written in D.
> > +
> > +Versions of GDC prior to 12 can be built with an ISO C++11 compiler, which 
> > can
> > +then be installed and used to bootstrap newer versions of the D front end.
> > +
> > +It is strongly recommended to use an older version of GDC to build GDC. 
> > More
> > +recent versions of GDC than the version built are not guaranteed to work 
> > and
> > +will often fail during the build with compilation errors relating to
> > +deprecations or removed features.
> > +
> > +Note that @command{configure} does not test whether the GDC installation 
> > works
> > +and has a sufficiently recent version.  Though the implementation of the D
> > +front end does not make use of any GDC-specific extensions, or novel 
> > features
> > +of the D language, if too old a GDC version is installed and
> > +@option{--enable-languages=d} is used, the build will fail.
> > +
> >  @item A ``working'' POSIX compatible shell, or GNU bash
> >
> >  Necessary when running @command{configure} because some
> > @@ -2977,6 +2996,15 @@ and network filesystems.
> >  @uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.
> >  @end ifhtml
> >
> > +@section Building the D compiler
> > +
> > +@ifnothtml
> > +@ref{GDC-prerequisite}.
> > +@end ifnothtml
> > +@ifhtml
> > +@uref{prerequisites.html#GDC-prerequisite,,GDC prerequisites}.
> > +@end ifhtml
> > +
> >  @section Building with profile feedback
> >
> >  It is possible to use profile feedback to optimize the compiler itself.  
> > This
> > --
> > 2.30.2
> >
> >


[PING, PATCH] doc, d: Add note that D front end now requires GDC installed in order to bootstrap.

2021-11-30 Thread Iain Buclaw via Gcc-patches
Ping.

Excerpts from Iain Buclaw's message of November 18, 2021 2:06 am:
> Hi,
> 
> As asked for, this adds the documentation note in install.texi about the
> upcoming bootstrap requirements.
> 
> Obviously this will be applied alongside the patch posted previously:
> 
> https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582917.html
> 
> Final batch of testing before proceeding has taking a bit longer than I
> expected.  Currently bootstrapping on sparcv9-sun-solaris2.11, and will
> push forward once have confirmed that it works as well as the current
> C++ implementation of the D front end.
> 
> OK for mainline?  Any improvements on wording?
> 
> Thanks,
> Iain.
> 
> ---
> gcc/ChangeLog:
> 
>   * doc/install.texi (Prerequisites): Add note that D front end now
>   requires GDC installed in order to bootstrap.
>   (Building): Add D compiler section, referencing prerequisites.
> ---
>  gcc/doc/install.texi | 28 
>  1 file changed, 28 insertions(+)
> 
> diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
> index 094469b9a4e..6f999a2fd5a 100644
> --- a/gcc/doc/install.texi
> +++ b/gcc/doc/install.texi
> @@ -289,6 +289,25 @@ 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 @anchor{GDC-prerequisite}GDC
> +
> +In order to build GDC, the D compiler, you need a working GDC
> +compiler (GCC version 9.1 or later), as the D front end is written in D.
> +
> +Versions of GDC prior to 12 can be built with an ISO C++11 compiler, which 
> can
> +then be installed and used to bootstrap newer versions of the D front end.
> +
> +It is strongly recommended to use an older version of GDC to build GDC. More
> +recent versions of GDC than the version built are not guaranteed to work and
> +will often fail during the build with compilation errors relating to
> +deprecations or removed features.
> +
> +Note that @command{configure} does not test whether the GDC installation 
> works
> +and has a sufficiently recent version.  Though the implementation of the D
> +front end does not make use of any GDC-specific extensions, or novel features
> +of the D language, if too old a GDC version is installed and
> +@option{--enable-languages=d} is used, the build will fail.
> +
>  @item A ``working'' POSIX compatible shell, or GNU bash
>  
>  Necessary when running @command{configure} because some
> @@ -2977,6 +2996,15 @@ and network filesystems.
>  @uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.
>  @end ifhtml
>  
> +@section Building the D compiler
> +
> +@ifnothtml
> +@ref{GDC-prerequisite}.
> +@end ifnothtml
> +@ifhtml
> +@uref{prerequisites.html#GDC-prerequisite,,GDC prerequisites}.
> +@end ifhtml
> +
>  @section Building with profile feedback
>  
>  It is possible to use profile feedback to optimize the compiler itself.  This
> -- 
> 2.30.2
> 
> 


[PATCH] doc, d: Add note that D front end now requires GDC installed in order to bootstrap.

2021-11-17 Thread Iain Buclaw via Gcc-patches
Hi,

As asked for, this adds the documentation note in install.texi about the
upcoming bootstrap requirements.

Obviously this will be applied alongside the patch posted previously:

https://gcc.gnu.org/pipermail/gcc-patches/2021-October/582917.html

Final batch of testing before proceeding has taking a bit longer than I
expected.  Currently bootstrapping on sparcv9-sun-solaris2.11, and will
push forward once have confirmed that it works as well as the current
C++ implementation of the D front end.

OK for mainline?  Any improvements on wording?

Thanks,
Iain.

---
gcc/ChangeLog:

* doc/install.texi (Prerequisites): Add note that D front end now
requires GDC installed in order to bootstrap.
(Building): Add D compiler section, referencing prerequisites.
---
 gcc/doc/install.texi | 28 
 1 file changed, 28 insertions(+)

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 094469b9a4e..6f999a2fd5a 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -289,6 +289,25 @@ 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 @anchor{GDC-prerequisite}GDC
+
+In order to build GDC, the D compiler, you need a working GDC
+compiler (GCC version 9.1 or later), as the D front end is written in D.
+
+Versions of GDC prior to 12 can be built with an ISO C++11 compiler, which can
+then be installed and used to bootstrap newer versions of the D front end.
+
+It is strongly recommended to use an older version of GDC to build GDC. More
+recent versions of GDC than the version built are not guaranteed to work and
+will often fail during the build with compilation errors relating to
+deprecations or removed features.
+
+Note that @command{configure} does not test whether the GDC installation works
+and has a sufficiently recent version.  Though the implementation of the D
+front end does not make use of any GDC-specific extensions, or novel features
+of the D language, if too old a GDC version is installed and
+@option{--enable-languages=d} is used, the build will fail.
+
 @item A ``working'' POSIX compatible shell, or GNU bash
 
 Necessary when running @command{configure} because some
@@ -2977,6 +2996,15 @@ and network filesystems.
 @uref{prerequisites.html#GNAT-prerequisite,,GNAT prerequisites}.
 @end ifhtml
 
+@section Building the D compiler
+
+@ifnothtml
+@ref{GDC-prerequisite}.
+@end ifnothtml
+@ifhtml
+@uref{prerequisites.html#GDC-prerequisite,,GDC prerequisites}.
+@end ifhtml
+
 @section Building with profile feedback
 
 It is possible to use profile feedback to optimize the compiler itself.  This
-- 
2.30.2