Mercurial > emacs
annotate src/s/darwin.h @ 96737:4b22b41c7dd8
*** empty log message ***
author | Jason Rumney <jasonr@gnu.org> |
---|---|
date | Wed, 16 Jul 2008 10:06:08 +0000 |
parents | a2d3c8acc0fe |
children | a27390a84360 |
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). |
94715
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94615
diff
changeset
|
2 Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006, 2007, |
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94615
diff
changeset
|
3 2008 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
|
4 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
5 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
|
6 |
94715
1f134b61867c
Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents:
94615
diff
changeset
|
7 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
|
8 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
|
9 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
|
10 (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
|
11 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
12 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
|
13 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
|
14 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
|
15 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
|
16 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
17 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
|
18 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
|
19 |
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 /* |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
22 * Define symbols to identify the version of Unix this is. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
23 * Define all the symbols that apply correctly. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
24 */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
25 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
26 #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
|
27 /* 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
|
28 #define BSD_SYSTEM |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
29 /* #define VMS */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
30 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
31 /* MAC_OS is used to conditionally compile code common to both MAC_OS8 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
32 and MAC_OSX. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
33 #ifdef MAC_OSX |
46776 | 34 #ifdef HAVE_CARBON |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
35 #define MAC_OS |
83620
ce4352d8bee9
* loadup.el: Load mac-win on a Mac. Avoid loading both x-win and
Dan Nicolaescu <dann@ics.uci.edu>
parents:
83619
diff
changeset
|
36 /* We need a little extra space, see ../../lisp/loadup.el. */ |
ce4352d8bee9
* loadup.el: Load mac-win on a Mac. Avoid loading both x-win and
Dan Nicolaescu <dann@ics.uci.edu>
parents:
83619
diff
changeset
|
37 #define SYSTEM_PURESIZE_EXTRA 30000 |
84464
ccd6d86fd9a6
* s/darwin.h (MULTI_KBOARD): Only define for Carbon.
Dan Nicolaescu <dann@ics.uci.edu>
parents:
83769
diff
changeset
|
38 |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
39 #endif |
46776 | 40 #endif |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
41 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
42 /* SYSTEM_TYPE should indicate the kind of system you are using. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
43 It sets the Lisp variable system-type. */ |
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 #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
|
46 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
47 /* 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
|
48 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
|
49 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
|
50 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
51 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
|
52 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
53 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
|
54 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
|
55 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
|
56 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
57 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
|
58 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
|
59 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
|
60 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
|
61 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
|
62 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
|
63 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
64 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
|
65 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
|
66 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
|
67 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
|
68 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
69 #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
|
70 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
71 /* 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
|
72 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
|
73 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
74 #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
|
75 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
76 /* |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
77 * Define HAVE_TERMIOS if the system provides POSIX-style |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
78 * functions and macros for terminal control. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
79 * |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
80 * Define HAVE_TERMIO if the system provides sysV-style ioctls |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
81 * for terminal control. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
82 * |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
83 * Do not define both. HAVE_TERMIOS is preferred, if it is |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
84 * supported on your system. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
85 */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
86 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
87 #define HAVE_TERMIOS |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
88 /* #define HAVE_TERMIO */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
89 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
90 #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
|
91 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
92 /* |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
93 * Define HAVE_PTYS if the system supports pty devices. |
59689
007a1a6d92de
* s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents:
59658
diff
changeset
|
94 * 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
|
95 */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
96 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
97 #define HAVE_PTYS |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
98 |
59689
007a1a6d92de
* s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents:
59658
diff
changeset
|
99 /** |
007a1a6d92de
* s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents:
59658
diff
changeset
|
100 * PTYs only work correctly on Darwin 7 or higher. So make the |
007a1a6d92de
* s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents:
59658
diff
changeset
|
101 * default for process-connection-type dependent on the kernel |
007a1a6d92de
* s/darwin.h: Removed PTY_ITERATION from here.
Steven Tamm <steventamm@mac.com>
parents:
59658
diff
changeset
|
102 * version. |
59658
45074d913d23
* editfns.c (Voperating_system_release): Added.
Steven Tamm <steventamm@mac.com>
parents:
58634
diff
changeset
|
103 */ |
77078
29afb1b6d0f6
(__restrict, struct kboard): Remove outdated workarounds.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
75348
diff
changeset
|
104 #define MIN_PTY_KERNEL_VERSION '7' |
59658
45074d913d23
* editfns.c (Voperating_system_release): Added.
Steven Tamm <steventamm@mac.com>
parents:
58634
diff
changeset
|
105 |
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 this symbol if your system has the functions bcopy, etc. */ |
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 BSTRING |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
109 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
110 /* subprocesses should be defined if you want to |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
111 have code for asynchronous subprocesses |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
112 (as used in M-x compile and M-x shell). |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
113 This is generally OS dependent, and not supported |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
114 under most USG systems. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
115 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
116 #define subprocesses |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
117 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
118 /* define MAIL_USE_FLOCK if the mailer uses flock |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
119 to interlock access to /usr/spool/mail/$USER. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
120 The alternative is that a lock file named |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
121 /usr/spool/mail/$USER.lock. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
122 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
123 #define MAIL_USE_FLOCK |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
124 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
125 /* 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
|
126 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
|
127 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
|
128 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
129 #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
|
130 |
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 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
133 /* Here, add any special hacks needed |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
134 to make Emacs work on this system. For example, |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
135 you might define certain system call names that don't |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
136 exist on your system, or that do different things on |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
137 your system and must be used only through an encapsulation |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
138 (Which you should place, by convention, in sysdep.c). */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
139 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
140 /* ============================================================ */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
141 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
142 /* After adding support for a new system, modify the large case |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
143 statement in the `configure' script to recognize reasonable |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
144 configuration names, and add a description of the system to |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
145 `etc/MACHINES'. |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
146 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
147 If you've just fixed a problem in an existing configuration file, |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
148 you should also check `etc/MACHINES' to make sure its descriptions |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
149 of known problems in that configuration should be updated. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
150 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
151 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
152 /* 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
|
153 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
|
154 #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
|
155 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
156 /* 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
|
157 #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
|
158 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
159 /* System uses OXTABS instead of the expected TAB3. (Copied from |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
160 bsd386.h.) */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
161 #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
|
162 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
163 /* Darwin ld insists on the use of malloc routines in the System |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
164 framework. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
165 #define SYSTEM_MALLOC |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
166 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
167 /* 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
|
168 #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
|
169 |
58634
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
170 /* In Carbon, asynchronous I/O (using SIGIO) can't be used for window |
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
171 events because they don't come from sockets, even though it works |
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
172 fine on tty's. */ |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
173 /* This seems to help in Ctrl-G detection under Cocoa, however at the cost |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
174 of some quirks that may or may not bother a given user. */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
175 #if defined (HAVE_CARBON) || defined (COCOA_EXPERIMENTAL_CTRL_G) |
58634
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
176 #define NO_SOCK_SIGIO |
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
177 #endif |
95d38c47c806
* keyboard.c: Don't undef SIGIO
Steven Tamm <steventamm@mac.com>
parents:
58559
diff
changeset
|
178 |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
179 /* Extra initialization calls in main for Mac OS X system type. */ |
46776 | 180 #ifdef HAVE_CARBON |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
181 #define SYMS_SYSTEM syms_of_mac() |
46776 | 182 #endif |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
183 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
184 /* Definitions for how to dump. Copied from nextstep.h. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
185 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
186 #define UNEXEC unexmacosx.o |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
187 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
188 #define START_FILES pre-crt0.o |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
189 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
190 /* start_of_text isn't actually used, so make it compile without error. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
191 #define TEXT_START (0) |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
192 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
193 /* This seems to be right for end_of_text, but it may not be used anyway. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
194 #define TEXT_END get_etext() |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
195 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
196 /* This seems to be right for end_of_data, but it may not be used anyway. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
197 #define DATA_END get_edata() |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
198 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
199 /* Definitions for how to compile & link. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
200 |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
201 /* This is for the Carbon port. Under the NeXTstep port, this is still picked |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
202 up during preprocessing, but is undone in config.in. */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
203 #ifndef HAVE_NS |
77078
29afb1b6d0f6
(__restrict, struct kboard): Remove outdated workarounds.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
75348
diff
changeset
|
204 #define C_SWITCH_SYSTEM -fpascal-strings -DMAC_OSX |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
205 #endif |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
206 |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
207 /* Link in the Carbon or AppKit lib. */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
208 #ifdef HAVE_NS |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
209 /* PENDING: lresolv is here because configure when testing #undefs res_init, |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
210 a macro in /usr/include/resolv.h for res_9_init, not in stdc lib. */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
211 #define LIBS_MACGUI -framework AppKit -lresolv |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
212 #define SYSTEM_PURESIZE_EXTRA 200000 |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
213 #define HEADERPAD_EXTRA 6C8 |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
214 #else |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
215 #define HEADERPAD_EXTRA 690 |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
216 |
80549
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
217 #ifdef HAVE_CARBON |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
218 |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
219 #ifdef HAVE_AVAILABILITYMACROS_H |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
220 #include <AvailabilityMacros.h> |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
221 #endif |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
222 |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
223 /* Whether to use the Image I/O framework for reading images. */ |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
224 #ifndef USE_MAC_IMAGE_IO |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
225 #if MAC_OS_X_VERSION_MAX_ALLOWED >= 1040 && (MAC_OS_X_VERSION_MIN_REQUIRED >= 1040 || MAC_OS_X_VERSION_MIN_REQUIRED < 1020) |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
226 #define USE_MAC_IMAGE_IO 1 |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
227 #endif |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
228 #endif |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
229 |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
230 /* If the Image I/O framework is not used, fall back on QuickTime. */ |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
231 #if USE_MAC_IMAGE_IO |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
232 #define LIBS_IMAGE |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
233 #else |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
234 #define LIBS_IMAGE -framework QuickTime |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
235 #endif |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
236 |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
237 #endif /* HAVE_CARBON */ |
53a1e0dd23cc
[HAVE_CARBON && HAVE_AVAILABILITYMACROS_H]:
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
79756
diff
changeset
|
238 |
56892
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
239 /* Link in the Carbon lib. */ |
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
240 #ifdef HAVE_CARBON |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
241 #define LIBS_MACGUI -framework Carbon LIBS_IMAGE |
56892
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
242 #else |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
243 #define LIBS_MACGUI |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
244 #endif /* !HAVE_CARBON */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
245 #endif /* !HAVE_NS */ |
56892
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
246 |
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
247 /* The -headerpad option tells ld (see man page) to leave room at the |
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
248 end of the header for adding load commands. Needed for dumping. |
02d9436a8b32
(LIBS_CARBON): New define to specify libraries for
Steven Tamm <steventamm@mac.com>
parents:
54150
diff
changeset
|
249 0x690 is the total size of 30 segment load commands (at 56 |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
250 each); under Cocoa 31 commands are required. */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
251 #define LD_SWITCH_SYSTEM_TEMACS -prebind LIBS_MACGUI -Xlinker -headerpad -Xlinker HEADERPAD_EXTRA |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
252 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
253 #define C_SWITCH_SYSTEM_TEMACS -Dtemacs |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
254 |
45848 | 255 /* The ncurses library has been moved out of the System framework in |
256 Mac OS X 10.2. So if ./configure detects it, set the command-line | |
257 option to use it. */ | |
258 #ifdef HAVE_LIBNCURSES | |
259 #define LIBS_TERMCAP -lncurses | |
47063
e239d6c210ed
2002-08-27 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
47033
diff
changeset
|
260 /* This prevents crashes when running Emacs in Terminal.app under |
e239d6c210ed
2002-08-27 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
47033
diff
changeset
|
261 10.2. */ |
e239d6c210ed
2002-08-27 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
47033
diff
changeset
|
262 #define TERMINFO |
45848 | 263 #endif |
264 | |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
265 /* Link this program just by running cc. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
266 #define ORDINARY_LINK |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
267 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
268 /* We don't have a g library, so override the -lg LIBS_DEBUG switch. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
269 #define LIBS_DEBUG |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
270 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
271 /* Adding -lm confuses the dynamic linker, so omit it. */ |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
272 #define LIB_MATH |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
273 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
274 /* Tell src/Makefile.in to create files in the Mac OS X application |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
275 bundle mac/Emacs.app. */ |
46776 | 276 #ifdef HAVE_CARBON |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
277 #define OTHER_FILES macosx-app |
46776 | 278 #endif |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
279 |
96675
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
280 /* PENDING: can this target be specified in a clearer way? */ |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
281 #ifdef HAVE_NS |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
282 #define OTHER_FILES ns-app |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
283 #endif |
d45acf0c8d23
merging Emacs.app (NeXTstep port)
Adrian Robert <Adrian.B.Robert@gmail.com>
parents:
96583
diff
changeset
|
284 |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
285 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
286 /* 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
|
287 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
|
288 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
289 /* 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
|
290 #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
|
291 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
292 /* 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
|
293 #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
|
294 |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
295 |
47031
56242900e171
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46856
diff
changeset
|
296 /* 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
|
297 (make-comint "test0" "/nodir/nofile" nil "") when /nodir/nofile |
56242900e171
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46856
diff
changeset
|
298 does not exist. */ |
56242900e171
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46856
diff
changeset
|
299 #undef HAVE_WORKING_VFORK |
56242900e171
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46856
diff
changeset
|
300 #define vfork fork |
66765
9651981950f5
(C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
64769
diff
changeset
|
301 |
9651981950f5
(C_SWITCH_SYSTEM): Remove -fno-common.
YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
parents:
64769
diff
changeset
|
302 /* 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
|
303 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
|
304 ioctl TIOCSCTTY. */ |
47033
f6d6e1b3e7b7
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
47032
diff
changeset
|
305 #define DONT_REOPEN_PTY |
46125
474a28fb856c
2002-07-01 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
45848
diff
changeset
|
306 |
44890
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
307 #ifdef temacs |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
308 #define malloc unexec_malloc |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
309 #define realloc unexec_realloc |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
310 #define free unexec_free |
01b93e5e53a7
Patch for building Emacs on Mac OS X. April 26, 2002. See ChangeLog,
Andrew Choi <akochoi@shaw.ca>
parents:
diff
changeset
|
311 #endif |
46856
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
312 |
58559
643823aaa8df
(POSIX_SIGNALS): Undo the removal of 2002-08-25,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56892
diff
changeset
|
313 /* This makes create_process in process.c save and restore signal |
643823aaa8df
(POSIX_SIGNALS): Undo the removal of 2002-08-25,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56892
diff
changeset
|
314 handlers correctly. Suggested by Nozomu Ando.*/ |
643823aaa8df
(POSIX_SIGNALS): Undo the removal of 2002-08-25,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56892
diff
changeset
|
315 #define POSIX_SIGNALS |
643823aaa8df
(POSIX_SIGNALS): Undo the removal of 2002-08-25,
Stefan Monnier <monnier@iro.umontreal.ca>
parents:
56892
diff
changeset
|
316 |
46856
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
317 /* Reroute calls to SELECT to the version defined in mac.c to fix the |
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
318 problem of Emacs requiring an extra return to be typed to start |
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
319 working when started from the command line. */ |
47032
4e4bf31455d6
2002-08-25 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
47031
diff
changeset
|
320 #if defined (HAVE_CARBON) && (defined (emacs) || defined (temacs)) |
46856
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
321 #define select sys_select |
eba75fedd593
2002-08-10 Andrew Choi <akochoi@shaw.ca>
Andrew Choi <akochoi@shaw.ca>
parents:
46776
diff
changeset
|
322 #endif |
52401 | 323 |
52826
99773e17bcaf
s/darwin.h (GC_MARK_STACK): Define.
Andrew Choi <akochoi@shaw.ca>
parents:
52401
diff
changeset
|
324 /* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the |
99773e17bcaf
s/darwin.h (GC_MARK_STACK): Define.
Andrew Choi <akochoi@shaw.ca>
parents:
52401
diff
changeset
|
325 stack. */ |
99773e17bcaf
s/darwin.h (GC_MARK_STACK): Define.
Andrew Choi <akochoi@shaw.ca>
parents:
52401
diff
changeset
|
326 #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
|
327 |
52401 | 328 /* arch-tag: 481d443d-4f89-43ea-b5fb-49706d95fa41 |
329 (do not change this comment) */ |