summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2012-07-31 23:53:55 +0200
committerKoen Kooi <koen@dominion.thruhere.net>2012-08-07 12:21:23 +0200
commit54c7b9df5a6da7d9de7e65e4a50937e826ec912a (patch)
treea1563fda4d36c0a203c1ac71dbabaec8c1dda436
parentd213bfac739163eb932e31181e0bfecc84507f30 (diff)
downloadmeta-openembedded-54c7b9df5a6da7d9de7e65e4a50937e826ec912a.tar.gz
emacs: copy only needed stuff to qemu-treedir, not whole sysroot
* my typical sysroot is huge (5.5G) and only 86M is really needed we can also copy copy whole ${STAGING_DIR_TARGET}/${libdir}/lib*.so.* ${STAGING_DIR_TARGET}/${base_libdir}/l* but that is still quite big (3.2G) Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--meta-oe/recipes-support/emacs/emacs.inc74
1 files changed, 64 insertions, 10 deletions
diff --git a/meta-oe/recipes-support/emacs/emacs.inc b/meta-oe/recipes-support/emacs/emacs.inc
index 150658ee9..61761e8a7 100644
--- a/meta-oe/recipes-support/emacs/emacs.inc
+++ b/meta-oe/recipes-support/emacs/emacs.inc
@@ -50,18 +50,72 @@ do_compile_prepend() {
50 if [ -e $treedir ];then 50 if [ -e $treedir ];then
51 rm -rf $treedir 51 rm -rf $treedir
52 fi 52 fi
53 mkdir $treedir 53
54 cp -pPR ${STAGING_DIR_TARGET}/* $treedir 54 # copy only as much stuff as we need
55 if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/lib/libgcc_s.so ]; then 55 # before: 5.5G ../../qemu-treedir/
56 cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/lib/libgcc_s.so $treedir/lib 56 # after: 86M ../../qemu-treedir/
57 fi 57 mkdir -p $treedir/${base_libdir}
58 if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/lib/libgcc_s.so.* ]; then 58 cp -pPR \
59 cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/lib/libgcc_s.so.* $treedir/lib 59 ${STAGING_DIR_TARGET}/${base_libdir}/ld-* \
60 fi 60 ${STAGING_DIR_TARGET}/${base_libdir}/libc.* \
61 ${STAGING_DIR_TARGET}/${base_libdir}/libc-* \
62 ${STAGING_DIR_TARGET}/${base_libdir}/libm-* \
63 ${STAGING_DIR_TARGET}/${base_libdir}/libm.* \
64 ${STAGING_DIR_TARGET}/${base_libdir}/libtinfo.so.* \
65 ${STAGING_DIR_TARGET}/${base_libdir}/libresolv* \
66 ${STAGING_DIR_TARGET}/${base_libdir}/libdl* \
67 ${STAGING_DIR_TARGET}/${base_libdir}/librt* \
68 ${STAGING_DIR_TARGET}/${base_libdir}/libresolv* \
69 ${STAGING_DIR_TARGET}/${base_libdir}/libgcc_s.so.* \
70 ${STAGING_DIR_TARGET}/${base_libdir}/libuuid.so.* \
71 ${STAGING_DIR_TARGET}/${base_libdir}/libpthread* $treedir/${base_libdir}/
72
73 cp -pPR \
74 ${STAGING_DIR_TARGET}/${libdir}/libICE.so.* \
75 ${STAGING_DIR_TARGET}/${libdir}/libSM.so.* \
76 ${STAGING_DIR_TARGET}/${libdir}/libatk-1.0.so.* \
77 ${STAGING_DIR_TARGET}/${libdir}/libcairo.so.* \
78 ${STAGING_DIR_TARGET}/${libdir}/libdbus-1.so.* \
79 ${STAGING_DIR_TARGET}/${libdir}/libdbus-glib-1.so.* \
80 ${STAGING_DIR_TARGET}/${libdir}/libexpat.so.* \
81 ${STAGING_DIR_TARGET}/${libdir}/libffi.so.* \
82 ${STAGING_DIR_TARGET}/${libdir}/libfontconfig.so.* \
83 ${STAGING_DIR_TARGET}/${libdir}/libfreetype.so.* \
84 ${STAGING_DIR_TARGET}/${libdir}/libgconf-2.so.* \
85 ${STAGING_DIR_TARGET}/${libdir}/libgif.so.* \
86 ${STAGING_DIR_TARGET}/${libdir}/libjpeg.so.* \
87 ${STAGING_DIR_TARGET}/${libdir}/liblzma.so.* \
88 ${STAGING_DIR_TARGET}/${libdir}/libpixman-1.so.* \
89 ${STAGING_DIR_TARGET}/${libdir}/libpng12.so.* \
90 ${STAGING_DIR_TARGET}/${libdir}/librsvg-2.so.* \
91 ${STAGING_DIR_TARGET}/${libdir}/libstdc++.so.* \
92 ${STAGING_DIR_TARGET}/${libdir}/libtiff.so.* \
93 ${STAGING_DIR_TARGET}/${libdir}/libxml2.so.* \
94 ${STAGING_DIR_TARGET}/${libdir}/libz.so.* $treedir/${base_libdir}/
95
96 # X11 Xau Xcomposite Xcursor Xdamage Xdmcp Xext Xfixes Xft Xpm Xrandr Xrender
97 cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libX*.so.* $treedir/${base_libdir}/
98
99 # gdk-x11 gdk_pixbuf gio glib gmodule gobject gthread gtk-x11
100 cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libg*-2.0.so.* $treedir/${base_libdir}/
101
102 # pango pangocairo pangoft2
103 cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libpango*-1.0.so.* $treedir/${base_libdir}/
104
105 # xcb-render xcb-shm xcb
106 cp -pPR ${STAGING_DIR_TARGET}/${libdir}/libxcb*.so.* $treedir/${base_libdir}/
107
108 #cp -pPR ${STAGING_DIR_TARGET}/* $treedir
109 if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so ]; then
110 cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so $treedir/lib
111 fi
112 if [ -f ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so.* ]; then
113 cp -pPR ${TOOLCHAIN_PATH}/${TARGET_SYS}/${base_libdir}/libgcc_s.so.* $treedir/lib
114 fi
61 # stupid hack, but without it, it tries to use /usr/lib/libc.so from host and fails 115 # stupid hack, but without it, it tries to use /usr/lib/libc.so from host and fails
62 # temacs: error while loading shared libraries: /usr/lib/libc.so: ELF file version does not match current one 116 # temacs: error while loading shared libraries: /usr/lib/libc.so: ELF file version does not match current one
63 if [ ! -f $treedir/lib/libc.so ]; then 117 if [ ! -f $treedir/${base_libdir}/libc.so ]; then
64 ln -s libc.so.6 $treedir/lib/libc.so 118 ln -s libc.so.6 $treedir/${base_libdir}/libc.so
65 fi 119 fi
66} 120}
67 121