Commit 1a578e9b authored by Andrew Choi's avatar Andrew Choi

Initial check-in: changes for building Emacs under Mac OS.

2000-10-23  Andrew Choi  <akochoi@i-cable.com>

	* dispextern.h [macintosh]: Include macgui.h instead of macterm.h.

	* dispnew.c [macintosh]: Include macterm.h.
	(init_display) [macintosh]: initialization for window system.

	* emacs.c (main) [macintosh]: Call syms_of_textprop,
	syms_of_macfns, syms_of_ccl, syms_of_fontset, syms_of_xterm,
	syms_of_search, x_term_init, and init_keyboard before calling
	init_window_once.  Also, call syms_of_xmenu.

	* fontset.c (syms_of_fontset) [macintosh]: Set ASCII font of
	default fontset to Monaco.

	* frame.c [macintosh]: Include macterm.h.  Remove declarations of
	NewMacWindow and DisposeMacWindow.
	(make_terminal_frame) [macintosh]: Call make_mac_terminal_frame
	instead of calling NewMacWindow and setting fields of
	f->output_data.mac directly.  Call init_frame_faces.
	(Fdelete_frame) [macintosh]: Remove unused code.
	(Fmodify_frame_parameters) [macintosh]: Call
	x_set_frame_parameters instead of mac_set_frame_parameters.

	* frame.h [macintosh]: Define menu_bar_lines field in struct
	frame.  Define FRAME_EXTERNAL_MENU_BAR macro.

	* keyboard.c [macintosh]: Include macterm.h.
	(kbd_buffer_get_event) [macintosh]: Generate delete_window_event
	and menu_bar_activate_event type events as for X and NT.
	(make_lispy_event) [macintosh]: Construct lisp events of type
	MENU_BAR_EVENT as for X and NT.

	* sysdep.c [macintosh]: Remove declaration for sys_signal.
	Include stdlib.h.  Remove definition of Vx_bitmap_file_path.
	(sys_subshell) [macintosh]: Remove definition entirely.
	(init_sys_modes) [macintosh]: Do not initialize Vwindow_system and
	Vwindow_system_version here.  Remove initialization of
	Vx_bitmap_file_path.
	(read_input_waiting): Correct the number of parameters passed to
	read_socket_hook.
	Move all Macintosh functions to mac/mac.c.

	* term.c [macintosh]: Include macterm.h.

	* window.c [macintosh]: Include macterm.h.

	* xdisp.c [macintosh]: Include macterm.h.  Declare
	set_frame_menubar and pending_menu_activation.
	(echo_area_display) [macintosh]: Do not return if terminal frame
	is the selected frame.
	(update_menu_bar) [macintosh]: Check FRAME_EXTERNAL_MENU_BAR (f).
	Allow only the selected frame to set menu bar.
	(redisplay_window) [macintosh]: Obtain menu bar to redisplay by
	calling FRAME_EXTERNAL_MENU_BAR (f).
	(display_menu_bar) [macintosh]: Check FRAME_MAC_P (f).

	* xfaces.c [macintosh]: Include macterm.h.  Define x_display_info
	and check_x.  Declare XCreateGC.  Define x_create_gc and
	x_free_gc.  Initialize font_sort_order.
	(x_face_list_fonts) [macintosh]: Use the same code as WINDOWSNT,
	but call x_list_fonts instead of w32_list_fonts.
	(Finternal_face_x_get_resource) [macintosh]: Do not call
	display_x_get_resource.
	(prepare_face_for_display) [macintosh]: Set xgcv.font.
	(realize_x_face) [macintosh]: Load the font if it is specified in
	ATTRS.
	(syms_of_xfaces) [macintosh]: Initialize Vscalable_fonts_allowed
	to Qt.

	* cus-edit.el (custom-button-face): Use 3D look for mac.
	(custom-button-pressed-face): Likewise.

	* faces.el (set-face-attributes-from-resources): Handle mac frames
	in the same way as x and w32 frames.
	(face-valid-attribute-values): Likewise.
	(read-face-attribute): Likewise.
	(defined-colors): Likewise.
	(color-defined-p): Likewise.
	(color-values): Likewise.
	(display-grayscale-p): Likewise.
	(face-set-after-frame-default): Likewise.
	(mode-line): Same default face as for x and w32.
	(tool-bar): Likewise.

	* frame.el: Remove call to frame-notice-user-settings at end of
	the file.

	* info.el (Info-fontify-node): make underlines invisible for mac
	as for x, pc, and w32 frame types.

	* term/mac-win.el: New file.
parent d371949a
2000-10-23 Andrew Choi <akochoi@i-cable.com>
* cus-edit.el (custom-button-face): Use 3D look for mac.
(custom-button-pressed-face): Likewise.
* faces.el (set-face-attributes-from-resources): Handle mac frames
in the same way as x and w32 frames.
(face-valid-attribute-values): Likewise.
(read-face-attribute): Likewise.
(defined-colors): Likewise.
(color-defined-p): Likewise.
(color-values): Likewise.
(display-grayscale-p): Likewise.
(face-set-after-frame-default): Likewise.
(mode-line): Same default face as for x and w32.
(tool-bar): Likewise.
* frame.el: Remove call to frame-notice-user-settings at end of
the file.
* info.el (Info-fontify-node): make underlines invisible for mac
as for x, pc, and w32 frame types.
* term/mac-win.el: New file.
2000-10-22 Dave Love <fx@gnu.org>
* textmodes/refill.el: New file.
......
......@@ -1711,6 +1711,9 @@ and `face'."
(((type w32) (class color)) ; Like default modeline
(:box (:line-width 2 :style released-button)
:background "lightgrey" :foreground "black"))
(((type mac) (class color)) ; Like default modeline
(:box (:line-width 2 :style released-button)
:background "lightgrey" :foreground "black"))
(t
nil))
"Face used for buttons in customization buffers."
......@@ -1724,6 +1727,9 @@ and `face'."
(((type w32) (class color))
(:box (:line-width 2 :style pressed-button)
:background "lightgrey" :foreground "black"))
(((type mac) (class color))
(:box (:line-width 2 :style pressed-button)
:background "lightgrey" :foreground "black"))
(t
(:inverse-video t)))
"Face used for buttons in customization buffers."
......
......@@ -300,7 +300,7 @@ specifies an invalid attribute."
(defun set-face-attributes-from-resources (face frame)
"Set attributes of FACE from X resources for FRAME."
(when (memq (framep frame) '(x w32))
(when (memq (framep frame) '(x w32 mac))
(dolist (definition face-x-resources)
(let ((attribute (car definition)))
(dolist (entry (cdr definition))
......@@ -777,7 +777,7 @@ an integer value."
((:height)
'integerp)
(:stipple
(and (memq window-system '(x w32))
(and (memq window-system '(x w32 mac))
(mapcar #'list
(apply #'nconc
(mapcar (lambda (dir)
......@@ -1231,7 +1231,7 @@ is used. If nil or omitted, use the selected frame."
The argument FRAME specifies which frame to try.
The value may be different for frames on different display types.
If FRAME doesn't support colors, the value is nil."
(if (memq (framep (or frame (selected-frame))) '(x w32))
(if (memq (framep (or frame (selected-frame))) '(x w32 mac))
(xw-defined-colors frame)
(mapcar 'car (tty-color-alist frame))))
(defalias 'x-defined-colors 'defined-colors)
......@@ -1243,7 +1243,7 @@ If COLOR is the symbol `unspecified' or one of the strings
\"unspecified-fg\" or \"unspecified-bg\", the value is nil."
(if (member color '(unspecified "unspecified-bg" "unspecified-fg"))
nil
(if (member (framep (or frame (selected-frame))) '(x w32))
(if (member (framep (or frame (selected-frame))) '(x w32 mac))
(xw-color-defined-p color frame)
(numberp (tty-color-translate color frame)))))
(defalias 'x-color-defined-p 'color-defined-p)
......@@ -1258,7 +1258,7 @@ If COLOR is the symbol `unspecified' or one of the strings
\"unspecified-fg\" or \"unspecified-bg\", the value is nil."
(if (member color '(unspecified "unspecified-fg" "unspecified-bg"))
nil
(if (memq (framep (or frame (selected-frame))) '(x w32))
(if (memq (framep (or frame (selected-frame))) '(x w32 mac))
(xw-color-values color frame)
(tty-color-values color frame))))
(defalias 'x-color-values 'color-values)
......@@ -1268,7 +1268,7 @@ If COLOR is the symbol `unspecified' or one of the strings
The optional argument DISPLAY specifies which display to ask about.
DISPLAY should be either a frame or a display name (a string).
If omitted or nil, that stands for the selected frame's display."
(if (memq (framep-on-display display) '(x w32))
(if (memq (framep-on-display display) '(x w32 mac))
(xw-display-color-p display)
(tty-display-color-p display)))
(defalias 'x-display-color-p 'display-color-p)
......@@ -1445,7 +1445,7 @@ Initialize colors of certain faces from frame parameters."
(when spec
(face-spec-set face spec frame))
(internal-merge-in-global-face face frame)
(when (memq window-system '(x w32))
(when (memq window-system '(x w32 mac))
(make-face-x-resource-internal face frame))))
;; Initialize attributes from frame parameters.
......@@ -1527,7 +1527,7 @@ created."
(defface mode-line
'((((type x w32) (class color))
'((((type x w32 mac) (class color))
(:box (:line-width 2 :style released-button)
:background "grey75" :foreground "black"))
(t
......@@ -1572,7 +1572,7 @@ created."
(defface tool-bar
'((((type x w32) (class color))
'((((type x w32 mac) (class color))
(:box (:line-width 1 :style released-button)
:background "grey75" :foreground "black"))
(((type x) (class mono))
......
......@@ -1164,4 +1164,3 @@ If nil, don't show a cursor except in the selected window."
(provide 'frame)
;;; frame.el ends here
(frame-notice-user-settings):
......@@ -2427,7 +2427,7 @@ the variable `Info-file-list-for-emacs'."
;; This is a serious problem for trying to handle multiple
;; frame types at once. We want this text to be invisible
;; on frames that can display the font above.
(if (memq (framep (selected-frame)) '(x pc w32))
(if (memq (framep (selected-frame)) '(x pc w32 mac))
(add-text-properties (match-end 1) (match-end 2)
'(invisible t intangible t))))
(goto-char (point-min))
......
This diff is collapsed.
; MPW does not allow saving a file with name beginning with a period.
; Use Emacs or SimpleText to edit and save this file instead.
(cond ((fboundp 'global-font-lock-mode)
;; Turn on font-lock in all modes that support it
(global-font-lock-mode t)
;; Maximum colors
(setq font-lock-maximum-decoration t)))
(setq default-frame-alist '((font . "fontset-mac")))
2000-10-20 Andrew Choi <akochoi@users.sourceforge.net>
* INSTALL: New file.
* README: New file.
* TODO: New file.
* emacs-cw5.mcp.xml: New file.
* emacs-cw6.mcp.xml: New file.
* makefile.MPW: New file.
* inc/alloca.h: New file.
* inc/cmdline-defs-cw5.h: New file.
* inc/cmdline-defs-cw6.h: New file.
* inc/config.h: New file.
* inc/dirent.h: New file.
* inc/epaths.h: New file.
* inc/m-mac.h: New file.
* inc/macgui.h: New file.
* inc/macterm.h: New file.
* inc/pwd.h: New file.
* inc/s-mac.h: New file.
* inc/termio.h: New file.
* inc/utime.h: New file.
* inc/utsname.h: New file.
* inc/sys/file.h: New file.
* inc/sys/ioctl.h: New file.
* inc/sys/param.h: New file.
* inc/sys/stat.h: New file.
* inc/sys/time.h: New file.
* inc/sys/types.h: New file.
* src/Emacs.r: New file.
* src/EmacsMPW.r: New file.
* src/chdir.c: New file.
* src/mac.c: New file.
* src/macfns.c: New file.
* src/macmenu.c: New file.
* src/macterm.c: New file.
* BUILDING EMACS ON THE MAC OS -*- outline -*-
You can use either Metrowerks CodeWarrior Pro 5 or 6 or MPW-GM
(Aug. 2000) to build Emacs. MPW-GM can be downloaded free of charge
from Apple at
http://developer.apple.com/tools/mpw-tools/
You will need MPW-GM to build the make-docfile utility and to generate
the doc string file DOC.
To decompress files, you can use MacGzip from
http://persephone.cps.unizar.es/~spd/gzip
and to untar them, you can use tar 4.0 from
http://hyperarchive.lcs.mit.edu/HyperArchive/Archive/cmp/tar-40b.hqx
(Optional) If you wish to fetch files from the Emacs CVS repository
directly to your Mac, you can use the CVS client MacCVS, which can be
downloaded from
http://www.wincvs.org/
(Optional) A subset of the fonts from the GNU intlfonts-1.2
distribution converted to NFNT format can be obtained from
ftp://mac-emacs.sourceforge.net/pub/mac-emacs/GNU-fonts.smi.bin
* BUILDING EMACS
To build Emacs in the MPW Shell, simply set the directory to
...:emacs:mac: and build the target Emacs of the make file
makefile.mpw. I.e., execute the commands
make Emacs -f makefile.MPW > Emacs.MakeScript
Emacs.MakeScript
To build Emacs using CodeWarrior, start up the CodeWarrior IDE, choose
File->Import Project... and select the file emacs-cw5.mcp.xml or
emacs-cw6.mcp.xml, depending on which verison of CodeWarrior used.
When prompted to save the project, navigate to same directory as the
file emacs-cw[56].mcp.xml, name it emacs-cw5.mcp or emacs-cw6.mcp, and
save it there. Then choose Project->Make. Note that this does not
build the DOC file. To do so, use MPW and build the target "Doc" in
makefile.MPW.
Once built, the Emacs application (Emacs CW or Emacs MPW) can be
launched where it is created.
To build an optimized version of Emacs in CodeWarrior, change the
value in the Emacs Settings->Code Generation->Global Optimization
dialog. To build a version for profiling, check the Profiler
Information box in the Emacs Settings->Code Generation->PPC Processor
dialog and include the Profiler PPC.Lib library.
To build optimized or debugging version of Emacs in MPW, follow the
comment in makefile.MPW to enable the -opt speed or -sym on option
(see note below).
The Mac version requires compiled Lisp files to be present in the lisp
directory to run properly. It is cumbersome to bootstrap from only
the Lisp source files. One way of getting the compiled Lisp files is
to build Emacs once on, say, a Unix system and transfer that directory
to the Mac. Note that linefeed conversion must be disabled when
transferring compiled Lisp files.
An alternative is to unzip and untar the archive lisp-elc.tgz. An
older version of frame.elc in the archive may cause a problem when the
Mac version starts up. If this is the case, simply remove or rename
that file. Then once Emacs runs, you can invoke
byte-recompile-directory on the lisp directory to byte-compile all
out-of-date Lisp files.
You may also need to run update-autoloads-from-directories on the lisp
directory to bring loaddefs.el up-to-date.
* NOTES
Emacs should build and run on a PowerMac running Mac OS 8.1 - 9.0.
You will need around 100 MB of disk space for the source files and
intermediate files.
It will not run on machines with more than 256 MB of physical or
virtual memory.
Currently there is no support for building the LEIM directory on the
Mac. However, it can be built on another platform and transferred to
the Mac.
When Emacs is built with "-opt speed" enabled in makefile.MPW,
optimization causes the functions reset_buffer_local_variables in
buffer.c and syms_of_lread in lread.c to crash. Avoid this by
enclosing them in the following pragmas.
#pragma options opt off
<function definition...>
#pragma options opt reset
To use the same icon as when Emacs is built on Windows NT, define
GNU_ICON in mac/src/Emacs.r.
GNU Emacs for Mac OS
This directory contains the files needed to build GNU Emacs on the Mac
OS (8.1-9.0). Many of the major features of the Unix version are
supported: multiple frames, colors, scroll bars, menu bars, use of the
mouse, fontsets, international characters, input methods, and coding
systems.
Mac OS specific support includes document drag-and-drop in the Finder,
transfer of text to and from other applications via the clipboard, and
sending AppleScript commands to other applications from Emacs.
The following are not yet supported: unexec (dump-emacs), asynchronous
subprocesses (start-process), and networking
(open-network-connection).
There is basic support for synchronous subprocesses (call-process)
although Unix commands that are used will need to be ported to the
Mac.
Metrowerks CodeWarrior Pro 5 or Pro 6 or MPW-GM (August 2000) can be
used to build Emacs on the Mac OS. See the INSTALL file in this
directory for instructions on building Emacs.
Binary distributions are available at
http://mac-emacs.sourceforge.net/index.html
At this site you can also find an FAQ, mailing lists, and dicussion
forums for discussing issues related to running GNU Emacs on Mac OS.
Andrew.
<akochoi@users.sourceforge.net>
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
#ifndef _ALLOCA_H_
#define _ALLOCA_H_
#if __MRC__
void *__alloca(size_t size);
#endif
#endif
\ No newline at end of file
#define emacs 1
#define HAVE_CONFIG_H
\ No newline at end of file
#define emacs 1
#define HAVE_CONFIG_H
#define CODEWARRIOR_VERSION_6
This diff is collapsed.
/* Replacement dirent.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Contributed by Andrew Choi (akochoi@users.sourceforge.net). */
#ifndef _DIRENT_H
#define _DIRENT_H
/* for definition of FSSpec */
#include <Files.h>
/* for definition of ino_t */
#include <sys/types.h>
struct dirent {
ino_t d_ino;
char *d_name;
};
typedef struct DIR {
long dir_id;
short vol_ref_num;
long current_index;
int getting_volumes; /* true if this DIR struct refers to the root directory */
} DIR;
extern DIR *opendir(const char *);
extern int closedir(DIR *);
extern struct dirent *readdir(DIR *);
#endif /* _DIRENT_H */
/* Hey Emacs, this is -*- C -*- code! */
/* Handcrafted epaths.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Contributed by Andrew Choi (akochoi@users.sourceforge.net). */
/* The default search path for Lisp function "load".
This sets load-path. */
#define PATH_LOADSEARCH "~emacs/lisp:~emacs/leim:~emacs/lisp/calendar:~emacs/lisp/emacs-lisp:~emacs/lisp/emulation:~emacs/lisp/progmodes:~emacs/lisp/textmodes:~emacs/lisp/international:~emacs/lisp/language:~emacs/lisp/play"
/* Like PATH_LOADSEARCH, but used only when Emacs is dumping. This
path is usually identical to PATH_LOADSEARCH except that the entry
for the directory containing the installed lisp files has been
replaced with ../lisp. */
#define PATH_DUMPLOADSEARCH "~emacs/lisp"
/* The extra search path for programs to invoke. This is appended to
whatever the PATH environment variable says to set the Lisp
variable exec-path and the first file name in it sets the Lisp
variable exec-directory. exec-directory is used for finding
executables and other architecture-dependent files. */
#define PATH_EXEC "~emacs/mac/bin"
/* Where Emacs should look for its architecture-independent data
files, like the NEWS file. The lisp variable data-directory
is set to this value. */
#define PATH_DATA "~emacs/data"
/* Where Emacs should look for X bitmap files.
The lisp variable x-bitmap-file-path is set based on this value. */
/* #define PATH_BITMAPS "/usr/include/X11/bitmaps" */
/* Where Emacs should look for its docstring file. The lisp variable
doc-directory is set to this value. */
#define PATH_DOC "../etc"
/* Where the configuration process believes the info tree lives. The
lisp variable configure-info-directory gets its value from this
macro, and is then used to set the Info-default-directory-list. */
#define PATH_INFO "~emacs/info"
/* Where Emacs should look for the application default file. */
/* #define PATH_X_DEFAULTS "/usr/lib/X11/%L/%T/%N%C%S:/usr/lib/X11/%l/%T/%N%C%S:/usr/lib/X11/%T/%N%C%S:/usr/lib/X11/%L/%T/%N%S:/usr/lib/X11/%l/%T/%N%S:/usr/lib/X11/%T/%N%S" */
/* Handcrafted m-mac.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Contributed by Andrew Choi (akochoi@users.sourceforge.net). */
/* The following line tells the configuration script what sort of
operating system this machine is likely to run.
USUAL-OPSYS="<name of system .h file here, without the s- or .h>" */
/* Define WORDS_BIG_ENDIAN iff lowest-numbered byte in a word
is the most significant byte. */
#define WORDS_BIG_ENDIAN
/* Define NO_ARG_ARRAY if you cannot take the address of the first of a
* group of arguments and treat it as an array of the arguments. */
#define NO_ARG_ARRAY
/* Define WORD_MACHINE if addresses and such have
* to be corrected before they can be used as byte counts. */
/* #define WORD_MACHINE */
/* Now define a symbol for the cpu type, if your compiler
does not define it automatically:
Ones defined so far include vax, m68000, ns16000, pyramid,
orion, tahoe, APOLLO and many others */
/* Use type int rather than a union, to represent Lisp_Object */
/* This is desirable for most machines. */
#define NO_UNION_TYPE
/* Define EXPLICIT_SIGN_EXTEND if XINT must explicitly sign-extend
the 24-bit bit field into an int. In other words, if bit fields
are always unsigned.
If you use NO_UNION_TYPE, this flag does not matter. */
#define EXPLICIT_SIGN_EXTEND
/* Data type of load average, as read out of kmem. */
/* #define LOAD_AVE_TYPE long */
/* Convert that into an integer that is 100 for a load average of 1.0 */
/* #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE) */
/* Define CANNOT_DUMP on machines where unexec does not work.
Then the function dump-emacs will not be defined
and temacs will do (load "loadup") automatically unless told otherwise. */
#define CANNOT_DUMP
/* Define VIRT_ADDR_VARIES if the virtual addresses of
pure and impure space as loaded can vary, and even their
relative order cannot be relied on.
Otherwise Emacs assumes that text space precedes data space,
numerically. */
#define VIRT_ADDR_VARIES
/* Define C_ALLOCA if this machine does not support a true alloca
and the one written in C should be used instead.
Define HAVE_ALLOCA to say that the system provides a properly
working alloca function and it should be used.
Define neither one if an assembler-language alloca
in the file alloca.s should be used. */
#define C_ALLOCA
/* #define HAVE_ALLOCA */
/* Define NO_REMAP if memory segmentation makes it not work well
to change the boundary between the text section and data section
when Emacs is dumped. If you define this, the preloaded Lisp
code will not be sharable; but that's better than failing completely. */
/* #define NO_REMAP */
/* Some really obscure 4.2-based systems (like Sequent DYNIX)
* do not support asynchronous I/O (using SIGIO) on sockets,
* even though it works fine on tty's. If you have one of
* these systems, define the following, and then use it in
* config.h (or elsewhere) to decide when (not) to use SIGIO.
*
* You'd think this would go in an operating-system description file,
* but since it only occurs on some, but not all, BSD systems, the
* reasonable place to select for it is in the machine description
* file.
*/
#define NO_SOCK_SIGIO
/* After adding support for a new system, modify the large case
statement in the `configure' script to recognize reasonable
configuration names, and add a description of the system to
`etc/MACHINES'.
If you've just fixed a problem in an existing configuration file,
you should also check `etc/MACHINES' to make sure its descriptions
of known problems in that configuration should be updated. */
/* MPW build crashes if this is not defined. */
#ifdef __MRC__
#define IEEE_FLOATING_POINT 1
#endif
#if 0
/* The usual definition of XINT, which involves shifting, does not
sign-extend properly on this machine. */
#define XINT(i) (((sign_extend_temp=(i)) & 0x00800000) \
? (sign_extend_temp | 0xFF000000) \
: (sign_extend_temp & 0x00FFFFFF))
#ifdef emacs /* Don't do this when making xmakefile! */
extern int sign_extend_temp;
#endif
#endif
/* Definitions and headers for communication on the Mac OS.
Copyright (C) 2000 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* Contributed by Andrew Choi (akochoi@users.sourceforge.net). */