From 62835f4090e3c7dd4ef71f080d88096d81f4f232 Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 12 Jun 2008 09:21:18 +0000 Subject: [PATCH] * Backported Andres' fix for building emacs-23 on x86_64 to emacs-22. Also updated to Emacs 22.2. svn path=/nixpkgs/branches/stdenv-updates/; revision=12050 --- pkgs/applications/editors/emacs-22/crt.patch | 41 ------ .../applications/editors/emacs-22/default.nix | 27 ++-- .../editors/emacs-22/makefile-pwd.patch | 129 ------------------ 3 files changed, 17 insertions(+), 180 deletions(-) delete mode 100644 pkgs/applications/editors/emacs-22/crt.patch delete mode 100644 pkgs/applications/editors/emacs-22/makefile-pwd.patch diff --git a/pkgs/applications/editors/emacs-22/crt.patch b/pkgs/applications/editors/emacs-22/crt.patch deleted file mode 100644 index 93f17643a1af..000000000000 --- a/pkgs/applications/editors/emacs-22/crt.patch +++ /dev/null @@ -1,41 +0,0 @@ -Only in emacs-21.3: configure.in~ -Only in emacs-21.3: patchfile -Only in emacs-21.3/src: Makefile.in~ -diff -rc emacs-orig/src/s/gnu-linux.h emacs-21.3/src/s/gnu-linux.h -*** emacs-orig/src/s/gnu-linux.h 2001-09-28 17:50:04.000000000 +0200 ---- emacs-21.3/src/s/gnu-linux.h 2004-10-06 13:13:19.000000000 +0200 -*************** -*** 173,179 **** - /* GNU/Linux usually has crt0.o in a non-standard place */ - #define START_FILES pre-crt0.o /usr/lib/crt0.o - #else -! #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o - #endif - - #ifdef __ELF__ ---- 173,179 ---- - /* GNU/Linux usually has crt0.o in a non-standard place */ - #define START_FILES pre-crt0.o /usr/lib/crt0.o - #else -! #define START_FILES pre-crt0.o crt1.o crti.o - #endif - - #ifdef __ELF__ -*************** -*** 225,231 **** - #else - #undef LIB_GCC - #define LIB_GCC -! #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtn.o - #endif - - /* Don't use -g in test compiles in configure. ---- 225,231 ---- - #else - #undef LIB_GCC - #define LIB_GCC -! #define LIB_STANDARD -lgcc -lc -lgcc crtn.o - #endif - - /* Don't use -g in test compiles in configure. -Only in emacs-21.3/src/s: gnu-linux.h~ diff --git a/pkgs/applications/editors/emacs-22/default.nix b/pkgs/applications/editors/emacs-22/default.nix index d527e305154e..17b8386bb721 100644 --- a/pkgs/applications/editors/emacs-22/default.nix +++ b/pkgs/applications/editors/emacs-22/default.nix @@ -13,19 +13,26 @@ assert xpmSupport -> libXpm != null; assert gtkGUI -> pkgconfig != null && gtk != null; stdenv.mkDerivation { - name = "emacs-22.1"; + name = "emacs-22.2"; builder = ./builder.sh; + src = fetchurl { - url = mirror://gnu/emacs/emacs-22.1.tar.gz; - sha256 = "1l1y3il98pq3cz464p244wz2d3nga5lq8fkw5pwp5r97f7pkpi0y"; + url = mirror://gnu/emacs/emacs-22.2.tar.gz; + md5 = "d6ee586b8752351334ebf072904c4d51"; }; - patches = [./crt.patch ./makefile-pwd.patch]; - buildInputs = [ - ncurses x11 - (if xawSupport then if xaw3dSupport then Xaw3d else libXaw else null) - (if xpmSupport then libXpm else null) - ] ++ (if gtkGUI then [pkgconfig gtk] else []); + + buildInputs = [ncurses x11] + ++ stdenv.lib.optional xawSupport (if xaw3dSupport then Xaw3d else libXaw) + ++ stdenv.lib.optional xpmSupport libXpm + ++ stdenv.lib.optionals gtkGUI [pkgconfig gtk]; + configureFlags = - if gtkGUI then ["--with-x-toolkit=gtk"] else []; + stdenv.lib.optional gtkGUI "--with-x-toolkit=gtk"; + + meta = { + description = "Emacs, *the* text editor"; + homepage = http://www.gnu.org/software/emacs/; + license = "GPL"; + }; } diff --git a/pkgs/applications/editors/emacs-22/makefile-pwd.patch b/pkgs/applications/editors/emacs-22/makefile-pwd.patch deleted file mode 100644 index 232b881c9a67..000000000000 --- a/pkgs/applications/editors/emacs-22/makefile-pwd.patch +++ /dev/null @@ -1,129 +0,0 @@ ---- emacs-22.1/Makefile.in 2008-02-10 23:56:29.000000000 +0100 -+++ emacs-22.1/Makefile.in 2008-02-10 23:55:55.000000000 +0100 -@@ -420,7 +420,7 @@ - -set ${COPYDESTS} ; \ - unset CDPATH; \ - for dir in ${COPYDIR} ; do \ -- if [ `(cd $$1 && /bin/pwd)` != `(cd $${dir} && /bin/pwd)` ] ; then \ -+ if [ `(cd $$1 && pwd)` != `(cd $${dir} && pwd)` ] ; then \ - rm -rf $$1 ; \ - fi ; \ - shift ; \ -@@ -432,7 +432,7 @@ - for dir in ${COPYDIR} ; do \ - dest=$$1 ; shift ; \ - [ -d $${dir} ] \ -- && [ `(cd $${dir} && /bin/pwd)` != `(cd $${dest} && /bin/pwd)` ] \ -+ && [ `(cd $${dir} && pwd)` != `(cd $${dest} && pwd)` ] \ - && (echo "Copying $${dir} to $${dest}..." ; \ - (cd $${dir}; tar -chf - . ) \ - | (cd $${dest}; umask 022; \ -@@ -472,7 +472,7 @@ - fi - -chmod a+r $(DESTDIR)${datadir}/emacs/site-lisp/subdirs.el - -unset CDPATH; \ -- if [ `(cd ./etc; /bin/pwd)` != `(cd $(DESTDIR)${docdir}; /bin/pwd)` ]; \ -+ if [ `(cd ./etc; pwd)` != `(cd $(DESTDIR)${docdir}; pwd)` ]; \ - then \ - echo "Copying etc/DOC-* to $(DESTDIR)${docdir} ..." ; \ - (cd ./etc; tar -chf - DOC*) \ -@@ -483,8 +483,8 @@ - -unset CDPATH; \ - if [ -r ./lisp ] \ - && [ -r ./lisp/simple.el ] \ -- && [ x`(cd ./lisp; /bin/pwd)` != x`(cd $(DESTDIR)${lispdir}; /bin/pwd)` ] \ -- && [ x`(cd ${srcdir}/lisp; /bin/pwd)` != x`(cd ./lisp; /bin/pwd)` ]; \ -+ && [ x`(cd ./lisp; pwd)` != x`(cd $(DESTDIR)${lispdir}; pwd)` ] \ -+ && [ x`(cd ${srcdir}/lisp; pwd)` != x`(cd ./lisp; pwd)` ]; \ - then \ - echo "Copying lisp/*.el and lisp/*.elc to $(DESTDIR)${lispdir} ..." ; \ - (cd lisp; tar -chf - *.el *.elc) \ -@@ -500,8 +500,8 @@ - done) \ - else true; fi - -unset CDPATH; \ -- thisdir=`/bin/pwd`; \ -- if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd $(DESTDIR)${infodir} && /bin/pwd)` ]; \ -+ thisdir=`pwd`; \ -+ if [ `(cd ${srcdir}/info && pwd)` != `(cd $(DESTDIR)${infodir} && pwd)` ]; \ - then \ - (cd $(DESTDIR)${infodir}; \ - if [ -f dir ]; then true; \ -@@ -519,8 +519,8 @@ - done); \ - else true; fi - -unset CDPATH; \ -- thisdir=`/bin/pwd`; \ -- if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd $(DESTDIR)${infodir} && /bin/pwd)` ]; \ -+ thisdir=`pwd`; \ -+ if [ `(cd ${srcdir}/info && pwd)` != `(cd $(DESTDIR)${infodir} && pwd)` ]; \ - then \ - for elt in $(INFO_FILES); do \ - (cd $${thisdir}; \ -@@ -528,7 +528,7 @@ - done; \ - else true; fi - -chmod -R a+r $(DESTDIR)${datadir}/emacs/${version} $(DESTDIR)${datadir}/emacs/site-lisp ${COPYDESTS} $(DESTDIR)${infodir} -- thisdir=`/bin/pwd`; \ -+ thisdir=`pwd`; \ - cd ${srcdir}/etc; \ - for page in emacs emacsclient etags ctags ; do \ - (cd $${thisdir}; \ -@@ -575,8 +575,8 @@ - -unset CDPATH; \ - for dir in $(DESTDIR)${lispdir} $(DESTDIR)${etcdir} ; do \ - if [ -d $${dir} ]; then \ -- case `(cd $${dir} ; /bin/pwd)` in \ -- `(cd ${srcdir} ; /bin/pwd)`* ) ;; \ -+ case `(cd $${dir} ; pwd)` in \ -+ `(cd ${srcdir} ; pwd)`* ) ;; \ - * ) rm -rf $${dir} ;; \ - esac ; \ - case $${dir} in \ ---- emacs-22.1/leim/Makefile.in 2008-02-10 23:55:31.000000000 +0100 -+++ emacs-22.1/leim/Makefile.in 2008-02-10 23:55:41.000000000 +0100 -@@ -207,7 +207,7 @@ - leim-list.el: ${SUBDIRS} ${TIT-MISC} changed.tit changed.misc ${srcdir}/leim-ext.el - ${RUN-EMACS} -l ${buildlisppath}/international/quail \ - -f batch-byte-compile-if-not-done ${TIT-MISC:.elc=.el} -- if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \ -+ if [ x`(cd ${srcdir} && pwd)` = x`(pwd)` ] ; then \ - ${RUN-EMACS} -l ${buildlisppath}/international/quail \ - --eval "(update-leim-list-file \".\")" ; \ - else \ -@@ -220,11 +220,11 @@ - if [ ! -d ${INSTALLDIR} ] ; then \ - ${srcdir}/${dot}${dot}/mkinstalldirs ${INSTALLDIR}; \ - else true; fi -- if [ x`(cd ${INSTALLDIR} && /bin/pwd)` != x`(/bin/pwd)` ] ; then \ -+ if [ x`(cd ${INSTALLDIR} && pwd)` != x`(pwd)` ] ; then \ - rm -rf ${INSTALLDIR}/leim-list.el; \ - rm -rf ${INSTALLDIR}/quail ${INSTALLDIR}/ja-dic ; \ - echo "Copying leim files to ${INSTALLDIR} ..." ; \ -- if [ x`(cd ${srcdir} && /bin/pwd)` = x`(/bin/pwd)` ] ; then \ -+ if [ x`(cd ${srcdir} && pwd)` = x`(pwd)` ] ; then \ - tar -chf - leim-list.el quail ja-dic \ - | (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\ - else \ ---- emacs-22.1/lib-src/Makefile.in 2008-02-10 23:59:08.000000000 +0100 -+++ emacs-22.1/lib-src/Makefile.in 2008-02-10 23:59:13.000000000 +0100 -@@ -306,7 +306,7 @@ - @echo - @echo "Installing utilities run internally by Emacs." - $(top_srcdir)/mkinstalldirs $(DESTDIR)${archlibdir} -- if [ `(cd $(DESTDIR)${archlibdir} && /bin/pwd)` != `/bin/pwd` ]; then \ -+ if [ `(cd $(DESTDIR)${archlibdir} && pwd)` != `pwd` ]; then \ - for file in ${UTILITIES}; do \ - $(INSTALL_PROGRAM) $(INSTALL_STRIP) $$file $(DESTDIR)${archlibdir}/$$file ; \ - done ; \ -@@ -321,8 +321,8 @@ - chown ${gameuser} $(DESTDIR)${gamedir}; \ - chmod u=rwx,g=rwx,o=rx $(DESTDIR)${gamedir}; \ - fi -- if [ `(cd $(DESTDIR)${archlibdir} && /bin/pwd)` \ -- != `(cd ${srcdir} && /bin/pwd)` ]; then \ -+ if [ `(cd $(DESTDIR)${archlibdir} && pwd)` \ -+ != `(cd ${srcdir} && pwd)` ]; then \ - for file in ${SCRIPTS}; do \ - $(INSTALL_SCRIPT) ${srcdir}/$$file $(DESTDIR)${archlibdir}/$$file; \ - done ; \