* net/tramp-sh.el (tramp-do-file-attributes-with-stat)
[bpt/emacs.git] / src / s / cygwin.h
index 0fde4fd..4d58542 100644 (file)
@@ -1,15 +1,14 @@
-/* Template for system description header files.
-   This file describes the parameters that system description files
-   should define or not.
-   Copyright (C) 1985, 1986, 1992, 1999, 2002, 2003, 2004,
-                 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
+/* System description header file for Cygwin.
+
+Copyright (C) 1985, 1986, 1992, 1999, 2002, 2003, 2004, 2005, 2006,
+  2007, 2008, 2009, 2010  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 3, 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
@@ -17,13 +16,10 @@ 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, Inc., 51 Franklin Street, Fifth Floor,
-Boston, MA 02110-1301, USA.  */
+along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.  */
 
 /* 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 "cygwin"
 
 /* Emacs can read input using SIGIO and buffering characters itself,
@@ -47,26 +43,9 @@ Boston, MA 02110-1301, USA.  */
    It would have Emacs fork off a separate process
    to read the input and send it to the true Emacs process
    through a pipe. */
-
 #undef INTERRUPT_INPUT
 
-/*
- *     Define HAVE_TERMIOS if the system provides POSIX-style
- *     functions and macros for terminal control.
- *
- *     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_TERMIOS
-
-/*
- *     Define HAVE_PTYS if the system supports pty devices.
- */
-
+/* Define HAVE_PTYS if the system supports pty devices.  */
 #define HAVE_PTYS
 #define PTY_ITERATION          for (i = 0; i < 1; i++) /* ick */
 #define PTY_NAME_SPRINTF       /* none */
@@ -84,22 +63,9 @@ Boston, MA 02110-1301, USA.  */
     }                                                  \
   while (0)
 
-/* Define this symbol if your system has the functions bcopy, etc. */
-
-#define BSTRING
-
-/* 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 generally OS dependent, and not supported
-   under most USG systems. */
-
-#define subprocesses
-
 /* Define CLASH_DETECTION if you want lock files to be written
    so that Emacs can tell instantly when you try to modify
    a file that someone else has modified in his Emacs.  */
-
 #define CLASH_DETECTION
 
 /* If the system's imake configuration file defines `NeedWidePrototypes'
@@ -107,34 +73,14 @@ Boston, MA 02110-1301, USA.  */
    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
 
-/* used in various places to enable cygwin-specific code changes */
+/* Used in various places to enable cygwin-specific code changes.  */
 #define CYGWIN 1
 
 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
-#define GETPGRP_NO_ARG 1
-#define SYSV_SYSTEM_DIR 1
-#define LIB_STANDARD_LIBSRC
-#define UNEXEC unexcw.o
-#define POSIX_SIGNALS 1
-/* force the emacs image to start high in memory, so dll relocation
-   can put things in low memory without causing all sorts of grief for
-   emacs lisp pointers */
-#define DATA_SEG_BITS 0x20000000
-#define LINKER $(CC) -Wl,--image-base,DATA_SEG_BITS
-
-/* Use terminfo instead of termcap.  Fewer environment variables to
-   go wrong, more terminal types. */
-#define TERMINFO
 
 #define HAVE_SOCKETS
-/* C-g aborts emacs without this */
-/*#define HAVE_VFORK*/
-/* Xaw3d causes problems -- might have been fixed by NARROWPROTO
-   above, but I haven't tried it */
-/*#undef HAVE_XAW3D*/
 
 /* vfork() interacts badly with setsid(), causing ptys to fail to
    change their controlling terminal */
@@ -146,7 +92,14 @@ Boston, MA 02110-1301, USA.  */
    why it needed to be changed.  */
 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
 
-/* the end */
+/* Virtual addresses of pure and impure space can vary, as on Windows.  */
+#define VIRT_ADDR_VARIES
+
+/* Emacs supplies its own malloc, but glib (part of Gtk+) calls
+   memalign and on Cygwin, that becomes the Cygwin-supplied memalign.
+   As malloc is not the Cygwin malloc, the Cygwin memalign always
+   returns ENOSYS.  A workaround is to set G_SLICE=always-malloc. */
+#define G_SLICE_ALWAYS_MALLOC
 
 /* arch-tag: 5ae7ba00-83b0-4ab3-806a-3e845779191b
    (do not change this comment) */