annotate src/s/darwin.h @ 112403:c81ff7082a9a

src/config.in: shrink slightly * configure.in: Invoke the new gnulib macro gl_ASSERT_NO_GNULIB_TESTS. This makes src/config.in a bit smaller, by removing identifiers like GNULIB_TEST_MKTIME that Emacs does not need. * m4/getopt.m4, m4/gnulib-common.m4, m4/include_next.m4: * m4/multiarch.m4, m4/stddef_h.m4, m4/time_h.m4, m4/unistd_h.m4: Sync from gnulib. This removes a few more unnecessary symbols from src/config.in, such as AA_APPLE_UNIVERSAL_BUILD and HAVE_STDDEF_H. * configure, src/config.in: Regenerate.
author Paul Eggert <eggert@cs.ucla.edu>
date Fri, 21 Jan 2011 16:12:10 -0800
parents 61f7601898b1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
1 /* System description header file for Darwin (Mac OS X).
112284
61f7601898b1 Refill some copyright headers.
Glenn Morris <rgm@gnu.org>
parents: 112278
diff changeset
2
61f7601898b1 Refill some copyright headers.
Glenn Morris <rgm@gnu.org>
parents: 112278
diff changeset
3 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
61f7601898b1 Refill some copyright headers.
Glenn Morris <rgm@gnu.org>
parents: 112278
diff changeset
4 2010, 2011 Free Software Foundation, Inc.
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
5
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
6 This file is part of GNU Emacs.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
7
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94615
diff changeset
8 GNU Emacs is free software: you can redistribute it and/or modify
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
9 it under the terms of the GNU General Public License as published by
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94615
diff changeset
10 the Free Software Foundation, either version 3 of the License, or
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94615
diff changeset
11 (at your option) any later version.
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
12
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
13 GNU Emacs is distributed in the hope that it will be useful,
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
16 GNU General Public License for more details.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
17
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
18 You should have received a copy of the GNU General Public License
94715
1f134b61867c Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 94615
diff changeset
19 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
20
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
21
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
22 /* Define symbols to identify the version of Unix this is.
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
23 Define all the symbols that apply correctly. */
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
24 #define BSD4_2
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
25 /* BSD4_3 and BSD4_4 are already defined in sys/param.h */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
26 #define BSD_SYSTEM
59689
007a1a6d92de * s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents: 59658
diff changeset
27
97266
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
28 /* More specific than the above two. We cannot use __APPLE__ as this
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
29 may not be defined on non-OSX Darwin, and we cannot define DARWIN
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
30 here because Panther and lower CoreFoundation.h uses DARWIN to
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
31 distinguish OS X from pure Darwin. */
97266
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
32 #define DARWIN_OS
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
33
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
34
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
35 /* SYSTEM_TYPE should indicate the kind of system you are using.
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
36 It sets the Lisp variable system-type. */
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
37 #define SYSTEM_TYPE "darwin"
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
38
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
39 /* Emacs can read input using SIGIO and buffering characters itself,
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
40 or using CBREAK mode and making C-g cause SIGINT.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
41 The choice is controlled by the variable interrupt_input.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
42
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
43 Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
44
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
45 Emacs uses the presence or absence of the SIGIO and BROKEN_SIGIO macros
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
46 to indicate whether or not signal-driven I/O is possible. It uses
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
47 INTERRUPT_INPUT to decide whether to use it by default.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
48
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
49 SIGIO can be used only on systems that implement it (4.2 and 4.3).
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
50 CBREAK mode has two disadvantages
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
51 1) At least in 4.2, it is impossible to handle the Meta key properly.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
52 I hear that in system V this problem does not exist.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
53 2) Control-G causes output to be discarded.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
54 I do not know whether this can be fixed in system V.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
55
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
56 Another method of doing input is planned but not implemented.
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
57 It would have Emacs fork off a separate process
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
58 to read the input and send it to the true Emacs process
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
59 through a pipe. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
60 #define INTERRUPT_INPUT
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
61
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
62 /* Letter to use in finding device name of first pty,
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
63 if system supports pty's. 'a' means it is /dev/ptya0 */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
64 #define FIRST_PTY_LETTER 'p'
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
65
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
66 #define NO_TERMIO
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
67
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
68 /* Define HAVE_PTYS if the system supports pty devices.
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
69 Note: PTYs are broken on darwin <6. Use at your own risk. */
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
70 #define HAVE_PTYS
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
71 /* Run only once. We need a `for'-loop because the code uses `continue'. */
107932
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
72 #define PTY_ITERATION for (i = 0; i < 1; i++)
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
73 #define PTY_NAME_SPRINTF /* none */
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
74 #define PTY_TTY_NAME_SPRINTF /* none */
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
75 /* Note that openpty may fork via grantpt on Mac OS X 10.4/Darwin 8.
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
76 But we don't have to block SIGCHLD because it is blocked in the
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
77 implementation of grantpt. */
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
78 #define PTY_OPEN \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
79 do \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
80 { \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
81 int slave; \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
82 if (openpty (&fd, &slave, pty_name, NULL, NULL) == -1) \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
83 fd = -1; \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
84 else \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
85 emacs_close (slave); \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
86 } \
9b8dfcd5e0b0 Use openpty for allocating pty on Darwin. Fix Bug#726 and Bug#5819.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 106815
diff changeset
87 while (0)
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
88
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
89 /* PTYs only work correctly on Darwin 7 or higher. So make the default
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
90 for process-connection-type dependent on the kernel version. */
77078
29afb1b6d0f6 (__restrict, struct kboard): Remove outdated workarounds.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 75348
diff changeset
91 #define MIN_PTY_KERNEL_VERSION '7'
59658
45074d913d23 * editfns.c (Voperating_system_release): Added.
Steven Tamm <steventamm@mac.com>
parents: 58634
diff changeset
92
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
93 /* Define CLASH_DETECTION if you want lock files to be written
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
94 so that Emacs can tell instantly when you try to modify
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
95 a file that someone else has modified in his Emacs. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
96 #define CLASH_DETECTION
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
97
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
98 /* Avoid the use of the name init_process (process.c) because it is
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
99 also the name of a Mach system call. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
100 #define init_process emacs_init_process
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
101
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
102 /* Used in dispnew.c. Copied from freebsd.h. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
103 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
104
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
105 /* System uses OXTABS instead of the expected TAB3. (Copied from bsd386.h.) */
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
106 #define TAB3 OXTABS
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
107
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
108 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
109 #define HAVE_SOCKETS
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
110
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
111 /* Definitions for how to compile & link. */
96675
d45acf0c8d23 merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 96583
diff changeset
112 #ifdef HAVE_NS
d45acf0c8d23 merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 96583
diff changeset
113 #define SYSTEM_PURESIZE_EXTRA 200000
108228
385494b60342 Move LD_SWITCH_SYSTEM_TEMACS from cpp to autoconf.
Glenn Morris <rgm@gnu.org>
parents: 108119
diff changeset
114 #endif
56892
02d9436a8b32 (LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents: 54150
diff changeset
115
97451
8662a1d13e79 Undefine HAVE_RES_INIT, which appears to be harmful on OS X.
Chong Yidong <cyd@stupidchicken.com>
parents: 97354
diff changeset
116 /* On Darwin, res_init appears not to be useful: see bug#562 and
8662a1d13e79 Undefine HAVE_RES_INIT, which appears to be harmful on OS X.
Chong Yidong <cyd@stupidchicken.com>
parents: 97354
diff changeset
117 http://lists.gnu.org/archive/html/emacs-devel/2007-11/msg01467.html */
8662a1d13e79 Undefine HAVE_RES_INIT, which appears to be harmful on OS X.
Chong Yidong <cyd@stupidchicken.com>
parents: 97354
diff changeset
118 #undef HAVE_RES_INIT
8662a1d13e79 Undefine HAVE_RES_INIT, which appears to be harmful on OS X.
Chong Yidong <cyd@stupidchicken.com>
parents: 97354
diff changeset
119 #undef HAVE_LIBRESOLV
8662a1d13e79 Undefine HAVE_RES_INIT, which appears to be harmful on OS X.
Chong Yidong <cyd@stupidchicken.com>
parents: 97354
diff changeset
120
107831
92451fdcc718 Remove C_SWITCH_SYSTEM_TEMACS.
Dan Nicolaescu <dann@ics.uci.edu>
parents: 107575
diff changeset
121 #ifdef emacs
97266
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
122 #define malloc unexec_malloc
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
123 #define realloc unexec_realloc
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
124 #define free unexec_free
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
125 /* Don't use posix_memalign because it is not compatible with unexmacosx.c. */
104687
ae73d4e03997 [temacs] Undef HAVE_POSIX_MEMALIGN.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 101797
diff changeset
126 #undef HAVE_POSIX_MEMALIGN
97266
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
127 #endif
80acedef7417 cleanup in s/darwin.h, define DARWIN_OS and use it instead of DARWIN and/or MAC_OSX; also, nsterm.m: small unrelated cleanups
Adrian Robert <Adrian.B.Robert@gmail.com>
parents: 97043
diff changeset
128
44890
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
129 /* Define the following so emacs symbols will not conflict with those
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
130 in the System framework. Otherwise -prebind will not work. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
131
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
132 /* Do not define abort in emacs.c. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
133 #define NO_ABORT
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
134
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
135 /* Do not define matherr in floatfns.c. */
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
136 #define NO_MATHERR
01b93e5e53a7 Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff changeset
137
47031
56242900e171 2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46856
diff changeset
138 /* The following solves the problem that Emacs hangs when evaluating
56242900e171 2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46856
diff changeset
139 (make-comint "test0" "/nodir/nofile" nil "") when /nodir/nofile
80611
ab61e807a6da Mention setsid after vfork.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 80549
diff changeset
140 does not exist. Also, setsid is not allowed in the vfork child's
ab61e807a6da Mention setsid after vfork.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 80549
diff changeset
141 context as of Darwin 9/Mac OS X 10.5. */
47031
56242900e171 2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46856
diff changeset
142 #undef HAVE_WORKING_VFORK
56242900e171 2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 46856
diff changeset
143 #define vfork fork
66765
9651981950f5 (C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 64769
diff changeset
144
9651981950f5 (C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 64769
diff changeset
145 /* Don't close pty in process.c to make it as controlling terminal.
9651981950f5 (C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 64769
diff changeset
146 It is already a controlling terminal of subprocess, because we did
9651981950f5 (C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents: 64769
diff changeset
147 ioctl TIOCSCTTY. */
47033
f6d6e1b3e7b7 2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 47032
diff changeset
148 #define DONT_REOPEN_PTY
46125
474a28fb856c 2002-07-01 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents: 45848
diff changeset
149
108511
f8e62c2bf3e9 Reformat some comments in src/s/*.h.
Glenn Morris <rgm@gnu.org>
parents: 108379
diff changeset
150 /* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */
52826
99773e17bcaf s/darwin.h (GC_MARK_STACK): Define.
Andrew Choi <akochoi@shaw.ca>
parents: 52401
diff changeset
151 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
99773e17bcaf s/darwin.h (GC_MARK_STACK): Define.
Andrew Choi <akochoi@shaw.ca>
parents: 52401
diff changeset
152