Commit c0bc7978 authored by Dan Nicolaescu's avatar Dan Nicolaescu

* make-dist: Remove references to files in mac/ that have been

deleted.

* README:
* INSTALL: Only mention MacOSX.

* cw6-mcp.xml:
* make-package:
* makefile.MPW:
* inc/alloca.h:
* inc/config.h:
* inc/defs-cw6.h:
* inc/dirent.h:
* inc/epaths.h:
* inc/grp.h:
* inc/m-mac.h:
* inc/pwd.h:
* inc/s-mac.h:
* inc/termio.h:
* inc/utime.h:
* inc/utsname.h:
* inc/sys/file.h:
* inc/sys/ioctl.h:
* inc/sys/param.h:
* inc/sys/stat.h:
* inc/sys/time.h:
* inc/sys/types.h:
* src/EmacsMPW.r: Remove files for no longer supported pre-MacOSX
systems.
parent e3a77b22
2008-02-04 Dan Nicolaescu <dann@ics.uci.edu>
* make-dist: Remove references to files in mac/ that have been
deleted.
2008-02-02 Thien-Thi Nguyen <ttn@gnuvola.org>
* configure.in: For libotf and m17n-flt checks, set shell vars
......
2008-02-04 Dan Nicolaescu <dann@ics.uci.edu>
* README:
* INSTALL: Only mention MacOSX.
* cw6-mcp.xml:
* make-package:
* makefile.MPW:
* inc/alloca.h:
* inc/config.h:
* inc/defs-cw6.h:
* inc/dirent.h:
* inc/epaths.h:
* inc/grp.h:
* inc/m-mac.h:
* inc/pwd.h:
* inc/s-mac.h:
* inc/termio.h:
* inc/utime.h:
* inc/utsname.h:
* inc/sys/file.h:
* inc/sys/ioctl.h:
* inc/sys/param.h:
* inc/sys/stat.h:
* inc/sys/time.h:
* inc/sys/types.h:
* src/EmacsMPW.r: Remove files for no longer supported pre-MacOSX
systems.
* inc: Remove directory.
2008-01-04 Glenn Morris <rgm@gnu.org>
* Emacs.app/Contents/Resources/English.lproj/InfoPlist.strings:
......
* BUILDING EMACS ON MAC OS Classic AND MAC OS X -*- outline -*-
* BUILDING EMACS ON MAC OS X -*- outline -*-
Copyright (C) 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008 Free Software Foundation, Inc.
......@@ -158,49 +158,13 @@ characters in the name fails" mentioned in etc/PROBLEMS, you may not
move a self-contained Emacs.app application bundle to a non-ASCII
directory.
* BUILDING EMACS ON MAC OS Classic
You can use MPW-GM (Aug. 2001) to build Emacs. MPW-GM can be
downloaded free of charge from Apple.
### IMPORTANT ### You can use StuffIt Expander to decompress and untar
the distribution. However, you *must* set the radio button in the
Preferences->Cross Platform->Convert text files to Macintosh format to
"Never". Otherwise the compiled Lisp files will be corrupted.
(Optional) A subset of the fonts from the GNU intlfonts-1.2
distribution converted to NFNT format can be obtained from
http://members.shaw.ca/akochoi-emacs/stories/Resources/GNU-Fonts.smi.bin
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
The above commands create an executable that uses the Carbon API.
The non-Carbon version can also be created by replacing all the
occurrences of `Emacs' above with `NonCarbon'. Not that the
non-Carbon version does not support some features such as file
dialogs, drag-and-drop, and Unicode menus.
Once built, the Emacs application (Emacs MPW) can be launched where it
is created.
* NOTES
Emacs should build and run on a PowerMac running Mac OS 8.6 - 9.2 (but
only tested on 9.2.2), and Mac OS X 10.1 - 10.5.
Emacs should build and run on a PowerMac running Mac OS X 10.1 - 10.5.
You will need around 100 MB of disk space for the source files and
intermediate files.
Under Mac OS Classic, there is no support for building the LEIM
directory. However, it can be built on Mac OS X or another platform
and transferred to the Mac.
On Mac OS X, installing the emacs files in /usr can cause issues with
system software updates possibly overwriting the distribution. If this
is a concern, as it should be in normal binary distributions, please
......
Emacs for Mac OS Classic and Mac OS X
Emacs for Mac OS X
Copyright (C) 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008 Free Software Foundation, Inc.
See the end of the file for license conditions.
This directory contains the files needed to build Emacs on the Mac OS
Classic and Mac OS X. Many of the major features of the Unix version
This directory contains the files needed to build Emacs on Mac OS X.
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.
......@@ -15,15 +15,6 @@ 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 supported on Mac OS Classic: unexec (dump-emacs),
asynchronous subprocesses (start-process), and networking
(open-network-stream). These features work fine on Mac OS X.
There is basic support for synchronous subprocesses (call-process) on
Mac OS Classic (non-Carbon build only) although Unix commands that are
used will need to be ported.
MPW-GM (August 2001) can be used to build Emacs on the Mac OS Classic.
On Mac OS X, Emacs can be built using the Developer Tools. See the
INSTALL file in this directory for instructions on building Emacs.
......
This diff is collapsed.
/* Copyright (C) 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
#ifndef _ALLOCA_H_
#define _ALLOCA_H_
#if __MRC__
void *__alloca(size_t size);
#endif
#endif
/* arch-tag: 8d4114d1-633e-49e7-8f18-b5648f9c4511
(do not change this comment) */
This diff is collapsed.
/* Copyright (C) 2001, 2002, 2003, 2004, 2005,
2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
#define emacs 1
#define HAVE_CONFIG_H
#define MAC_OS8 1
#define MAC_OS 1
/* arch-tag: 4aa4fcea-3a95-433d-a7d6-b029afca17f1
(do not change this comment) */
/* Replacement dirent.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
#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 */
/* arch-tag: ec3116df-70f9-4a4a-b6d0-1858aaa9ea22
(do not change this comment) */
/* Hey Emacs, this is -*- C -*- code! */
/* Handcrafted epaths.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
/* 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"
/* 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 ""
/* 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 store game score files. */
#define PATH_GAME "~emacs/games"
/* 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" */
/* arch-tag: 32e95134-dfe4-47be-be28-e8cbf78505b6
(do not change this comment) */
/* Replacement grp.h file for building GNU Emacs on the Macintosh.
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008
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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
#ifndef _GRP_H
#define _GRP_H
#include <sys/types.h>
/* Emacs uses only gr_name */
struct group {
char *gr_name; /* group name */
};
struct group *getgrgid(gid_t);
#endif /* _GRP_H */
/* arch-tag: 3b1d3315-05d5-4c7a-8404-3754bb40020c
(do not change this comment) */
/* Handcrafted m-mac.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
/* 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 if 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 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
/* arch-tag: 9e759031-ab7b-4c76-99d7-3ae94a98de38
(do not change this comment) */
/* Replacement pwd.h file for building GNU Emacs on the Macintosh.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
#ifndef _PWD_H
#define _PWD_H
#include <sys/types.h>
/* Emacs uses only pw_name and pw_dir: let's just simulate these */
struct passwd {
char *pw_name; /* user name */
char *pw_dir; /* home directory */
};
struct passwd *getpwuid(uid_t);
struct passwd *getpwnam(const char *);
#endif /* _PWD_H */
/* arch-tag: e169cad7-12ca-4660-a35e-36f80d5d345f
(do not change this comment) */
/* Handcrafted s-mac.h file for building GNU Emacs on Mac OS 9.
Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
2005, 2006, 2007, 2008 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 3, 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., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* Contributed by Andrew Choi (akochoi@mac.com). */
/*
* Define symbols to identify the version of Unix this is.
* Define all the symbols that apply correctly.
*/
/* #define UNIPLUS */
/* #define USG5 */
/* #define USG */
/* #define HPUX */
/* #define UMAX */
/* #define BSD4_1 */
/* #define BSD4_2 */
/* #define BSD4_3 */
/* #define BSD_SYSTEM */
/* #define VMS */
/* SYSTEM_TYPE should indicate the kind of system you are using.
It sets the Lisp variable system-type. */
#define SYSTEM_TYPE "macos"
/* NOMULTIPLEJOBS should be defined if your system's shell
does not have "job control" (the ability to stop a program,
run some other program, then continue the first one). */
#define NOMULTIPLEJOBS
/* Emacs can read input using SIGIO and buffering characters itself,
or using CBREAK mode and making C-g cause SIGINT.
The choice is controlled by the variable interrupt_input.
Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
Emacs uses the presence or absence of the SIGIO and BROKEN_SIGIO macros
to indicate whether or not signal-driven I/O is possible. It uses
INTERRUPT_INPUT to decide whether to use it by default.
SIGIO can be used only on systems that implement it (4.2 and 4.3).
CBREAK mode has two disadvantages
1) At least in 4.2, it is impossible to handle the Meta key properly.
I hear that in system V this problem does not exist.
2) Control-G causes output to be discarded.
I do not know whether this can be fixed in system V.
Another method of doing input is planned but not implemented.
It would have Emacs fork off a separate process
to read the input and send it to the true Emacs process
through a pipe. */
/* #define INTERRUPT_INPUT */
/* Letter to use in finding device name of first pty,
if system supports pty's. 'a' means it is /dev/ptya0 */
/* #define FIRST_PTY_LETTER 'a' */
/*
* Define HAVE_TERMIOS if the system provides POSIX-style
* functions and macros for terminal control.
*
* Define HAVE_TERMIO if the system provides sysV-style ioctls
* for terminal control.
*
* Do not define both. HAVE_TERMIOS is preferred, if it is
* supported on your system.
*/
/* #define HAVE_TERMIOS */
#define HAVE_TERMIO
/*
* Define HAVE_PTYS if the system supports pty devices.
*/
/* #define HAVE_PTYS */
/*
* Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
* The 4.2 opendir, etc., library functions.
*/
/* #define NONSYSTEM_DIR_LIBRARY */
/* Define this symbol if your system has the functions bcopy, etc. */
/* #define BSTRING */
/* subprocesses should be defined if you want to
have code for asynchronous subprocesses
(as used in M-x compile and M-x shell).
This is generally OS dependent, and not supported
under most USG systems. */
/* #define subprocesses */
/* If your system uses COFF (Common Object File Format) then define the
preprocessor symbol "COFF". */
/* #define COFF */