mibuild/generic_platform: add recursive parameter to add_source_dir
authorFlorent Kermarrec <florent@enjoy-digital.fr>
Fri, 1 Aug 2014 10:50:38 +0000 (12:50 +0200)
committerSebastien Bourdeauducq <sb@m-labs.hk>
Sat, 2 Aug 2014 13:25:51 +0000 (21:25 +0800)
mibuild/generic_platform.py

index d972ee262314e14e67b87c645c165d9cf6f91c5f..1ede87a4edf658ddeba96a7e5daf4ce9b44ea6df 100644 (file)
@@ -222,12 +222,20 @@ class GenericPlatform:
                for f in filenames:
                        self.add_source(os.path.join(path, f), language)
 
-       def add_source_dir(self, path):
-               for root, dirs, files in os.walk(path):
-                       for filename in files:
-                               language = tools.language_by_filename(filename)
-                               if language is not None:
-                                       self.add_source(os.path.join(root, filename), language)
+       def add_source_dir(self, path, recursive=True):
+               dir_files = []
+               if recursive:
+                       for root, dirs, files in os.walk(path):
+                               for filename in files:
+                                       dir_files.append(os.path.join(root, filename))
+               else:
+                       for item in os.listdir(path):
+                               if os.path.isfile(os.path.join(path, item)):
+                                       dir_files.append(os.path.join(path, item))
+               for filename in dir_files:
+                       language = tools.language_by_filename(filename)
+                       if language is not None:
+                               self.add_source(filename, language)
 
        def add_verilog_include_path(self, path):
                self.verilog_include_paths.append(os.path.abspath(path))