(easy-menu-avoid-duplicate-keys): New var.
[emacs.git] / src / s / nextstep.h
blob4e669972749f13672c6a430097416fb982d362f5
1 /* Configuration file for the NeXTstep system.
2 Copyright (C) 1990, 1995, 2001, 2002, 2003, 2004,
3 2005, 2006, 2007, 2008 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, or (at your option)
10 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; see the file COPYING. If not, write to
19 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20 Boston, MA 02110-1301, USA. */
22 #include "bsd4-3.h"
24 /* SYSTEM_TYPE should indicate the kind of system you are using.
25 It sets the Lisp variable system-type. We'll need to undo the bsd one. */
27 #undef SYSTEM_TYPE
28 #define SYSTEM_TYPE "next-mach"
30 #ifndef NeXT
31 #define NeXT
32 #endif
35 /* Data type of load average, as read out of kmem. */
37 #define LOAD_AVE_TYPE long
39 /* Convert that into an integer that is 100 for a load average of 1.0 */
41 #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
43 /* Defining KERNEL_FILE causes lossage because sys/file.h
44 stupidly gets confused by it. */
45 #undef KERNEL_FILE
47 #define SYSTEM_MALLOC
49 #define environ _environ
51 /* This should be true for recent NeXT systems. At least since 3.2. */
52 #define HAVE_MACH_MACH_H
54 #if 0 /* I think these are never used--let's see. -- rms. */
55 /* Mask for address bits within a memory segment */
57 #define SEGSIZ 0x20000
58 #define SEGMENT_MASK (SEGSIZ - 1)
60 #define HAVE_UNIX_DOMAIN
62 /* Conflicts in process.c between ioctl.h & tty.h use of t_foo fields */
64 #define NO_T_CHARS_DEFINES
66 /* This avoids a problem in Xos.h when using co-Xist 3.01. */
67 #define X_NOT_POSIX
68 #endif /* 0 */
70 /* Definitions for how to link. */
72 /* Link this program just by running cc. */
73 #define ORDINARY_LINK
75 #define LD_SWITCH_SYSTEM -X
77 /* Don't use -lc on the NeXT. */
78 #ifdef NS_TARGET /* We use the dynamic libraries under Openstep for Mach 4.0 */
79 #define LIB_STANDARD
80 #else
81 #define LIB_STANDARD -lsys_s
82 #endif
84 #define LIB_MATH -lm
86 #define START_FILES pre-crt0.o
88 #define LIB_X11_LIB -L/usr/lib/X11 -lX11
90 /* We don't have a g library either, so override the -lg LIBS_DEBUG switch */
92 #define LIBS_DEBUG
94 /* We don't have a libgcc.a, so we can't let LIB_GCC default to -lgcc */
96 #define LIB_GCC
98 /* Definitions for how to dump. */
100 #define UNEXEC unexnext.o
102 /* start_of_text isn't actually used, so make it compile without error. */
103 #define TEXT_START 0
104 /* This seems to be right for end_of_text, but it may not be used anyway. */
105 #define TEXT_END get_etext ()
106 /* This seems to be right for end_of_data, but it may not be used anyway. */
107 #define DATA_END get_edata ()
109 /* Don't include string.h--it causes trouble. */
110 #undef HAVE_STRING_H
112 /* Tell emacs.c not to define abort. */
113 #define NO_ABORT
115 /* arch-tag: 5cd6fed4-a0be-4402-9349-85a80bc01d57
116 (do not change this comment) */