doc: Use a separate directory for new modules we add to PATH

Message ID 20221109213132.2698221-1-arsen@aarsen.me
State Accepted
Headers
Series doc: Use a separate directory for new modules we add to PATH |

Checks

Context Check Description
snail/gcc-patch-check success Github commit url

Commit Message

Arsen Arsenović Nov. 9, 2022, 9:31 p.m. UTC
  ChangeLog:

	* doc/baseconf.py: Inject dirname(__file__)/'modules' to path
	instead of just ``.''.
	* doc/gcc_sphinx.py: Moved to...
	* doc/modules/gcc_sphinx.py: ...here.
---
Evening,

This patch addresses a path mixup and provides a nice compromise between
convenience for the user and namespace cleanliness.  Further modules
that Sphinx imports internally from the GCC tree should also go into
this directory.  I moved gcc_sphinx since I knew of that one, but there
could be others I'm missing.

Tested on x86_64-pc-linux-gnu with ``make html''.

Have a great night!

 doc/baseconf.py                 | 4 +++-
 doc/{ => modules}/gcc_sphinx.py | 0
 2 files changed, 3 insertions(+), 1 deletion(-)
 rename doc/{ => modules}/gcc_sphinx.py (100%)
  

Comments

David Malcolm Nov. 9, 2022, 10:18 p.m. UTC | #1
On Wed, 2022-11-09 at 22:31 +0100, Arsen Arsenović via Gcc-patches
wrote:
> ChangeLog:
> 
>         * doc/baseconf.py: Inject dirname(__file__)/'modules' to path
>         instead of just ``.''.
>         * doc/gcc_sphinx.py: Moved to...
>         * doc/modules/gcc_sphinx.py: ...here.
> ---
> Evening,
> 
> This patch addresses a path mixup 

FWIW this patch fixes the build of the docs for me; without it I run
into the "Could not import extension gcc_sphinx (exception: No module
named 'gcc_sphinx')" issue we were discussing on IRC.

Thanks!
Dave

> and provides a nice compromise between
> convenience for the user and namespace cleanliness.  Further modules
> that Sphinx imports internally from the GCC tree should also go into
> this directory.  I moved gcc_sphinx since I knew of that one, but
> there
> could be others I'm missing.
> 
> Tested on x86_64-pc-linux-gnu with ``make html''.
> 
> Have a great night!
> 
>  doc/baseconf.py                 | 4 +++-
>  doc/{ => modules}/gcc_sphinx.py | 0
>  2 files changed, 3 insertions(+), 1 deletion(-)
>  rename doc/{ => modules}/gcc_sphinx.py (100%)
> 
> diff --git a/doc/baseconf.py b/doc/baseconf.py
> index 47e3a126416..d85659e4540 100644
> --- a/doc/baseconf.py
> +++ b/doc/baseconf.py
> @@ -13,7 +13,6 @@
>  import os
>  import time
>  import sys
> -# sys.path.insert(0, os.path.abspath('.'))
>  
>  # gccint needs a deeper stack limit
>  sys.setrecursionlimit(2000)
> @@ -23,8 +22,11 @@ sys.setrecursionlimit(2000)
>  # The full version, including alpha/beta/rc tags
>  
>  folder = os.path.dirname(os.path.realpath(__file__))
> +doc_modules = os.path.join(folder, 'modules')
>  gcc_srcdir = os.path.join(folder, '..', 'gcc')
>  
> +sys.path.insert(0, doc_modules)
> +
>  def read_file(name):
>      path = os.path.join(gcc_srcdir, name)
>      if os.path.exists(path):
> diff --git a/doc/gcc_sphinx.py b/doc/modules/gcc_sphinx.py
> similarity index 100%
> rename from doc/gcc_sphinx.py
> rename to doc/modules/gcc_sphinx.py
  
Martin Liška Nov. 10, 2022, 5:26 a.m. UTC | #2
On 11/9/22 22:31, Arsen Arsenović wrote:
> ChangeLog:
> 
> 	* doc/baseconf.py: Inject dirname(__file__)/'modules' to path
> 	instead of just ``.''.
> 	* doc/gcc_sphinx.py: Moved to...
> 	* doc/modules/gcc_sphinx.py: ...here.
> ---
> Evening,
> 
> This patch addresses a path mixup and provides a nice compromise between
> convenience for the user and namespace cleanliness.  Further modules
> that Sphinx imports internally from the GCC tree should also go into
> this directory.  I moved gcc_sphinx since I knew of that one, but there
> could be others I'm missing.

Thank for the patch, I'm going to push it.

Martin

> 
> Tested on x86_64-pc-linux-gnu with ``make html''.
> 
> Have a great night!
> 
>  doc/baseconf.py                 | 4 +++-
>  doc/{ => modules}/gcc_sphinx.py | 0
>  2 files changed, 3 insertions(+), 1 deletion(-)
>  rename doc/{ => modules}/gcc_sphinx.py (100%)
> 
> diff --git a/doc/baseconf.py b/doc/baseconf.py
> index 47e3a126416..d85659e4540 100644
> --- a/doc/baseconf.py
> +++ b/doc/baseconf.py
> @@ -13,7 +13,6 @@
>  import os
>  import time
>  import sys
> -# sys.path.insert(0, os.path.abspath('.'))
>  
>  # gccint needs a deeper stack limit
>  sys.setrecursionlimit(2000)
> @@ -23,8 +22,11 @@ sys.setrecursionlimit(2000)
>  # The full version, including alpha/beta/rc tags
>  
>  folder = os.path.dirname(os.path.realpath(__file__))
> +doc_modules = os.path.join(folder, 'modules')
>  gcc_srcdir = os.path.join(folder, '..', 'gcc')
>  
> +sys.path.insert(0, doc_modules)
> +
>  def read_file(name):
>      path = os.path.join(gcc_srcdir, name)
>      if os.path.exists(path):
> diff --git a/doc/gcc_sphinx.py b/doc/modules/gcc_sphinx.py
> similarity index 100%
> rename from doc/gcc_sphinx.py
> rename to doc/modules/gcc_sphinx.py
  

Patch

diff --git a/doc/baseconf.py b/doc/baseconf.py
index 47e3a126416..d85659e4540 100644
--- a/doc/baseconf.py
+++ b/doc/baseconf.py
@@ -13,7 +13,6 @@ 
 import os
 import time
 import sys
-# sys.path.insert(0, os.path.abspath('.'))
 
 # gccint needs a deeper stack limit
 sys.setrecursionlimit(2000)
@@ -23,8 +22,11 @@  sys.setrecursionlimit(2000)
 # The full version, including alpha/beta/rc tags
 
 folder = os.path.dirname(os.path.realpath(__file__))
+doc_modules = os.path.join(folder, 'modules')
 gcc_srcdir = os.path.join(folder, '..', 'gcc')
 
+sys.path.insert(0, doc_modules)
+
 def read_file(name):
     path = os.path.join(gcc_srcdir, name)
     if os.path.exists(path):
diff --git a/doc/gcc_sphinx.py b/doc/modules/gcc_sphinx.py
similarity index 100%
rename from doc/gcc_sphinx.py
rename to doc/modules/gcc_sphinx.py