mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-02-28 02:40:46 -08:00
* config.h.in (HAVE_CONST): New macro. If it's not #defined, #define const to be the empty string. * config.h.in: If we're not __STDC__, define volatile to be the empty string.
199 lines
6.7 KiB
C
199 lines
6.7 KiB
C
/* GNU Emacs site configuration template file. -*- C -*-
|
|
Copyright (C) 1988 Free Software Foundation, Inc.
|
|
|
|
This file is part of GNU Emacs.
|
|
|
|
GNU Emacs is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY. No author or distributor
|
|
accepts responsibility to anyone for the consequences of using it
|
|
or for whether it serves any particular purpose or works at all,
|
|
unless he says so in writing. Refer to the GNU Emacs General Public
|
|
License for full details.
|
|
|
|
Everyone is granted permission to copy, modify and redistribute
|
|
GNU Emacs, but only under the conditions described in the
|
|
GNU Emacs General Public License. A copy of this license is
|
|
supposed to have been given to you along with GNU Emacs so you
|
|
can know your rights and responsibilities. It should be in a
|
|
file named COPYING. Among other things, the copyright notice
|
|
and this notice must be preserved on all copies. */
|
|
|
|
|
|
/* No code in Emacs #includes config.h twice, but some of the code
|
|
intended to work with other packages as well (like gmalloc.c)
|
|
think they can include it as many times as they like. */
|
|
#ifndef EMACS_CONFIG_H
|
|
#define EMACS_CONFIG_H
|
|
|
|
|
|
/* Define HAVE_X_WINDOWS if you want to use the X window system. */
|
|
/* #define HAVE_X_WINDOWS */
|
|
|
|
/* Define HAVE_X11 if you want to use version 11 of X windows.
|
|
Otherwise, Emacs expects to use version 10. */
|
|
/* #define HAVE_X11 */
|
|
|
|
/* Define HAVE_X_MENU if you want to use the X window menu system.
|
|
This appears to work on some machines that support X
|
|
and not on others. */
|
|
/* #define HAVE_X_MENU */
|
|
|
|
/* If we're using any sort of window system, define MULTI_FRAME. */
|
|
#ifdef HAVE_X_WINDOWS
|
|
#define MULTI_FRAME
|
|
#endif
|
|
|
|
/* Define USE_TEXT_PROPERTIES to support visual and other properties
|
|
on text. */
|
|
#define USE_TEXT_PROPERTIES
|
|
|
|
/* Define USER_FULL_NAME to return a string
|
|
that is the user's full name.
|
|
It can assume that the variable `pw'
|
|
points to the password file entry for this user.
|
|
|
|
At some sites, the pw_gecos field contains
|
|
the user's full name. If neither this nor any other
|
|
field contains the right thing, use pw_name,
|
|
giving the user's login name, since that is better than nothing. */
|
|
|
|
#define USER_FULL_NAME pw->pw_gecos
|
|
|
|
/* Define AMPERSAND_FULL_NAME if you use the convention
|
|
that & in the full name stands for the login id. */
|
|
|
|
/* #define AMPERSAND_FULL_NAME */
|
|
|
|
/* Define LISP_FLOAT_TYPE if you want emacs to support floating-point
|
|
numbers. */
|
|
/* #define LISP_FLOAT_TYPE */
|
|
|
|
/* Define GNU_MALLOC if you want to use the *new* GNU memory allocator. */
|
|
/* #define GNU_MALLOC */
|
|
|
|
/* Define REL_ALLOC if you want to use the relocating allocator for
|
|
buffer space. */
|
|
/* #define REL_ALLOC */
|
|
|
|
/* Define this macro if you want to use 16-bit GLYPHs. Currently this
|
|
option isn't terribly useful (the current distribution doesn't
|
|
support large characters in buffer text), so the configuration
|
|
script doesn't provide an option to select it.
|
|
|
|
A character is displayed on a given terminal by means of a sequence
|
|
of one or more GLYPHs. A GLYPH is something that takes up exactly
|
|
one display position on the frame.
|
|
|
|
Emacs can use 8-bit or 16-bit values to represent GLYPHs. Under X
|
|
windows, 16-bit GLYPHs allow you to display characters from fonts
|
|
too large to be indexed by 8 bits alone, but drawing with 16-bit GLYPHs
|
|
is usually quite a bit slower than drawing with 8-bit GLYPHs. */
|
|
/* #define GLYPH_16_BIT */
|
|
|
|
#ifdef GLYPH_16_BIT
|
|
#define GLYPH unsigned short
|
|
#else
|
|
#define GLYPH unsigned char
|
|
#endif
|
|
|
|
/* If using GNU, then support inline function declarations. */
|
|
#ifdef __GNUC__
|
|
#define INLINE __inline__
|
|
#else
|
|
#define INLINE
|
|
#endif
|
|
|
|
/* The configuration script replaces the string @opsystem@ with the
|
|
name of the s/*.h file that describes the system type you are
|
|
using; an option of the form "-opsystem=OPSYS" says to use
|
|
"s/OPSYS.h". See the file ../etc/MACHINES for a list of systems
|
|
and the -opsystem flags to use for them.
|
|
See s/template.h for documentation on writing s/*.h files. */
|
|
#include "@opsystem@"
|
|
|
|
/* The configuration script replaces the string @machine@ with the
|
|
name of the m/*.h file that describes the machine you are
|
|
using; an option of the form "-machine=MACH" says to use
|
|
"m/MACH.h". See the file ../etc/MACHINES for a list of machines
|
|
and the -machine flags to use for them.
|
|
See m/template.h for documentation on writing m/*.h files. */
|
|
#include "@machine@"
|
|
|
|
/* Some s- files may define SYSTEM_MALLOC, in which case make sure
|
|
we don't use REL_ALLOC. */
|
|
|
|
#ifdef SYSTEM_MALLOC
|
|
#ifdef GNU_MALLOC
|
|
#undef GNU_MALLOC
|
|
#ifdef REL_ALLOC
|
|
#undef REL_ALLOC
|
|
#endif
|
|
#endif
|
|
#endif
|
|
|
|
/* Load in the conversion definitions if this system
|
|
needs them and the source file being compiled has not
|
|
said to inhibit this. There should be no need for you
|
|
to alter these lines. */
|
|
|
|
#ifdef SHORTNAMES
|
|
#ifndef NO_SHORTNAMES
|
|
#include "../shortnames/remap.h"
|
|
#endif /* not NO_SHORTNAMES */
|
|
#endif /* SHORTNAMES */
|
|
|
|
/* Define `subprocesses' should be defined if you want to
|
|
have code for asynchronous subprocesses
|
|
(as used in M-x compile and M-x shell).
|
|
These do not work for some USG systems yet;
|
|
for the ones where they work, the s/*.h file defines this flag. */
|
|
|
|
#ifndef VMS
|
|
#ifndef USG
|
|
/* #define subprocesses */
|
|
#endif
|
|
#endif
|
|
|
|
/* Define LD_SWITCH_SITE to contain any special flags your loader may
|
|
need. For instance, if you've defined HAVE_X_WINDOWS above and your
|
|
X libraries aren't in a place that your loader can find on its own,
|
|
you might want to add "-L/..." or something similar. */
|
|
/* #define LD_SWITCH_SITE */
|
|
|
|
/* Define C_SWITCH_SITE to contain any special flags your compiler may
|
|
need. For instance, if you've defined HAVE_X_WINDOWS above and your
|
|
X include files aren't in a place that your compiler can find on its
|
|
own, you might want to add "-I/..." or something similar. */
|
|
/* #define C_SWITCH_SITE */
|
|
|
|
/* Define the return type of signal handlers if the s-xxx file
|
|
did not already do so. */
|
|
#ifndef SIGTYPE
|
|
#define SIGTYPE void
|
|
#endif
|
|
|
|
/* If it doesn't seem that the compiler we're using supports the
|
|
`const' qualifier, then the `configure' script will remove this
|
|
line. Some of the files that Emacs shares with other applications
|
|
(regex.h, getdate.y, etcetera) assume that const is defined. The
|
|
rule seems to be that if a system has a config.h file, that file
|
|
should take care of #defining const away if necessary. */
|
|
#define HAVE_CONST
|
|
|
|
#ifndef HAVE_CONST
|
|
#define const
|
|
#endif
|
|
|
|
/* Non-ANSI C compilers don't have volatile. */
|
|
#ifndef __STDC__
|
|
#define volatile
|
|
#endif
|
|
|
|
#ifndef THIS_IS_YMAKEFILE
|
|
/* Some of the files of Emacs which are intended for use with other
|
|
programs assume that if you have a config.h file, you must declare
|
|
the type of getenv. */
|
|
extern char *getenv ();
|
|
#endif
|
|
|
|
#endif /* EMACS_CONFIG_H */
|