summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rwxr-xr-xtools/check-includes.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/check-includes.py b/tools/check-includes.py
index 27d11b9d0a..abca2882f0 100755
--- a/tools/check-includes.py
+++ b/tools/check-includes.py
@@ -3,9 +3,13 @@
# pylint: disable=missing-docstring,invalid-name,unspecified-encoding,consider-using-with
+import os
+import pathlib
import re
import sys
+PROJECT_ROOT = pathlib.Path(os.getenv('PROJECT_SOURCE_ROOT', '.'))
+
def check_file(filename):
seen = set()
good = True
@@ -13,6 +17,10 @@ def check_file(filename):
if m := re.match(r'^\s*#\s*include\s*[<"](\S*)[>"]', line):
include = m.group(1)
if include in seen:
+ try:
+ filename = pathlib.Path(filename).resolve().relative_to(PROJECT_ROOT)
+ except ValueError:
+ pass
print(f'{filename}:{n}: {line.strip()}')
good = False
seen.add(include)