makefile.MPW   [plain text]


#    Make file for building GNU Emacs on the Macintosh.
#    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004,
#       2005, 2006, 2007  Free Software Foundation, Inc.
#
#    Author: Andrew Choi <akochoi@users.sourceforge.net>
#
# 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., 51 Franklin Street, Fifth Floor,
# Boston, MA 02110-1301, USA.  */
#
# Defines the following targets:
#   Emacs (default) - normal Carbon Emacs build.
#   NonCarbon - non-Carbon Emacs build.
#   Clean - remove all object and executable files to prepare for a fresh build.
#   Doc - generate the "DOC" file in ~emacs/etc/.
#   Make-DocFile - build the make-docfile tool, utility for generating "DOC".

Src = ::src:						# emacs's src directory
Includes = :inc:					# mac includes directory (common for MPW and CW)
Source = :src:						# mac source directory
Lib-Src = ::lib-src:				# ~emacs/lib-src directory, containing make-docfile.c
EmacsTarget = :Emacs MPW			# pathname of target executable file
DocTarget = ::etc:					# where the generated DOC file should be placed
Lisp = ::lisp:						# emacs's lisp directory
Make-DocFileDir = {Lib-Src}			# directory containing make-docfile tool

Makefile = makefile.MPW			# self reference
NonCarbonMakeOut = NonCarbon.MakeOut	# temporary file for non-Carbon build script

CarbonOption = -d HAVE_CARBON
SymOption = # -sym on			# remove hash mark before "-sym on" to enable source debugging
OptOption = # -opt speed			# alternatively set to -opt off or -opt size

# The -noMapCR options and the two -d's must not be removed.

PPCCOptions = {SymOption} {OptOption} -noMapCR -enum int -alloca ¶
	-typecheck relaxed -w off ¶
	-includes unix -i {Includes},{Src} ¶
	-d emacs=1 -d HAVE_CONFIG_H -d MAC_OS -d MAC_OS8 {CarbonOption}

LinkOptions = {SymOption} -d

CONFIG_H_GROUP = "{Includes}config.h" "{Includes}s-mac.h" "{Includes}utsname.h" "{Includes}m-mac.h"
DISPEXTERN_H_GROUP = "{Src}dispextern.h" "{Src}macgui.h"
INTERVALS_H_GROUP = "{Src}intervals.h" "{Src}dispextern.h" "{Src}macgui.h"
WINDOW_H_GROUP = "{Src}window.h" {DISPEXTERN_H_GROUP}
BLOCKINPUT_H_GROUP = "{Src}blockinput.h" "{Src}atimer.h" "{Src}systime.h""{Includes}sys:time.h" "{Includes}sys:time.h"

# The list all object files from the GNU Emacs 21.0 distribution.

EmacsObjects = ¶
	"{Src}abbrev.c.x""{Src}alloc.c.x""{Src}atimer.c.x""{Src}buffer.c.x""{Src}bytecode.c.x""{Src}callint.c.x""{Src}callproc.c.x""{Src}casefiddle.c.x""{Src}casetab.c.x""{Src}category.c.x""{Src}ccl.c.x""{Src}charset.c.x""{Src}cm.c.x""{Src}cmds.c.x""{Src}coding.c.x""{Src}composite.c.x""{Src}data.c.x""{Src}dired.c.x""{Src}dispnew.c.x""{Src}doc.c.x""{Src}doprnt.c.x""{Src}editfns.c.x""{Src}emacs.c.x""{Src}eval.c.x""{Src}fileio.c.x""{Src}filemode.c.x""{Src}floatfns.c.x""{Src}fns.c.x""{Src}fontset.c.x""{Src}frame.c.x""{Src}fringe.c.x""{Src}getloadavg.c.x""{Src}image.c.x""{Src}indent.c.x""{Src}insdel.c.x""{Src}intervals.c.x""{Src}keyboard.c.x""{Src}keymap.c.x""{Src}lread.c.x""{Src}macros.c.x""{Src}marker.c.x""{Src}md5.c.x""{Src}minibuf.c.x""{Src}mktime.c.x""{Src}print.c.x""{Src}process.c.x""{Src}regex.c.x""{Src}region-cache.c.x""{Src}scroll.c.x""{Src}search.c.x""{Src}strftime.c.x""{Src}syntax.c.x""{Src}sysdep.c.x""{Src}term.c.x""{Src}termcap.c.x""{Src}textprop.c.x""{Src}tparam.c.x""{Src}undo.c.x""{Src}window.c.x""{Src}xdisp.c.x""{Src}xfaces.c.x""{Src}lastfile.c.x"

# The list of object files generated from new source files of the Macintosh port.

MacObjects = ¶
	"{Src}mac.c.x""{Src}macfns.c.x""{Src}macmenu.c.x""{Src}macselect.c.x""{Src}macterm.c.x"

StdLibraries = ¶
	"{SharedLibraries}CarbonLib""{SharedLibraries}StdCLib""{PPCLibraries}StdCRuntime.o""{PPCLibraries}PPCCRuntime.o"

NonCarbonLibs = ¶
	"{SharedLibraries}InterfaceLib""{SharedLibraries}StdCLib""{SharedLibraries}MathLib""{SharedLibraries}AppleScriptLib""{SharedLibraries}LocalesLib""{SharedLibraries}AppearanceLib""{SharedLibraries}QuickTimeLib""{PPCLibraries}StdCRuntime.o""{PPCLibraries}PPCCRuntime.o""{PPCLibraries}PPCToolLibs.o"

# The next two are the dependency rules for building Emacs.

Emacs ÄÄ {Makefile} buildobj.lst {DocTarget}DOC {EmacsObjects} {MacObjects}
	PPCLink ¶
		{LinkOptions} ¶
		{EmacsObjects} {MacObjects} ¶
		{StdLibraries} ¶
		-o "{EmacsTarget}"

Emacs ÄÄ {Makefile} "{Source}"Emacs.maclf.r "{Source}"EmacsMPW.maclf.r
	Rez {CarbonOption} -a "{Source}"Emacs.maclf.r -o "{EmacsTarget}"
	Rez {CarbonOption} -a "{Source}"EmacsMPW.maclf.r -o "{EmacsTarget}"
	SetFile "{EmacsTarget}" -t APPL -c 'EMAx' -a B

NonCarbon Ä
	Make -f "{Makefile}" -d CarbonOption="" -d StdLibraries='{NonCarbonLibs}' > "{NonCarbonMakeOut}"
	"{NonCarbonMakeOut}"

# Rez cannot handle files with Unix style end lines at all.  So generate
# them.  It does not hurt if Emacs.r and EmacsMPW.r already have Mac end
# lines.

"{Source}"Emacs.maclf.r Ä "{Source}"Emacs.r
	translate ¶0x0a ¶n < "{Source}"Emacs.r > "{Source}"Emacs.maclf.r

"{Source}"EmacsMPW.maclf.r Ä "{Source}"EmacsMPW.r
	translate ¶0x0a ¶n < "{Source}"EmacsMPW.r > "{Source}"EmacsMPW.maclf.r

buildobj.lst Ä
	Echo "{EmacsObjects} {MacObjects}" | StreamEdit -e '1,$ Replace -c ° /[Â ]*:([Â: ]*)¨1.c.x/ ¨1".o"' > buildobj.lst

# Here comes a long boring list of rules saying which files depend on which
# other ones.  I generated them by hand using the "-p" option of the MrC compiler.
# Know about MakeMake, but this is probably more accurate.

{Src}abbrev.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}buffer.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}charset.h""{Src}syntax.h"

{Src}alloc.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}puresize.h""{Src}buffer.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}frame.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}keyboard.h""{Src}charset.h""{Src}syssignal.h"

{Src}alloca.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}atimer.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}syssignal.h""{Src}systime.h""{Includes}sys:time.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}atimer.h""{Includes}sys:time.h"

{Src}buffer.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Includes}sys:param.h""{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}window.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h""{Src}region-cache.h""{Src}indent.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}frame.h"

{Src}bytecode.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}syntax.h"

{Src}callint.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}commands.h""{Src}keyboard.h" ¶
	{WINDOW_H_GROUP}

{Src}callproc.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:file.h""{Includes}sys:types.h""{Includes}sys:stat.h""{Src}lisp.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h""{Src}ccl.h""{Src}coding.h""{Src}composite.h""{Includes}epaths.h""{Src}process.h""{Src}syssignal.h""{Src}systty.h""{Includes}termio.h"

{Src}casefiddle Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}commands.h""{Src}syntax.h""{Src}composite.h"

{Src}casetab.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h"

{Src}category.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}category.h"

{Src}ccl.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}charset.h""{Src}ccl.h""{Src}coding.h"

{Src}charset.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h""{Src}disptab.h"

{Src}cm.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}cm.h""{Src}termhooks.h"

{Src}cmds.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h""{Src}syntax.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}keyboard.h" ¶
	{DISPEXTERN_H_GROUP}

{Src}coding.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}composite.h""{Src}ccl.h""{Src}coding.h" ¶
	{WINDOW_H_GROUP}

{Src}composite.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h" ¶
	{INTERVALS_H_GROUP}

{Src}data.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}puresize.h""{Src}charset.h""{Src}buffer.h""{Src}keyboard.h""{Src}frame.h""{Src}syssignal.h"

{Src}dired.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Src}systime.h""{Includes}sys:time.h""{Includes}dirent.h""{Src}lisp.h""{Src}buffer.h""{Src}commands.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h""{Src}regex.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}dispnew.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}termchar.h""{Src}termopts.h""{Src}termhooks.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}cm.h""{Src}buffer.h""{Src}charset.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}commands.h""{Src}disptab.h""{Src}indent.h" ¶
	{INTERVALS_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}process.h""{Src}keyboard.h""{Src}syssignal.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}systime.h"

{Src}doc.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:file.h""{Src}lisp.h""{Src}buffer.h""{Src}keyboard.h""{Src}charset.h"

{Src}doprnt.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}charset.h"

{Src}editfns.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}pwd.h""{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}systime.h""{Includes}sys:time.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}emacs.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:file.h""{Includes}sys:types.h""{Includes}sys:stat.h""{Src}lisp.h""{Src}commands.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}systty.h""{Includes}termio.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}syssignal.h""{Src}process.h""{Src}termhooks.h""{Src}keyboard.h""{Src}frame.h"

{Src}eval.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}commands.h""{Src}keyboard.h" ¶
	{DISPEXTERN_H_GROUP}

{Src}fileio.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Includes}pwd.h""{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}systime.h""{Includes}sys:time.h""{Src}commands.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}filemode.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h"

{Src}floatfns.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}syssignal.h"

{Src}fns.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}charset.h""{Src}buffer.h""{Src}keyboard.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}frame.h" ¶
	{WINDOW_H_GROUP}

{Src}fontset.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}ccl.h""{Src}frame.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}fontset.h" ¶
	{WINDOW_H_GROUP}

{Src}frame.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}charset.h""{Src}fontset.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}frame.h""{Src}fontset.h""{Src}termhooks.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	{DISPEXTERN_H_GROUP} ¶
	{WINDOW_H_GROUP} ¶
	"{Src}buffer.h""{Src}commands.h""{Src}keyboard.h"

{Src}fringe.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}buffer.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}getloadavg.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h"

{Src}image.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	{DISPEXTERN_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Includes}epaths.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Includes}sys:stat.h""{Includes}alloca.h""{Includes}sys:param.h"

{Src}indent.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}category.h""{Src}indent.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}termchar.h""{Src}termopts.h""{Src}disptab.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}region-cache.h"

{Src}insdel.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}charset.h" ¶
	{WINDOW_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}region-cache.h"

{Src}intervals.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}puresize.h""{Src}keyboard.h"

{Src}keyboard.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}termchar.h""{Src}termopts.h""{Src}lisp.h""{Src}termhooks.h""{Src}macros.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}commands.h""{Src}buffer.h""{Src}charset.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}keyboard.h""{Src}syntax.h" ¶
	{INTERVALS_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}puresize.h""{Src}systime.h""{Src}atimer.h""{Includes}sys:ioctl.h""{Src}syssignal.h""{Src}systty.h""{Includes}termio.h""{Includes}sys:types.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}systime.h"

{Src}keymap.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h""{Src}keyboard.h""{Src}termhooks.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}puresize.h" ¶
	{INTERVALS_H_GROUP}

{Src}lastfile.c.x Ä ¶
	{CONFIG_H_GROUP}

{Src}lread.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Includes}sys:file.h""{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h""{Src}charset.h""{Includes}epaths.h""{Src}commands.h""{Src}keyboard.h""{Src}termhooks.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}macros.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}macros.h""{Src}commands.h""{Src}buffer.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}keyboard.h"

{Src}marker.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h"

{Src}minibuf.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}syntax.h""{Src}keyboard.h"

{Src}mktime.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h"

{Src}print.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}charset.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}process.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}termchar.h""{Src}keyboard.h" ¶
	{INTERVALS_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP}

{Src}process.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Src}lisp.h""{Src}systime.h""{Includes}sys:time.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h""{Src}termopts.h""{Src}sysselect.h"

{Src}regex.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Src}lisp.h""{Src}buffer.h""{Src}syntax.h""{Src}charset.h""{Src}category.h""{Src}regex.h"

{Src}region-cache.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}region-cache.h"

{Src}scroll.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}termchar.h""{Src}lisp.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}frame.h" ¶
	{WINDOW_H_GROUP}

{Src}search.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}syntax.h""{Src}category.h""{Src}buffer.h""{Src}charset.h""{Src}region-cache.h""{Src}commands.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	{INTERVALS_H_GROUP} ¶
	"{Includes}sys:types.h""{Src}regex.h"

{Src}strftime.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:time.h"

{Src}syntax.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}commands.h""{Src}buffer.h""{Src}charset.h""{Src}syntax.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}category.h"

{Src}sysdep.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Includes}sys:ioctl.h""{Src}syswait.h""{Includes}sys:types.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}termhooks.h""{Src}termchar.h""{Src}termopts.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}process.h""{Src}syssignal.h""{Src}systime.h""{Includes}utime.h""{Src}sysselect.h""{Includes}dirent.h""{Includes}sys:types.h"

{Src}term.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}termchar.h""{Src}termopts.h""{Src}lisp.h""{Src}charset.h""{Src}coding.h""{Src}ccl.h""{Src}frame.h""{Src}disptab.h""{Src}termhooks.h""{Src}keyboard.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	{WINDOW_H_GROUP} ¶
	"{Src}cm.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}termcap.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Includes}sys:file.h"

{Src}textproc.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}buffer.h" ¶
	{WINDOW_H_GROUP}

{Src}tparam.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h"

{Src}undo.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}commands.h"

{Src}window.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}buffer.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}commands.h""{Src}indent.h""{Src}termchar.h""{Src}disptab.h""{Src}keyboard.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}macterm.h""{Src}macgui.h""{Src}frame.h"

{Src}xdisp.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}termchar.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}buffer.h""{Src}charset.h""{Src}indent.h""{Src}commands.h""{Src}macros.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}disptab.h""{Src}termhooks.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}keyboard.h""{Src}keymap.h""{Src}coding.h""{Src}ccl.h""{Src}process.h""{Src}region-cache.h""{Src}fontset.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h"

{Src}xfaces.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}sys:types.h""{Includes}sys:stat.h""{Src}lisp.h""{Src}charset.h""{Src}frame.h""{Src}fontset.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}buffer.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	{BLOCKINPUT_H_GROUP} ¶
	{WINDOW_H_GROUP} ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}keyboard.h"

{Src}macmenu.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}termhooks.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}keyboard.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}buffer.h""{Includes}sys:types.h" ¶
	{DISPEXTERN_H_GROUP}

{Src}macselect.c.x Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}keymap.h" ¶
	{BLOCKINPUT_H_GROUP}

{Src}mac.c Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Includes}utime.h""{Includes}dirent.h""{Includes}sys:types.h""{Includes}sys:stat.h""{Includes}pwd.h""{Includes}sys:types.h""{Includes}sys:param.h""{Src}lisp.h""{Src}process.h""{Src}sysselect.h""{Src}systime.h""{Includes}sys:time.h""{Includes}utsname.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}charset.h""{Src}coding.h""{Src}ccl.h"

{Src}macfns.c Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h""{Src}charset.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Src}frame.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}buffer.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}fontset.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}keyboard.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Includes}epaths.h""{Src}termhooks.h""{Src}coding.h""{Src}ccl.h""{Src}systime.h""{Src}bitmaps:gray.xbm"

{Src}macterm.c Ä ¶
	{CONFIG_H_GROUP} ¶
	"{Src}lisp.h" ¶
	{BLOCKINPUT_H_GROUP} ¶
	"{Src}syssignal.h""{Src}macterm.h""{Src}macgui.h""{Src}frame.h""{Includes}alloca.h""{Includes}sys:types.h""{Src}systty.h""{Includes}termio.h""{Src}systime.h""{Includes}sys:stat.h""{Src}charset.h""{Src}ccl.h""{Src}frame.h" ¶
	{DISPEXTERN_H_GROUP} ¶
	"{Src}fontset.h""{Src}termhooks.h""{Src}termopts.h""{Src}termchar.h""{Src}gnu.h""{Src}disptab.h""{Src}buffer.h" ¶
	{WINDOW_H_GROUP} ¶
	"{Src}keyboard.h" ¶
	{INTERVALS_H_GROUP} ¶
	"{Src}process.h""{Src}atimer.h""{Src}coding.h""{Src}ccl.h""{Includes}epaths.h""{Src}termhooks.h""{Src}coding.h""{Src}ccl.h"


#----------------------------------------#
# Variables and rules for target "Clean" #
#----------------------------------------#

Clean Ä
	Delete -i {EmacsObjects} {MacObjects}
	Delete -i "{EmacsTarget}"
	Delete -i stdout stderr
	Delete -i {Make-DocFile-Objects} {Make-DocFileDir}make-docfile
	Delete -i "{Source}"Emacs.maclf.r "{Source}"EmacsMPW.maclf.r
	Delete -i "{NonCarbonMakeOut}"
	Delete -i buildobj.lst

DistClean Ä Clean
	Delete -i "Emacs CW"Å
	Delete -y "emacs Data"
	Delete -i emacs.mcp

#--------------------------------------#
# Variables and rules for target "Doc" #
#--------------------------------------#

SOME_MACHINE_OBJECTS = sunfns.o dosfns.o msdos.o ¶
  xterm.o xfns.o xmenu.o xselect.o xrdb.o xsmfns.o fringe.o image.o ¶
  mac.o macterm.o macfns.o macmenu.o macselect.o fontset.o ¶
  w32.o w32bdf.o w32console.o w32fns.o w32heap.o w32inevt.o ¶
  w32menu.o w32proc.o w32reg.o w32select.o w32term.o w32xfns.o

shortlisp = ¶
	{Lisp}abbrev.elc ¶
	{Lisp}buff-menu.elc ¶
	{Lisp}button.elc ¶
	{Lisp}emacs-lisp:byte-run.elc ¶
	{Lisp}cus-face.elc ¶
	{Lisp}cus-start.elc ¶
	{Lisp}custom.elc ¶
	{Lisp}emacs-lisp:backquote.elc ¶
	{Lisp}emacs-lisp:lisp-mode.elc ¶
	{Lisp}emacs-lisp:lisp.elc ¶
	{Lisp}facemenu.elc ¶
	{Lisp}faces.elc ¶
	{Lisp}files.elc ¶
	{Lisp}emacs-lisp:float-sup.elc ¶
	{Lisp}format.elc ¶
	{Lisp}frame.elc ¶
	{Lisp}help.elc ¶
	{Lisp}indent.elc ¶
	{Lisp}isearch.elc ¶
	{Lisp}rfn-eshadow.elc ¶
	{Lisp}loadup.el ¶
	{Lisp}loaddefs.el ¶
	{Lisp}bindings.elc ¶
	{Lisp}emacs-lisp:map-ynp.elc ¶
	{Lisp}env.elc ¶
	{Lisp}international:mule.elc ¶
	{Lisp}international:mule-conf.el ¶
	{Lisp}international:mule-cmds.elc ¶
	{Lisp}international:characters.elc ¶
	{Lisp}international:ucs-tables.elc ¶
	{Lisp}international:utf-8.elc ¶
	{Lisp}international:utf-16.elc ¶
	{Lisp}international:latin-1.el ¶
	{Lisp}international:latin-2.el ¶
	{Lisp}international:latin-3.el ¶
	{Lisp}international:latin-4.el ¶
	{Lisp}international:latin-5.el ¶
	{Lisp}international:latin-8.el ¶
	{Lisp}international:latin-9.el ¶
	{Lisp}case-table.elc ¶
	{Lisp}language:chinese.elc ¶
	{Lisp}language:cyrillic.elc ¶
	{Lisp}language:indian.elc ¶
	{Lisp}language:devanagari.el ¶
	{Lisp}language:kannada.el ¶
	{Lisp}language:malayalam.el ¶
	{Lisp}language:tamil.el ¶
	{Lisp}language:english.el ¶
	{Lisp}language:ethiopic.elc ¶
	{Lisp}language:european.elc ¶
	{Lisp}language:czech.el ¶
	{Lisp}language:slovak.el ¶
	{Lisp}language:romanian.el ¶
	{Lisp}language:greek.el ¶
	{Lisp}language:hebrew.el ¶
	{Lisp}language:japanese.el ¶
	{Lisp}language:korean.el ¶
	{Lisp}language:lao.el ¶
	{Lisp}language:thai.el ¶
	{Lisp}language:tibetan.elc ¶
	{Lisp}language:vietnamese.elc ¶
	{Lisp}language:misc-lang.el ¶
	{Lisp}language:utf-8-lang.el ¶
	{Lisp}language:georgian.el ¶
	{Lisp}menu-bar.elc ¶
	{Lisp}paths.el ¶
	{Lisp}register.elc ¶
	{Lisp}replace.elc ¶
	{Lisp}simple.elc ¶
	{Lisp}startup.elc ¶
	{Lisp}subr.elc ¶
	{Lisp}term:tty-colors.elc ¶
	{Lisp}font-core.elc ¶
	{Lisp}emacs-lisp:syntax.elc ¶
	{Lisp}font-lock.elc ¶
	{Lisp}jit-lock.elc ¶
	{Lisp}textmodes:fill.elc ¶
	{Lisp}textmodes:page.elc ¶
	{Lisp}textmodes:paragraphs.elc ¶
	{Lisp}textmodes:text-mode.elc ¶
	{Lisp}emacs-lisp:timer.elc ¶
	{Lisp}vc-hooks.elc ¶
	{Lisp}jka-cmpr-hook.elc ¶
	{Lisp}ediff-hook.elc ¶
	{Lisp}widget.elc ¶
	{Lisp}window.elc ¶
	{Lisp}version.el

SOME_MACHINE_LISP = {Lisp}mouse.elc ¶
  {Lisp}select.elc {Lisp}scroll-bar.elc ¶
  {Lisp}vmsproc.elc {Lisp}vms-patch.elc ¶
  {Lisp}ls-lisp.elc {Lisp}dos-fns.elc ¶
  {Lisp}w32-fns.elc {Lisp}dos-w32.elc ¶
  {Lisp}disp-table.elc {Lisp}dos-vars.elc ¶
  {Lisp}tooltip.elc {Lisp}image.elc ¶
  {Lisp}fringe.elc {Lisp}dnd.elc ¶
  {Lisp}mwheel.elc {Lisp}tool-bar.elc ¶
  {Lisp}x-dnd.elc ¶
  {Lisp}international:ccl.elc ¶
  {Lisp}international:codepage.elc ¶
  {Lisp}international:fontset.elc

Doc Ä {DocTarget}DOC

{DocTarget}DOC Ä {Makefile} {shortlisp} {SOME_MACHINE_LISP} {Make-DocFileDir}Make-DocFile buildobj.lst
	{Make-DocFileDir}make-docfile -d {Src} {SOME_MACHINE_OBJECTS} `Catenate buildobj.lst` > {DocTarget}DOC
	{Make-DocFileDir}make-docfile -a {DocTarget}DOC -d {Src} {SOME_MACHINE_LISP} {shortlisp}


#-----------------------------------------------#
# Variables and rules for target "Make-DocFile" #
#-----------------------------------------------#

Make-DocFile-Includes		= -i :inc:
Make-DocFile-Sym			=

Make-DocFile-PPCCOptions	= -typecheck relaxed -w off -noMapCR ¶
				  -d MAC_OS -d MAC_OS8 ¶
				  {Make-DocFile-Includes} {Make-DocFile-Sym}

Make-DocFile-Objects = ¶
		"{Lib-Src}make-docfile.c.x""{Source}chdir.c.x"

Make-DocFile Ä {Make-DocFileDir}Make-DocFile

{Make-DocFileDir}Make-DocFile Ä {Makefile} {Make-DocFile-Objects}
	PPCLink ¶
		-o {Make-DocFileDir}Make-DocFile ¶
		{Make-DocFile-Sym} ¶
		{Make-DocFile-Objects} ¶
		-t 'MPST' ¶
		-c 'MPS ' ¶
		"{SharedLibraries}InterfaceLib""{SharedLibraries}StdCLib""{SharedLibraries}MathLib""{PPCLibraries}StdCRuntime.o""{PPCLibraries}PPCCRuntime.o""{PPCLibraries}PPCToolLibs.o"

"{Lib-Src}make-docfile.c.x" Ä {Makefile} "{Lib-Src}make-docfile.c"
	{PPCC} "{Lib-Src}make-docfile.c" -o "{Lib-Src}make-docfile.c.x" {Make-DocFile-PPCCOptions}

"{Source}chdir.c.x" Ä {Makefile} "{Source}chdir.c"
	{PPCC} "{Source}chdir.c" -o "{Source}chdir.c.x" {Make-DocFile-PPCCOptions}

# arch-tag: c9d9bc1a-142f-41da-b75e-79e0c44ffbb4