1 /* System description header file for Darwin (Mac OS X).
3 Copyright (C) 2001-2012 Free Software Foundation, Inc.
5 This file is part of GNU Emacs.
7 GNU Emacs is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
12 GNU Emacs is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
21 /* Define symbols to identify the version of Unix this is.
22 Define all the symbols that apply correctly. */
24 /* BSD4_3 and BSD4_4 are already defined in sys/param.h */
27 /* More specific than the above two. We cannot use __APPLE__ as this
28 may not be defined on non-OSX Darwin, and we cannot define DARWIN
29 here because Panther and lower CoreFoundation.h uses DARWIN to
30 distinguish OS X from pure Darwin. */
33 /* PTYs only work correctly on Darwin 7 or higher. So make the default
34 for process-connection-type dependent on the kernel version. */
35 #define MIN_PTY_KERNEL_VERSION '7'
37 /* Definitions for how to compile & link. */
39 #define SYSTEM_PURESIZE_EXTRA 200000
43 #define malloc unexec_malloc
44 #define realloc unexec_realloc
45 #define free unexec_free
46 /* Don't use posix_memalign because it is not compatible with unexmacosx.c. */
47 #undef HAVE_POSIX_MEMALIGN
50 /* The following solves the problem that Emacs hangs when evaluating
51 (make-comint "test0" "/nodir/nofile" nil "") when /nodir/nofile
52 does not exist. Also, setsid is not allowed in the vfork child's
53 context as of Darwin 9/Mac OS X 10.5. */
54 #undef HAVE_WORKING_VFORK