Subject: Re: Emacs 21.2 pkgsrc ready for testing
To: Michal Pasternak <michal@pasternak.w.lub.pl>
From: Greg A. Woods <woods@weird.com>
List: current-users
Date: 04/20/2002 14:14:30
[ On Sunday, April 14, 2002 at 20:31:46 (+0000), Micha³ Pasternak wrote: ]
> Subject: Emacs 21.2 pkgsrc ready for testing
>
> I managed to put up pkgsrc with Emacs 21.2 inside. It is an improved version
> of Emacs 20. It has a rewritten GUI, capabilities to display images and
> multimedia, and much more.
It's faster, is far more stable (at least for my somewhat extensive
uses) than any emacs-20.x release ever was, includes many new and
updated add-on packages (eg. pcl-cvs, new GNUS, etc., etc., etc.,), and
has far more advanced internationalisation features too! :-)
With the basic fonts I have installed (x11r6.3 + intlfonts-1.2 -
unicode-encoded-fonts), as displayed on my monochrome screen:
http://www.weird.com/~woods/emacs-21-HELLO.png
Most importantly 21.2 contains this incredibly long-awaited change:
** On terminals whose erase-char is ^H (Backspace), Emacs
now uses normal-erase-is-backspace-mode.
> If anybody would like to test it, it is at
> http://netbsd.w.lub.pl/emacs-21.tgz.
There is no PLIST file in your emacs-21 module, though there is one in
the emacs-leim-21 module. Personally I'd just forget about emacs
without leim, but perhaps not everyone feels quite the same.... :-)
Of course if they are kept separate then ideally there should be an
emacs-21/Makefile.common that includes all the sharable stuff and
probably a shared PLIST too. Also the DESCR files are identical between
emacs-21 and emacs-liem-21, as are the COMMENT fields in each:
13:26 [24] $ diff ../emacs*-21/DESCR
13:26 [25] $ diff ../emacs*-21/Makefile
3c3
< PKGNAME= emacs-${VERSION}
---
> PKGNAME= emacs-leim-${VERSION}
8c8
< DISTFILES= ${DISTNAME}${EXTRACT_SUFX}
---
> DISTFILES= ${DISTNAME}${EXTRACT_SUFX} leim-${VERSION}${EXTRACT_SUFX}
14c14
< CONFLICTS= mule-[0-9]*
---
> CONFLICTS= mule-[0-9]* emacs-21*
That last CONFLICTS line isn't right either, presuming these packages
are properly renamed to just "emacs" (and "emacs-leim").
It needs to be updated to use buildlink.mk too, which will fix the fact
it doesn't currently have any of the correct DEPENDS settings:
$ ldd /usr/pkg/bin/emacs | fgrep pkg
/usr/pkg/bin/emacs:
-ljpeg.62 => /usr/pkg/lib/libjpeg.so.62
-ltiff.3 => /usr/pkg/lib/libtiff.so.3
-lpng.3 => /usr/pkg/lib/libpng.so.3
-lungif.5 => /usr/pkg/lib/libungif.so.5
-lXpm.4 => /usr/pkg/lib/libXpm.so.4
It should be explicitly given these configure options too in order to
explicitly enable the add-on dependencies:
--with-xpm --with-jpeg --with-tiff --with-gif --with-png
There may be others I've missed (eg Xaw3d) because I don't have them
installed at the moment, but the above are also the options I used
through the alpha-test releases too....
You probably explicitly want this option too:
--with-pop
this is desirable on those systems where it could be supported:
--with-ipv6
and I like this one too:
--with-x-toolkit=athena
I don't think any of the above options will change the PLIST, but I'm
not 100% sure about that.....
In any case it does build, install, and work just fine on 1.5W, sparc
and i386.... Thanks very much for your work on this package!
> If noone will find errors in this package, I'm sending a PR on friday.
I don't know if I saw your submission go through GNATS yet, but in any
case I'll also suggest the following patches here.
I had submitted the next two patches several times throughout the alpha-
test release phases, but which somehow seemed to fall through the cracks
(though all the other patches I submitted were accepted).
Index: src/s/netbsd.h
===================================================================
RCS file: /cvs/gnu/emacs-21/src/s/netbsd.h,v
retrieving revision 1.1.1.4
diff -c -r1.1.1.4 netbsd.h
*** src/s/netbsd.h 19 Oct 2001 21:02:17 -0000 1.1.1.4
--- src/s/netbsd.h 19 Oct 2001 21:11:03 -0000
***************
*** 1,6 ****
--- 1,7 ----
/* s/ file for netbsd system. */
/* Get most of the stuff from bsd4.3 */
+ /* XXX There should be a "bsd4-4.h" because so many things are different! */
#include "bsd4-3.h"
#if defined (__alpha__) && !defined (__ELF__)
***************
*** 106,111 ****
--- 107,117 ----
#ifndef NOT_C_CODE
#include <signal.h>
#endif
+
+ /* Use POSIX Signals [sigaction(), sigprocmask(), sigsuspend(), etc.]
+ Gerd says this works OK in FreeBSD -- should be fine on any 4.4BSD */
+
+ #define POSIX_SIGNALS 1
/* Don't close pty in process.c to make it as controlling terminal.
It is already a controlling terminal of subprocess, because we did
This patch may be necessary on older versions of NetBSD (eg. 1.3.x, on
which emacs-21 seems to still work OK). It certianly won't hurt, and
I'd also submitted it several times during alpha-test but it was
ignored:
Index: src/fileio.c
===================================================================
RCS file: /cvs/gnu/emacs-21/src/fileio.c,v
retrieving revision 1.1.1.8
diff -c -r1.1.1.8 fileio.c
*** src/fileio.c 13 Nov 2001 16:48:38 -0000 1.1.1.8
--- src/fileio.c 17 Mar 2002 21:07:04 -0000
***************
*** 3318,3325 ****
}
! #ifdef __NetBSD__
! #define unix 42
#endif
#ifdef unix
--- 3318,3325 ----
}
! #if defined(__NetBSD__) && !defined(unix)
! # define unix 42
#endif
#ifdef unix
This patch was suggested by another NetBSD user, but I don't know if it
is (still?) necessary and I have no arm machines to test it on:
Index: configure.in
===================================================================
RCS file: /cvs/gnu/emacs-21/configure.in,v
retrieving revision 1.1.1.8
diff -c -r1.1.1.8 configure.in
*** configure.in 13 Nov 2001 16:42:27 -0000 1.1.1.8
--- configure.in 13 Nov 2001 17:02:26 -0000
***************
*** 195,201 ****
powerpc-*-netbsd*) machine=macppc ;;
sparc*-*-netbsd*) machine=sparc ;;
vax-*-netbsd*) machine=vax ;;
! arm-*-netbsd*) machine=arm ;;
esac
;;
--- 195,201 ----
powerpc-*-netbsd*) machine=macppc ;;
sparc*-*-netbsd*) machine=sparc ;;
vax-*-netbsd*) machine=vax ;;
! arm*-*-netbsd*) machine=arm ;;
esac
;;
--
Greg A. Woods
+1 416 218-0098; <gwoods@acm.org>; <g.a.woods@ieee.org>; <woods@robohack.ca>
Planix, Inc. <woods@planix.com>; VE3TCP; Secrets of the Weird <woods@weird.com>