Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(217)

Unified Diff: cpplint.py

Issue 2036773002: Add new parameter --project_root to cpplint.py. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: Address comments Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cpplint.py
diff --git a/cpplint.py b/cpplint.py
index ac19165b357d187d392ad7fb59f3f014c7ba3535..7ce70abeb6f756c731587bac55068a1355acc01d 100755
--- a/cpplint.py
+++ b/cpplint.py
@@ -524,6 +524,10 @@ _error_suppressions = {}
# This is set by --root flag.
_root = None
+# The project root directory. Used for deriving header guard CPP variable.
+# This is set by --project_root flag. Must be an absolute path.
+_project_root = None
+
# The allowed line length of files.
# This is set by --linelength flag.
_line_length = 80
@@ -1065,6 +1069,10 @@ class FileInfo(object):
if os.path.exists(fullname):
project_dir = os.path.dirname(fullname)
+ if _project_root:
+ prefix = os.path.commonprefix([_project_root, project_dir])
+ return fullname[len(prefix) + 1:]
+
if os.path.exists(os.path.join(project_dir, ".svn")):
# If there's a .svn file in the current directory, we recursively look
# up the directory tree for the top of the SVN checkout
@@ -6017,7 +6025,8 @@ def ParseArguments(args):
'filter=',
'root=',
'linelength=',
- 'extensions='])
+ 'extensions=',
+ 'project_root='])
except getopt.GetoptError:
PrintUsage('Invalid arguments.')
@@ -6046,6 +6055,11 @@ def ParseArguments(args):
elif opt == '--root':
global _root
_root = val
+ elif opt == '--project_root':
+ global _project_root
+ _project_root = val
+ if not os.path.isabs(_project_root):
+ PrintUsage('Project root must be an absolute path.')
elif opt == '--linelength':
global _line_length
try:
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698