]> code.delx.au - gnu-emacs/blobdiff - src/s/msdos.h
Merge from emacs-23
[gnu-emacs] / src / s / msdos.h
index 5f76dc77f8abdb753d1f0b76b6c877647f9f6702..3bb1dfe03e7cf25d200569ca49502b9b7903f3e4 100644 (file)
@@ -1,6 +1,6 @@
 /* System description file for MS-DOS
 
-   Copyright (C) 1993, 1996, 1997, 2001, 2002, 2003, 2004, 2005, 2006,
+Copyright (C) 1993, 1996, 1997, 2001, 2002, 2003, 2004, 2005, 2006,
                  2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
 
 This file is part of GNU Emacs.
@@ -21,20 +21,13 @@ along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 /* Note: lots of stuff here was taken from s-msdos.h in demacs. */
 
 
-/*
- *     Define symbols to identify the version of Unix this is.
- *     Define all the symbols that apply correctly.
- */
-
+/* Define symbols to identify the version of Unix this is.
+   Define all the symbols that apply correctly.  */
 #ifndef MSDOS
 #define MSDOS
 #endif
 
-#ifdef __GO32__
 #ifndef __DJGPP__
-#define __DJGPP__ 1    /* V2 defines __DJGPP__ == 2 */
-#endif
-#else
 You lose; /* Emacs for DOS must be compiled with DJGPP */
 #endif
 
@@ -42,46 +35,19 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
 #undef BSD_SYSTEM
 
 /* SYSTEM_TYPE should indicate the kind of system you are using.
- It sets the Lisp variable system-type.  */
-
+   It sets the Lisp variable system-type.  */
 #define SYSTEM_TYPE "ms-dos"
 
-#define SYMS_SYSTEM syms_of_dosfns();syms_of_msdos();syms_of_win16select()
-
-/* NOMULTIPLEJOBS should be defined if your system's shell
- does not have "job control" (the ability to stop a program,
- run some other program, then continue the first one).  */
-
-#define NOMULTIPLEJOBS
-
-#define SYSV_SYSTEM_DIR
-
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-#define BSTRING
-
-/* Define this is the compiler understands `volatile'.  */
-#define HAVE_VOLATILE
-
-
-/* subprocesses should be defined if you want to
-   have code for asynchronous subprocesses
-   (as used in M-x compile and M-x shell).
+/* subprocesses should be defined if you want to have code for
+   asynchronous subprocesses (as used in M-x compile and M-x shell).
    This is the only system that needs this.  */
-
 #undef subprocesses
 
-/* If your system uses COFF (Common Object File Format) then define the
-   preprocessor symbol "COFF". */
-
-#define COFF
-
-/* Here, on a separate page, 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).  */
+/* Here, on a separate page, 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
 /* Avoid incompatibilities between gmalloc.c and system header files
    in how to declare valloc.  */
@@ -93,59 +59,18 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
 
 /* setjmp and longjmp can safely replace _setjmp and _longjmp,
    but they will run slower.  */
-
 #define _setjmp setjmp
 #define _longjmp longjmp
 
-#if __DJGPP__ < 2
-
-/* New chdir () routine.
-   DJGPP v2.0 and later doesn't need it because its chdir() does
-   set the drive itself. */
-#ifdef chdir
-#undef chdir
-#endif
-#define chdir sys_chdir
-
-#define LIBS_SYSTEM -lpc  /* isn't required in DJGPP v2.0, either */
-
-#endif /* __DJGPP__ < 2 */
-
-#if __DJGPP__ > 1
-
 #define DATA_START  (&etext + 1)
-#define TEXT_START  &start
 
 #define _NAIVE_DOS_REGS
 
-#else /* not __DJGPP__ > 1 */
-
-/* This somehow needs to be defined even though we use COFF.  */
-#define TEXT_START -1
-
-#endif /* not __DJGPP__ > 1 */
-
-#define ORDINARY_LINK
-
 /* command.com does not understand `...` so we define this.  */
-#define LIB_GCC -Lgcc
 #define SEPCHAR ';'
 
 #define NULL_DEVICE "nul"
 
-#if __DJGPP__ < 2
-#define O_RDONLY        0x0001
-#define O_WRONLY        0x0002
-#define O_RDWR          0x0004
-#define O_CREAT         0x0100
-#define O_TRUNC         0x0200
-#define O_EXCL          0x0400
-#define O_APPEND        0x0800
-#define O_TEXT          0x4000
-#define O_BINARY        0x8000
-#define NO_MATHERR
-#endif
-
 #define HAVE_INVERSE_HYPERBOLIC
 #define FLOAT_CHECK_DOMAIN
 
@@ -156,39 +81,24 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
 :AB=<BG %d>:AF=<FG %d>:op=<DefC>:"
 
 /* Define this to a function (Fdowncase, Fupcase) if your file system
-   likes that */
+   likes that */
 #define FILE_SYSTEM_CASE Fmsdos_downcase_filename
 
-/* Define this to be the separator between devices and paths */
+/* Define this to be the separator between devices and paths */
 #define DEVICE_SEP ':'
 
 /* We'll support either convention on MSDOG.  */
 #define IS_DIRECTORY_SEP(_c_) ((_c_) == '/' || (_c_) == '\\')
 #define IS_ANY_SEP(_c_) (IS_DIRECTORY_SEP (_c_) || IS_DEVICE_SEP (_c_))
 
-/* Call init_gettimeofday when TZ changes.  */
-#if __DJGPP__ < 2
-#define LOCALTIME_CACHE
-#define tzset init_gettimeofday
-#endif
-
-/* bcopy under djgpp is quite safe */
-#define GAP_USE_BCOPY
-#define BCOPY_UPWARD_SAFE 1
-#define BCOPY_DOWNWARD_SAFE 1
 
 /* Mode line description of a buffer's type.  */
 #define MODE_LINE_BINARY_TEXT(buf) (NILP(buf->buffer_file_type) ? "T" : "B")
 
-/* Do we have POSIX signals?  */
-#if __DJGPP__ > 1
-#define POSIX_SIGNALS
-#endif
-
 /* We have (the code to control) a mouse.  */
 #define HAVE_MOUSE
 
-/* We canuse mouse menus.  */
+/* We can use mouse menus.  */
 #define HAVE_MENUS
 
 /* Define one of these for easier conditionals.  */
@@ -197,7 +107,6 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
    commentary below, in the non-X branch.  The 140KB number was
    measured on GNU/Linux and on MS-WIndows.  */
 #define SYSTEM_PURESIZE_EXTRA (-170000+140000)
-#define LIBX11_SYSTEM -lxext -lsys
 #else
 /* We need a little extra space, see ../../lisp/loadup.el.
    As of 20091024, DOS-specific files use up 62KB of pure space.  But
@@ -212,9 +121,7 @@ You lose; /* Emacs for DOS must be compiled with DJGPP */
 #endif
 
 /* Tell the garbage collector that setjmp is known to save all
-   registers relevant for conservative garbage collection in the
-   jmp_buf.  */
-
+   registers relevant for conservative garbage collection in the jmp_buf.  */
 #define GC_SETJMP_WORKS 1
 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS