OpenPKG CVS Repository
http://cvs.openpkg.org/
____________________________________________________________________________
Server: cvs.openpkg.org Name: Steffen Weinreich
Root: /v/openpkg/cvs Email: [EMAIL PROTECTED]
Module: openpkg-src Date: 12-Jun-2005 23:34:19
Branch: HEAD Handle: 2005061222341800
Modified files:
openpkg-src/emacs emacs.patch emacs.spec
Log:
Fixes for NetBSD and amd64, ia64 still broken
Summary:
Revision Changes Path
1.6 +290 -82 openpkg-src/emacs/emacs.patch
1.55 +1 -1 openpkg-src/emacs/emacs.spec
____________________________________________________________________________
patch -p0 <<'@@ .'
Index: openpkg-src/emacs/emacs.patch
============================================================================
$ cvs diff -u -r1.5 -r1.6 emacs.patch
--- openpkg-src/emacs/emacs.patch 7 Feb 2005 14:09:38 -0000 1.5
+++ openpkg-src/emacs/emacs.patch 12 Jun 2005 21:34:18 -0000 1.6
@@ -1,67 +1,78 @@
---- configure.orig Thu Jul 31 09:30:40 2003
-+++ configure Thu Jul 31 09:32:10 2003
-@@ -805,6 +805,16 @@
- machine='' opsys='' unported=no
- case "${canonical}" in
-
-+ ## FreeBSD ports
-+ *-*-freebsd* )
-+ opsys=freebsd
+Index: configure
+--- configure.orig 2003-03-18 15:19:12 +0100
++++ configure 2005-06-12 23:19:03 +0200
+@@ -822,9 +822,13 @@
+ sparc*-*-netbsd*) machine=sparc ;;
+ vax-*-netbsd*) machine=vax ;;
+ arm-*-netbsd*) machine=arm ;;
++ x86_64-*-netbsd*) machine=amd64 ;;
+ esac
+ ;;
+
++ ## Darwin / Mac OS X
++ powerpc-apple-darwin* )
++ machine=powermac opsys=darwin ;;
+ ## OpenBSD ports
+ *-*-openbsd* )
+ opsys=openbsd
+@@ -1628,8 +1632,20 @@
+ ;;
+
+ ## IA-64
+- ia64*-*-linux* )
+- machine=ia64 opsys=gnu-linux
++ ia64*-*-* )
++ machine=ia64
+ case "${canonical}" in
-+ alpha*-*-freebsd*) machine=alpha ;;
-+ i[3456]86-*-freebsd*) machine=intel386 ;;
-+ sparc64-*-freebsd*) machine=sparc ;;
++ *-linux-gnu* ) opsys=gnu-linux ;;
++ *-freebsd* ) opsys=freebsd ;;
+ esac
+ ;;
+
- ## NetBSD ports
- *-*-netbsd* )
- opsys=netbsd
-@@ -1535,9 +1545,19 @@
- NON_GNU_CPP=/usr/ccs/lib/cpp
- RANLIB="ar -ts"
- ;;
-- *-sunos5* | *-solaris* )
-+ *-sunos5.6* | *-solaris2.6* )
- opsys=sol2-5
- NON_GNU_CPP=/usr/ccs/lib/cpp
-+ RANLIB="ar -ts"
-+ ;;
-+ *-sunos5.7* | *-solaris2.7* )
-+ opsys=sol2-5
-+ NON_GNU_CPP=/usr/ccs/lib/cpp
-+ RANLIB="ar -ts"
-+ ;;
-+ *-sunos5* | *-solaris* )
-+ opsys=sol2-8
-+ NON_GNU_CPP=/usr/ccs/lib/cpp
- ;;
- * ) opsys=bsd4-2 ;;
- esac
-@@ -1658,7 +1678,6 @@
- ;;
++ amd64*-*-* )
++ machine=amd64
++ case "${canonical}" in
++ *-linux-gnu* ) opsys=gnu-linux ;;
++ *-freebsd* ) opsys=freebsd ;;
++ esac
+ ;;
+
+ ## Intel 386 machines where we don't care about the manufacturer
+@@ -1659,6 +1675,7 @@
*-sysv4.2uw* ) opsys=unixware; NON_GNU_CPP=/lib/cpp ;;
*-386bsd* ) opsys=386bsd ;;
-- *-freebsd* ) opsys=freebsd ;;
+ *-freebsd* ) opsys=freebsd ;;
++ *-dragonfly* ) opsys=freebsd ;;
*-nextstep* ) opsys=nextstep ;;
## Otherwise, we'll fall through to the generic opsys code at the
bottom.
esac
---- /dev/null Mon Jan 13 19:51:22 2003
-+++ src/s/sol2-8.h Mon Jan 13 18:15:37 2003
-@@ -0,0 +1,10 @@
-+/* Handle Solaris 2.8 and 2.9 */
+@@ -9124,6 +9141,22 @@
+ fi
+
+
++# NETBSD: NetBSD's newer run-time linker fix.
++if test $opsys = netbsd; then
++ if test -f /usr/lib/crti.o; then
++ cat >> confdefs.h <<\EOF
++#define HAVE_NETBSD_CRTI 1
++EOF
+
-+#include "sol2-5.h"
++ fi
++ if test -f /usr/lib/crtn.o; then
++ cat >> confdefs.h <<\EOF
++#define HAVE_NETBSD_CRTN 1
++EOF
+
-+/* Avoid conflict between strings.h and iso/string_iso.h */
++ fi
++fi
+
-+#undef bcmp
-+#undef bcopy
-+#undef bzero
-+
---- src/Makefile.in.orig Mon Dec 17 23:09:32 2001
-+++ src/Makefile.in Mon Oct 21 13:37:26 2002
-@@ -155,6 +155,10 @@
+ # Set up the CFLAGS for real compilation, so we can substitute it.
+ CFLAGS="$REAL_CFLAGS"
+ CPPFLAGS="$REAL_CPPFLAGS"
+Index: src/Makefile.in
+--- src/Makefile.in.orig 2003-01-23 11:34:06 +0100
++++ src/Makefile.in 2005-06-12 23:16:20 +0200
+@@ -155,8 +155,12 @@
/* This holds special options for linking temacs
that should be used for linking anything else. */
#ifndef LD_SWITCH_SYSTEM_TEMACS
@@ -69,12 +80,15 @@
+#define LD_SWITCH_SYSTEM_TEMACS -znocombreloc
+#else
#define LD_SWITCH_SYSTEM_TEMACS
-+#endif
#endif
++#endif
---- src/alloc.c.orig Thu Sep 12 13:50:01 2002
-+++ src/alloc.c Thu Sep 12 13:48:11 2002
-@@ -3723,7 +3723,11 @@
+ /* Some m/MACHINE.h files define this to request special switches in ld. */
+ #ifndef LD_SWITCH_MACHINE
+Index: src/alloc.c
+--- src/alloc.c.orig 2003-01-17 14:45:13 +0100
++++ src/alloc.c 2005-06-12 23:16:20 +0200
+@@ -3723,8 +3723,12 @@
/* This trick flushes the register windows so that all the state of
the process is contained in the stack. */
#ifdef sparc
@@ -82,12 +96,30 @@
+ asm ("flushw");
+#else
asm ("ta 3");
-+#endif
#endif
++#endif
/* Save registers that we need to see on the stack. We need to see
---- src/m/alpha.h.orig Mon Oct 2 23:30:39 2000
-+++ src/m/alpha.h Wed Feb 13 09:05:57 2002
+ registers used to hold register variables and registers used to
+Index: src/config.in
+--- src/config.in.orig 2002-07-09 00:23:31 +0200
++++ src/config.in 2005-06-12 23:16:20 +0200
+@@ -354,6 +354,12 @@
+ /* Define for large files, on AIX-style hosts. */
+ #undef _LARGE_FILES
+
++/* On NetBSD, Define HAVE_NETBSD_CRT{I,N} if a given system has crt{i,n}.o
++ installed under /usr/lib. These should be linked against temacs,
++ or it won't boot. */
++#undef HAVE_NETBSD_CRTI
++#undef HAVE_NETBSD_CRTN
++
+ #undef EMACS_CONFIGURATION
+
+ #undef EMACS_CONFIG_OPTIONS
+Index: src/m/alpha.h
+--- src/m/alpha.h.orig 2000-10-02 16:30:39 +0200
++++ src/m/alpha.h 2005-06-12 23:16:20 +0200
@@ -198,7 +198,7 @@
#ifndef NOT_C_CODE
@@ -97,8 +129,156 @@
#include <alloca.h>
#endif
---- src/m/sparc.h.orig Thu Sep 12 02:25:09 2002
-+++ src/m/sparc.h Thu Sep 12 12:33:36 2002
+Index: src/m/amd64.h
+--- /dev/null 2005-06-12 23:21:40 +0200
++++ src/m/amd64.h 2005-06-12 23:16:20 +0200
+@@ -0,0 +1,131 @@
++/* machine description file for AMD x86-64.
++ Copyright (C) 2002 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="linux" */
++
++#define BITS_PER_LONG 64
++#define BITS_PER_EMACS_INT 64
++
++/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
++ is the most significant byte. */
++
++#undef 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 */
++/* __x86_64 defined automatically. */
++
++/* Use type int rather than a union, to represent Lisp_Object */
++/* This is desirable for most machines. */
++
++#define NO_UNION_TYPE
++
++/* Define the type to use. */
++#define EMACS_INT long
++#define EMACS_UINT unsigned long
++#define SPECIAL_EMACS_INT
++
++/* 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 /* XXX */
++
++/* 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 */ /* XXX */
++#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 /* XXX */
++
++#define PNTR_COMPARISON_TYPE unsigned long
++
++/* On the 64 bit architecture, we can use 60 bits for addresses */
++
++#define VALBITS 60
++
++/* This definition of MARKBIT is necessary because of the comparison of
++ ARRAY_MARK_FLAG and MARKBIT in an #if in lisp.h, which cpp doesn't like.
*/
++
++#define MARKBIT 0x8000000000000000L
++
++/* Define XINT and XUINT so that they can take arguments of type int */
++#define XINT(a) (((long) (a) << (BITS_PER_LONG - VALBITS)) >>
(BITS_PER_LONG - VALBITS))
++#define XUINT(a) ((long) (a) & VALMASK)
++
++/* Define XPNTR to avoid or'ing with DATA_SEG_BITS */
++
++#define XPNTR(a) XUINT (a)
++
++/* #undef START_FILES */ /* XXX */
++/* #define START_FILES pre-crt0.o /usr/lib64/crt1.o /usr/lib64/crti.o */ /*
XXX */
++
++/* #undef LIB_STANDARD */ /* XXX */
++/* #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib64/crtn.o */ /* XXX */
+Index: src/m/ia64.h
+--- src/m/ia64.h.orig 2000-09-29 15:00:37 +0200
++++ src/m/ia64.h 2005-06-12 23:16:20 +0200
+@@ -147,7 +147,7 @@
+
+ #ifndef NOT_C_CODE
+ /* We need these because pointers are larger than the default ints. */
+-# if !defined(__NetBSD__) && !defined(__OpenBSD__)
++# if !defined(__NetBSD__) && !defined(__OpenBSD__) && !defined(__FreeBSD__)
+ # include <alloca.h>
+ # else
+ # include <stdlib.h>
+Index: src/m/sparc.h
+--- src/m/sparc.h.orig 2000-09-26 15:02:21 +0200
++++ src/m/sparc.h 2005-06-12 23:16:20 +0200
@@ -89,7 +89,7 @@
#define PURESIZE 130000
#endif
@@ -108,8 +288,9 @@
/* This really belongs in s/sun.h. */
/* Say that the text segment of a.out includes the header;
---- src/s/freebsd.h.orig Tue Feb 20 19:52:17 2001
-+++ src/s/freebsd.h Mon Feb 18 11:51:50 2002
+Index: src/s/freebsd.h
+--- src/s/freebsd.h.orig 2001-02-20 11:52:17 +0100
++++ src/s/freebsd.h 2005-06-12 23:16:20 +0200
@@ -68,6 +68,11 @@
#define LIBS_SYSTEM -lutil
#if __FreeBSD_version < 400000
@@ -122,8 +303,38 @@
#endif
#define SYSV_SYSTEM_DIR
---- src/s/sol2-4.h.orig 1998-08-28 19:38:20.000000000 -0400
-+++ src/s/sol2-4.h 2004-02-27 16:21:42.615474000 -0500
+Index: src/s/netbsd.h
+--- src/s/netbsd.h.orig 2002-05-31 18:29:02 +0200
++++ src/s/netbsd.h 2005-06-12 23:16:20 +0200
+@@ -60,9 +60,17 @@
+ #endif /* not NO_SHARED_LIBS and not ELF */
+
+ #if !defined (NO_SHARED_LIBS) && defined (__ELF__)
++#if defined(HAVE_NETBSD_CRTI)
++#define START_FILES pre-crt0.o /usr/lib/crt0.o /usr/lib/crti.o
/usr/lib/crtbegin.o
++#else
+ #define START_FILES pre-crt0.o /usr/lib/crt0.o /usr/lib/crtbegin.o
++#endif
+ #define UNEXEC unexelf.o
++#if defined(HAVE_NETBSD_CRTN)
++#define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o
++#else
+ #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o
++#endif
+ #undef LIB_GCC
+ #define LIB_GCC
+ #endif
+@@ -123,3 +131,7 @@
+
+ #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
+
++/* Use sigprocmask(2) and friends instead of sigblock(2); the man page
++ of sigblock says it is obsolete. */
++
++#define POSIX_SIGNALS 1
+Index: src/s/sol2-4.h
+--- src/s/sol2-4.h.orig 1998-08-29 01:38:20 +0200
++++ src/s/sol2-4.h 2005-06-12 23:16:20 +0200
@@ -24,7 +24,7 @@
/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX
has anything in it. It can be empty.
@@ -133,20 +344,17 @@
`./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \
`NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'`
#endif /* GCC */
-Index: configure
---- configure.orig 2005-02-06 12:45:05 +0100
-+++ configure 2005-02-06 12:49:12 +0100
-@@ -1651,9 +1651,12 @@
- ia64*-*-linux* )
- machine=ia64 opsys=gnu-linux
- ;;
-+ ia64*-*-* )
-+ machine=ia64
-+ ;;
-
- ## Intel 386 machines where we don't care about the manufacturer
-- i[3456]86-*-* )
-+ i[3456]86-*-* | amd64-*-* | x86_64-*-* )
- machine=intel386
- case "${canonical}" in
- *-lynxos* ) opsys=lynxos ;;
+Index: src/s/sol2-8.h
+--- /dev/null 2005-06-12 23:21:40 +0200
++++ src/s/sol2-8.h 2005-06-12 23:16:20 +0200
+@@ -0,0 +1,10 @@
++/* Handle Solaris 2.8 and 2.9 */
++
++#include "sol2-5.h"
++
++/* Avoid conflict between strings.h and iso/string_iso.h */
++
++#undef bcmp
++#undef bcopy
++#undef bzero
++
@@ .
patch -p0 <<'@@ .'
Index: openpkg-src/emacs/emacs.spec
============================================================================
$ cvs diff -u -r1.54 -r1.55 emacs.spec
--- openpkg-src/emacs/emacs.spec 24 Mar 2005 11:18:43 -0000 1.54
+++ openpkg-src/emacs/emacs.spec 12 Jun 2005 21:34:18 -0000 1.55
@@ -38,7 +38,7 @@
Group: Editor
License: GPL
Version: %{V_emacs}
-Release: 20050313
+Release: 20050612
# package options
%option with_x11 no
@@ .
______________________________________________________________________
The OpenPKG Project www.openpkg.org
CVS Repository Commit List [email protected]