loolwsd/loolwsd-systemplate-setup | 92 +++---
1 file changed, 66 insertions(+), 26 deletions(-)
New commits:
commit 35e89f4b3eaaf5c3812dd4ac82cb21974a7faec3
Author: Henry Castro hcas...@collabora.com
Date: Thu Jul 23 21:28:07 2015 -0400
loolwsd: systemplate Poco libraries setup.
diff --git a/loolwsd/loolwsd-systemplate-setup
b/loolwsd/loolwsd-systemplate-setup
index 562bba8..942e39c 100755
--- a/loolwsd/loolwsd-systemplate-setup
+++ b/loolwsd/loolwsd-systemplate-setup
@@ -36,11 +36,7 @@ cd / || exit 1
find lib/libnss_* lib64/libnss_* -type l
find lib/*-linux-gnu/libnss* -type l
- find lib/*-linux-gnu/ld-* -type l
- find lib/*-linux-gnu/libcap* -type l
- find lib/*-linux-gnu/libattr* -type l
-# find lib/*-linux-gnu/libtinfo* -type l
-
+
# Go through the LO shared objects and check what system libraries
# they link to.
find $INSTDIR -name '*.so' -o -name '*.so.[0-9]*' |
@@ -48,14 +44,14 @@ cd / || exit 1
ldd $file 2/dev/null
done |
grep -v dynamic | cut -d -f 3 | grep -E '^(/lib|/usr)' | sort -u |
sed -e 's,^/,,'
-
+
# Go through the loolkit
find $POCODIR -name '*Poco*.so' -o -name '*.so.[0-9]*' |
while read file; do
ldd $file 2/dev/null
done |
grep -v dynamic | cut -d -f 3 | grep -E '^(/lib|/usr)' | sort -u |
sed -e 's,^/,,'
-
+
else
find usr/lib/dyld \
usr/lib/*.dylib \
@@ -95,35 +91,76 @@ cd / || exit 1
# This will now copy the file a symlink points to, but whatever.
cpio -p -d -L $CHROOT
-cp -v -P --parent $(find /usr/local/lib/libPoco*) $CHROOT
-
mkdir -p $CHROOT/tmp
-mkdir -p $CHROOT/bin
-mkdir -p $CHROOT/usr/bin
+mkdir -p $CHROOT/usr/bin/
+dummy=$CHROOT/usr/bin/dummy
-cp /bin/bash $CHROOT/bin/bash
-cp /usr/bin/env $CHROOT/usr/bin/env
+# checking for library containing Poco::Application
+cat _ACEOF $dummy.cpp
+#include iostream
+#include Poco/Util/Application.h
-# make sure the link loader are copied
-mkdir -p $CHROOT/lib64
-mkdir -p $CHROOT/lib32
+using Poco::Util::Application;
-LOADER64=$(find /lib64/ld-* -type l)
-LOADER32=$(find /lib32/ld-* -type l)
-LOADER=$(find /lib/ld-* -type l)
+int main ()
+{
+ std::cout Poco functionality OK! std::endl;
+ return Application::EXIT_OK;
+}
+_ACEOF
-if [ -n $LOADER64 ]; then
- cp -v $LOADER64 $CHROOT$LOADER64
-fi
+gcc_compile='gcc -o $dummy.o -c $dummy.cpp'
+(eval $gcc_compile) 2$dummy.err
-if [ -n $LOADER32 ]; then
- cp -v $LOADER32 $CHROOT$LOADER32
+if ! test $? = 0; then
+ cat $dummy.err;
+ exit 1;
fi
-if [ -n $LOADER ]; then
- cp -v $LOADER $CHROOT$LOADER
+gcc_link='gcc -o $dummy -lcap -lpng -ldl -lPocoNet -lPocoUtil -lPocoXML
-lPocoJSON -lPocoFoundation $dummy.o'
+(eval $gcc_link) 2$dummy.err
+
+if ! test $? = 0; then
+ cat $dummy.err;
+ exit 1;
fi
+lib_poco=$( echo $dummy |
+ while read file; do
+ldd $file 2/dev/null
+ done |
+ grep -v dynamic | cut -d -f 3 | grep -E '^(/lib|/usr)')
+
+for lib in $lib_poco
+do
+ cp --parent -n $lib $CHROOT
+
+ libs=$( echo $lib |
+ while read file; do
+ldd $file 2/dev/null
+ done |
+ grep -v dynamic | cut -d -f 3 | grep -E '^(/lib|/usr)')
+
+ for sofile in $libs
+ do
+cp --parent -n $sofile $CHROOT
+ done
+done
+
+loaders=$(find /lib/ld-* -type l) $(find /lib32/ld-* -type l) $(find
/lib64/ld-* -type l)
+
+for loader in $loaders
+do
+ cp --parent -n $loader $CHROOT
+done
+
+loaders=$(find /lib/ld-* -type l) $(find /lib32/ld-* -type l) $(find
/lib64/ld-* -type l)
+
+for loader in $loaders
+do
+ cp --parent -n $loader $CHROOT
+done
+
# /usr/share/fonts needs to be taken care of separately because the
# directory time stamps must be preserved are for fontconfig to trust
# its cache.
@@ -139,3 +176,6 @@ if [ `uname -s` = Linux ]; then
cp -r -p /usr/share/ghostscript/fonts usr/share/ghostscript
fi
fi
+
+echo testing if Poco libraries were installed properly
+sudo chroot $CHROOT /usr/bin/dummy
___
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits