summaryrefslogtreecommitdiff
path: root/strata/build-essential/stage2-reset-specs.morph
diff options
context:
space:
mode:
Diffstat (limited to 'strata/build-essential/stage2-reset-specs.morph')
-rw-r--r--strata/build-essential/stage2-reset-specs.morph12
1 files changed, 12 insertions, 0 deletions
diff --git a/strata/build-essential/stage2-reset-specs.morph b/strata/build-essential/stage2-reset-specs.morph
index 6495909c..8892f67c 100644
--- a/strata/build-essential/stage2-reset-specs.morph
+++ b/strata/build-essential/stage2-reset-specs.morph
@@ -1,5 +1,17 @@
name: stage2-reset-specs
kind: chunk
+
+# Nasty hack to get around being unable to reliably add configuration to gcc,
+# hence the gcc specs are modified, combined with Baserock's rootfs protection
+# preventing specs being modified before builds.
+# The limitation is overcome by installing files as part of a chunk, which
+# overwrites previous files.
+# New specs were added for the bootstrap builds, but after stage2 we start
+# having chrooted builds, so the old specs need to be replaced.
+# Unfortunately we can't just replace the specs with the ones gcc produces,
+# since gcc behaves differently without specs to with specs it produces!
+# So we use a **NASTY HACK** to replace the specs symlink with one that
+# points to a file that doesn't exist.
install-commands:
- |
STAGE2_SYSROOT="$(dirname "$(pwd)")"