Add an 'all' option to generate_build_files.py

Bug: 542
Change-Id: I5b19405598127a957dd3645c74b9616687c2616b
Reviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/55447
Commit-Queue: Adam Langley <agl@google.com>
Auto-Submit: David Benjamin <davidben@google.com>
Reviewed-by: Adam Langley <agl@google.com>
diff --git a/util/generate_build_files.py b/util/generate_build_files.py
index 1d380b0..34187bd 100644
--- a/util/generate_build_files.py
+++ b/util/generate_build_files.py
@@ -965,8 +965,9 @@
 }
 
 if __name__ == '__main__':
-  parser = optparse.OptionParser(usage='Usage: %%prog [--prefix=<path>] [%s]' %
-                                 '|'.join(sorted(ALL_PLATFORMS.keys())))
+  parser = optparse.OptionParser(
+      usage='Usage: %%prog [--prefix=<path>] [all|%s]' %
+      '|'.join(sorted(ALL_PLATFORMS.keys())))
   parser.add_option('--prefix', dest='prefix',
       help='For Bazel, prepend argument to all source files')
   parser.add_option(
@@ -981,12 +982,15 @@
     parser.print_help()
     sys.exit(1)
 
-  platforms = []
-  for s in args:
-    platform = ALL_PLATFORMS.get(s)
-    if platform is None:
-      parser.print_help()
-      sys.exit(1)
-    platforms.append(platform())
+  if 'all' in args:
+    platforms = [platform() for platform in ALL_PLATFORMS.values()]
+  else:
+    platforms = []
+    for s in args:
+      platform = ALL_PLATFORMS.get(s)
+      if platform is None:
+        parser.print_help()
+        sys.exit(1)
+      platforms.append(platform())
 
   sys.exit(main(platforms))