Updates from 0.2.1 into 0.2.1-inu-1.5
This commit is contained in:
@@ -1,19 +0,0 @@
|
||||
*** gc/Makefile.orig Thu Jun 24 10:08:17 1999
|
||||
--- gc/Makefile Thu Jun 24 10:08:54 1999
|
||||
***************
|
||||
*** 10,16 ****
|
||||
ABI_FLAG=
|
||||
CC=cc $(ABI_FLAG)
|
||||
CXX=CC $(ABI_FLAG)
|
||||
! AS=as $(ABI_FLAG)
|
||||
# The above doesn't work with gas, which doesn't run cpp.
|
||||
# Define AS as `gcc -c -x assembler-with-cpp' instead.
|
||||
# Under Irix 6, you will have to specify the ABI (-o32, -n32, or -64)
|
||||
--- 10,16 ----
|
||||
ABI_FLAG=
|
||||
CC=cc $(ABI_FLAG)
|
||||
CXX=CC $(ABI_FLAG)
|
||||
! AS=gcc -c -x assembler-with-cpp
|
||||
# The above doesn't work with gas, which doesn't run cpp.
|
||||
# Define AS as `gcc -c -x assembler-with-cpp' instead.
|
||||
# Under Irix 6, you will have to specify the ABI (-o32, -n32, or -64)
|
110
Patches/armlinux
110
Patches/armlinux
@@ -1,110 +0,0 @@
|
||||
From lars@junk.nocrew.org Tue Mar 7 04:44 EST 2000
|
||||
Return-Path: <lars@junk.nocrew.org>
|
||||
Received: from ei5sun.yz.yamagata-u.ac.jp (ei5sun.yz.yamagata-u.ac.jp [133.24.114.42])
|
||||
by ei5hp710.yz.yamagata-u.ac.jp (8.9.3/8.9.3) with ESMTP id EAA25953
|
||||
for <aito@ei5hp710.yz.yamagata-u.ac.jp>; Tue, 7 Mar 2000 04:44:51 -0500 (EST)
|
||||
Received: from junk.nocrew.org (mail@[212.73.17.42]) by ei5sun.yz.yamagata-u.ac.jp (8.8.0/3.5Wbeta) with ESMTP id SAA07952 for <aito@ei5sun.yz.yamagata-u.ac.jp>; Tue, 7 Mar 2000 18:54:43 +0900 (JST)
|
||||
Received: from lars by junk.nocrew.org with local (Exim 3.03 #1 (Debian))
|
||||
for aito@ei5sun.yz.yamagata-u.ac.jp
|
||||
id 12SGVE-0001rh-00; Tue, 07 Mar 2000 10:42:08 +0100
|
||||
To: aito@ei5sun.yz.yamagata-u.ac.jp
|
||||
Subject: ARMLinux patch
|
||||
From: lars brinkhoff <lars@nocrew.org>
|
||||
Date: 07 Mar 2000 10:42:08 +0100
|
||||
Message-ID: <85zosbjevj.fsf@junk.nocrew.org>
|
||||
Lines: 89
|
||||
User-Agent: Gnus/5.0803 (Gnus v5.8.3) Emacs/20.5
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=us-ascii
|
||||
Sender: lars brinkhoff <lars@junk.nocrew.org>
|
||||
|
||||
This patch is an attempt to make w3m version 0.1.6 work in ARMLinux.
|
||||
It seems to work well.
|
||||
|
||||
--- gc/gcconfig.h.org Wed Jan 12 05:23:37 2000
|
||||
+++ gc/gcconfig.h Sun Mar 5 14:24:52 2000
|
||||
@@ -151,6 +151,10 @@
|
||||
# define SPARC
|
||||
# define mach_type_known
|
||||
# endif
|
||||
+# if defined(LINUX) && (defined(__arm__) || defined(arm))
|
||||
+# define ARM
|
||||
+# define mach_type_known
|
||||
+# endif
|
||||
# if defined(__alpha) || defined(__alpha__)
|
||||
# define ALPHA
|
||||
# if !defined(LINUX)
|
||||
@@ -985,6 +989,39 @@
|
||||
# define DATASTART (ptr_t)GC_SysVGetDataStart(0x10000, &_etext)
|
||||
# define DATAEND (&_end)
|
||||
# define HEURISTIC2
|
||||
+# endif
|
||||
+
|
||||
+# ifdef ARM
|
||||
+# define MACH_TYPE "ARM"
|
||||
+# ifdef LINUX
|
||||
+# define OS_TYPE "LINUX"
|
||||
+# define HEURISTIC1
|
||||
+# define STACKBOTTOM ((ptr_t) 0xbffffffc)
|
||||
+# ifdef __ELF__
|
||||
+# define DYNAMIC_LOADING
|
||||
+# include <features.h>
|
||||
+# if defined(__GLIBC__) && __GLIBC__ >= 2
|
||||
+ extern int __data_start;
|
||||
+# define DATASTART ((ptr_t)(&__data_start))
|
||||
+# else
|
||||
+ extern char **__environ;
|
||||
+# define DATASTART ((ptr_t)(&__environ))
|
||||
+ /* hideous kludge: __environ is the first */
|
||||
+ /* word in crt0.o, and delimits the start */
|
||||
+ /* of the data segment, no matter which */
|
||||
+ /* ld options were passed through. */
|
||||
+ /* We could use _etext instead, but that */
|
||||
+ /* would include .rodata, which may */
|
||||
+ /* contain large read-only data tables */
|
||||
+ /* that we'd rather not scan. */
|
||||
+# endif
|
||||
+ extern int _end;
|
||||
+# define DATAEND (&_end)
|
||||
+# else
|
||||
+ ARMLinux non elf ?
|
||||
+# endif
|
||||
+# endif
|
||||
+# define ALIGNMENT 4
|
||||
# endif
|
||||
|
||||
# ifndef STACK_GROWS_UP
|
||||
diff -ur gc/mach_dep.c w3m-0.1.6.lars/gc/mach_dep.c
|
||||
--- gc/mach_dep.c.org Wed Jan 12 05:23:37 2000
|
||||
+++ gc/mach_dep.c Thu Jan 27 21:28:39 2000
|
||||
@@ -337,7 +337,7 @@
|
||||
/* other machines... */
|
||||
# if !(defined M68K) && !(defined VAX) && !(defined RT)
|
||||
# if !(defined SPARC) && !(defined I386) && !(defined NS32K)
|
||||
-# if !defined(POWERPC) && !defined(UTS4)
|
||||
+# if !defined(POWERPC) && !defined(UTS4) && !defined(ARM)
|
||||
--> bad news <--
|
||||
# endif
|
||||
# endif
|
||||
diff -ur w3m/gc/os_dep.c w3m-0.1.6.lars/gc/os_dep.c
|
||||
--- gc/os_dep.c.org Wed Jan 12 05:23:37 2000
|
||||
+++ gc/os_dep.c Thu Jan 27 21:37:27 2000
|
||||
@@ -72,7 +72,7 @@
|
||||
# define NEED_FIND_LIMIT
|
||||
# endif
|
||||
|
||||
-# if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA))
|
||||
+# if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA) || defined (ARM))
|
||||
# define NEED_FIND_LIMIT
|
||||
# endif
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
# define OPT_PROT_EXEC 0
|
||||
#endif
|
||||
|
||||
-#if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA))
|
||||
+#if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA) || defined(ARM))
|
||||
/* The I386 case can be handled without a search. The Alpha case */
|
||||
/* used to be handled differently as well, but the rules changed */
|
||||
/* for recent Linux versions. This seems to be the easiest way to */
|
||||
|
209
Patches/ews4800
209
Patches/ews4800
@@ -1,34 +1,175 @@
|
||||
--- XMakefile.orig Mon Mar 19 10:47:56 2001
|
||||
+++ XMakefile Mon Mar 19 21:03:34 2001
|
||||
@@ -65,7 +65,7 @@
|
||||
$(CC) $(CFLAGS) -o $(HELPER) w3mhelperpanel.o $(LIBS)
|
||||
|
||||
gc/gc.a:
|
||||
- cd gc; make CC='$(CC)' CFLAGS='$(GCCFLAGS)'
|
||||
+ cd gc; make CC='$(CC)' CFLAGS='$(GCCFLAGS) -Dmips'
|
||||
|
||||
install: $(TARGETS)
|
||||
-$(MKDIR) $(DESTDIR)$(BIN_DIR)
|
||||
--- gc/Makefile.orig Tue Jan 4 14:46:50 2000
|
||||
+++ gc/Makefile Thu Mar 22 18:10:10 2001
|
||||
@@ -7,7 +7,7 @@
|
||||
# and runs some tests of collector and cords. Does not add cords or
|
||||
# c++ interface to gc.a
|
||||
# cord/de - builds dumb editor based on cords.
|
||||
-ABI_FLAG=
|
||||
+ABI_FLAG=-Kconform_pic
|
||||
CC=cc $(ABI_FLAG)
|
||||
CXX=CC $(ABI_FLAG)
|
||||
AS=as $(ABI_FLAG)
|
||||
--- gc/gcconfig.h.orig Tue Jun 6 14:39:29 2000
|
||||
+++ gc/gcconfig.h Mon Mar 19 21:02:51 2001
|
||||
@@ -64,7 +64,8 @@
|
||||
# endif
|
||||
# if defined(mips) || defined(__mips)
|
||||
# define MIPS
|
||||
-# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__)
|
||||
+# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__) ||\
|
||||
+ defined(nec_ews)
|
||||
# define ULTRIX
|
||||
# else
|
||||
# if !defined(LINUX)
|
||||
diff -bcrN gc.org/doc/README.ews4800 gc/doc/README.ews4800
|
||||
*** gc.org/doc/README.ews4800 Thu Jan 1 09:00:00 1970
|
||||
--- gc/doc/README.ews4800 Wed Jul 25 17:38:57 2001
|
||||
***************
|
||||
*** 0 ****
|
||||
--- 1,75 ----
|
||||
+ GC on EWS4800
|
||||
+ -------------
|
||||
+
|
||||
+ 1. About EWS4800
|
||||
+ EWS4800 is 32bit/64bit workstation.
|
||||
+
|
||||
+ Vender: NEC Corporation
|
||||
+ OS: UX/4800 R9.* - R13.* (SystemV R4.2)
|
||||
+ CPU: R4000, R4400, R10000 (MIPS)
|
||||
+
|
||||
+ 2. Compiler
|
||||
+
|
||||
+ 32bit:
|
||||
+ Use ANSI C compiler.
|
||||
+ CC = /usr/abiccs/bin/cc
|
||||
+
|
||||
+ 64bit:
|
||||
+ Use 64bit ANSI C compiler.
|
||||
+ CC = /usr/ccs64/bin/cc
|
||||
+ AR = /usr/ccs64/bin/ar
|
||||
+
|
||||
+ 3. ELF file format
|
||||
+ *** Caution: The following infomation is empirical. ***
|
||||
+
|
||||
+ 32bit:
|
||||
+ ELF file has an unique format. (See a.out(4) and end(3C).)
|
||||
+
|
||||
+ &_start
|
||||
+ : text segment
|
||||
+ &etext
|
||||
+ DATASTART
|
||||
+ : data segment (initialized)
|
||||
+ &edata
|
||||
+ DATASTART2
|
||||
+ : data segment (uninitialized)
|
||||
+ &end
|
||||
+
|
||||
+ Here, DATASTART and DATASTART2 are macros of GC, and are defined as
|
||||
+ the following equations. (See include/private/gcconfig.h.)
|
||||
+ The algorithm for DATASTART is similar with the function
|
||||
+ GC_SysVGetDataStart() in os_dep.c.
|
||||
+
|
||||
+ DATASTART = ((&etext + 0x3ffff) & ~0x3ffff) + (&etext & 0xffff)
|
||||
+
|
||||
+ Dynamically linked:
|
||||
+ DATASTART2 = (&_gp + 0x8000 + 0x3ffff) & ~0x3ffff
|
||||
+
|
||||
+ Statically linked:
|
||||
+ DATASTART2 = &edata
|
||||
+
|
||||
+ GC has to check addresses both between DATASTART and &edata, and
|
||||
+ between DATASTART2 and &end. If a program accesses between &etext
|
||||
+ and DATASTART, or between &edata and DATASTART2, the segmentation
|
||||
+ error occurs and the program stops.
|
||||
+
|
||||
+ If a program is statically linked, there is not a gap between
|
||||
+ &edata and DATASTART2. The global symbol &_DYNAMIC_LINKING is used
|
||||
+ for the detection.
|
||||
+
|
||||
+ 64bit:
|
||||
+ ELF file has a simple format. (See end(3C).)
|
||||
+
|
||||
+ _ftext
|
||||
+ : text segment
|
||||
+ _etext
|
||||
+ _fdata = DATASTART
|
||||
+ : data segment (initialized)
|
||||
+ _edata
|
||||
+ _fbss
|
||||
+ : data segment (uninitialized)
|
||||
+ _end = DATAEND
|
||||
+
|
||||
+ --
|
||||
+ Hironori SAKAMOTO <hsaka@mth.biglobe.ne.jp>
|
||||
+
|
||||
diff -bcrN gc.org/include/private/gcconfig.h gc/include/private/gcconfig.h
|
||||
*** gc.org/include/private/gcconfig.h Sun Jul 1 06:29:27 2001
|
||||
--- gc/include/private/gcconfig.h Wed Jul 25 17:38:57 2001
|
||||
***************
|
||||
*** 75,83 ****
|
||||
# endif
|
||||
# define mach_type_known
|
||||
# endif
|
||||
! # if defined(mips) || defined(__mips)
|
||||
# define MIPS
|
||||
! # if !defined(LINUX)
|
||||
# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__)
|
||||
# define ULTRIX
|
||||
# else
|
||||
--- 75,86 ----
|
||||
# endif
|
||||
# define mach_type_known
|
||||
# endif
|
||||
! # if defined(mips) || defined(__mips) || defined(_mips)
|
||||
# define MIPS
|
||||
! # if defined(nec_ews) || defined(_nec_ews)
|
||||
! # define EWS4800
|
||||
! # endif
|
||||
! # if !defined(LINUX) && !defined(EWS4800)
|
||||
# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__)
|
||||
# define ULTRIX
|
||||
# else
|
||||
***************
|
||||
*** 1083,1088 ****
|
||||
--- 1086,1114 ----
|
||||
/* instead. But some kernel versions seem to give the wrong */
|
||||
/* value from /proc. */
|
||||
# endif /* Linux */
|
||||
+ # ifdef EWS4800
|
||||
+ # define HEURISTIC2
|
||||
+ # if defined(_MIPS_SZPTR) && (_MIPS_SZPTR == 64)
|
||||
+ extern int _fdata[], _end[];
|
||||
+ # define DATASTART ((ptr_t)_fdata)
|
||||
+ # define DATAEND ((ptr_t)_end)
|
||||
+ # define CPP_WORDSZ _MIPS_SZPTR
|
||||
+ # define ALIGNMENT (_MIPS_SZPTR/8)
|
||||
+ # else
|
||||
+ extern int etext, edata, end;
|
||||
+ extern int _DYNAMIC_LINKING, _gp;
|
||||
+ # define DATASTART ((ptr_t)((((word)&etext + 0x3ffff) & ~0x3ffff) \
|
||||
+ + ((word)&etext & 0xffff)))
|
||||
+ # define DATAEND (&edata)
|
||||
+ # define DATASTART2 (&_DYNAMIC_LINKING \
|
||||
+ ? (ptr_t)(((word)&_gp + 0x8000 + 0x3ffff) & ~0x3ffff) \
|
||||
+ : (ptr_t)&edata)
|
||||
+ # define DATAEND2 (&end)
|
||||
+ # define ALIGNMENT 4
|
||||
+ # endif
|
||||
+ # define OS_TYPE "EWS4800"
|
||||
+ # define USE_GENERIC_PUSH_REGS 1
|
||||
+ # endif
|
||||
# ifdef ULTRIX
|
||||
# define HEURISTIC2
|
||||
# define DATASTART (ptr_t)0x10000000
|
||||
diff -bcrN gc.org/mach_dep.c gc/mach_dep.c
|
||||
*** gc.org/mach_dep.c Thu Jun 28 05:54:23 2001
|
||||
--- gc/mach_dep.c Wed Jul 25 17:38:57 2001
|
||||
***************
|
||||
*** 429,435 ****
|
||||
*i = 0;
|
||||
}
|
||||
# if defined(POWERPC) || defined(MSWIN32) || defined(MSWINCE) \
|
||||
! || defined(UTS4) || defined(LINUX)
|
||||
(void) setjmp(regs);
|
||||
# else
|
||||
(void) _setjmp(regs);
|
||||
--- 429,435 ----
|
||||
*i = 0;
|
||||
}
|
||||
# if defined(POWERPC) || defined(MSWIN32) || defined(MSWINCE) \
|
||||
! || defined(UTS4) || defined(LINUX) || defined(EWS4800)
|
||||
(void) setjmp(regs);
|
||||
# else
|
||||
(void) _setjmp(regs);
|
||||
diff -bcrN gc.org/os_dep.c gc/os_dep.c
|
||||
*** gc.org/os_dep.c Tue Jun 26 11:32:26 2001
|
||||
--- gc/os_dep.c Wed Jul 25 17:38:57 2001
|
||||
***************
|
||||
*** 1088,1093 ****
|
||||
--- 1088,1096 ----
|
||||
GC_add_roots_inner(DATASTART, (char *)sbrk(0), FALSE);
|
||||
# else
|
||||
GC_add_roots_inner(DATASTART, (char *)(DATAEND), FALSE);
|
||||
+ # if defined(DATASTART2)
|
||||
+ GC_add_roots_inner(DATASTART2, (char *)(DATAEND2), FALSE);
|
||||
+ # endif
|
||||
# endif
|
||||
# endif
|
||||
# if !defined(PCR) && (defined(NEXT) || defined(MACOSX))
|
||||
|
@@ -1,25 +0,0 @@
|
||||
Install note for HP-UX
|
||||
|
||||
If you are running HP-UX 11 or later on PA-RISC 2.0, you
|
||||
have to apply the following patch on GC library. This patch
|
||||
is contributed by Dave Eaton <dwe@arde.com>.
|
||||
|
||||
If you want to use HP C compiler, answer
|
||||
|
||||
Input your favorite C-compiler.
|
||||
(Default: cc) cc -Aa -D_HPUX_SOURCE
|
||||
|
||||
If you use just 'cc' without options, you can't compile w3m.
|
||||
If you are using gcc, no option is needed.
|
||||
|
||||
----------------------------------------------------------------------
|
||||
--- gc/gcconfig.h.original Wed May 19 01:38:55 1999
|
||||
+++ gc/gcconfig.h Tue Jun 8 12:38:22 1999
|
||||
@@ -125,6 +125,7 @@
|
||||
# define mach_type_known
|
||||
# endif
|
||||
# if defined(_PA_RISC1_0) || defined(_PA_RISC1_1) \
|
||||
+ || defined(_PA_RISC2_0) \
|
||||
|| defined(hppa) || defined(__hppa__)
|
||||
# define HP_PA
|
||||
# define mach_type_known
|
@@ -1,10 +0,0 @@
|
||||
--- gc/gcconfig.h.org
|
||||
+++ gc/gcconfig.h
|
||||
@@ -601,7 +601,7 @@
|
||||
extern int _end;
|
||||
# define DATAEND (&_end)
|
||||
# define SVR4
|
||||
-# define STACKBOTTOM ((ptr_t) 0xf0000000)
|
||||
+# define STACKBOTTOM ((ptr_t) 0xeffff000)
|
||||
# endif
|
||||
# endif
|
@@ -1,41 +0,0 @@
|
||||
Jeroen Scheerder <J.Scheerder@cwi.nl> (by way of Jeroen Scheerder)
|
||||
Subject: w3m 0.1.6 on Mac OS X
|
||||
Content-Type: text/plain; charset="us-ascii"
|
||||
|
||||
Hi,
|
||||
|
||||
I've compiled w3m successfully on Mac OS X (DP3). I'm including
|
||||
patches, mainly dealing with compiler complaints about possible use of
|
||||
uninitialized data.
|
||||
|
||||
It compiles with one warning, still:
|
||||
|
||||
url.c:799: warning: variable `p' might be clobbered by `longjmp' or
|
||||
`vfork'
|
||||
|
||||
|
||||
On a related note: I had to modify the makefile; there is no `m'
|
||||
library, and no `termcap' library, and they're not needed as well --
|
||||
but they will cause an ld failure, when present on the ld command line.
|
||||
|
||||
Context diffs (against a 21/1/2000 0.1.6) are included, including the
|
||||
(trivial) patch to make Boehm gc compile.
|
||||
|
||||
|
||||
|
||||
*** gc/gcconfig.h Mon Mar 6 12:16:04 2000
|
||||
--- gc/gcconfig.h.org Wed Jan 12 04:23:37 2000
|
||||
***************
|
||||
*** 180,190 ****
|
||||
# define POWERPC
|
||||
# define mach_type_known
|
||||
# endif
|
||||
- # if defined(__APPLE__)
|
||||
- # define MACOSX
|
||||
- # define POWERPC
|
||||
- # define mach_type_known
|
||||
- # endif
|
||||
# if defined(NeXT) && defined(mc68000)
|
||||
# define M68K
|
||||
# define NEXT
|
||||
--- 180,185 ----
|
147
Patches/macppc
147
Patches/macppc
@@ -1,147 +0,0 @@
|
||||
Here is a patch to port GC library to NetBSD/macppc. If you are
|
||||
using NetBSD on PowerMac, apply this patch first.
|
||||
|
||||
This patch is provided by K. Sunagawa (kei_sun@ba2.so-net.ne.jp).
|
||||
|
||||
Index: gc/dyn_load.c
|
||||
===================================================================
|
||||
RCS file: /cvsroot/w3m/gc/dyn_load.c,v
|
||||
retrieving revision 1.1.1.2
|
||||
retrieving revision 1.2
|
||||
diff -u -u -r1.1.1.2 -r1.2
|
||||
--- gc/dyn_load.c 1999/06/02 19:29:13 1.1.1.2
|
||||
+++ gc/dyn_load.c 1999/06/03 12:44:49 1.2
|
||||
@@ -48,7 +48,8 @@
|
||||
#if !defined(SUNOS4) && !defined(SUNOS5DL) && !defined(IRIX5) && \
|
||||
!defined(MSWIN32) && !(defined(ALPHA) && defined(OSF1)) && \
|
||||
!defined(HP_PA) && !(defined(LINUX) && defined(__ELF__)) && \
|
||||
- !defined(RS6000) && !defined(SCO_ELF)
|
||||
+ !defined(RS6000) && !defined(SCO_ELF) && \
|
||||
+ !(defined(NETBSD) && defined(POWERPC))
|
||||
--> We only know how to find data segments of dynamic libraries for the
|
||||
--> above. Additional SVR4 variants might not be too
|
||||
--> hard to add.
|
||||
@@ -260,14 +261,22 @@
|
||||
# endif /* !USE_PROC ... */
|
||||
# endif /* SUNOS */
|
||||
|
||||
-#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF)
|
||||
+#if defined(LINUX) && defined(__ELF__) || defined(SCO_ELF) || \
|
||||
+ (defined(NETBSD) && defined(POWERPC))
|
||||
|
||||
/* Dynamic loading code for Linux running ELF. Somewhat tested on
|
||||
* Linux/x86, untested but hopefully should work on Linux/Alpha.
|
||||
* This code was derived from the Solaris/ELF support. Thanks to
|
||||
* whatever kind soul wrote that. - Patrick Bridges */
|
||||
|
||||
+#if defined(NETBSD)
|
||||
+#include <sys/exec_elf.h>
|
||||
+#define DT_DEBUG 21
|
||||
+#define PT_LOAD 1
|
||||
+#define PF_W 0x2
|
||||
+#else
|
||||
#include <elf.h>
|
||||
+#endif
|
||||
#include <link.h>
|
||||
|
||||
/* Newer versions of Linux/Alpha and Linux/x86 define this macro. We
|
||||
Index: gc/gcconfig.h
|
||||
===================================================================
|
||||
RCS file: /cvsroot/w3m/gc/gcconfig.h,v
|
||||
retrieving revision 1.1.1.2
|
||||
retrieving revision 1.2
|
||||
diff -u -u -r1.1.1.2 -r1.2
|
||||
--- gc/gcconfig.h 1999/06/02 19:29:18 1.1.1.2
|
||||
+++ gc/gcconfig.h 1999/06/03 12:44:49 1.2
|
||||
@@ -48,6 +48,11 @@
|
||||
# define NETBSD
|
||||
# define mach_type_known
|
||||
# endif
|
||||
+# if defined(__NetBSD__) && defined(__powerpc__)
|
||||
+# define POWERPC
|
||||
+# define NETBSD
|
||||
+# define mach_type_known
|
||||
+# endif
|
||||
# if defined(vax)
|
||||
# define VAX
|
||||
# ifdef ultrix
|
||||
@@ -486,8 +491,8 @@
|
||||
|
||||
# ifdef POWERPC
|
||||
# define MACH_TYPE "POWERPC"
|
||||
-# define ALIGNMENT 2
|
||||
# ifdef MACOS
|
||||
+# define ALIGNMENT 2
|
||||
# ifndef __LOWMEM__
|
||||
# include <LowMem.h>
|
||||
# endif
|
||||
@@ -497,6 +502,7 @@
|
||||
# define DATAEND /* not needed */
|
||||
# endif
|
||||
# ifdef LINUX
|
||||
+# define ALIGNMENT 2
|
||||
# define OS_TYPE "LINUX"
|
||||
# define HEURISTIC1
|
||||
# undef STACK_GRAN
|
||||
@@ -504,6 +510,14 @@
|
||||
# define DATASTART GC_data_start
|
||||
extern int _end;
|
||||
# define DATAEND (&_end)
|
||||
+# endif
|
||||
+# ifdef NETBSD
|
||||
+# define ALIGNMENT 4
|
||||
+# define OS_TYPE "NETBSD"
|
||||
+# define HEURISTIC2
|
||||
+ extern char etext;
|
||||
+# define DATASTART GC_data_start
|
||||
+# define DYNAMIC_LOADING
|
||||
# endif
|
||||
# endif
|
||||
|
||||
Index: gc/misc.c
|
||||
===================================================================
|
||||
RCS file: /cvsroot/w3m/gc/misc.c,v
|
||||
retrieving revision 1.1.1.1
|
||||
retrieving revision 1.2
|
||||
diff -u -u -r1.1.1.1 -r1.2
|
||||
--- gc/misc.c 1999/06/02 19:23:56 1.1.1.1
|
||||
+++ gc/misc.c 1999/06/03 12:44:50 1.2
|
||||
@@ -433,6 +433,9 @@
|
||||
# if defined(LINUX) && defined(SPARC)
|
||||
GC_init_linuxsparc();
|
||||
# endif
|
||||
+# if defined(NETBSD) && defined(POWERPC)
|
||||
+ GC_init_netbsd_powerpc();
|
||||
+# endif
|
||||
# ifdef SOLARIS_THREADS
|
||||
GC_thr_init();
|
||||
/* We need dirty bits in order to find live stack sections. */
|
||||
Index: gc/os_dep.c
|
||||
===================================================================
|
||||
RCS file: /cvsroot/w3m/gc/os_dep.c,v
|
||||
retrieving revision 1.1.1.2
|
||||
retrieving revision 1.2
|
||||
diff -u -u -r1.1.1.2 -r1.2
|
||||
--- gc/os_dep.c 1999/06/02 19:29:10 1.1.1.2
|
||||
+++ gc/os_dep.c 1999/06/03 12:44:50 1.2
|
||||
@@ -84,6 +84,19 @@
|
||||
# include <machine/trap.h>
|
||||
#endif
|
||||
|
||||
+#if defined(NETBSD) && defined(POWERPC)
|
||||
+ ptr_t GC_data_start;
|
||||
+
|
||||
+ void GC_init_netbsd_powerpc()
|
||||
+ {
|
||||
+ extern ptr_t GC_find_limit();
|
||||
+ extern char **environ;
|
||||
+ /* This may need to be environ, without the underscore, for */
|
||||
+ /* some versions. */
|
||||
+ GC_data_start = GC_find_limit((ptr_t)&environ, FALSE);
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
#ifdef AMIGA
|
||||
# include <proto/exec.h>
|
||||
# include <proto/dos.h>
|
||||
|
184
Patches/mipsel
184
Patches/mipsel
@@ -1,184 +0,0 @@
|
||||
diff -ur gc/gcconfig.h w3m/gc/gcconfig.h
|
||||
--- gc/gcconfig.h Tue Jan 4 14:46:50 2000
|
||||
+++ gc/gcconfig.h Fri May 26 00:30:56 2000
|
||||
@@ -67,11 +67,13 @@
|
||||
# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__)
|
||||
# define ULTRIX
|
||||
# else
|
||||
-# if defined(_SYSTYPE_SVR4) || defined(SYSTYPE_SVR4) || defined(__SYSTYPE_SVR4__)
|
||||
-# define IRIX5 /* or IRIX 6.X */
|
||||
-# else
|
||||
-# define RISCOS /* or IRIX 4.X */
|
||||
-# endif
|
||||
+# if !defined(LINUX)
|
||||
+# if defined(_SYSTYPE_SVR4) || defined(SYSTYPE_SVR4) || defined(__SYSTYPE_SVR4__)
|
||||
+# define IRIX5 /* or IRIX 6.X */
|
||||
+# else
|
||||
+# define RISCOS /* or IRIX 4.X */
|
||||
+# endif
|
||||
+# endif
|
||||
# endif
|
||||
# define mach_type_known
|
||||
# endif
|
||||
@@ -836,49 +838,58 @@
|
||||
|
||||
# ifdef MIPS
|
||||
# define MACH_TYPE "MIPS"
|
||||
-# ifndef IRIX5
|
||||
-# define DATASTART (ptr_t)0x10000000
|
||||
+# ifdef LINUX
|
||||
+# define OS_TYPE "LINUX"
|
||||
+ extern int __data_start;
|
||||
+# define DATASTART ((ptr_t)(&__data_start))
|
||||
+# define ALIGNMENT 4
|
||||
+# define USE_GENERIC_PUSH_REGS 1
|
||||
+# define STACKBOTTOM 0x80000000
|
||||
+# else /* LINUX */
|
||||
+# ifndef IRIX5
|
||||
+# define DATASTART (ptr_t)0x10000000
|
||||
/* Could probably be slightly higher since */
|
||||
/* startup code allocates lots of stuff. */
|
||||
-# else
|
||||
- extern int _fdata;
|
||||
-# define DATASTART ((ptr_t)(&_fdata))
|
||||
-# ifdef USE_MMAP
|
||||
-# define HEAP_START (ptr_t)0x30000000
|
||||
# else
|
||||
-# define HEAP_START DATASTART
|
||||
-# endif
|
||||
+ extern int _fdata;
|
||||
+# define DATASTART ((ptr_t)(&_fdata))
|
||||
+# ifdef USE_MMAP
|
||||
+# define HEAP_START (ptr_t)0x30000000
|
||||
+# else
|
||||
+# define HEAP_START DATASTART
|
||||
+# endif
|
||||
/* Lowest plausible heap address. */
|
||||
/* In the MMAP case, we map there. */
|
||||
/* In either case it is used to identify */
|
||||
/* heap sections so they're not */
|
||||
/* considered as roots. */
|
||||
-# endif /* IRIX5 */
|
||||
-# define HEURISTIC2
|
||||
+# endif /* IRIX5 */
|
||||
+# define HEURISTIC2
|
||||
/* # define STACKBOTTOM ((ptr_t)0x7fff8000) sometimes also works. */
|
||||
-# ifdef ULTRIX
|
||||
-# define OS_TYPE "ULTRIX"
|
||||
-# define ALIGNMENT 4
|
||||
-# endif
|
||||
-# ifdef RISCOS
|
||||
-# define OS_TYPE "RISCOS"
|
||||
-# define ALIGNMENT 4 /* Required by hardware */
|
||||
-# endif
|
||||
-# ifdef IRIX5
|
||||
-# define OS_TYPE "IRIX5"
|
||||
-# define MPROTECT_VDB
|
||||
-# ifdef _MIPS_SZPTR
|
||||
-# define CPP_WORDSZ _MIPS_SZPTR
|
||||
-# define ALIGNMENT (_MIPS_SZPTR/8)
|
||||
-# if CPP_WORDSZ != 64
|
||||
+# ifdef ULTRIX
|
||||
+# define OS_TYPE "ULTRIX"
|
||||
+# define ALIGNMENT 4
|
||||
+# endif
|
||||
+# ifdef RISCOS
|
||||
+# define OS_TYPE "RISCOS"
|
||||
+# define ALIGNMENT 4 /* Required by hardware */
|
||||
+# endif
|
||||
+# ifdef IRIX5
|
||||
+# define OS_TYPE "IRIX5"
|
||||
+# define MPROTECT_VDB
|
||||
+# ifdef _MIPS_SZPTR
|
||||
+# define CPP_WORDSZ _MIPS_SZPTR
|
||||
+# define ALIGNMENT (_MIPS_SZPTR/8)
|
||||
+# if CPP_WORDSZ != 64
|
||||
+# define ALIGN_DOUBLE
|
||||
+# endif
|
||||
+# else
|
||||
+# define ALIGNMENT 4
|
||||
# define ALIGN_DOUBLE
|
||||
# endif
|
||||
-# else
|
||||
-# define ALIGNMENT 4
|
||||
-# define ALIGN_DOUBLE
|
||||
-# endif
|
||||
-# define DYNAMIC_LOADING
|
||||
-# endif
|
||||
+# define DYNAMIC_LOADING
|
||||
+# endif
|
||||
+# endif
|
||||
# endif
|
||||
|
||||
# ifdef RS6000
|
||||
diff -ur gc/mach_dep.c w3m/gc/mach_dep.c
|
||||
--- gc/mach_dep.c Tue Jan 4 14:46:50 2000
|
||||
+++ gc/mach_dep.c Fri May 26 00:34:11 2000
|
||||
@@ -74,6 +74,21 @@
|
||||
# ifdef RT
|
||||
register long TMP_SP; /* must be bound to r11 */
|
||||
# endif
|
||||
+# if defined(MIPS) && defined(LINUX)
|
||||
+# define call_push(x) asm("move $4," x ";"); asm("jal GC_push_one")
|
||||
+ call_push("$2");
|
||||
+ call_push("$3");
|
||||
+ call_push("$16");
|
||||
+ call_push("$17");
|
||||
+ call_push("$18");
|
||||
+ call_push("$19");
|
||||
+ call_push("$20");
|
||||
+ call_push("$21");
|
||||
+ call_push("$22");
|
||||
+ call_push("$23");
|
||||
+ call_push("$30");
|
||||
+# undef call_push
|
||||
+# endif /* MIPS && LINUX */
|
||||
# ifdef VAX
|
||||
/* VAX - generic code below does not work under 4.2 */
|
||||
/* r1 through r5 are caller save, and therefore */
|
||||
@@ -338,7 +353,9 @@
|
||||
# if !(defined M68K) && !(defined VAX) && !(defined RT)
|
||||
# if !(defined SPARC) && !(defined I386) && !(defined NS32K)
|
||||
# if !defined(POWERPC) && !defined(UTS4)
|
||||
+# if (!defined(MIPS) && !defined(LINUX))
|
||||
--> bad news <--
|
||||
+# endif
|
||||
# endif
|
||||
# endif
|
||||
# endif
|
||||
diff -ur gc/misc.c w3m/gc/misc.c
|
||||
--- gc/misc.c Tue Jan 4 14:46:50 2000
|
||||
+++ gc/misc.c Fri May 26 00:52:59 2000
|
||||
@@ -433,7 +433,8 @@
|
||||
# ifdef MSWIN32
|
||||
GC_init_win32();
|
||||
# endif
|
||||
-# if defined(LINUX) && (defined(POWERPC) || defined(ALPHA) || defined(SPARC))
|
||||
+# if defined(LINUX) && (defined(POWERPC) || defined(ALPHA) || \
|
||||
+ defined(SPARC) || defined(MIPS))
|
||||
GC_init_linux_data_start();
|
||||
# endif
|
||||
# ifdef SOLARIS_THREADS
|
||||
diff -ur gc/os_dep.c w3m/gc/os_dep.c
|
||||
--- gc/os_dep.c Tue Jan 4 14:46:50 2000
|
||||
+++ gc/os_dep.c Fri May 26 00:37:07 2000
|
||||
@@ -72,7 +72,8 @@
|
||||
# define NEED_FIND_LIMIT
|
||||
# endif
|
||||
|
||||
-# if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA))
|
||||
+# if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || \
|
||||
+ defined(ALPHA) || defined(MIPS))
|
||||
# define NEED_FIND_LIMIT
|
||||
# endif
|
||||
|
||||
@@ -139,7 +140,8 @@
|
||||
# define OPT_PROT_EXEC 0
|
||||
#endif
|
||||
|
||||
-#if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || defined(ALPHA))
|
||||
+#if defined(LINUX) && (defined(POWERPC) || defined(SPARC) || \
|
||||
+ defined(ALPHA) || defined(MIPS))
|
||||
/* The I386 case can be handled without a search. The Alpha case */
|
||||
/* used to be handled differently as well, but the rules changed */
|
||||
/* for recent Linux versions. This seems to be the easiest way to */
|
@@ -1,27 +0,0 @@
|
||||
diff -ur gc/Makefile gc/Makefile
|
||||
--- gc/Makefile Sat Jul 24 02:53:34 1999
|
||||
+++ gc/Makefile Tue Nov 30 14:29:50 1999
|
||||
@@ -7,7 +7,7 @@
|
||||
# and runs some tests of collector and cords. Does not add cords or
|
||||
# c++ interface to gc.a
|
||||
# cord/de - builds dumb editor based on cords.
|
||||
-ABI_FLAG=
|
||||
+ABI_FLAG=-KPIC
|
||||
CC=cc $(ABI_FLAG)
|
||||
CXX=CC $(ABI_FLAG)
|
||||
AS=as $(ABI_FLAG)
|
||||
Only in gc: Makefile.back
|
||||
Only in gc: Makefile.orig
|
||||
diff -ur gc/gcconfig.h gc/gcconfig.h
|
||||
--- gc/gcconfig.h Fri Jul 9 05:03:22 1999
|
||||
+++ gc/gcconfig.h Tue Nov 30 14:30:11 1999
|
||||
@@ -64,7 +64,8 @@
|
||||
# endif
|
||||
# if defined(mips) || defined(__mips)
|
||||
# define MIPS
|
||||
-# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__)
|
||||
+# if defined(ultrix) || defined(__ultrix) || defined(__NetBSD__) ||\
|
||||
+ defined(nec_ews) || defined(__sony_news)
|
||||
# define ULTRIX
|
||||
# else
|
||||
# if defined(_SYSTYPE_SVR4) || defined(SYSTYPE_SVR4) || defined(__SYSTYPE_SVR4__)
|
39
Patches/os2
39
Patches/os2
@@ -1,39 +0,0 @@
|
||||
--- w3m-0.1.10/XMakefile Thu Jun 8 13:26:04 2000
|
||||
+++ w3m-0.1.10-6/XMakefile Sun Jun 11 16:37:18 2000
|
||||
@@ -8,7 +8,7 @@
|
||||
LOBJS=terms.o conv.o url.o ftp.o anchor.o mimehead.o hash.o tagtable.o
|
||||
LLOBJS=version.o
|
||||
ALIBOBJS=Str.o indep.o regex.o textlist.o parsetag.o
|
||||
-ALIB=libindep.a
|
||||
+ALIB=indep.a
|
||||
ALLOBJS=$(OBJS) $(LOBJS) $(LLOBJS)
|
||||
|
||||
TARGET=w3m$(EXT)
|
||||
@@ -31,13 +31,13 @@
|
||||
$(CC) $(CFLAGS) -o $(TARGET) $(ALLOBJS) $(LIBS)
|
||||
|
||||
$(ALIB): $(ALIBOBJS)
|
||||
- $(AR) rv $(ALIB) $(ALIBOBJS)
|
||||
+ $(AR) srv $(ALIB) $(ALIBOBJS)
|
||||
$(RANLIB) $(ALIB)
|
||||
|
||||
$(OBJS): fm.h funcname1.h
|
||||
|
||||
tagtable.c: html.h tagtable.tab mktable$(EXT)
|
||||
- ./mktable 100 tagtable.tab > tagtable.c
|
||||
+ mktable 100 tagtable.tab > tagtable.c
|
||||
|
||||
func.o: funcname.c
|
||||
keybind.o: funcname2.h
|
||||
--- w3m-0.1.10/gc/os_dep.c Tue Jan 4 14:46:50 2000
|
||||
+++ w3m-0.1.10-6/gc/os_dep.c Sun Jun 11 16:37:16 2000
|
||||
@@ -732,7 +732,9 @@
|
||||
if (!(flags & OBJWRITE)) continue;
|
||||
if (!(flags & OBJREAD)) continue;
|
||||
if (flags & OBJINVALID) {
|
||||
+#ifndef __EMX__
|
||||
GC_err_printf0("Object with invalid pages?\n");
|
||||
+#endif
|
||||
continue;
|
||||
}
|
||||
GC_add_roots_inner(O32_BASE(seg), O32_BASE(seg)+O32_SIZE(seg), FALSE);
|
Reference in New Issue
Block a user