]> code.delx.au - gnu-emacs/blobdiff - src/s/template.h
(text_read_only): Use xsignal0, xsignal1.
[gnu-emacs] / src / s / template.h
index adc4bef2360c016c32eeee021ba92ac5e9070850..94b3787811f4bb7bceb18ec4aba2a8bea46a05a6 100644 (file)
@@ -1,7 +1,8 @@
 /* Template for system description header files.
    This file describes the parameters that system description files
    should define or not.
-   Copyright (C) 1985, 1986, 1992 Free Software Foundation, Inc.
+   Copyright (C) 1985, 1986, 1992, 1999, 2002, 2003, 2004,
+                 2005, 2006 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
@@ -17,7 +18,8 @@ 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, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+Boston, MA 02110-1301, USA.  */
 
 
 /*
@@ -33,7 +35,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* #define BSD4_1 */
 /* #define BSD4_2 */
 /* #define BSD4_3 */
-/* #define BSD */
+/* #define BSD_SYSTEM */
 /* #define VMS */
 
 /* SYSTEM_TYPE should indicate the kind of system you are using.
@@ -50,10 +52,15 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /* Emacs can read input using SIGIO and buffering characters itself,
    or using CBREAK mode and making C-g cause SIGINT.
    The choice is controlled by the variable interrupt_input.
+
    Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
 
+   Emacs uses the presence or absence of the SIGIO and BROKEN_SIGIO macros
+   to indicate whether or not signal-driven I/O is possible.  It uses
+   INTERRUPT_INPUT to decide whether to use it by default.
+
    SIGIO can be used only on systems that implement it (4.2 and 4.3).
-   CBREAK mode has two disadvatages
+   CBREAK mode has two disadvantages
      1) At least in 4.2, it is impossible to handle the Meta key properly.
         I hear that in system V this problem does not exist.
      2) Control-G causes output to be discarded.
@@ -62,8 +69,7 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
    Another method of doing input is planned but not implemented.
    It would have Emacs fork off a separate process
    to read the input and send it to the true Emacs process
-   through a pipe.
-*/
+   through a pipe. */
 
 #define INTERRUPT_INPUT
 
@@ -75,29 +81,16 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 /*
  *     Define HAVE_TERMIOS if the system provides POSIX-style
  *     functions and macros for terminal control.
- */
-
-#define HAVE_TERMIOS
-
-/*
+ *
  *     Define HAVE_TERMIO if the system provides sysV-style ioctls
  *     for terminal control.
+ *
+ *     Do not define both.  HAVE_TERMIOS is preferred, if it is
+ *     supported on your system.
  */
 
-#define HAVE_TERMIO
-
-/*
- *     Define HAVE_TIMEVAL if the system supports the BSD style clock values.
- *     Look in <sys/time.h> for a timeval structure.
- */
-
-#define HAVE_TIMEVAL
-
-/*
- *     Define HAVE_SELECT if the system supports the `select' system call.
- */
-
-/* #define HAVE_SELECT */
+#define HAVE_TERMIOS
+/* #define HAVE_TERMIO */
 
 /*
  *     Define HAVE_PTYS if the system supports pty devices.
@@ -151,16 +144,47 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
    this to be what the system's include files want.  */
 /* #define SIGTYPE int */
 
-/* Here, on a separate page, add any special hacks needed
+/* If the character used to separate elements of the executable path
+   is not ':', #define this to be the appropriate character constant.  */
+/* #define SEPCHAR ':' */
+
+/* Define this if the system can use mmap for buffer text allocation.  */
+/* #define USE_MMAP_FOR_BUFFERS 1 */
+
+/* ============================================================ */
+
+/* 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).  */
-\f
+
 /* Some compilers tend to put everything declared static
    into the initialized data area, which becomes pure after dumping Emacs.
    On these systems, you must #define static as nothing to foil this.
    Note that emacs carefully avoids static vars inside functions.  */
 
 /* #define static */
+
+/* If the system's imake configuration file defines `NeedWidePrototypes'
+   as `NO', we must define NARROWPROTO manually.  Such a define is
+   generated in the Makefile generated by `xmkmf'.  If we don't
+   define NARROWPROTO, we will see the wrong function prototypes
+   for X functions taking float or double parameters.  */
+
+/*  #define NARROWPROTO 1 */
+
+/* ============================================================ */
+
+/* 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.  */
+
+/* arch-tag: 4b426b11-cb2e-4c0e-a488-e663f76a0515
+   (do not change this comment) */