summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Jansa <Martin.Jansa@gmail.com>2010-05-10 10:07:23 +0200
committerMartin Jansa <Martin.Jansa@gmail.com>2010-05-10 16:43:43 +0200
commitbf9d1fad96f63095b960b8fbcd216a333be54ebe (patch)
tree61ae4157d3be324620081981f3f5283b93c81103
parent671e6901f26b1db28ee35dc4102841f9ab87ecdb (diff)
emacs: add missing chunk in use-qemu.patch for 23.1, create libc.so -> libc.so.6 link
* prefix-args were built with target compiler but later executed in host environment, older emacs versions used prefix-args from qemu, but this part was missing in emacs23.1-use-qemu.patch * Paul Fertser suggested that prefix-args should be built with host compiler instead and then without need to use qemu-arm * When there is no libc.so in ${STAGING_DIR_TARGET}, which is copied to treedir, then it tries to use libc.so from host, which is wrong. Added something like angstrom-libc-fixup-hack.bb but for treedir. * Also add dbus to DEPENDS to make sure configure finds it for bindings. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
-rw-r--r--recipes/emacs/emacs-x11_23.1.bb4
-rw-r--r--recipes/emacs/emacs.inc5
-rw-r--r--recipes/emacs/files/emacs23.1-use-qemu.patch9
3 files changed, 17 insertions, 1 deletions
diff --git a/recipes/emacs/emacs-x11_23.1.bb b/recipes/emacs/emacs-x11_23.1.bb
index 65665f22a6..a754c76a18 100644
--- a/recipes/emacs/emacs-x11_23.1.bb
+++ b/recipes/emacs/emacs-x11_23.1.bb
@@ -1,7 +1,9 @@
require emacs.inc
# full X (non-diet) is needed for X support
-DEPENDS += "gtk+ libungif"
+DEPENDS += "gtk+ libungif dbus"
+
+PR = "r1"
EXTRA_OECONF = "--without-sound --with-x-toolkit=gtk"
diff --git a/recipes/emacs/emacs.inc b/recipes/emacs/emacs.inc
index d643d31624..6645f410e6 100644
--- a/recipes/emacs/emacs.inc
+++ b/recipes/emacs/emacs.inc
@@ -50,6 +50,11 @@ do_compile_prepend() {
if [ -f ${CROSS_DIR}/${TARGET_SYS}/lib/libgcc_s.so.* ]; then
cp -pPR ${CROSS_DIR}/${TARGET_SYS}/lib/libgcc_s.so.* $treedir/lib
fi
+ # stupid hack, but without it, it tries to use /usr/lib/libc.so from host and fails
+ # temacs: error while loading shared libraries: /usr/lib/libc.so: ELF file version does not match current one
+ if [ ! -f $treedir/lib/libc.so ]; then
+ ln -s libc.so.6 $treedir/lib/libc.so
+ fi
}
EXTRA_OEMAKE += 'QEMU="${QEMU}"'
diff --git a/recipes/emacs/files/emacs23.1-use-qemu.patch b/recipes/emacs/files/emacs23.1-use-qemu.patch
index dd1f384d6d..255b07fc92 100644
--- a/recipes/emacs/files/emacs23.1-use-qemu.patch
+++ b/recipes/emacs/files/emacs23.1-use-qemu.patch
@@ -64,6 +64,15 @@ Index: emacs-23.1/src/Makefile.in
===================================================================
--- emacs-23.1.orig/src/Makefile.in
+++ emacs-23.1/src/Makefile.in
+@@ -497,7 +497,7 @@
+ this with the shell''s ``for'' construct.
+ Note that some people do not have '.' in their paths, so we must
+ use ./prefix-args. */
+-#define YMF_PASS_LDFLAGS(flags) `./prefix-args -Xlinker flags`
++#define YMF_PASS_LDFLAGS(flags) `${QEMU} ./prefix-args -Xlinker flags`
+ #else
+ #define YMF_PASS_LDFLAGS(flags) flags
+ #endif
@@ -895,9 +895,9 @@ LIBES = $(LOADLIBES) $(LIBS) $(LIBX) $(L
#endif