diff --git a/editors/emacs21/Makefile b/editors/emacs21/Makefile index 0e0685ef49e..d07e1defb0c 100644 --- a/editors/emacs21/Makefile +++ b/editors/emacs21/Makefile @@ -1,8 +1,4 @@ -# $OpenBSD: Makefile,v 1.35 2007/02/14 16:55:28 steven Exp $ - -.if ${MACHINE_ARCH} == "hppa" -BROKEN= "hangs indefinitely until machine panics/hangs" -.endif +# $OpenBSD: Makefile,v 1.36 2007/07/06 16:59:32 kettenis Exp $ COMMENT-main= "GNU editor: extensible, customizable, self documenting" COMMENT-el= "elisp sources for those who want to read/modify them" @@ -10,7 +6,7 @@ COMMENT-leim= "Library of Emacs Input Methods" VERSION= 21.4 DISTNAME= emacs-${VERSION} -PKGNAME-main= ${DISTNAME}p3 +PKGNAME-main= ${DISTNAME}p4 FULLPKGNAME-el= emacs-el-${VERSION} FULLPKGNAME-leim= emacs-leim-${VERSION} diff --git a/editors/emacs21/patches/patch-configure b/editors/emacs21/patches/patch-configure index 3eee92577be..11095d40320 100644 --- a/editors/emacs21/patches/patch-configure +++ b/editors/emacs21/patches/patch-configure @@ -1,7 +1,7 @@ -$OpenBSD: patch-configure,v 1.9 2004/10/31 23:03:29 mjc Exp $ +$OpenBSD: patch-configure,v 1.10 2007/07/06 16:59:32 kettenis Exp $ disable Xaw3d ---- configure.orig Tue Mar 18 06:19:12 2003 -+++ configure Sun Aug 15 12:15:22 2004 +--- configure.orig Tue Mar 18 15:19:12 2003 ++++ configure Wed Jun 27 22:27:02 2007 @@ -830,12 +830,17 @@ case "${canonical}" in opsys=openbsd case "${canonical}" in @@ -15,7 +15,7 @@ disable Xaw3d + powerpc-*-openbsd*) machine=macppc ;; + sparc*-*-openbsd*) machine=sparc ;; vax-*-openbsd*) machine=vax ;; -+ hppa-*-openbsd*) machine=hp9000s300 ;; ++ hppa-*-openbsd*) machine=hppa ;; + x86_64-*-openbsd*) machine=x86_64 ;; + mips64-*-openbsd*) machine=mips64 ;; esac diff --git a/editors/emacs21/patches/patch-src_m_hppa_h b/editors/emacs21/patches/patch-src_m_hppa_h new file mode 100644 index 00000000000..bd3ce453fd4 --- /dev/null +++ b/editors/emacs21/patches/patch-src_m_hppa_h @@ -0,0 +1,128 @@ +$OpenBSD: patch-src_m_hppa_h,v 1.1 2007/07/06 16:59:32 kettenis Exp $ +--- src/m/hppa.h.orig Thu Jun 28 21:56:37 2007 ++++ src/m/hppa.h Thu Jun 28 21:57:02 2007 +@@ -0,0 +1,124 @@ ++/* machine description file template. ++ Copyright (C) 1985, 1986 Free Software Foundation, Inc. ++ ++This file is part of GNU Emacs. ++ ++GNU Emacs is free software; you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 2, or (at your option) ++any later version. ++ ++GNU Emacs is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++You should have received a copy of the GNU General Public License ++along with GNU Emacs; see the file COPYING. If not, write to ++the Free Software Foundation, Inc., 59 Temple Place - Suite 330, ++Boston, MA 02111-1307, USA. */ ++ ++ ++/* The following line tells the configuration script what sort of ++ operating system this machine is likely to run. ++ USUAL-OPSYS="openbsd" */ ++ ++/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word ++ is the most significant byte. */ ++ ++#define WORDS_BIG_ENDIAN ++ ++/* Define NO_ARG_ARRAY if you cannot take the address of the first of a ++ * group of arguments and treat it as an array of the arguments. */ ++ ++#define NO_ARG_ARRAY ++ ++/* Define WORD_MACHINE if addresses and such have ++ * to be corrected before they can be used as byte counts. */ ++ ++/* #define WORD_MACHINE */ ++ ++/* Now define a symbol for the cpu type, if your compiler ++ does not define it automatically: ++ Ones defined so far include vax, m68000, ns16000, pyramid, ++ orion, tahoe, APOLLO and many others */ ++ ++/* __hppa__ defined automatically */ ++ ++/* Use type int rather than a union, to represent Lisp_Object */ ++/* This is desirable for most machines. */ ++ ++#define NO_UNION_TYPE ++ ++/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend ++ the 24-bit bit field into an int. In other words, if bit fields ++ are always unsigned. ++ ++ If you use NO_UNION_TYPE, this flag does not matter. */ ++ ++#define EXPLICIT_SIGN_EXTEND ++ ++/* Data type of load average, as read out of kmem. */ ++ ++#define LOAD_AVE_TYPE long ++ ++/* Convert that into an integer that is 100 for a load average of 1.0 */ ++ ++#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) ++ ++/* Define CANNOT_DUMP on machines where unexec does not work. ++ Then the function dump-emacs will not be defined ++ and temacs will do (load "loadup") automatically unless told otherwise. */ ++ ++/* #define CANNOT_DUMP */ ++ ++/* Define VIRT_ADDR_VARIES if the virtual addresses of ++ pure and impure space as loaded can vary, and even their ++ relative order cannot be relied on. ++ ++ Otherwise Emacs assumes that text space precedes data space, ++ numerically. */ ++ ++#define VIRT_ADDR_VARIES ++ ++/* Define C_ALLOCA if this machine does not support a true alloca ++ and the one written in C should be used instead. ++ Define HAVE_ALLOCA to say that the system provides a properly ++ working alloca function and it should be used. ++ Define neither one if an assembler-language alloca ++ in the file alloca.s should be used. */ ++ ++/* #define C_ALLOCA */ ++#define HAVE_ALLOCA ++ ++/* Define NO_REMAP if memory segmentation makes it not work well ++ to change the boundary between the text section and data section ++ when Emacs is dumped. If you define this, the preloaded Lisp ++ code will not be sharable; but that's better than failing completely. */ ++ ++/* #define NO_REMAP */ ++ ++/* Some really obscure 4.2-based systems (like Sequent DYNIX) ++ * do not support asynchronous I/O (using SIGIO) on sockets, ++ * even though it works fine on tty's. If you have one of ++ * these systems, define the following, and then use it in ++ * config.h (or elsewhere) to decide when (not) to use SIGIO. ++ * ++ * You'd think this would go in an operating-system description file, ++ * but since it only occurs on some, but not all, BSD systems, the ++ * reasonable place to select for it is in the machine description ++ * file. ++ */ ++ ++/* #define NO_SOCK_SIGIO */ ++ ++#define HAVE_TEXT_START ++ ++/* After adding support for a new system, modify the large case ++ statement in the `configure' script to recognize reasonable ++ configuration names, and add a description of the system to ++ `etc/MACHINES'. ++ ++ If you've just fixed a problem in an existing configuration file, ++ you should also check `etc/MACHINES' to make sure its descriptions ++ of known problems in that configuration should be updated. */