about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--config.toml.example1
-rwxr-xr-xsrc/bootstrap/configure.py22
2 files changed, 19 insertions, 4 deletions
diff --git a/config.toml.example b/config.toml.example
index 69eb228a2d5..3aaeb09d4c0 100644
--- a/config.toml.example
+++ b/config.toml.example
@@ -164,6 +164,7 @@ changelog-seen = 2
 # General build configuration options
 # =============================================================================
 [build]
+
 # The default stage to use for the `check` subcommand
 #check-stage = 0
 
diff --git a/src/bootstrap/configure.py b/src/bootstrap/configure.py
index 04e798e3949..573d864600d 100755
--- a/src/bootstrap/configure.py
+++ b/src/bootstrap/configure.py
@@ -486,6 +486,22 @@ for section_key, section_config in config.items():
     else:
         configure_section(sections[section_key], section_config)
 
+def write_uncommented(target, f):
+    block = []
+    is_comment = True
+
+    for line in target:
+        block.append(line)
+        if len(line) == 0:
+            if not is_comment:
+                for l in block:
+                    f.write(l + "\n")
+            block = []
+            is_comment = True
+            continue
+        is_comment = is_comment and line.startswith('#')
+    return f
+
 # Now that we've built up our `config.toml`, write it all out in the same
 # order that we read it in.
 p("")
@@ -494,11 +510,9 @@ with bootstrap.output('config.toml') as f:
     for section in section_order:
         if section == 'target':
             for target in targets:
-                for line in targets[target]:
-                    f.write(line + "\n")
+                f = write_uncommented(targets[target], f)
         else:
-            for line in sections[section]:
-                f.write(line + "\n")
+            f = write_uncommented(sections[section], f)
 
 with bootstrap.output('Makefile') as f:
     contents = os.path.join(rust_dir, 'src', 'bootstrap', 'mk', 'Makefile.in')