]> code.delx.au - gnu-emacs/blobdiff - src/s/template.h
Add 2009 to copyright years.
[gnu-emacs] / src / s / template.h
index b7abe09e449afe98c3802c2d1922e6aa4082b08f..3e11af8d7942d293d8bfd15b835fe7afdc95c8d4 100644 (file)
@@ -1,14 +1,15 @@
 /* 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, 2001, 2002, 2003, 2004, 2005,
+                 2006, 2007, 2008, 2009  Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
 
-GNU Emacs is free software; you can redistribute it and/or modify
+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.
+the Free Software Foundation, either version 3 of the License, 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
@@ -16,8 +17,7 @@ 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, 675 Mass Ave, Cambridge, MA 02139, USA.  */
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
 /*
@@ -25,16 +25,12 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  *     Define all the symbols that apply correctly.
  */
 
-/* #define UNIPLUS */
 /* #define USG5 */
 /* #define USG */
 /* #define HPUX */
-/* #define UMAX */
-/* #define BSD4_1 */
 /* #define BSD4_2 */
 /* #define BSD4_3 */
-/* #define BSD */
-/* #define VMS */
+/* #define BSD_SYSTEM */
 
 /* SYSTEM_TYPE should indicate the kind of system you are using.
  It sets the Lisp variable system-type.  */
@@ -53,12 +49,12 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
    Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
 
-   Emacs uses the presence or absence of the SIGIO macro to indicate
-   whether or not signal-driven I/O is possible.  It uses
+   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.
@@ -79,29 +75,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.
@@ -109,24 +92,16 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #define HAVE_PTYS
 
-/*
- *     Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
- *      The 4.2 opendir, etc., library functions.
- */
-
-#define NONSYSTEM_DIR_LIBRARY
-
 /* Define this symbol if your system has the functions bcopy, etc. */
 
 #define BSTRING
 
-/* subprocesses should be defined if you want to
+/* subprocesses should be undefined if you do NOT want to
    have code for asynchronous subprocesses
    (as used in M-x compile and M-x shell).
-   This is generally OS dependent, and not supported
-   under most USG systems. */
+   Currently only MSDOS does not support this. */
 
-#define subprocesses
+/* #undef subprocesses */
 
 /* If your system uses COFF (Common Object File Format) then define the
    preprocessor symbol "COFF". */
@@ -159,21 +134,27 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
    is not ':', #define this to be the appropriate character constant.  */
 /* #define SEPCHAR ':' */
 
-/* Here, on a separate page, add any special hacks needed
+/* 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.  */
 
-\f
+/*  #define NARROWPROTO 1 */
+
+/* ============================================================ */
 
 /* After adding support for a new system, modify the large case
    statement in the `configure' script to recognize reasonable
@@ -183,3 +164,6 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
    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) */