aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/ChangeLog20
-rw-r--r--src/ecrt0.c51
-rw-r--r--src/fns.c2
-rw-r--r--src/lisp.h1
-rw-r--r--src/m/ibmrs6000.h93
-rw-r--r--src/m/ibms390x.h24
-rw-r--r--src/m/macppc.h19
-rw-r--r--src/m/sparc.h15
-rw-r--r--src/m/vax.h18
-rw-r--r--src/s/darwin.h84
10 files changed, 78 insertions, 249 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 2c4152d1dd..a82e5c6296 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,4 +1,22 @@
-2008-07-16 Adrian Robert <[email protected]>
+2008-07-17 Dan Nicolaescu <[email protected]>
+
+ * ecrt0.c: Remove code depending on m68000, not used anymore.
+
+ * fns.c (hash_remove): Make static.
+ * lisp.h (hash_remove): Don't prototype.
+
+ * m/ibmrs6000.h:
+ * m/ibms390x.h:
+ * m/macppc.h: Remove boilerplate comments.
+
+ * m/sparc.h (A_TEXT_OFFSET, A_TEXT_SEEK): Remove, only used on
+ Solaris, which does not need them.
+
+ * m/vax.h: Remove comments about unsupported systems.
+
+ * s/darwin.h: Reorganize ifdefs.
+
+2008-07-17 Adrian Robert <[email protected]>
* config.in
* dispextern.h
diff --git a/src/ecrt0.c b/src/ecrt0.c
index 7ef066ef22..f835cf65c7 100644
--- a/src/ecrt0.c
+++ b/src/ecrt0.c
@@ -39,13 +39,6 @@ And always:
[next arg string]... 0 or more times
*/
-/* On the 16000, at least in the one 4.2 system I know about,
- the initial data format is
- sp -> word containing argc
- word containing argp
- word pointing to first arg string, and so on as above
-*/
-
#ifdef emacs
#include <config.h>
#endif
@@ -97,31 +90,12 @@ asm(" global start ");
asm(" start: ");
#endif /* NODOT_GLOBAL_START */
-#ifdef m68000
-
-/* GCC 2.1, when optimization is turned off, seems to want to push a
- word of garbage on the stack, which screws up the CRT0_DUMMIES
- hack. So we hand-code _start in assembly language. */
-asm(".text ");
-asm(" .even ");
-asm(".globl __start ");
-asm("__start: ");
-asm(" link a6,#0 ");
-asm(" jbsr _start1 ");
-asm(" unlk a6 ");
-asm(" rts ");
-
-#else /* not m68000 */
-
_start ()
{
/* On vax, nothing is pushed here */
-/* On sequent, bogus fp is pushed here */
start1 ();
}
-#endif /* possibly m68000 */
-
static
start1 (CRT0_DUMMIES argc, xargv)
int argc;
@@ -140,9 +114,7 @@ start1 (CRT0_DUMMIES argc, xargv)
}
#else /* not CRT0_DUMMIES */
-/* "m68k" and "m68000" both stand for m68000 processors,
- but with different program-entry conventions.
- This is a kludge. Now that the CRT0_DUMMIES mechanism above exists,
+/* This is a kludge. Now that the CRT0_DUMMIES mechanism above exists,
most of these machines could use the vax code above
with some suitable definition of CRT0_DUMMIES.
Then the symbol m68k could be flushed.
@@ -162,29 +134,10 @@ start1 (CRT0_DUMMIES argc, xargv)
asm (" jsr exit");
asm (" mov.l &1,%d0"); /* d0 = 1 => exit */
asm (" trap &0");
-#else /* m68000, not m68k */
-#ifdef m68000
-
-_start ()
-{
-#ifdef sun
- finitfp_();
-#endif
-/* On 68000, _start pushes a6 onto stack */
- start1 ();
-}
-#endif /* m68000 */
-#endif /* m68k */
-
-#if defined(m68k) || defined(m68000)
/* ignore takes care of skipping the a6 value pushed in start. */
static
-#if defined(m68k)
start1 (argc, xargv)
-#else
-start1 (ignore, argc, xargv)
-#endif
int argc;
char *xargv;
{
@@ -196,7 +149,7 @@ start1 (ignore, argc, xargv)
exit (main (argc, argv, environ));
}
-#endif /* m68k or m68000 */
+#endif /* m68k */
#endif /* not CRT0_DUMMIES */
diff --git a/src/fns.c b/src/fns.c
index df2e8dbebe..72f1c93fd2 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -4204,7 +4204,7 @@ hash_put (h, key, value, hash)
/* Remove the entry matching KEY from hash table H, if there is one. */
-void
+static void
hash_remove (h, key)
struct Lisp_Hash_Table *h;
Lisp_Object key;
diff --git a/src/lisp.h b/src/lisp.h
index bdf45262ff..7a0d2088f1 100644
--- a/src/lisp.h
+++ b/src/lisp.h
@@ -2354,7 +2354,6 @@ Lisp_Object copy_hash_table P_ ((struct Lisp_Hash_Table *));
int hash_lookup P_ ((struct Lisp_Hash_Table *, Lisp_Object, unsigned *));
int hash_put P_ ((struct Lisp_Hash_Table *, Lisp_Object, Lisp_Object,
unsigned));
-void hash_remove P_ ((struct Lisp_Hash_Table *, Lisp_Object));
void hash_clear P_ ((struct Lisp_Hash_Table *));
void remove_hash_entry P_ ((struct Lisp_Hash_Table *, int));
extern void init_fns P_ ((void));
diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h
index 7268cf6444..c347425428 100644
--- a/src/m/ibmrs6000.h
+++ b/src/m/ibmrs6000.h
@@ -22,15 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
operating system this machine is likely to run.
USUAL-OPSYS="aix3-1" */
-/* Define WORDS_BIG_ENDIAN if lowest-numbered byte in a word
- is the most significant byte. */
-
-#ifdef USG5_4
-#undef WORDS_BIG_ENDIAN
-#else
-#define WORDS_BIG_ENDIAN
-#endif
-
/* 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. */
@@ -49,33 +40,40 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define NO_REMAP
-#ifndef USG5_4
-#define TEXT_START 0x10000000
-#define TEXT_END 0
-#define DATA_START 0x20000000
-#define DATA_END 0
-#endif
-
/* The data segment in this machine always starts at address 0x20000000.
An address of data cannot be stored correctly in a Lisp object;
we always lose the high bits. We must tell XPNTR to add them back. */
#ifndef USG5_4
+#define TEXT_START 0x10000000
+#define TEXT_END 0
+#define DATA_START 0x20000000
+#define DATA_END 0
+#define WORDS_BIG_ENDIAN
#define DATA_SEG_BITS 0x20000000
-#else
-#define DATA_SEG_BITS 0
-#endif
+#define C_SWITCH_MACHINE -D_BSD
-#undef ADDR_CORRECT
-#define ADDR_CORRECT(x) ((int)(x))
+/* [email protected] says add -bI:/usr/lpp/X11/bin/smt.exp for AIX 3.2.4. */
+/* [email protected] (Marc Pawliger) says ibmrs6000.inp is needed to avoid
+ linker error for updated X11R5 libraries, which references pthread library
+ which most machines don't have. We use the name .inp instead of .imp
+ because .inp is a better convention to use in make-dist for naming
+ random input files. */
+#ifdef THIS_IS_MAKEFILE /* Don't use this in configure. */
+#define LD_SWITCH_MACHINE -Wl,-bnodelcsect
+#endif /* THIS_IS_MAKEFILE */
-/* Here override various assumptions in ymakefile */
+/* Avoid gcc 2.7.x collect2 bug by using /bin/ld instead. */
+#if __GNUC__ == 2 && __GNUC_MINOR__ == 7
+#define LD_SWITCH_SITE -B/bin/
+#endif
-#ifndef USG5
-#define C_SWITCH_MACHINE -D_BSD
+#ifndef NLIST_STRUCT
+/* AIX supposedly doesn't use this interface, but on the RS/6000
+ it apparently does. */
+#define NLIST_STRUCT
#endif
-#ifdef AIX
/* -lpthreads seems to be necessary for Xlib in X11R6, and should be harmless
on older versions of X where it happens to exist. */
#ifdef HAVE_LIBPTHREADS
@@ -84,13 +82,15 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* IBM's X11R5 use -lIM and -liconv in AIX 3.2.2. */
#define LIBS_MACHINE -lrts -lIM -liconv
#endif
-#else
-#ifdef USG5_4
+
+#else /* USG5_4 */
+#undef WORDS_BIG_ENDIAN
+#define DATA_SEG_BITS 0
#define LIBS_MACHINE
-#else
-#define LIBS_MACHINE -lIM
-#endif
-#endif
+#endif /* USG5_4 */
+
+#undef ADDR_CORRECT
+#define ADDR_CORRECT(x) ((int)(x))
#define START_FILES
/*** BUILD 9008 - FIONREAD problem still exists in X-Windows. ***/
@@ -106,36 +106,5 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define ORDINARY_LINK
-#ifndef USG5_4
-/* [email protected] says add -bI:/usr/lpp/X11/bin/smt.exp for AIX 3.2.4. */
-/* [email protected] (Marc Pawliger) says ibmrs6000.inp is needed to avoid
- linker error for updated X11R5 libraries, which references pthread library
- which most machines don't have. We use the name .inp instead of .imp
- because .inp is a better convention to use in make-dist for naming
- random input files. */
-#ifdef THIS_IS_MAKEFILE /* Don't use this in configure. */
-#ifdef AIX
-#define LD_SWITCH_MACHINE -Wl,-bnodelcsect
-#else /* not AIX */
-#ifdef HAVE_AIX_SMT_EXP
-#define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp,-bI:/usr/lpp/X11/bin/smt.exp
-#else
-#define LD_SWITCH_MACHINE -Wl,-bnso,-bnodelcsect,-bI:/lib/syscalls.exp,-bI:$(srcdir)/m/ibmrs6000.inp
-#endif
-#endif /* not AIX */
-#endif /* THIS_IS_MAKEFILE */
-
-/* Avoid gcc 2.7.x collect2 bug by using /bin/ld instead. */
-#if __GNUC__ == 2 && __GNUC_MINOR__ == 7
-#define LD_SWITCH_SITE -B/bin/
-#endif
-
-#ifndef NLIST_STRUCT
-/* AIX supposedly doesn't use this interface, but on the RS/6000
- it apparently does. */
-#define NLIST_STRUCT
-#endif
-#endif /* USG5_4 */
-
/* arch-tag: 028318ee-a7ae-4a08-804d-cc1e6588d003
(do not change this comment) */
diff --git a/src/m/ibms390x.h b/src/m/ibms390x.h
index e7f9a98145..bcddabd0aa 100644
--- a/src/m/ibms390x.h
+++ b/src/m/ibms390x.h
@@ -87,30 +87,6 @@ NOTE-END */
#undef 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.
- */
-
-#undef NO_SOCK_SIGIO
-
-
-/* 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. */
-
/* On the 64 bit architecture, we can use 60 bits for addresses */
#define VALBITS 60
diff --git a/src/m/macppc.h b/src/m/macppc.h
index eeb9990562..fc2c8f9d36 100644
--- a/src/m/macppc.h
+++ b/src/m/macppc.h
@@ -27,11 +27,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define NO_ARG_ARRAY
-/* 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 */
-
/* Data type of load average, as read out of kmem. */
#define LOAD_AVE_TYPE long
@@ -40,20 +35,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
-/* 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 */
-
#if defined (GNU_LINUX) || defined (__NetBSD__) || defined (__OpenBSD__)
# define TEXT_END ({ extern int _etext; &_etext; })
#endif
diff --git a/src/m/sparc.h b/src/m/sparc.h
index e75094fa7d..c4d7c0698f 100644
--- a/src/m/sparc.h
+++ b/src/m/sparc.h
@@ -55,21 +55,6 @@ NOTE-END */
#define SEGMENT_MASK (SEGSIZ - 1)
-#if !defined (__NetBSD__) && !defined (__linux__) && !defined (__OpenBSD__)
-/* This really belongs in s/sun.h. */
-
-/* Say that the text segment of a.out includes the header;
- the header actually occupies the first few bytes of the text segment
- and is counted in hdr.a_text. */
-
-#define A_TEXT_OFFSET(HDR) sizeof (HDR)
-
-/* This is the offset of the executable's text, from the start of the file. */
-
-#define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr))
-
-#endif /* not __NetBSD__ and not __linux__ and not __OpenBSD__ */
-
#ifdef __arch64__ /* GCC, 64-bit ABI. */
#define BITS_PER_LONG 64
#ifdef __linux__
diff --git a/src/m/vax.h b/src/m/vax.h
index 7a08deb683..d412deacd9 100644
--- a/src/m/vax.h
+++ b/src/m/vax.h
@@ -25,24 +25,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
NOTE-START
The vax (-machine=vax) runs zillions of different operating systems.
-Vax running Berkeley Unix (-opsystem=bsd4-1, -opsystem=bsd4-2 or
- -opsystem=bsd4-3)
-
- Works.
-
-Vax running Ultrix (-opsystem=bsd4-2)
-
- Works. See under Ultrix in share-lib/MACHINES for problems using X
- windows on Ultrix.
-
-Vax running System V rel 2 (-opsystem=usg5-2)
-
- 18.27 Works.
-
-Vax running System V rel 0 (-opsystem=usg5-0)
-
- Works as of 18.36.
-
Vax running VMS (-opsystem=vms)
18.36 believed to work. Addition of features is necessary to make
diff --git a/src/s/darwin.h b/src/s/darwin.h
index 9fcf2ca6df..73b7aade95 100644
--- a/src/s/darwin.h
+++ b/src/s/darwin.h
@@ -26,16 +26,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define BSD4_2
/* BSD4_3 and BSD4_4 are already defined in sys/param.h */
#define BSD_SYSTEM
-/* #define VMS */
/* MAC_OS is used to conditionally compile code common to both MAC_OS8
and MAC_OSX. */
#ifdef MAC_OSX
#ifdef HAVE_CARBON
#define MAC_OS
-/* We need a little extra space, see ../../lisp/loadup.el. */
-#define SYSTEM_PURESIZE_EXTRA 30000
-
#endif
#endif
@@ -85,7 +81,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
*/
#define HAVE_TERMIOS
-/* #define HAVE_TERMIO */
#define NO_TERMIO
@@ -128,27 +123,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define CLASH_DETECTION
-/* ============================================================ */
-
-/* Here, add any special hacks needed
- to make Emacs work on this system. For example,
- you might define certain system call names that don't
- exist on your system, or that do different things on
- your system and must be used only through an encapsulation
- (Which you should place, by convention, in sysdep.c). */
-
-/* ============================================================ */
-
-/* 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. */
-
-
/* Avoid the use of the name init_process (process.c) because it is
also the name of a Mach system call. */
#define init_process emacs_init_process
@@ -198,27 +172,36 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Definitions for how to compile & link. */
-/* This is for the Carbon port. Under the NeXTstep port, this is still picked
- up during preprocessing, but is undone in config.in. */
-#ifndef HAVE_NS
-#define C_SWITCH_SYSTEM -fpascal-strings -DMAC_OSX
-#endif
-
/* Link in the Carbon or AppKit lib. */
#ifdef HAVE_NS
+/* PENDING: can this target be specified in a clearer way? */
+#define OTHER_FILES ns-app
/* XXX: lresolv is here because configure when testing #undefs res_init,
a macro in /usr/include/resolv.h for res_9_init, not in stdc lib. */
#define LIBS_MACGUI -framework AppKit -lresolv
#define SYSTEM_PURESIZE_EXTRA 200000
#define HEADERPAD_EXTRA 6C8
-#else
+#else /* !HAVE_NS */
#define HEADERPAD_EXTRA 690
+/* This is for the Carbon port. Under the NeXTstep port, this is still picked
+ up during preprocessing, but is undone in config.in. */
+#define C_SWITCH_SYSTEM -fpascal-strings -DMAC_OSX
+
#ifdef HAVE_CARBON
+/* We need a little extra space, see ../../lisp/loadup.el. */
+#define SYSTEM_PURESIZE_EXTRA 30000
+
+/* Link in the Carbon lib. */
+#define LIBS_MACGUI -framework Carbon LIBS_IMAGE
+
#ifdef HAVE_AVAILABILITYMACROS_H
#include <AvailabilityMacros.h>
#endif
+/* Tell src/Makefile.in to create files in the Mac OS X application
+ bundle mac/Emacs.app. */
+#define OTHER_FILES macosx-app
/* Whether to use the Image I/O framework for reading images. */
#ifndef USE_MAC_IMAGE_IO
@@ -234,14 +217,17 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
#define LIBS_IMAGE -framework QuickTime
#endif
-#endif /* HAVE_CARBON */
+/* Reroute calls to SELECT to the version defined in mac.c to fix the
+ problem of Emacs requiring an extra return to be typed to start
+ working when started from the command line. */
+#if defined (emacs) || defined (temacs)
+#define select sys_select
+#endif
-/* Link in the Carbon lib. */
-#ifdef HAVE_CARBON
-#define LIBS_MACGUI -framework Carbon LIBS_IMAGE
-#else
+#else /* !HAVE_CARBON */
#define LIBS_MACGUI
-#endif /* !HAVE_CARBON */
+#endif /* HAVE_CARBON */
+
#endif /* !HAVE_NS */
/* The -headerpad option tells ld (see man page) to leave room at the
@@ -271,18 +257,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Adding -lm confuses the dynamic linker, so omit it. */
#define LIB_MATH
-/* Tell src/Makefile.in to create files in the Mac OS X application
- bundle mac/Emacs.app. */
-#ifdef HAVE_CARBON
-#define OTHER_FILES macosx-app
-#endif
-
-/* PENDING: can this target be specified in a clearer way? */
-#ifdef HAVE_NS
-#define OTHER_FILES ns-app
-#endif
-
-
/* Define the following so emacs symbols will not conflict with those
in the System framework. Otherwise -prebind will not work. */
@@ -292,7 +266,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
/* Do not define matherr in floatfns.c. */
#define NO_MATHERR
-
/* The following solves the problem that Emacs hangs when evaluating
(make-comint "test0" "/nodir/nofile" nil "") when /nodir/nofile
does not exist. */
@@ -314,13 +287,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
handlers correctly. Suggested by Nozomu Ando.*/
#define POSIX_SIGNALS
-/* Reroute calls to SELECT to the version defined in mac.c to fix the
- problem of Emacs requiring an extra return to be typed to start
- working when started from the command line. */
-#if defined (HAVE_CARBON) && (defined (emacs) || defined (temacs))
-#define select sys_select
-#endif
-
/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the
stack. */
#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS