diff --git a/doc/baseconf.py b/doc/baseconf.py
index d85659e45408e189e502452f1230dc01661970d7..8021a101e77144693c94af8a0a8df1c874d759c2 100644
--- a/doc/baseconf.py
+++ b/doc/baseconf.py
@@ -11,29 +11,31 @@
 # documentation root, use os.path.abspath to make it absolute, like shown here.
 #
 import os
-import time
 import sys
+import time
+from pathlib import Path
 
-# gccint needs a deeper stack limit
-sys.setrecursionlimit(2000)
+# Build paths and add path to gcc_sphinx.py extension.
+folder = Path(__file__).resolve().parent
+doc_modules = folder / 'modules'
+gcc_srcdir = folder / '..' / 'gcc'
 
-# -- Project information -----------------------------------------------------
+sys.path.insert(0, str(doc_modules))
 
-# The full version, including alpha/beta/rc tags
+# gccint needs a deeper stack limit.
+sys.setrecursionlimit(2000)
 
-folder = os.path.dirname(os.path.realpath(__file__))
-doc_modules = os.path.join(folder, 'modules')
-gcc_srcdir = os.path.join(folder, '..', 'gcc')
+# -- Project information -----------------------------------------------------
 
-sys.path.insert(0, doc_modules)
 
 def read_file(name):
-    path = os.path.join(gcc_srcdir, name)
-    if os.path.exists(path):
+    path = gcc_srcdir / name
+    if path.exists():
         return open(path).read().strip()
     else:
         return ''
 
+
 def __get_builder_name():
     if '-b' in sys.argv:
         return sys.argv[sys.argv.index('-b') + 1]
@@ -124,14 +126,14 @@ html_theme_options = {
     'navigation_with_keys': True,
 }
 
-html_logo = os.path.join(folder, 'logo.svg')
+html_logo = str(folder / 'logo.svg')
 
-html_favicon = os.path.join(folder, 'favicon.ico')
+html_favicon = str(folder / 'favicon.ico')
 
 html_last_updated_fmt = ''
 
 html_static_path = [
-    os.path.join(folder, '_static')
+    str(folder / '_static')
 ]
 
 html_css_files = [
@@ -149,7 +151,7 @@ suppress_warnings = [
 # Use xelatex by default
 latex_engine = 'xelatex'
 
-latex_logo = os.path.join(folder, 'logo.pdf')
+latex_logo = str(folder / 'logo.pdf')
 
 latex_elements = {
     'pointsize': '11pt',
@@ -215,4 +217,4 @@ def set_common(name, module):
         module['tags'].add('development')
 
     html_theme_options['source_edit_link'] = f'https://gcc.gnu.org/onlinedocs/{name}' \
-                                               '/_sources/{filename}.txt'
+                                             '/_sources/{filename}.txt'