summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>2012-10-25 22:32:19 +0200
committerBernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>2012-10-25 22:32:19 +0200
commit46fc1c26d74a589b5cab8d8f482d9222f1fe5691 (patch)
treef6bc66bb25bc08112622877adacb3e0025772fd7
parentf1ae720383649da2b1545fb4ab7a7be48d7941b4 (diff)
downloadnative-toolchain-46fc1c26d74a589b5cab8d8f482d9222f1fe5691.tar.gz
native-toolchain: Add some convenience symlinks
Change-Id: If8d7e93708cda8b0806b7e0af9403b8d7ca6fb9b Signed-off-by: Bernhard Rosenkraenzer <Bernhard.Rosenkranzer@linaro.org>
-rwxr-xr-xbuild.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/build.sh b/build.sh
index 006fc36..1962aff 100755
--- a/build.sh
+++ b/build.sh
@@ -213,6 +213,24 @@ cd ..
# Remove superfluous bits
rm -rf "$DEST"/system/lib/gcc/arm-linux-androideabi/*/include-fixed
+# FIXME we need some handling of /system/lib/armv7-a vs.
+# /system/lib/armv7-a/thumb based on -mthumb vs. -mno-thumb
+# For now, we'll default to armv7-a and at least get a working
+# binary without having to specify -L/system/lib/armv7-a on the
+# command line...
+# Stock android solves this by just using static libgcc, but why
+# should we duplicate code that much?
+mv "$DEST"/system/lib/armv7-a/libgcc_s.so* "$DEST"/system/lib/
+# This is a little wrong because Android has a libstdc++.so (without .6)
+# and that one is rather different, so we can't link to the .6 variant.
+# Longer term, we need to either get rid of gcc's libstdc++ and use
+# stlport (like stock Android), but patch gcc to know about it, or make
+# Android use regular libstdc++.
+# The latter is probably better for technical reasons, but the former
+# is the only thing that will be accepted by AOSP because of libstdc++'s
+# non-BSD licensing.
+ln -s armv7-a/libstdc++.so.6 "$DEST"/system/lib/
+
# TODO Actually build bionic instead of cheating by pulling those
# from the prebuilt toolchain
cp -a "$TC"/arm-linux-androideabi/lib/crt*.o "$DEST"/system/lib/
@@ -292,6 +310,7 @@ vim_cv_memmove_handles_overlap=yes \
--host=arm-linux-androideabi
make $SMP STRIP=$TC/bin/arm-linux-androideabi-strip
make install DESTDIR=$DEST STRIP=$TC/bin/arm-linux-androideabi-strip
+ln -s vim "$DEST"/system/bin/vi
cd ..
# strip everything so we can fit into the limited