emacs: switch to using a patch instead of sed hackery, turn x11 back off since the...
authorJustin Patrin <papercrane@gmail.com>
Wed, 26 Jul 2006 15:40:25 +0000 (15:40 +0000)
committerJustin Patrin <papercrane@gmail.com>
Wed, 26 Jul 2006 15:40:25 +0000 (15:40 +0000)
packages/emacs/emacs_cvs.bb
packages/emacs/files/.mtn2git_empty [new file with mode: 0644]
packages/emacs/files/use-qemu.patch [new file with mode: 0644]

index cba1372..1ee8d0e 100644 (file)
@@ -4,18 +4,19 @@ LICENSE = "GPLv2"
 MAINTAINER = "Justin Patrin <papercrane@reversefold.com>"
 SECTION = "editor"
 # full X (non-diet) is needed for X support
-DEPENDS = "libx11"
+#DEPENDS = "libx11"
 # and it needs to run some generated binaries..
 DEPENDS += "qemu-native"
-PR = "r1"
+PR = "r2"
 
-SRC_URI = "cvs://anoncvs:anonymous@cvs.savannah.gnu.org/sources/emacs;module=emacs"
+SRC_URI = "cvs://anoncvs:anonymous@cvs.savannah.gnu.org/sources/emacs;module=emacs \
+           file://use-qemu.patch;patch=1"
 #           http://fabrice.bellard.free.fr/qemu/qemu-gnemul-0.5.3.tar.gz"
 S = "${WORKDIR}/emacs"
 
 inherit autotools
 
-EXTRA_OECONF = "--with-x"
+EXTRA_OECONF = "--without-x"
 
 #QEMU = "/usr/bin/qemu-arm -L ${WORKDIR}/usr/local/gnemul/qemu-arm -L ${STAGING_DIR}/${TARGET_SYS}"
 QEMU = "qemu-arm -L ${STAGING_DIR}/${TARGET_SYS}"
@@ -23,22 +24,11 @@ QEMU = "qemu-arm -L ${STAGING_DIR}/${TARGET_SYS}"
 LDFLAGS += "-L${CROSS_DIR}/${TARGET_SYS}/lib"
 
 do_compile_prepend() {
-    sed -i 's:/usr/lib:${STAGING_LIBDIR}:g' ${S}/src/s/gnu-linux.h
-
-    find "${S}" -name Makefile | xargs sed -i 's:^RUN_TEMACS = ./temacs$:RUN_TEMACS = ${QEMU} ./temacs:'
-    find "${S}" -name Makefile | xargs sed -i 's:EMACS=../src/bootstrap-emacs:EMACS="${QEMU} ../src/bootstrap-emacs":'
-
-    # src-lib/Makefile
-    find "${S}" -name Makefile | xargs sed -i 's:./test-distrib :${QEMU} ./test-distrib :'
-
-    # src/Makefile
-    find "${S}" -name Makefile | xargs sed -i 's:./prefix-args :${QEMU} ./prefix-args :'
-    find "${S}" -name Makefile | xargs sed -i 's:$''{libsrc}make-docfile :${QEMU} $''{libsrc}make-docfile :'
-
-    # leim/Makefile
-    find "${S}" -name Makefile | xargs sed -i 's:BUILD-EMACS = :BUILT-EMACS = ${QEMU} :'
+    export QEMU="${QEMU}"
 
+    sed -i 's:/usr/lib:${STAGING_LIBDIR}:g' ${S}/src/s/gnu-linux.h
     find "${S}" -name Makefile | xargs sed -i 's:/usr/lib:${STAGING_LIBDIR}:g'
-    cd ${S}
+
+    cd "${S}"
     make bootstrap
 }
diff --git a/packages/emacs/files/.mtn2git_empty b/packages/emacs/files/.mtn2git_empty
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/packages/emacs/files/use-qemu.patch b/packages/emacs/files/use-qemu.patch
new file mode 100644 (file)
index 0000000..b23f1d6
--- /dev/null
@@ -0,0 +1,68 @@
+diff -Nur emacs~/Makefile.in emacs/Makefile.in
+--- emacs~/Makefile.in 2006-07-25 09:45:48.000000000 -0700
++++ emacs/Makefile.in  2006-07-26 07:33:43.000000000 -0700
+@@ -782,7 +782,7 @@
+ bootstrap-build: FRC
+       (cd lisp; $(MAKE) $(MFLAGS) bootstrap-prepare)
+       (cd src; $(MAKE) $(MFLAGS) bootstrap)
+-      (cd lisp; $(MAKE) $(MFLAGS) bootstrap EMACS=../src/bootstrap-emacs${EXEEXT})
++      (cd lisp; $(MAKE) $(MFLAGS) bootstrap EMACS="${QEMU} ../src/bootstrap-emacs${EXEEXT}")
+       (cd src; $(MAKE) $(MFLAGS) mostlyclean)
+       $(MAKE) $(MFLAGS) all
+       (cd lisp; $(MAKE) $(MFLAGS) bootstrap-after)
+diff -Nur emacs~/leim/Makefile.in emacs/leim/Makefile.in
+--- emacs~/leim/Makefile.in    2006-07-25 09:45:53.000000000 -0700
++++ emacs/leim/Makefile.in     2006-07-26 07:30:53.000000000 -0700
+@@ -48,7 +48,7 @@
+ # How to run Emacs.
+ RUN-EMACS = EMACSLOADPATH=$(buildlisppath) LC_ALL=C\
+-      ${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
++      ${QEMU} ${BUILT-EMACS} -batch --no-init-file --no-site-file --multibyte
+ # Subdirectories to be made if ${srcdir} is different from the current
+ # directory.
+diff -Nur emacs~/lib-src/Makefile.in emacs/lib-src/Makefile.in
+--- emacs~/lib-src/Makefile.in 2006-07-25 09:45:54.000000000 -0700
++++ emacs/lib-src/Makefile.in  2006-07-26 07:36:29.000000000 -0700
+@@ -380,7 +380,7 @@
+    clobbered too.  */
+ test-distrib${EXEEXT}: ${srcdir}/test-distrib.c
+       $(CC) ${ALL_CFLAGS} -o test-distrib ${srcdir}/test-distrib.c
+-      ./test-distrib ${srcdir}/testfile
++      ${QEMU} ./test-distrib ${srcdir}/testfile
+ /* We need the following in order to create a <getopt.h> when the system
+    doesn't have one that works with the given compiler.  */
+diff -Nur emacs~/src/Makefile.in emacs/src/Makefile.in
+--- emacs~/src/Makefile.in     2006-07-25 09:46:16.000000000 -0700
++++ emacs/src/Makefile.in      2006-07-26 07:37:44.000000000 -0700
+@@ -491,7 +491,7 @@
+    this with the shell's `for' construct.
+    Note that some people don't 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
+@@ -943,7 +943,7 @@
+ #define OBJECTS_MACHINE
+ #endif
+-RUN_TEMACS = ./temacs
++RUN_TEMACS = ${QEMU} ./temacs
+ all: emacs${EXEEXT} OTHER_FILES
+@@ -970,8 +970,8 @@
+    Likewise for ${SOME_MACHINE_LISP}.  */
+ ${etc}DOC: ${libsrc}make-docfile${EXEEXT} ${obj} ${shortlisp} ${SOME_MACHINE_LISP}
+       -rm -f ${etc}DOC
+-      ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
+-      ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
++      ${QEMU} ${libsrc}make-docfile -d ${srcdir} ${SOME_MACHINE_OBJECTS} ${obj} > ${etc}DOC
++      ${QEMU} ${libsrc}make-docfile -a ${etc}DOC -d ${srcdir} ${SOME_MACHINE_LISP} ${shortlisp}
+ ${libsrc}make-docfile${EXEEXT}:
+       cd ${libsrc}; ${MAKE} ${MFLAGS} make-docfile${EXEEXT}