[llvm] r364582 - [GN] Set exit code to 1 if changes are needed

Vitaly Buka via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 27 12:55:21 PDT 2019


Author: vitalybuka
Date: Thu Jun 27 12:55:21 2019
New Revision: 364582

URL: http://llvm.org/viewvc/llvm-project?rev=364582&view=rev
Log:
[GN] Set exit code to 1 if changes are needed

Modified:
    llvm/trunk/utils/gn/build/sync_source_lists_from_cmake.py

Modified: llvm/trunk/utils/gn/build/sync_source_lists_from_cmake.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/gn/build/sync_source_lists_from_cmake.py?rev=364582&r1=364581&r2=364582&view=diff
==============================================================================
--- llvm/trunk/utils/gn/build/sync_source_lists_from_cmake.py (original)
+++ llvm/trunk/utils/gn/build/sync_source_lists_from_cmake.py Thu Jun 27 12:55:21 2019
@@ -15,6 +15,7 @@ from __future__ import print_function
 import os
 import re
 import subprocess
+import sys
 
 
 def sync_source_lists():
@@ -28,6 +29,7 @@ def sync_source_lists():
     cmake_cpp_re = re.compile(r'^\s*([A-Za-z_0-9./-]+\.(?:cpp|c|h|S))$',
                               re.MULTILINE)
 
+    changed = False
     for gn_file in gn_files:
         # The CMakeLists.txt for llvm/utils/gn/secondary/foo/BUILD.gn is
         # directly at foo/CMakeLists.txt.
@@ -47,6 +49,7 @@ def sync_source_lists():
         if gn_cpp == cmake_cpp:
             continue
 
+        changed = True
         print(gn_file)
         add = cmake_cpp - gn_cpp
         if add:
@@ -55,6 +58,7 @@ def sync_source_lists():
         if remove:
             print('remove:\n' + '\n'.join(remove))
         print()
+    return changed
 
 
 def sync_unittests():
@@ -62,6 +66,7 @@ def sync_unittests():
     unittest_re = re.compile(r'^add_\S+_unittest', re.MULTILINE)
 
     checked = [ 'clang', 'clang-tools-extra', 'lld', 'llvm' ]
+    changed = False
     for c in checked:
         for root, _, _ in os.walk(os.path.join(c, 'unittests')):
             cmake_file = os.path.join(root, 'CMakeLists.txt')
@@ -71,13 +76,18 @@ def sync_unittests():
                 continue  # Skip CMake files that just add subdirectories.
             gn_file = os.path.join('llvm/utils/gn/secondary', root, 'BUILD.gn')
             if not os.path.exists(gn_file):
+                changed = True
                 print('missing GN file %s for unittest CMake file %s' %
                       (gn_file, cmake_file))
+    return changed
 
 
 def main():
-    sync_source_lists()
-    sync_unittests()
+    src = sync_source_lists()
+    tests = sync_unittests()
+    if src or tests:
+        sys.exit(1)
+
 
 
 if __name__ == '__main__':




More information about the llvm-commits mailing list