diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-02-27 16:48:12 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-02-27 16:48:12 +0000 |
commit | a51a8ee9fe2c691a4b2d73fe06c1fde1d18f1153 (patch) | |
tree | 3c0ce0a51d902defa3f859c139912bba403d5abd /strata/build-essential | |
parent | 0af72d076f2c20a724436581622cdf2d7e6d9bda (diff) | |
download | definitions-a51a8ee9fe2c691a4b2d73fe06c1fde1d18f1153.tar.gz |
Add a compatibility symlink for /lib/ld-linux.so.3 on ARMv7 hard-float
Morph's cache key algorithm doesn't yet take into account the fact that
bootstrap chunks use files from the host system. While we are careful in
the Baserock reference system definitions to minimise the number of
components from the host system that it uses, the GNU C Library is
pretty much unavoidable.
Until we make the cache key algorithm more comprehensive, we need to
ensure that the bootstrap-mode chunks from build-essential will indeed
run on all versions of Baserock 'build' and 'devel' reference systems.
Otherwise cached artifacts built on one system will randomly break for
other people using different systems.
This commit fixes one such breakage, which was due to the name of the
GLIBC dynamic loader (ld.so) changing on ARMv7 hard-float platforms.
Diffstat (limited to 'strata/build-essential')
-rw-r--r-- | strata/build-essential/glibc.morph | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/strata/build-essential/glibc.morph b/strata/build-essential/glibc.morph index 789283eb..a4007bd4 100644 --- a/strata/build-essential/glibc.morph +++ b/strata/build-essential/glibc.morph @@ -84,3 +84,9 @@ install-commands: netgroup: nis EOF - install -m 644 -o root -g root nsswitch.conf "$DESTDIR/etc/nsswitch.conf" +# Compatibility symlink to work around the ABI break GLIBC introduced for +# ARMv7 hard-float platforms in commit d3b36017d43. +- case "$MORPH_ARCH" in + armv7*hf*) + ln -s ld-2.20.so "$DESTDIR/lib/ld-linux.so.3" ;; + esac |