On Mon, 2008-04-14 at 21:42 +0200, Eric Faurot wrote: > On Sun, 13 Apr 2008 14:35:57 -0700 > "Matthew Dempsky" <[EMAIL PROTECTED]> wrote: > > > Is anyone working on an Emacs 22 port? I thought I'd check before > > making a redundant effort. > > This is a work-in-progress port of emacs 22.2 based on a post > by Fulvio Ciriaco. Contributions are most welcome.
I've attached a patch for Emacs 22 diffed against Eric's tarball[1]. This patch incorporates Matthew Dempsky's gtk FLAVOR patch and plist fixes[2] as well as an athena flavor. I also attempted to resolve the problems Eric mentioned. > There are a few issues I noticed: > > - it wants to put some game score stuf in /usr/local/var/games/emacs. > I would zap that completely, or at least try to make it to /var/games./.. Adding --localstatedir=/var places the game score files under /var/games/emacs, but then update-plist strips them. > - there is a problem with chown commands failing during fake install. The Makefile uses "find $${dest} -exec chown $${LOGNAME:-$$USERNAME} {} ';' ;\" in several places, causing the chown errors since ports doesn't set LOGNAME or USERNAME. Adding 'LOGNAME="${SHAREOWN}"' to MAKE_ENV quieted the chown errors. All three flavors work for me on i386. Brad Walker [1] http://marc.info/?l=openbsd-ports&m=120820280419139&w=2 [2] http://marc.info/?l=openbsd-ports&m=120821303306133&w=2
diff -rud emacs22.orig/Makefile emacs22/Makefile --- emacs22.orig/Makefile Fri Apr 11 15:11:35 2008 +++ emacs22/Makefile Mon Jun 9 22:01:24 2008 @@ -26,14 +26,13 @@ USE_GMAKE= Yes -FLAVORS= no_x11 -FLAVOR?= +FLAVORS= athena gtk2 no_x11 +FLAVOR?= gtk2 GCCARCH= ${MACHINE_ARCH}-unknown-openbsd${OPSYS_VER} CONFIGURE_STYLE= gnu -CONFIGURE_ARGS= ${GCCARCH} --with-pop -CONFIGURE_ARGS+= --without-toolkit-scroll-bars +CONFIGURE_ARGS= ${GCCARCH} --with-pop --localstatedir=/var CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include \ -I${LOCALBASE}/include/libpng" \ @@ -44,25 +43,48 @@ CONFIGURE_ENV+= CFLAGS="${CFLAGS} -fno-stack-protector" .endif -MAKE_ENV= INSTALL_EMACS="${INSTALL_SCRIPT}" +MAKE_ENV= INSTALL_EMACS="${INSTALL_SCRIPT}" \ + LOGNAME="${SHAREOWN}" SUBST_VARS= GCCARCH VERSION WANTLIB-main= c m ncurses ossaudio -.if ${FLAVOR:L:Mno_x11} -CONFIGURE_ARGS+= --with-x=no -.else -USE_X11=Yes -LIB_DEPENDS-main= ungif.>=5::graphics/libungif \ - jpeg.>=62::graphics/jpeg \ + +.if ${FLAVOR:L:Mno_x11} && !${FLAVOR:L:Mathena} && !${FLAVOR:L:Mgtk2} +CONFIGURE_ARGS+=--without-x +.elif ${FLAVOR:L:Mathena} && !${FLAVOR:L:Mno_x11} && !${FLAVOR:L:Mgtk2} +CONFIGURE_ARGS+=--with-x-toolkit=athena --without-toolkit-scroll-bars +USE_X11= Yes + +LIB_DEPENDS-main= jpeg.>=62::graphics/jpeg \ png.>=2::graphics/png \ - tiff.>=35::graphics/tiff -WANTLIB-main+= ICE SM X11 Xaw Xext Xmu Xpm Xt z jpeg + tiff.>=35::graphics/tiff \ + ungif.>=5::graphics/libungif +WANTLIB-main+= ICE SM X11 Xaw Xext Xmu Xpm Xt z +.elif ${FLAVOR:L:Mgtk2} && !${FLAVOR:L:Mno_x11} && !${FLAVOR:L:Mathena} +CONFIGURE_ARGS+=--with-gtk +USE_X11= Yes + +LIB_DEPENDS-main+= atk-1.0.>=2009::devel/atk \ + cairo.>=7::graphics/cairo \ + glib-2.0.>=1400,gmodule-2.0.>=1400,gobject-2.0.>=1400::devel/glib2 \ + glitz.>=2::graphics/glitz \ + gdk-x11-2.0.>=0.11,gdk_pixbuf-2.0.>=0.11,gtk-x11-2.0.>=0.11::x11/gtk+2 \ + iconv.>=4::converters/libiconv \ + intl.>=4::devel/gettext \ + jpeg.>=62::graphics/jpeg \ + pango-1.0.>=1400,pangocairo-1.0.>=1400,pangoft2-1.0.>=1400::devel/pango \ + png.>=6::graphics/png \ + tiff.>=38::graphics/tiff \ + ungif.>=5::graphics/libungif +WANTLIB-main+= ICE SM X11 Xdmcp Xext Xft Xpm Xrender Xau Xcomposite Xcursor \ + Xdamage Xfixes Xi Xinerama Xrandr pixman-1 \ + expat fontconfig freetype pthread z +.else +ERRORS= "Fatal: You must select one GUI interface: athena, gtk2 or no_x11" .endif -RUN_DEPENDS= :emacs-${VERSION}*:${BUILD_PKGPATH} -RUN_DEPENDS-main= - -PKG_ARCH-el= * +RUN_DEPENDS-el= :emacs-${VERSION}*:${BUILD_PKGPATH} +PKG_ARCH-el= * .include <bsd.port.mk> diff -rud emacs22.orig/pkg/DESCR-main emacs22/pkg/DESCR-main --- emacs22.orig/pkg/DESCR-main Sun Feb 10 03:12:07 2008 +++ emacs22/pkg/DESCR-main Mon Jun 9 10:29:34 2008 @@ -13,4 +13,6 @@ (Doctor :-) and many more. Flavors: + athena - build with athena toolkit + gtk2 - build with gtk2 toolkit no_x11 - build without X11 support diff -rud emacs22.orig/pkg/PLIST-el emacs22/pkg/PLIST-el --- emacs22.orig/pkg/PLIST-el Fri Apr 11 15:36:21 2008 +++ emacs22/pkg/PLIST-el Sun Jun 8 18:30:09 2008 @@ -690,6 +690,7 @@ share/emacs/${VERSION}/lisp/net/rcompile.el.gz share/emacs/${VERSION}/lisp/net/rlogin.el.gz share/emacs/${VERSION}/lisp/net/snmp-mode.el.gz +share/emacs/${VERSION}/lisp/net/socks.el.gz share/emacs/${VERSION}/lisp/net/telnet.el.gz share/emacs/${VERSION}/lisp/net/tls.el.gz share/emacs/${VERSION}/lisp/net/tramp-ftp.el.gz @@ -851,6 +852,8 @@ share/emacs/${VERSION}/lisp/progmodes/simula.el.gz share/emacs/${VERSION}/lisp/progmodes/sql.el.gz share/emacs/${VERSION}/lisp/progmodes/tcl.el.gz +share/emacs/${VERSION}/lisp/progmodes/vera-mode.el.gz +share/emacs/${VERSION}/lisp/progmodes/verilog-mode.el.gz share/emacs/${VERSION}/lisp/progmodes/vhdl-mode.el.gz share/emacs/${VERSION}/lisp/progmodes/which-func.el.gz share/emacs/${VERSION}/lisp/progmodes/xscheme.el.gz @@ -910,8 +913,10 @@ share/emacs/${VERSION}/lisp/terminal.el.gz share/emacs/${VERSION}/lisp/textmodes/artist.el.gz share/emacs/${VERSION}/lisp/textmodes/bib-mode.el.gz +share/emacs/${VERSION}/lisp/textmodes/bibtex-style.el.gz share/emacs/${VERSION}/lisp/textmodes/bibtex.el.gz share/emacs/${VERSION}/lisp/textmodes/conf-mode.el.gz +share/emacs/${VERSION}/lisp/textmodes/css-mode.el.gz share/emacs/${VERSION}/lisp/textmodes/dns-mode.el.gz share/emacs/${VERSION}/lisp/textmodes/enriched.el.gz share/emacs/${VERSION}/lisp/textmodes/fill.el.gz @@ -994,9 +999,13 @@ share/emacs/${VERSION}/lisp/url/vc-dav.el.gz share/emacs/${VERSION}/lisp/userlock.el.gz share/emacs/${VERSION}/lisp/vc-arch.el.gz +share/emacs/${VERSION}/lisp/vc-bzr.el.gz share/emacs/${VERSION}/lisp/vc-cvs.el.gz +share/emacs/${VERSION}/lisp/vc-git.el.gz +share/emacs/${VERSION}/lisp/vc-hg.el.gz share/emacs/${VERSION}/lisp/vc-hooks.el.gz share/emacs/${VERSION}/lisp/vc-mcvs.el.gz +share/emacs/${VERSION}/lisp/vc-mtn.el.gz share/emacs/${VERSION}/lisp/vc-rcs.el.gz share/emacs/${VERSION}/lisp/vc-sccs.el.gz share/emacs/${VERSION}/lisp/vc-svn.el.gz diff -rud emacs22.orig/pkg/PLIST-main emacs22/pkg/PLIST-main --- emacs22.orig/pkg/PLIST-main Mon Apr 14 12:50:27 2008 +++ emacs22/pkg/PLIST-main Sun Jun 8 18:45:53 2008 @@ -1,12 +1,12 @@ @comment $OpenBSD$ @conflict emacs21-* -bin/b2m -bin/ctags -bin/ebrowse [EMAIL PROTECTED] bin/b2m [EMAIL PROTECTED] bin/ctags [EMAIL PROTECTED] bin/ebrowse bin/emacs bin/emacs-${VERSION} -bin/emacsclient -bin/etags [EMAIL PROTECTED] bin/emacsclient [EMAIL PROTECTED] bin/etags bin/grep-changelog bin/rcs-checkin @info info/ada-mode @@ -52,15 +52,15 @@ libexec/emacs/ libexec/emacs/${VERSION}/ libexec/emacs/${VERSION}/${GCCARCH}/ -libexec/emacs/${VERSION}/${GCCARCH}/cvtmail -libexec/emacs/${VERSION}/${GCCARCH}/digest-doc -libexec/emacs/${VERSION}/${GCCARCH}/fakemail -libexec/emacs/${VERSION}/${GCCARCH}/hexl -libexec/emacs/${VERSION}/${GCCARCH}/movemail -libexec/emacs/${VERSION}/${GCCARCH}/profile [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/cvtmail [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/digest-doc [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/fakemail [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/hexl [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/movemail [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/profile libexec/emacs/${VERSION}/${GCCARCH}/rcs2log -libexec/emacs/${VERSION}/${GCCARCH}/sorted-doc -libexec/emacs/${VERSION}/${GCCARCH}/update-game-score [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/sorted-doc [EMAIL PROTECTED] libexec/emacs/${VERSION}/${GCCARCH}/update-game-score libexec/emacs/${VERSION}/${GCCARCH}/vcdiff @man man/man1/ctags.1 @man man/man1/emacs.1 @@ -1298,7 +1298,6 @@ share/emacs/${VERSION}/lisp/net/rcompile.elc share/emacs/${VERSION}/lisp/net/rlogin.elc share/emacs/${VERSION}/lisp/net/snmp-mode.elc -share/emacs/${VERSION}/lisp/net/socks.el.gz share/emacs/${VERSION}/lisp/net/socks.elc share/emacs/${VERSION}/lisp/net/telnet.elc share/emacs/${VERSION}/lisp/net/tls.elc @@ -1468,9 +1467,7 @@ share/emacs/${VERSION}/lisp/progmodes/simula.elc share/emacs/${VERSION}/lisp/progmodes/sql.elc share/emacs/${VERSION}/lisp/progmodes/tcl.elc -share/emacs/${VERSION}/lisp/progmodes/vera-mode.el.gz share/emacs/${VERSION}/lisp/progmodes/vera-mode.elc -share/emacs/${VERSION}/lisp/progmodes/verilog-mode.el.gz share/emacs/${VERSION}/lisp/progmodes/verilog-mode.elc share/emacs/${VERSION}/lisp/progmodes/vhdl-mode.elc share/emacs/${VERSION}/lisp/progmodes/which-func.elc @@ -1555,11 +1552,9 @@ share/emacs/${VERSION}/lisp/textmodes/ share/emacs/${VERSION}/lisp/textmodes/artist.elc share/emacs/${VERSION}/lisp/textmodes/bib-mode.elc -share/emacs/${VERSION}/lisp/textmodes/bibtex-style.el.gz share/emacs/${VERSION}/lisp/textmodes/bibtex-style.elc share/emacs/${VERSION}/lisp/textmodes/bibtex.elc share/emacs/${VERSION}/lisp/textmodes/conf-mode.elc -share/emacs/${VERSION}/lisp/textmodes/css-mode.el.gz share/emacs/${VERSION}/lisp/textmodes/css-mode.elc share/emacs/${VERSION}/lisp/textmodes/dns-mode.elc share/emacs/${VERSION}/lisp/textmodes/enriched.elc @@ -1644,16 +1639,12 @@ share/emacs/${VERSION}/lisp/url/vc-dav.elc share/emacs/${VERSION}/lisp/userlock.elc share/emacs/${VERSION}/lisp/vc-arch.elc -share/emacs/${VERSION}/lisp/vc-bzr.el.gz share/emacs/${VERSION}/lisp/vc-bzr.elc share/emacs/${VERSION}/lisp/vc-cvs.elc -share/emacs/${VERSION}/lisp/vc-git.el.gz share/emacs/${VERSION}/lisp/vc-git.elc -share/emacs/${VERSION}/lisp/vc-hg.el.gz share/emacs/${VERSION}/lisp/vc-hg.elc share/emacs/${VERSION}/lisp/vc-hooks.elc share/emacs/${VERSION}/lisp/vc-mcvs.elc -share/emacs/${VERSION}/lisp/vc-mtn.el.gz share/emacs/${VERSION}/lisp/vc-mtn.elc share/emacs/${VERSION}/lisp/vc-rcs.elc share/emacs/${VERSION}/lisp/vc-sccs.elc @@ -1684,8 +1675,3 @@ share/emacs/${VERSION}/site-lisp/subdirs.el share/emacs/site-lisp/ share/emacs/site-lisp/subdirs.el -var/ -var/games/ -var/games/emacs/ -var/games/emacs/snake-scores -var/games/emacs/tetris-scores