[Libreoffice-commits] core.git: solenv/bin

Tor Lillqvist tml at collabora.com
Mon Jan 20 00:58:58 PST 2014


 solenv/bin/make-raspbian-root-tarball |   79 ++++++++++++++++++++++++++++++++++
 1 file changed, 79 insertions(+)

New commits:
commit 1c49746b4b96d25bf7609c607390b81492a9e3b8
Author: Tor Lillqvist <tml at collabora.com>
Date:   Mon Jan 20 10:55:22 2014 +0200

    Add script to extract a hackish "sysroot" tarball from a Raspbian system
    
    To be used when cross-compiling to Raspbian without proper cross-compilation
    packages that would contain the necessary headers and libraries.
    
    Change-Id: I342771e6ea9baaa2500c8c7ad7b3b42d12924461

diff --git a/solenv/bin/make-raspbian-root-tarball b/solenv/bin/make-raspbian-root-tarball
new file mode 100755
index 0000000..38a64e2
--- /dev/null
+++ b/solenv/bin/make-raspbian-root-tarball
@@ -0,0 +1,79 @@
+#!/bin/sh
+
+# When lacking a proper cross-compilation package system from Linux
+# (or some other Unix) to Raspbian, instead create a tarball of
+# headers, libraries and pkg-config files on a Raspbian system and
+# unpack that then on the build system, and pass in a -sysroot switch
+# to the cross-compiler.
+
+cd /
+
+# Exclude irrelevant stuff, like shared libraries that actually are
+# "modules" loaded at run-time by some software.
+
+EXCLUDE='lib/ld-linux \
+lib/klibc- \
+lib/arm-linux-gnueabihf/security/ \
+usr/lib/arm-linux-gnueabihf/ImageMagick- \
+usr/lib/arm-linux-gnueabihf/autofs/ \
+usr/lib/arm-linux-gnueabihf/directfb- \
+usr/lib/arm-linux-gnueabihf/gconv/ \
+usr/lib/arm-linux-gnueabihf/gdbus- \
+usr/lib/arm-linux-gnueabihf/gdk-pixbuf- \
+usr/lib/arm-linux-gnueabihf/gio/ \
+usr/lib/arm-linux-gnueabihf/gvfs/ \
+usr/lib/arm-linux-gnueabihf/jack/ \
+usr/lib/arm-linux-gnueabihf/libgphoto2/ \
+usr/lib/arm-linux-gnueabihf/libgphoto2_port/ \
+usr/lib/arm-linux-gnueabihf/libgtk-2.0/ \
+usr/lib/arm-linux-gnueabihf/libgtk-3.0/ \
+usr/lib/arm-linux-gnueabihf/libproxy/ \
+usr/lib/arm-linux-gnueabihf/odbc/ \
+usr/lib/arm-linux-gnueabihf/pango/ \
+usr/lib/arm-linux-gnueabihf/plymouth/ \
+usr/lib/arm-linux-gnueabihf/qt4/ \
+usr/lib/arm-linux-gnueabihf/sane \
+usr/lib/libblas.so \
+usr/lib/liblapack.so'
+
+EXCLUDE=`echo "$EXCLUDE" | tr -d '
+' | sed -e 's/ /|/g'`
+
+FILELIST=`mktemp`
+STAGINGDIR=`mktemp -d`
+
+find lib/*.so* \
+     lib/arm-linux-gnueabihf \
+     usr/include \
+     usr/lib/liblpsolve*.a \
+     usr/lib/*.so* \
+     usr/lib/arm-linux-gnueabihf \
+     usr/lib/pkgconfig \
+     usr/share/pkgconfig \
+    -type f -o -type l |
+    grep -v -E "^($EXCLUDE)" >$FILELIST
+
+tar -c --files-from=$FILELIST -f - | (cd $STAGINGDIR && tar xf -)
+
+rm $FILELIST
+
+cd $STAGINGDIR
+# Change absolute symlinks to relative
+find . -type l | xargs ls -ld | grep -- '-> /' | 
+    while read mode links user group size month day yearortime link arrow target; do
+	target=`echo "$target" | sed -e 's,/,..;,'`
+	while test `expr index $target /` -gt 0; do
+	    target=`echo "$target" | sed -e 's,/,;,'`
+	    target="..;$target"
+	done
+	target=`echo "$target" | sed -e 's,;,/,g'`
+	ln -f -s $target $link
+    done
+
+RESULT=/tmp/raspbian-root-`date +%Y%m%d`.tar.gz
+tar czf $RESULT .
+
+cd /
+rm -rf $STAGINGDIR
+
+echo === Result in $RESULT ===


More information about the Libreoffice-commits mailing list