[v2] doc: Update the status of build directory not fully separated

Message ID 20231130134205.12445-1-xry111@xry111.site
State Committed
Commit 875c7771097d12f81f658f5f01ef52ec5b57f678
Headers
Series [v2] doc: Update the status of build directory not fully separated |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gcc_check--master-arm success Testing passed
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 success Testing passed
linaro-tcwg-bot/tcwg_gcc_check--master-aarch64 success Testing passed

Commit Message

Xi Ruoyao Nov. 30, 2023, 1:41 p.m. UTC
  Recently there are some people building GCC with srcdir == objdir and
the attempts just failed [1].  So stop to say "it should work".  OTOH
objdir as a subdirectory of srcdir works: we've built GCC in LFS [2]
and BLFS [3] this way for decades and this is confirmed during the
review of a previous version of this patch [4].

[1]: https://gcc.gnu.org/pipermail/gcc-help/2023-November/143068.html
[2]: https://www.linuxfromscratch.org/lfs/view/12.0/chapter08/gcc.html
[3]: https://www.linuxfromscratch.org/blfs/view/12.0/general/gcc.html
[4]: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638760.html

gcc/ChangeLog:

	* doc/install.texi: Deem srcdir == objdir broken, but objdir
	as a subdirectory of srcdir fine.
---

Superseds
https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638728.html.

Ok for trunk?

 gcc/doc/install.texi | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
  

Comments

Richard Biener Dec. 1, 2023, 7:14 a.m. UTC | #1
On Thu, Nov 30, 2023 at 2:42 PM Xi Ruoyao <xry111@xry111.site> wrote:
>
> Recently there are some people building GCC with srcdir == objdir and
> the attempts just failed [1].  So stop to say "it should work".  OTOH
> objdir as a subdirectory of srcdir works: we've built GCC in LFS [2]
> and BLFS [3] this way for decades and this is confirmed during the
> review of a previous version of this patch [4].
>
> [1]: https://gcc.gnu.org/pipermail/gcc-help/2023-November/143068.html
> [2]: https://www.linuxfromscratch.org/lfs/view/12.0/chapter08/gcc.html
> [3]: https://www.linuxfromscratch.org/blfs/view/12.0/general/gcc.html
> [4]: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638760.html>

> gcc/ChangeLog:
>
>         * doc/install.texi: Deem srcdir == objdir broken, but objdir
>         as a subdirectory of srcdir fine.
> ---
>
> Superseds
> https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638728.html.
>
> Ok for trunk?

OK.

Thanks,
Richard.

>  gcc/doc/install.texi | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
> index c1ccb8ba02d..c1128d9274c 100644
> --- a/gcc/doc/install.texi
> +++ b/gcc/doc/install.texi
> @@ -697,9 +697,8 @@ phases.
>  First, we @strong{highly} recommend that GCC be built into a
>  separate directory from the sources which does @strong{not} reside
>  within the source tree.  This is how we generally build GCC; building
> -where @var{srcdir} == @var{objdir} should still work, but doesn't
> -get extensive testing; building where @var{objdir} is a subdirectory
> -of @var{srcdir} is unsupported.
> +where @var{objdir} is a subdirectory of @var{srcdir} should work as well;
> +building where @var{objdir} == @var{srcdir} is unsupported.
>
>  If you have previously built GCC in the same directory for a
>  different target machine, do @samp{make distclean} to delete all files
> --
> 2.43.0
>
  
Eric Gallager Dec. 1, 2023, 3:40 p.m. UTC | #2
Please cross-reference against issue 37210 if/when merging, if it
hasn't already been:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=37210

On Fri, Dec 1, 2023 at 2:15 AM Richard Biener
<richard.guenther@gmail.com> wrote:
>
> On Thu, Nov 30, 2023 at 2:42 PM Xi Ruoyao <xry111@xry111.site> wrote:
> >
> > Recently there are some people building GCC with srcdir == objdir and
> > the attempts just failed [1].  So stop to say "it should work".  OTOH
> > objdir as a subdirectory of srcdir works: we've built GCC in LFS [2]
> > and BLFS [3] this way for decades and this is confirmed during the
> > review of a previous version of this patch [4].
> >
> > [1]: https://gcc.gnu.org/pipermail/gcc-help/2023-November/143068.html
> > [2]: https://www.linuxfromscratch.org/lfs/view/12.0/chapter08/gcc.html
> > [3]: https://www.linuxfromscratch.org/blfs/view/12.0/general/gcc.html
> > [4]: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638760.html>
>
> > gcc/ChangeLog:
> >
> >         * doc/install.texi: Deem srcdir == objdir broken, but objdir
> >         as a subdirectory of srcdir fine.
> > ---
> >
> > Superseds
> > https://gcc.gnu.org/pipermail/gcc-patches/2023-November/638728.html.
> >
> > Ok for trunk?
>
> OK.
>
> Thanks,
> Richard.
>
> >  gcc/doc/install.texi | 5 ++---
> >  1 file changed, 2 insertions(+), 3 deletions(-)
> >
> > diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
> > index c1ccb8ba02d..c1128d9274c 100644
> > --- a/gcc/doc/install.texi
> > +++ b/gcc/doc/install.texi
> > @@ -697,9 +697,8 @@ phases.
> >  First, we @strong{highly} recommend that GCC be built into a
> >  separate directory from the sources which does @strong{not} reside
> >  within the source tree.  This is how we generally build GCC; building
> > -where @var{srcdir} == @var{objdir} should still work, but doesn't
> > -get extensive testing; building where @var{objdir} is a subdirectory
> > -of @var{srcdir} is unsupported.
> > +where @var{objdir} is a subdirectory of @var{srcdir} should work as well;
> > +building where @var{objdir} == @var{srcdir} is unsupported.
> >
> >  If you have previously built GCC in the same directory for a
> >  different target machine, do @samp{make distclean} to delete all files
> > --
> > 2.43.0
> >
  

Patch

diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index c1ccb8ba02d..c1128d9274c 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -697,9 +697,8 @@  phases.
 First, we @strong{highly} recommend that GCC be built into a
 separate directory from the sources which does @strong{not} reside
 within the source tree.  This is how we generally build GCC; building
-where @var{srcdir} == @var{objdir} should still work, but doesn't
-get extensive testing; building where @var{objdir} is a subdirectory
-of @var{srcdir} is unsupported.
+where @var{objdir} is a subdirectory of @var{srcdir} should work as well;
+building where @var{objdir} == @var{srcdir} is unsupported.
 
 If you have previously built GCC in the same directory for a
 different target machine, do @samp{make distclean} to delete all files