changeset 103242:e0d2d5addcbf

* Cocoa/Emacs.xcodeproj/project.pbxproj: Update and redo targets to utilize Makefiles for assembly portions of the build. * INSTALL: Describe the Xcode project.
author Adrian Robert <Adrian.B.Robert@gmail.com>
date Mon, 18 May 2009 07:56:09 +0000
parents 059a04a8ce32
children c5cff5d1a017
files nextstep/ChangeLog nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj nextstep/INSTALL nextstep/README
diffstat 4 files changed, 359 insertions(+), 383 deletions(-) [+]
line wrap: on
line diff
--- a/nextstep/ChangeLog	Mon May 18 01:56:12 2009 +0000
+++ b/nextstep/ChangeLog	Mon May 18 07:56:09 2009 +0000
@@ -1,3 +1,9 @@
+2009-05-17  Adrian Robert  <Adrian.B.Robert@gmail.com>
+
+	* Cocoa/Emacs.xcodeproj/project.pbxproj: Update and redo targets
+	to utilize Makefiles for assembly portions of the build.
+	* INSTALL: Describe the Xcode project.
+
 2009-05-06  Travis Jeffery  <t.jeffery@utoronto.ca>  (tiny change)
 
 	* Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
--- a/nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj	Mon May 18 01:56:12 2009 +0000
+++ b/nextstep/Cocoa/Emacs.xcodeproj/project.pbxproj	Mon May 18 07:56:09 2009 +0000
@@ -7,137 +7,93 @@
 	objects = {
 
 /* Begin PBXBuildFile section */
-		3C15C0EB0902D89500A8542F /* termhooks.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C02F0902D89500A8542F /* termhooks.h */; };
-		3C15C0EC0902D89500A8542F /* termchar.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0300902D89500A8542F /* termchar.h */; };
-		3C15C0EF0902D89500A8542F /* syswait.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0330902D89500A8542F /* syswait.h */; };
-		3C15C0F00902D89500A8542F /* systty.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0340902D89500A8542F /* systty.h */; };
-		3C15C0F10902D89500A8542F /* systime.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0350902D89500A8542F /* systime.h */; };
-		3C15C0F20902D89500A8542F /* syssignal.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0360902D89500A8542F /* syssignal.h */; };
-		3C15C0F30902D89500A8542F /* sysselect.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0370902D89500A8542F /* sysselect.h */; };
-		3C15C0F50902D89500A8542F /* syntax.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0390902D89500A8542F /* syntax.h */; };
-		3C15C0FD0902D89500A8542F /* region-cache.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0410902D89500A8542F /* region-cache.h */; };
-		3C15C0FF0902D89500A8542F /* regex.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0430902D89500A8542F /* regex.h */; };
-		3C15C1020902D89500A8542F /* puresize.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0460902D89500A8542F /* puresize.h */; };
-		3C15C1030902D89500A8542F /* process.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0470902D89500A8542F /* process.h */; };
-		3C15C1080902D89500A8542F /* point.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04C0902D89500A8542F /* point.h */; };
-		3C15C1090902D89500A8542F /* param.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04D0902D89500A8542F /* param.h */; };
-		3C15C10B0902D89500A8542F /* nsgui.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C04F0902D89500A8542F /* nsgui.h */; };
-		3C15C10C0902D89500A8542F /* ndir.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0500902D89500A8542F /* ndir.h */; };
-		3C15C1110902D89500A8542F /* mem-limits.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0550902D89500A8542F /* mem-limits.h */; };
-		3C15C1120902D89500A8542F /* md5.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0560902D89500A8542F /* md5.h */; };
-		3C15C1190902D89500A8542F /* macros.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C05D0902D89500A8542F /* macros.h */; };
-		3C15C1220902D89500A8542F /* keymap.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0660902D89500A8542F /* keymap.h */; };
-		3C15C1240902D89500A8542F /* keyboard.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0680902D89500A8542F /* keyboard.h */; };
-		3C15C1270902D89500A8542F /* intervals.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C06B0902D89500A8542F /* intervals.h */; };
-		3C15C12A0902D89500A8542F /* indent.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C06E0902D89500A8542F /* indent.h */; };
-		3C15C1320902D89500A8542F /* category.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0760902D89500A8542F /* category.h */; };
-		3C15C1330902D89500A8542F /* coding.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0770902D89500A8542F /* coding.h */; };
-		3C15C1340902D89500A8542F /* buffer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0780902D89500A8542F /* buffer.h */; };
-		3C15C1350902D89500A8542F /* vlimit.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0790902D89500A8542F /* vlimit.h */; };
-		3C15C1450902D89500A8542F /* cm.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0890902D89500A8542F /* cm.h */; };
-		3C15C14E0902D89500A8542F /* uaf.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0920902D89500A8542F /* uaf.h */; };
-		3C15C1510902D89500A8542F /* termopts.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0950902D89500A8542F /* termopts.h */; };
-		3C15C15C0902D89500A8542F /* window.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0A00902D89500A8542F /* window.h */; };
-		3C15C1720902D89500A8542F /* gnu.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0B60902D89500A8542F /* gnu.h */; };
-		3C15C1740902D89500A8542F /* getpagesize.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0B80902D89500A8542F /* getpagesize.h */; };
-		3C15C17B0902D89500A8542F /* disptab.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0BF0902D89500A8542F /* disptab.h */; };
-		3C15C17E0902D89500A8542F /* epaths.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C20902D89500A8542F /* epaths.h */; };
-		3C15C1810902D89500A8542F /* ccl.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C50902D89500A8542F /* ccl.h */; };
-		3C15C1830902D89500A8542F /* composite.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C70902D89500A8542F /* composite.h */; };
-		3C15C1840902D89500A8542F /* charset.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C80902D89500A8542F /* charset.h */; };
-		3C15C1850902D89500A8542F /* fontset.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0C90902D89500A8542F /* fontset.h */; };
-		3C15C1930902D89500A8542F /* commands.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0D70902D89500A8542F /* commands.h */; };
-		3C15C1950902D89500A8542F /* dispextern.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0D90902D89500A8542F /* dispextern.h */; };
-		3C15C1970902D89500A8542F /* acldef.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0DB0902D89500A8542F /* acldef.h */; };
-		3C15C19A0902D89500A8542F /* character.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0DE0902D89500A8542F /* character.h */; };
-		3C15C19E0902D89500A8542F /* chpdef.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E20902D89500A8542F /* chpdef.h */; };
-		3C15C1A00902D89500A8542F /* frame.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E40902D89500A8542F /* frame.h */; };
-		3C15C1A20902D89500A8542F /* atimer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E60902D89500A8542F /* atimer.h */; };
-		3C15C1A30902D89500A8542F /* blockinput.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C15C0E70902D89500A8542F /* blockinput.h */; };
-		3C15C1A80902D97100A8542F /* nsimage.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C15C1A70902D97100A8542F /* nsimage.m */; };
-		3C4D6D6B0DE50D2300B20D4E /* font.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D660DE50D2300B20D4E /* font.c */; };
-		3C4D6D6C0DE50D2300B20D4E /* font.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C4D6D670DE50D2300B20D4E /* font.h */; };
-		3C4D6D6D0DE50D2300B20D4E /* termcap.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D680DE50D2300B20D4E /* termcap.c */; };
-		3C4D6D6E0DE50D2300B20D4E /* terminal.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D690DE50D2300B20D4E /* terminal.c */; };
-		3C4D6D6F0DE50D2300B20D4E /* tparam.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D6A0DE50D2300B20D4E /* tparam.c */; };
-		3C4D6D730DE50D5D00B20D4E /* nsfont.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D710DE50D5D00B20D4E /* nsfont.m */; };
-		3C7F3C3B07EB3B05003C8A4D /* nsterm.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C7F3C3A07EB3B05003C8A4D /* nsterm.h */; };
-		3CB8E29A0E2CE6BF003F3104 /* preferences.nib in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E2990E2CE6BF003F3104 /* preferences.nib */; };
-		3CB8E29E0E2CE73A003F3104 /* Emacs.icns in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E29D0E2CE73A003F3104 /* Emacs.icns */; };
-		3CB8E2A00E2CE7F5003F3104 /* Credits.html in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E29F0E2CE7F5003F3104 /* Credits.html */; };
-		3CB8E2A70E2CE856003F3104 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 3CB8E2A50E2CE856003F3104 /* InfoPlist.strings */; };
-		3CC5430607E2315800C271A9 /* nsfns.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF67E00C61DCD7F000001 /* nsfns.m */; };
-		3CC5430707E2315800C271A9 /* nsmenu.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68000C61DCD7F000001 /* nsmenu.m */; };
-		3CC5430807E2315800C271A9 /* nsselect.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68100C61DCD7F000001 /* nsselect.m */; };
-		3CC5430907E2315800C271A9 /* nsterm.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68300C61DCD7F000001 /* nsterm.m */; };
-		3CDCED340902E99700B2EF7E /* config.h in Headers */ = {isa = PBXBuildFile; fileRef = 3CDCED330902E99700B2EF7E /* config.h */; };
-		3CDCEDD00902EA8200B2EF7E /* term.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED550902EA8100B2EF7E /* term.c */; };
-		3CDCEDD10902EA8200B2EF7E /* sysdep.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED560902EA8100B2EF7E /* sysdep.c */; };
-		3CDCEDD20902EA8200B2EF7E /* syntax.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED570902EA8100B2EF7E /* syntax.c */; };
-		3CDCEDD40902EA8200B2EF7E /* strftime.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED590902EA8100B2EF7E /* strftime.c */; };
-		3CDCEDD50902EA8200B2EF7E /* sound.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5A0902EA8100B2EF7E /* sound.c */; };
-		3CDCEDD70902EA8200B2EF7E /* search.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5C0902EA8100B2EF7E /* search.c */; };
-		3CDCEDD80902EA8200B2EF7E /* scroll.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5D0902EA8100B2EF7E /* scroll.c */; };
-		3CDCEDD90902EA8200B2EF7E /* region-cache.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5E0902EA8100B2EF7E /* region-cache.c */; };
-		3CDCEDDA0902EA8200B2EF7E /* regex.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5F0902EA8100B2EF7E /* regex.c */; };
-		3CDCEDDC0902EA8200B2EF7E /* process.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED610902EA8100B2EF7E /* process.c */; };
-		3CDCEDDD0902EA8200B2EF7E /* print.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED620902EA8100B2EF7E /* print.c */; };
-		3CDCEDDF0902EA8200B2EF7E /* pre-crt0.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED640902EA8100B2EF7E /* pre-crt0.c */; };
-		3CDCEDE20902EA8200B2EF7E /* minibuf.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED670902EA8100B2EF7E /* minibuf.c */; };
-		3CDCEDE30902EA8200B2EF7E /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED680902EA8100B2EF7E /* md5.c */; };
-		3CDCEDE40902EA8200B2EF7E /* marker.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED690902EA8100B2EF7E /* marker.c */; };
-		3CDCEDE80902EA8200B2EF7E /* macros.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED6D0902EA8100B2EF7E /* macros.c */; };
-		3CDCEDEC0902EA8200B2EF7E /* lread.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED710902EA8100B2EF7E /* lread.c */; };
-		3CDCEDED0902EA8200B2EF7E /* lastfile.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED720902EA8100B2EF7E /* lastfile.c */; };
-		3CDCEDEE0902EA8200B2EF7E /* keymap.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED730902EA8100B2EF7E /* keymap.c */; };
-		3CDCEDEF0902EA8200B2EF7E /* keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED740902EA8200B2EF7E /* keyboard.c */; };
-		3CDCEDF00902EA8200B2EF7E /* intervals.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED750902EA8200B2EF7E /* intervals.c */; };
-		3CDCEDF10902EA8200B2EF7E /* insdel.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED760902EA8200B2EF7E /* insdel.c */; };
-		3CDCEDF20902EA8200B2EF7E /* indent.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED770902EA8200B2EF7E /* indent.c */; };
-		3CDCEDF30902EA8200B2EF7E /* image.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED780902EA8200B2EF7E /* image.c */; };
-		3CDCEDF50902EA8200B2EF7E /* cmds.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7A0902EA8200B2EF7E /* cmds.c */; };
-		3CDCEDF60902EA8200B2EF7E /* category.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7B0902EA8200B2EF7E /* category.c */; };
-		3CDCEDF70902EA8200B2EF7E /* coding.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7C0902EA8200B2EF7E /* coding.c */; };
-		3CDCEDFE0902EA8200B2EF7E /* unexmacosx.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED830902EA8200B2EF7E /* unexmacosx.c */; };
-		3CDCEE060902EA8200B2EF7E /* buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8B0902EA8200B2EF7E /* buffer.c */; };
-		3CDCEE070902EA8200B2EF7E /* character.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8C0902EA8200B2EF7E /* character.c */; };
-		3CDCEE0D0902EA8200B2EF7E /* undo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED920902EA8200B2EF7E /* undo.c */; };
-		3CDCEE0F0902EA8200B2EF7E /* textprop.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED940902EA8200B2EF7E /* textprop.c */; };
-		3CDCEE100902EA8200B2EF7E /* terminfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED950902EA8200B2EF7E /* terminfo.c */; };
-		3CDCEE170902EA8200B2EF7E /* xfaces.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9C0902EA8200B2EF7E /* xfaces.c */; };
-		3CDCEE180902EA8200B2EF7E /* xdisp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9D0902EA8200B2EF7E /* xdisp.c */; };
-		3CDCEE190902EA8200B2EF7E /* window.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9E0902EA8200B2EF7E /* window.c */; };
-		3CDCEE2B0902EA8200B2EF7E /* doprnt.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB00902EA8200B2EF7E /* doprnt.c */; };
-		3CDCEE2C0902EA8200B2EF7E /* doc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB10902EA8200B2EF7E /* doc.c */; };
-		3CDCEE2D0902EA8200B2EF7E /* dired.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB20902EA8200B2EF7E /* dired.c */; };
-		3CDCEE2E0902EA8200B2EF7E /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB30902EA8200B2EF7E /* data.c */; };
-		3CDCEE2F0902EA8200B2EF7E /* callint.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB40902EA8200B2EF7E /* callint.c */; };
-		3CDCEE310902EA8200B2EF7E /* ccl.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB60902EA8200B2EF7E /* ccl.c */; };
-		3CDCEE320902EA8200B2EF7E /* fontset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB70902EA8200B2EF7E /* fontset.c */; };
-		3CDCEE330902EA8200B2EF7E /* fns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB80902EA8200B2EF7E /* fns.c */; };
-		3CDCEE340902EA8200B2EF7E /* floatfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB90902EA8200B2EF7E /* floatfns.c */; };
-		3CDCEE360902EA8200B2EF7E /* filemode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBB0902EA8200B2EF7E /* filemode.c */; };
-		3CDCEE370902EA8200B2EF7E /* filelock.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBC0902EA8200B2EF7E /* filelock.c */; };
-		3CDCEE380902EA8200B2EF7E /* emacs.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBD0902EA8200B2EF7E /* emacs.c */; };
-		3CDCEE390902EA8200B2EF7E /* editfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBE0902EA8200B2EF7E /* editfns.c */; };
-		3CDCEE3A0902EA8200B2EF7E /* fileio.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBF0902EA8200B2EF7E /* fileio.c */; };
-		3CDCEE3B0902EA8200B2EF7E /* eval.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC00902EA8200B2EF7E /* eval.c */; };
-		3CDCEE3C0902EA8200B2EF7E /* casetab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC10902EA8200B2EF7E /* casetab.c */; };
-		3CDCEE3D0902EA8200B2EF7E /* composite.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC20902EA8200B2EF7E /* composite.c */; };
-		3CDCEE3E0902EA8200B2EF7E /* dispnew.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC30902EA8200B2EF7E /* dispnew.c */; };
-		3CDCEE3F0902EA8200B2EF7E /* charset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC40902EA8200B2EF7E /* charset.c */; };
-		3CDCEE400902EA8200B2EF7E /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC50902EA8200B2EF7E /* alloc.c */; };
-		3CDCEE410902EA8200B2EF7E /* bytecode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC60902EA8200B2EF7E /* bytecode.c */; };
-		3CDCEE420902EA8200B2EF7E /* callproc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC70902EA8200B2EF7E /* callproc.c */; };
-		3CDCEE430902EA8200B2EF7E /* cm.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC80902EA8200B2EF7E /* cm.c */; };
-		3CDCEE440902EA8200B2EF7E /* casefiddle.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC90902EA8200B2EF7E /* casefiddle.c */; };
-		3CDCEE450902EA8200B2EF7E /* fringe.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCA0902EA8200B2EF7E /* fringe.c */; };
-		3CDCEE460902EA8200B2EF7E /* frame.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCB0902EA8200B2EF7E /* frame.c */; };
-		3CDCEE470902EA8200B2EF7E /* chartab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCC0902EA8200B2EF7E /* chartab.c */; };
-		3CDCEE480902EA8200B2EF7E /* atimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCD0902EA8200B2EF7E /* atimer.c */; };
-		3CFDFC3B08E79A6800B05918 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3CFDFC3A08E79A6800B05918 /* AppKit.framework */; };
+		3C3AF9CA0FC10CDF001240E9 /* menu.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C3AF9C90FC10CDF001240E9 /* menu.c */; };
+		3C3AF9D50FC10D85001240E9 /* libncurses.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 3C3AF9D40FC10D85001240E9 /* libncurses.dylib */; };
+		3CED87390FC0F581005ACB89 /* alloc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC50902EA8200B2EF7E /* alloc.c */; };
+		3CED873A0FC0F581005ACB89 /* atimer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCD0902EA8200B2EF7E /* atimer.c */; };
+		3CED873B0FC0F581005ACB89 /* buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8B0902EA8200B2EF7E /* buffer.c */; };
+		3CED873C0FC0F581005ACB89 /* bytecode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC60902EA8200B2EF7E /* bytecode.c */; };
+		3CED873D0FC0F581005ACB89 /* callint.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB40902EA8200B2EF7E /* callint.c */; };
+		3CED873E0FC0F581005ACB89 /* callproc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC70902EA8200B2EF7E /* callproc.c */; };
+		3CED873F0FC0F581005ACB89 /* casefiddle.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC90902EA8200B2EF7E /* casefiddle.c */; };
+		3CED87400FC0F581005ACB89 /* casetab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC10902EA8200B2EF7E /* casetab.c */; };
+		3CED87410FC0F581005ACB89 /* category.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7B0902EA8200B2EF7E /* category.c */; };
+		3CED87420FC0F581005ACB89 /* ccl.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB60902EA8200B2EF7E /* ccl.c */; };
+		3CED87430FC0F581005ACB89 /* character.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED8C0902EA8200B2EF7E /* character.c */; };
+		3CED87440FC0F581005ACB89 /* charset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC40902EA8200B2EF7E /* charset.c */; };
+		3CED87450FC0F581005ACB89 /* chartab.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCC0902EA8200B2EF7E /* chartab.c */; };
+		3CED87460FC0F581005ACB89 /* cm.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC80902EA8200B2EF7E /* cm.c */; };
+		3CED87470FC0F581005ACB89 /* cmds.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7A0902EA8200B2EF7E /* cmds.c */; };
+		3CED87480FC0F581005ACB89 /* coding.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED7C0902EA8200B2EF7E /* coding.c */; };
+		3CED87490FC0F581005ACB89 /* composite.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC20902EA8200B2EF7E /* composite.c */; };
+		3CED874A0FC0F581005ACB89 /* data.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB30902EA8200B2EF7E /* data.c */; };
+		3CED874B0FC0F581005ACB89 /* dired.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB20902EA8200B2EF7E /* dired.c */; };
+		3CED874C0FC0F581005ACB89 /* dispnew.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC30902EA8200B2EF7E /* dispnew.c */; };
+		3CED874D0FC0F581005ACB89 /* doc.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB10902EA8200B2EF7E /* doc.c */; };
+		3CED874E0FC0F581005ACB89 /* doprnt.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB00902EA8200B2EF7E /* doprnt.c */; };
+		3CED874F0FC0F581005ACB89 /* editfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBE0902EA8200B2EF7E /* editfns.c */; };
+		3CED87500FC0F581005ACB89 /* emacs.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBD0902EA8200B2EF7E /* emacs.c */; };
+		3CED87510FC0F581005ACB89 /* eval.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDC00902EA8200B2EF7E /* eval.c */; };
+		3CED87520FC0F581005ACB89 /* fileio.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBF0902EA8200B2EF7E /* fileio.c */; };
+		3CED87530FC0F581005ACB89 /* filelock.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBC0902EA8200B2EF7E /* filelock.c */; };
+		3CED87540FC0F581005ACB89 /* filemode.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDBB0902EA8200B2EF7E /* filemode.c */; };
+		3CED87550FC0F581005ACB89 /* floatfns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB90902EA8200B2EF7E /* floatfns.c */; };
+		3CED87560FC0F581005ACB89 /* fns.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB80902EA8200B2EF7E /* fns.c */; };
+		3CED87570FC0F581005ACB89 /* font.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D660DE50D2300B20D4E /* font.c */; };
+		3CED87580FC0F581005ACB89 /* fontset.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDB70902EA8200B2EF7E /* fontset.c */; };
+		3CED87590FC0F581005ACB89 /* frame.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCB0902EA8200B2EF7E /* frame.c */; };
+		3CED875A0FC0F581005ACB89 /* fringe.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCEDCA0902EA8200B2EF7E /* fringe.c */; };
+		3CED875B0FC0F581005ACB89 /* image.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED780902EA8200B2EF7E /* image.c */; };
+		3CED875C0FC0F581005ACB89 /* indent.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED770902EA8200B2EF7E /* indent.c */; };
+		3CED875D0FC0F581005ACB89 /* insdel.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED760902EA8200B2EF7E /* insdel.c */; };
+		3CED875E0FC0F581005ACB89 /* intervals.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED750902EA8200B2EF7E /* intervals.c */; };
+		3CED875F0FC0F581005ACB89 /* keyboard.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED740902EA8200B2EF7E /* keyboard.c */; };
+		3CED87600FC0F581005ACB89 /* keymap.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED730902EA8100B2EF7E /* keymap.c */; };
+		3CED87610FC0F581005ACB89 /* lastfile.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED720902EA8100B2EF7E /* lastfile.c */; };
+		3CED87620FC0F581005ACB89 /* lread.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED710902EA8100B2EF7E /* lread.c */; };
+		3CED87630FC0F581005ACB89 /* macros.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED6D0902EA8100B2EF7E /* macros.c */; };
+		3CED87640FC0F581005ACB89 /* marker.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED690902EA8100B2EF7E /* marker.c */; };
+		3CED87650FC0F581005ACB89 /* md5.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED680902EA8100B2EF7E /* md5.c */; };
+		3CED87660FC0F581005ACB89 /* minibuf.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED670902EA8100B2EF7E /* minibuf.c */; };
+		3CED87670FC0F581005ACB89 /* nsfns.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF67E00C61DCD7F000001 /* nsfns.m */; };
+		3CED87680FC0F581005ACB89 /* nsfont.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D710DE50D5D00B20D4E /* nsfont.m */; };
+		3CED87690FC0F581005ACB89 /* nsimage.m in Sources */ = {isa = PBXBuildFile; fileRef = 3C15C1A70902D97100A8542F /* nsimage.m */; };
+		3CED876A0FC0F581005ACB89 /* nsmenu.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68000C61DCD7F000001 /* nsmenu.m */; };
+		3CED876B0FC0F581005ACB89 /* nsselect.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68100C61DCD7F000001 /* nsselect.m */; };
+		3CED876C0FC0F581005ACB89 /* nsterm.m in Sources */ = {isa = PBXBuildFile; fileRef = 090AF68300C61DCD7F000001 /* nsterm.m */; };
+		3CED876D0FC0F581005ACB89 /* pre-crt0.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED640902EA8100B2EF7E /* pre-crt0.c */; };
+		3CED876E0FC0F581005ACB89 /* print.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED620902EA8100B2EF7E /* print.c */; };
+		3CED876F0FC0F581005ACB89 /* process.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED610902EA8100B2EF7E /* process.c */; };
+		3CED87700FC0F581005ACB89 /* regex.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5F0902EA8100B2EF7E /* regex.c */; };
+		3CED87710FC0F581005ACB89 /* region-cache.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5E0902EA8100B2EF7E /* region-cache.c */; };
+		3CED87720FC0F581005ACB89 /* scroll.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5D0902EA8100B2EF7E /* scroll.c */; };
+		3CED87730FC0F581005ACB89 /* search.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5C0902EA8100B2EF7E /* search.c */; };
+		3CED87740FC0F581005ACB89 /* sound.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED5A0902EA8100B2EF7E /* sound.c */; };
+		3CED87750FC0F581005ACB89 /* strftime.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED590902EA8100B2EF7E /* strftime.c */; };
+		3CED87760FC0F581005ACB89 /* syntax.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED570902EA8100B2EF7E /* syntax.c */; };
+		3CED87770FC0F581005ACB89 /* sysdep.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED560902EA8100B2EF7E /* sysdep.c */; };
+		3CED87780FC0F581005ACB89 /* term.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED550902EA8100B2EF7E /* term.c */; };
+		3CED877A0FC0F581005ACB89 /* terminal.c in Sources */ = {isa = PBXBuildFile; fileRef = 3C4D6D690DE50D2300B20D4E /* terminal.c */; };
+		3CED877B0FC0F581005ACB89 /* terminfo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED950902EA8200B2EF7E /* terminfo.c */; };
+		3CED877C0FC0F581005ACB89 /* textprop.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED940902EA8200B2EF7E /* textprop.c */; };
+		3CED877E0FC0F581005ACB89 /* undo.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED920902EA8200B2EF7E /* undo.c */; };
+		3CED877F0FC0F581005ACB89 /* unexmacosx.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED830902EA8200B2EF7E /* unexmacosx.c */; };
+		3CED87800FC0F581005ACB89 /* window.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9E0902EA8200B2EF7E /* window.c */; };
+		3CED87810FC0F581005ACB89 /* xdisp.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9D0902EA8200B2EF7E /* xdisp.c */; };
+		3CED87820FC0F581005ACB89 /* xfaces.c in Sources */ = {isa = PBXBuildFile; fileRef = 3CDCED9C0902EA8200B2EF7E /* xfaces.c */; };
+		3CED88190FC0F5B3005ACB89 /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3CFDFC3A08E79A6800B05918 /* AppKit.framework */; };
 /* End PBXBuildFile section */
 
+/* Begin PBXContainerItemProxy section */
+		3CED88220FC0FE5C005ACB89 /* PBXContainerItemProxy */ = {
+			isa = PBXContainerItemProxy;
+			containerPortal = 29B97313FDCFA39411CA2CEA /* Project object */;
+			proxyType = 1;
+			remoteGlobalIDString = 3CED87320FC0F557005ACB89;
+			remoteInfo = temacs;
+		};
+/* End PBXContainerItemProxy section */
+
 /* Begin PBXFileReference section */
 		090AF67E00C61DCD7F000001 /* nsfns.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsfns.m; path = ../../src/nsfns.m; sourceTree = "<group>"; };
 		090AF68000C61DCD7F000001 /* nsmenu.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsmenu.m; path = ../../src/nsmenu.m; sourceTree = "<group>"; };
@@ -156,7 +112,6 @@
 		3C15C0460902D89500A8542F /* puresize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = puresize.h; path = ../../src/puresize.h; sourceTree = "<group>"; };
 		3C15C0470902D89500A8542F /* process.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = process.h; path = ../../src/process.h; sourceTree = "<group>"; };
 		3C15C04C0902D89500A8542F /* point.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = point.h; path = ../../src/point.h; sourceTree = "<group>"; };
-		3C15C04D0902D89500A8542F /* param.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = param.h; path = ../../src/param.h; sourceTree = "<group>"; };
 		3C15C04F0902D89500A8542F /* nsgui.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = nsgui.h; path = ../../src/nsgui.h; sourceTree = "<group>"; };
 		3C15C0500902D89500A8542F /* ndir.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = ndir.h; path = ../../src/ndir.h; sourceTree = "<group>"; };
 		3C15C0550902D89500A8542F /* mem-limits.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = "mem-limits.h"; path = "../../src/mem-limits.h"; sourceTree = "<group>"; };
@@ -169,12 +124,9 @@
 		3C15C0760902D89500A8542F /* category.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = category.h; path = ../../src/category.h; sourceTree = "<group>"; };
 		3C15C0770902D89500A8542F /* coding.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = coding.h; path = ../../src/coding.h; sourceTree = "<group>"; };
 		3C15C0780902D89500A8542F /* buffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = buffer.h; path = ../../src/buffer.h; sourceTree = "<group>"; };
-		3C15C0790902D89500A8542F /* vlimit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = vlimit.h; path = ../../src/vlimit.h; sourceTree = "<group>"; };
 		3C15C0890902D89500A8542F /* cm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = cm.h; path = ../../src/cm.h; sourceTree = "<group>"; };
-		3C15C0920902D89500A8542F /* uaf.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = uaf.h; path = ../../src/uaf.h; sourceTree = "<group>"; };
 		3C15C0950902D89500A8542F /* termopts.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = termopts.h; path = ../../src/termopts.h; sourceTree = "<group>"; };
 		3C15C0A00902D89500A8542F /* window.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = window.h; path = ../../src/window.h; sourceTree = "<group>"; };
-		3C15C0B60902D89500A8542F /* gnu.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = gnu.h; path = ../../src/gnu.h; sourceTree = "<group>"; };
 		3C15C0B80902D89500A8542F /* getpagesize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = getpagesize.h; path = ../../src/getpagesize.h; sourceTree = "<group>"; };
 		3C15C0BF0902D89500A8542F /* disptab.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = disptab.h; path = ../../src/disptab.h; sourceTree = "<group>"; };
 		3C15C0C20902D89500A8542F /* epaths.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = epaths.h; path = ../../src/epaths.h; sourceTree = "<group>"; };
@@ -184,21 +136,18 @@
 		3C15C0C90902D89500A8542F /* fontset.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = fontset.h; path = ../../src/fontset.h; sourceTree = "<group>"; };
 		3C15C0D70902D89500A8542F /* commands.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = commands.h; path = ../../src/commands.h; sourceTree = "<group>"; };
 		3C15C0D90902D89500A8542F /* dispextern.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = dispextern.h; path = ../../src/dispextern.h; sourceTree = "<group>"; };
-		3C15C0DB0902D89500A8542F /* acldef.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = acldef.h; path = ../../src/acldef.h; sourceTree = "<group>"; };
 		3C15C0DE0902D89500A8542F /* character.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = character.h; path = ../../src/character.h; sourceTree = "<group>"; };
-		3C15C0E20902D89500A8542F /* chpdef.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = chpdef.h; path = ../../src/chpdef.h; sourceTree = "<group>"; };
 		3C15C0E40902D89500A8542F /* frame.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = frame.h; path = ../../src/frame.h; sourceTree = "<group>"; };
 		3C15C0E60902D89500A8542F /* atimer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = atimer.h; path = ../../src/atimer.h; sourceTree = "<group>"; };
 		3C15C0E70902D89500A8542F /* blockinput.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = blockinput.h; path = ../../src/blockinput.h; sourceTree = "<group>"; };
 		3C15C1A70902D97100A8542F /* nsimage.m */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.objc; name = nsimage.m; path = ../../src/nsimage.m; sourceTree = "<group>"; };
+		3C3AF9C90FC10CDF001240E9 /* menu.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = menu.c; path = ../../src/menu.c; sourceTree = SOURCE_ROOT; };
+		3C3AF9D40FC10D85001240E9 /* libncurses.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libncurses.dylib; path = /usr/lib/libncurses.dylib; sourceTree = "<absolute>"; };
 		3C4D6D660DE50D2300B20D4E /* font.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = font.c; path = ../../src/font.c; sourceTree = SOURCE_ROOT; };
 		3C4D6D670DE50D2300B20D4E /* font.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = font.h; path = ../../src/font.h; sourceTree = SOURCE_ROOT; };
-		3C4D6D680DE50D2300B20D4E /* termcap.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = termcap.c; path = ../../src/termcap.c; sourceTree = SOURCE_ROOT; };
 		3C4D6D690DE50D2300B20D4E /* terminal.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = terminal.c; path = ../../src/terminal.c; sourceTree = SOURCE_ROOT; };
-		3C4D6D6A0DE50D2300B20D4E /* tparam.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = tparam.c; path = ../../src/tparam.c; sourceTree = SOURCE_ROOT; };
 		3C4D6D710DE50D5D00B20D4E /* nsfont.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = nsfont.m; path = ../../src/nsfont.m; sourceTree = SOURCE_ROOT; };
 		3C7F3C3A07EB3B05003C8A4D /* nsterm.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; name = nsterm.h; path = ../../src/nsterm.h; sourceTree = "<group>"; };
-		3CB8E2990E2CE6BF003F3104 /* preferences.nib */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = preferences.nib; path = Emacs.base/Contents/Resources/preferences.nib; sourceTree = "<group>"; };
 		3CB8E29D0E2CE73A003F3104 /* Emacs.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = Emacs.icns; path = Emacs.base/Contents/Resources/Emacs.icns; sourceTree = "<group>"; };
 		3CB8E29F0E2CE7F5003F3104 /* Credits.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = Credits.html; path = Emacs.base/Contents/Resources/Credits.html; sourceTree = "<group>"; };
 		3CB8E2A60E2CE856003F3104 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = InfoPlist.strings; sourceTree = "<group>"; };
@@ -268,40 +217,30 @@
 		3CDCEDCB0902EA8200B2EF7E /* frame.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = frame.c; path = ../../src/frame.c; sourceTree = "<group>"; };
 		3CDCEDCC0902EA8200B2EF7E /* chartab.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = chartab.c; path = ../../src/chartab.c; sourceTree = "<group>"; };
 		3CDCEDCD0902EA8200B2EF7E /* atimer.c */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.c; name = atimer.c; path = ../../src/atimer.c; sourceTree = "<group>"; };
+		3CED87260FBE696B005ACB89 /* lisp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lisp.h; path = ../../src/lisp.h; sourceTree = SOURCE_ROOT; };
+		3CED87280FBE6993005ACB89 /* menu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = menu.h; path = ../../src/menu.h; sourceTree = SOURCE_ROOT; };
+		3CED87330FC0F557005ACB89 /* temacs */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = temacs; sourceTree = BUILT_PRODUCTS_DIR; };
 		3CFDFC3A08E79A6800B05918 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /Developer/SDKs/MacOSX10.3.9.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
-		3CC5434707E2315800C271A9 /* Frameworks */ = {
+		3CED87310FC0F557005ACB89 /* Frameworks */ = {
 			isa = PBXFrameworksBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				3CFDFC3B08E79A6800B05918 /* AppKit.framework in Frameworks */,
+				3CED88190FC0F5B3005ACB89 /* AppKit.framework in Frameworks */,
+				3C3AF9D50FC10D85001240E9 /* libncurses.dylib in Frameworks */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 /* End PBXFrameworksBuildPhase section */
 
 /* Begin PBXGroup section */
-		1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
-			isa = PBXGroup;
-			children = (
-				3CFDFC3A08E79A6800B05918 /* AppKit.framework */,
-			);
-			name = "Linked Frameworks";
-			sourceTree = "<group>";
-		};
-		1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {
-			isa = PBXGroup;
-			children = (
-			);
-			name = "Other Frameworks";
-			sourceTree = "<group>";
-		};
 		19C28FACFE9D520D11CA2CBB /* Products */ = {
 			isa = PBXGroup;
 			children = (
 				3CC5434C07E2315800C271A9 /* Emacs.app */,
+				3CED87330FC0F557005ACB89 /* temacs */,
 			);
 			name = Products;
 			sourceTree = "<group>";
@@ -339,7 +278,6 @@
 			children = (
 				3CB8E2A40E2CE856003F3104 /* English.lproj */,
 				3CB8E29F0E2CE7F5003F3104 /* Credits.html */,
-				3CB8E2990E2CE6BF003F3104 /* preferences.nib */,
 				739637F200C4DF3C7F000001 /* Images */,
 			);
 			name = Resources;
@@ -348,8 +286,8 @@
 		29B97323FDCFA39411CA2CEA /* Frameworks */ = {
 			isa = PBXGroup;
 			children = (
-				1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
-				1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,
+				3C3AF9D40FC10D85001240E9 /* libncurses.dylib */,
+				3CFDFC3A08E79A6800B05918 /* AppKit.framework */,
 			);
 			name = Frameworks;
 			sourceTree = "<group>";
@@ -357,8 +295,9 @@
 		3C15C23E0902E6B000A8542F /* emacs-hdr */ = {
 			isa = PBXGroup;
 			children = (
+				3CED87280FBE6993005ACB89 /* menu.h */,
+				3CED87260FBE696B005ACB89 /* lisp.h */,
 				3C4D6D670DE50D2300B20D4E /* font.h */,
-				3C15C0DB0902D89500A8542F /* acldef.h */,
 				3C15C0E60902D89500A8542F /* atimer.h */,
 				3C15C0E70902D89500A8542F /* blockinput.h */,
 				3C15C0780902D89500A8542F /* buffer.h */,
@@ -366,7 +305,6 @@
 				3C15C0C50902D89500A8542F /* ccl.h */,
 				3C15C0DE0902D89500A8542F /* character.h */,
 				3C15C0C80902D89500A8542F /* charset.h */,
-				3C15C0E20902D89500A8542F /* chpdef.h */,
 				3C15C0890902D89500A8542F /* cm.h */,
 				3CDCED330902E99700B2EF7E /* config.h */,
 				3C15C0770902D89500A8542F /* coding.h */,
@@ -378,7 +316,6 @@
 				3C15C0C90902D89500A8542F /* fontset.h */,
 				3C15C0E40902D89500A8542F /* frame.h */,
 				3C15C0B80902D89500A8542F /* getpagesize.h */,
-				3C15C0B60902D89500A8542F /* gnu.h */,
 				3C15C06E0902D89500A8542F /* indent.h */,
 				3C15C06B0902D89500A8542F /* intervals.h */,
 				3C15C0660902D89500A8542F /* keymap.h */,
@@ -387,7 +324,6 @@
 				3C15C0560902D89500A8542F /* md5.h */,
 				3C15C0550902D89500A8542F /* mem-limits.h */,
 				3C15C0500902D89500A8542F /* ndir.h */,
-				3C15C04D0902D89500A8542F /* param.h */,
 				3C15C04C0902D89500A8542F /* point.h */,
 				3C15C0470902D89500A8542F /* process.h */,
 				3C15C0460902D89500A8542F /* puresize.h */,
@@ -402,8 +338,6 @@
 				3C15C0300902D89500A8542F /* termchar.h */,
 				3C15C02F0902D89500A8542F /* termhooks.h */,
 				3C15C0950902D89500A8542F /* termopts.h */,
-				3C15C0920902D89500A8542F /* uaf.h */,
-				3C15C0790902D89500A8542F /* vlimit.h */,
 				3C15C0A00902D89500A8542F /* window.h */,
 			);
 			name = "emacs-hdr";
@@ -421,10 +355,9 @@
 		3CDCED4D0902EA6800B2EF7E /* emacs-src */ = {
 			isa = PBXGroup;
 			children = (
+				3C3AF9C90FC10CDF001240E9 /* menu.c */,
 				3C4D6D660DE50D2300B20D4E /* font.c */,
-				3C4D6D680DE50D2300B20D4E /* termcap.c */,
 				3C4D6D690DE50D2300B20D4E /* terminal.c */,
-				3C4D6D6A0DE50D2300B20D4E /* tparam.c */,
 				3CDCED550902EA8100B2EF7E /* term.c */,
 				3CDCED560902EA8100B2EF7E /* sysdep.c */,
 				3CDCED570902EA8100B2EF7E /* syntax.c */,
@@ -503,80 +436,18 @@
 		};
 /* End PBXGroup section */
 
-/* Begin PBXHeadersBuildPhase section */
-		3CC542FF07E2315800C271A9 /* Headers */ = {
-			isa = PBXHeadersBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-				3C7F3C3B07EB3B05003C8A4D /* nsterm.h in Headers */,
-				3C15C0EB0902D89500A8542F /* termhooks.h in Headers */,
-				3C15C0EC0902D89500A8542F /* termchar.h in Headers */,
-				3C15C0EF0902D89500A8542F /* syswait.h in Headers */,
-				3C15C0F00902D89500A8542F /* systty.h in Headers */,
-				3C15C0F10902D89500A8542F /* systime.h in Headers */,
-				3C15C0F20902D89500A8542F /* syssignal.h in Headers */,
-				3C15C0F30902D89500A8542F /* sysselect.h in Headers */,
-				3C15C0F50902D89500A8542F /* syntax.h in Headers */,
-				3C15C0FD0902D89500A8542F /* region-cache.h in Headers */,
-				3C15C0FF0902D89500A8542F /* regex.h in Headers */,
-				3C15C1020902D89500A8542F /* puresize.h in Headers */,
-				3C15C1030902D89500A8542F /* process.h in Headers */,
-				3C15C1080902D89500A8542F /* point.h in Headers */,
-				3C15C1090902D89500A8542F /* param.h in Headers */,
-				3C15C10B0902D89500A8542F /* nsgui.h in Headers */,
-				3C15C10C0902D89500A8542F /* ndir.h in Headers */,
-				3C15C1110902D89500A8542F /* mem-limits.h in Headers */,
-				3C15C1120902D89500A8542F /* md5.h in Headers */,
-				3C15C1190902D89500A8542F /* macros.h in Headers */,
-				3C15C1220902D89500A8542F /* keymap.h in Headers */,
-				3C15C1240902D89500A8542F /* keyboard.h in Headers */,
-				3C15C1270902D89500A8542F /* intervals.h in Headers */,
-				3C15C12A0902D89500A8542F /* indent.h in Headers */,
-				3C15C1320902D89500A8542F /* category.h in Headers */,
-				3C15C1330902D89500A8542F /* coding.h in Headers */,
-				3C15C1340902D89500A8542F /* buffer.h in Headers */,
-				3C15C1350902D89500A8542F /* vlimit.h in Headers */,
-				3C15C1450902D89500A8542F /* cm.h in Headers */,
-				3C15C14E0902D89500A8542F /* uaf.h in Headers */,
-				3C15C1510902D89500A8542F /* termopts.h in Headers */,
-				3C15C15C0902D89500A8542F /* window.h in Headers */,
-				3C15C1720902D89500A8542F /* gnu.h in Headers */,
-				3C15C1740902D89500A8542F /* getpagesize.h in Headers */,
-				3C15C17B0902D89500A8542F /* disptab.h in Headers */,
-				3C15C17E0902D89500A8542F /* epaths.h in Headers */,
-				3C15C1810902D89500A8542F /* ccl.h in Headers */,
-				3C15C1830902D89500A8542F /* composite.h in Headers */,
-				3C15C1840902D89500A8542F /* charset.h in Headers */,
-				3C15C1850902D89500A8542F /* fontset.h in Headers */,
-				3C15C1930902D89500A8542F /* commands.h in Headers */,
-				3C15C1950902D89500A8542F /* dispextern.h in Headers */,
-				3C15C1970902D89500A8542F /* acldef.h in Headers */,
-				3C15C19A0902D89500A8542F /* character.h in Headers */,
-				3C15C19E0902D89500A8542F /* chpdef.h in Headers */,
-				3C15C1A00902D89500A8542F /* frame.h in Headers */,
-				3C15C1A20902D89500A8542F /* atimer.h in Headers */,
-				3C15C1A30902D89500A8542F /* blockinput.h in Headers */,
-				3CDCED340902E99700B2EF7E /* config.h in Headers */,
-				3C4D6D6C0DE50D2300B20D4E /* font.h in Headers */,
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-		};
-/* End PBXHeadersBuildPhase section */
-
 /* Begin PBXNativeTarget section */
 		3CC542FE07E2315800C271A9 /* Emacs */ = {
 			isa = PBXNativeTarget;
 			buildConfigurationList = 3CA115970C825A540007AFC2 /* Build configuration list for PBXNativeTarget "Emacs" */;
 			buildPhases = (
-				3CC542FF07E2315800C271A9 /* Headers */,
-				3CC5430007E2315800C271A9 /* Resources */,
-				3CC5430407E2315800C271A9 /* Sources */,
-				3CC5434707E2315800C271A9 /* Frameworks */,
-				3CC5434907E2315800C271A9 /* Rez */,
+				3CED88240FC0FE7C005ACB89 /* ShellScript */,
+				3CED883D0FC0FF6E005ACB89 /* ShellScript */,
 			);
 			buildRules = (
 			);
 			dependencies = (
+				3CED88230FC0FE5C005ACB89 /* PBXTargetDependency */,
 			);
 			name = Emacs;
 			productInstallPath = "$(HOME)/Applications";
@@ -584,131 +455,183 @@
 			productReference = 3CC5434C07E2315800C271A9 /* Emacs.app */;
 			productType = "com.apple.product-type.application";
 		};
+		3CED87320FC0F557005ACB89 /* temacs */ = {
+			isa = PBXNativeTarget;
+			buildConfigurationList = 3CED87350FC0F576005ACB89 /* Build configuration list for PBXNativeTarget "temacs" */;
+			buildPhases = (
+				3CED87300FC0F557005ACB89 /* Sources */,
+				3CED87310FC0F557005ACB89 /* Frameworks */,
+				3CED88460FC100EC005ACB89 /* ShellScript */,
+			);
+			buildRules = (
+			);
+			dependencies = (
+			);
+			name = temacs;
+			productName = "emacs-bin";
+			productReference = 3CED87330FC0F557005ACB89 /* temacs */;
+			productType = "com.apple.product-type.tool";
+		};
 /* End PBXNativeTarget section */
 
 /* Begin PBXProject section */
 		29B97313FDCFA39411CA2CEA /* Project object */ = {
 			isa = PBXProject;
 			buildConfigurationList = 3CA1159B0C825A540007AFC2 /* Build configuration list for PBXProject "Emacs" */;
-			compatibilityVersion = "Xcode 2.4";
 			hasScannedForEncodings = 1;
 			mainGroup = 29B97314FDCFA39411CA2CEA /* Emacs */;
 			projectDirPath = "";
 			projectRoot = ../..;
 			targets = (
 				3CC542FE07E2315800C271A9 /* Emacs */,
+				3CED87320FC0F557005ACB89 /* temacs */,
 			);
 		};
 /* End PBXProject section */
 
-/* Begin PBXResourcesBuildPhase section */
-		3CC5430007E2315800C271A9 /* Resources */ = {
-			isa = PBXResourcesBuildPhase;
+/* Begin PBXShellScriptBuildPhase section */
+		3CED88240FC0FE7C005ACB89 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
+			comments = "This script sets up the Emacs.app bundle by copying from Cocoa/Emacs.base, and copying the binary emacs.  It runs the ns-app target in src/Makefile.  This depends on emacs target, so temacs resulting from previous step is dumped into emacs.";
 			files = (
-				3CB8E29A0E2CE6BF003F3104 /* preferences.nib in Resources */,
-				3CB8E29E0E2CE73A003F3104 /* Emacs.icns in Resources */,
-				3CB8E2A00E2CE7F5003F3104 /* Credits.html in Resources */,
-				3CB8E2A70E2CE856003F3104 /* InfoPlist.strings in Resources */,
+			);
+			inputPaths = (
+				Emacs.base,
+				../../src/emacs,
+			);
+			outputPaths = (
+				../Emacs.app,
+				../Emacs.app/Contents/MacOS/Emacs,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "cd ../../src\nif [ ! -x ../nextstep/Emacs.app/Contents/Info.plist ]; then\n\trm -fr ../nextstep/Emacs.app\nfi\nmake ns-app\n";
 		};
-/* End PBXResourcesBuildPhase section */
-
-/* Begin PBXRezBuildPhase section */
-		3CC5434907E2315800C271A9 /* Rez */ = {
-			isa = PBXRezBuildPhase;
+		3CED883D0FC0FF6E005ACB89 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
+			buildActionMask = 12;
+			comments = "This script copies the lisp and other files into the bundle (if self-contained configuration was selected at configure time), or the install location (otherwise).";
+			files = (
+			);
+			inputPaths = (
+				../../lisp,
+			);
+			outputPaths = (
+				../Emacs.app/Contents/Resources/lisp,
+			);
+			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "cd ../..\nmake install\nln -s $BUILD_ROOT/../../Emacs.app $BUILT_PRODUCTS_DIR/Emacs.app\n";
+		};
+		3CED88460FC100EC005ACB89 /* ShellScript */ = {
+			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
 			);
+			inputPaths = (
+				"$(BUILT_PRODUCTS_DIR)/temacs",
+			);
+			outputPaths = (
+				../../src/temacs,
+			);
 			runOnlyForDeploymentPostprocessing = 0;
+			shellPath = /bin/sh;
+			shellScript = "# Move the build results to emacs src dir so scripts in Emacs target invoking\n# make operations can use them.\n# *.o files included because make-docfile uses object files for some reason\n\ncp -f ${OBJECT_FILE_DIR_normal}/${NATIVE_ARCH_ACTUAL}/*.o ../../src\ncp -f ${BUILT_PRODUCTS_DIR}/temacs ../../src";
 		};
-/* End PBXRezBuildPhase section */
+/* End PBXShellScriptBuildPhase section */
 
 /* Begin PBXSourcesBuildPhase section */
-		3CC5430407E2315800C271A9 /* Sources */ = {
+		3CED87300FC0F557005ACB89 /* Sources */ = {
 			isa = PBXSourcesBuildPhase;
 			buildActionMask = 2147483647;
 			files = (
-				3CC5430607E2315800C271A9 /* nsfns.m in Sources */,
-				3CC5430707E2315800C271A9 /* nsmenu.m in Sources */,
-				3CC5430807E2315800C271A9 /* nsselect.m in Sources */,
-				3CC5430907E2315800C271A9 /* nsterm.m in Sources */,
-				3C15C1A80902D97100A8542F /* nsimage.m in Sources */,
-				3CDCEDD00902EA8200B2EF7E /* term.c in Sources */,
-				3CDCEDD10902EA8200B2EF7E /* sysdep.c in Sources */,
-				3CDCEDD20902EA8200B2EF7E /* syntax.c in Sources */,
-				3CDCEDD40902EA8200B2EF7E /* strftime.c in Sources */,
-				3CDCEDD50902EA8200B2EF7E /* sound.c in Sources */,
-				3CDCEDD70902EA8200B2EF7E /* search.c in Sources */,
-				3CDCEDD80902EA8200B2EF7E /* scroll.c in Sources */,
-				3CDCEDD90902EA8200B2EF7E /* region-cache.c in Sources */,
-				3CDCEDDA0902EA8200B2EF7E /* regex.c in Sources */,
-				3CDCEDDC0902EA8200B2EF7E /* process.c in Sources */,
-				3CDCEDDD0902EA8200B2EF7E /* print.c in Sources */,
-				3CDCEDDF0902EA8200B2EF7E /* pre-crt0.c in Sources */,
-				3CDCEDE20902EA8200B2EF7E /* minibuf.c in Sources */,
-				3CDCEDE30902EA8200B2EF7E /* md5.c in Sources */,
-				3CDCEDE40902EA8200B2EF7E /* marker.c in Sources */,
-				3CDCEDE80902EA8200B2EF7E /* macros.c in Sources */,
-				3CDCEDEC0902EA8200B2EF7E /* lread.c in Sources */,
-				3CDCEDED0902EA8200B2EF7E /* lastfile.c in Sources */,
-				3CDCEDEE0902EA8200B2EF7E /* keymap.c in Sources */,
-				3CDCEDEF0902EA8200B2EF7E /* keyboard.c in Sources */,
-				3CDCEDF00902EA8200B2EF7E /* intervals.c in Sources */,
-				3CDCEDF10902EA8200B2EF7E /* insdel.c in Sources */,
-				3CDCEDF20902EA8200B2EF7E /* indent.c in Sources */,
-				3CDCEDF30902EA8200B2EF7E /* image.c in Sources */,
-				3CDCEDF50902EA8200B2EF7E /* cmds.c in Sources */,
-				3CDCEDF60902EA8200B2EF7E /* category.c in Sources */,
-				3CDCEDF70902EA8200B2EF7E /* coding.c in Sources */,
-				3CDCEDFE0902EA8200B2EF7E /* unexmacosx.c in Sources */,
-				3CDCEE060902EA8200B2EF7E /* buffer.c in Sources */,
-				3CDCEE070902EA8200B2EF7E /* character.c in Sources */,
-				3CDCEE0D0902EA8200B2EF7E /* undo.c in Sources */,
-				3CDCEE0F0902EA8200B2EF7E /* textprop.c in Sources */,
-				3CDCEE100902EA8200B2EF7E /* terminfo.c in Sources */,
-				3CDCEE170902EA8200B2EF7E /* xfaces.c in Sources */,
-				3CDCEE180902EA8200B2EF7E /* xdisp.c in Sources */,
-				3CDCEE190902EA8200B2EF7E /* window.c in Sources */,
-				3CDCEE2B0902EA8200B2EF7E /* doprnt.c in Sources */,
-				3CDCEE2C0902EA8200B2EF7E /* doc.c in Sources */,
-				3CDCEE2D0902EA8200B2EF7E /* dired.c in Sources */,
-				3CDCEE2E0902EA8200B2EF7E /* data.c in Sources */,
-				3CDCEE2F0902EA8200B2EF7E /* callint.c in Sources */,
-				3CDCEE310902EA8200B2EF7E /* ccl.c in Sources */,
-				3CDCEE320902EA8200B2EF7E /* fontset.c in Sources */,
-				3CDCEE330902EA8200B2EF7E /* fns.c in Sources */,
-				3CDCEE340902EA8200B2EF7E /* floatfns.c in Sources */,
-				3CDCEE360902EA8200B2EF7E /* filemode.c in Sources */,
-				3CDCEE370902EA8200B2EF7E /* filelock.c in Sources */,
-				3CDCEE380902EA8200B2EF7E /* emacs.c in Sources */,
-				3CDCEE390902EA8200B2EF7E /* editfns.c in Sources */,
-				3CDCEE3A0902EA8200B2EF7E /* fileio.c in Sources */,
-				3CDCEE3B0902EA8200B2EF7E /* eval.c in Sources */,
-				3CDCEE3C0902EA8200B2EF7E /* casetab.c in Sources */,
-				3CDCEE3D0902EA8200B2EF7E /* composite.c in Sources */,
-				3CDCEE3E0902EA8200B2EF7E /* dispnew.c in Sources */,
-				3CDCEE3F0902EA8200B2EF7E /* charset.c in Sources */,
-				3CDCEE400902EA8200B2EF7E /* alloc.c in Sources */,
-				3CDCEE410902EA8200B2EF7E /* bytecode.c in Sources */,
-				3CDCEE420902EA8200B2EF7E /* callproc.c in Sources */,
-				3CDCEE430902EA8200B2EF7E /* cm.c in Sources */,
-				3CDCEE440902EA8200B2EF7E /* casefiddle.c in Sources */,
-				3CDCEE450902EA8200B2EF7E /* fringe.c in Sources */,
-				3CDCEE460902EA8200B2EF7E /* frame.c in Sources */,
-				3CDCEE470902EA8200B2EF7E /* chartab.c in Sources */,
-				3CDCEE480902EA8200B2EF7E /* atimer.c in Sources */,
-				3C4D6D6B0DE50D2300B20D4E /* font.c in Sources */,
-				3C4D6D6D0DE50D2300B20D4E /* termcap.c in Sources */,
-				3C4D6D6E0DE50D2300B20D4E /* terminal.c in Sources */,
-				3C4D6D6F0DE50D2300B20D4E /* tparam.c in Sources */,
-				3C4D6D730DE50D5D00B20D4E /* nsfont.m in Sources */,
+				3CED876D0FC0F581005ACB89 /* pre-crt0.c in Sources */,
+				3CED87390FC0F581005ACB89 /* alloc.c in Sources */,
+				3CED873A0FC0F581005ACB89 /* atimer.c in Sources */,
+				3CED873B0FC0F581005ACB89 /* buffer.c in Sources */,
+				3CED873C0FC0F581005ACB89 /* bytecode.c in Sources */,
+				3CED873D0FC0F581005ACB89 /* callint.c in Sources */,
+				3CED873E0FC0F581005ACB89 /* callproc.c in Sources */,
+				3CED873F0FC0F581005ACB89 /* casefiddle.c in Sources */,
+				3CED87400FC0F581005ACB89 /* casetab.c in Sources */,
+				3CED87410FC0F581005ACB89 /* category.c in Sources */,
+				3CED87420FC0F581005ACB89 /* ccl.c in Sources */,
+				3CED87430FC0F581005ACB89 /* character.c in Sources */,
+				3CED87440FC0F581005ACB89 /* charset.c in Sources */,
+				3CED87450FC0F581005ACB89 /* chartab.c in Sources */,
+				3CED87460FC0F581005ACB89 /* cm.c in Sources */,
+				3CED87470FC0F581005ACB89 /* cmds.c in Sources */,
+				3CED87480FC0F581005ACB89 /* coding.c in Sources */,
+				3CED87490FC0F581005ACB89 /* composite.c in Sources */,
+				3CED874A0FC0F581005ACB89 /* data.c in Sources */,
+				3CED874B0FC0F581005ACB89 /* dired.c in Sources */,
+				3CED874C0FC0F581005ACB89 /* dispnew.c in Sources */,
+				3CED874D0FC0F581005ACB89 /* doc.c in Sources */,
+				3CED874E0FC0F581005ACB89 /* doprnt.c in Sources */,
+				3CED874F0FC0F581005ACB89 /* editfns.c in Sources */,
+				3CED87500FC0F581005ACB89 /* emacs.c in Sources */,
+				3CED87510FC0F581005ACB89 /* eval.c in Sources */,
+				3CED87520FC0F581005ACB89 /* fileio.c in Sources */,
+				3CED87530FC0F581005ACB89 /* filelock.c in Sources */,
+				3CED87540FC0F581005ACB89 /* filemode.c in Sources */,
+				3CED87550FC0F581005ACB89 /* floatfns.c in Sources */,
+				3CED87560FC0F581005ACB89 /* fns.c in Sources */,
+				3CED87570FC0F581005ACB89 /* font.c in Sources */,
+				3CED87580FC0F581005ACB89 /* fontset.c in Sources */,
+				3CED87590FC0F581005ACB89 /* frame.c in Sources */,
+				3CED875A0FC0F581005ACB89 /* fringe.c in Sources */,
+				3CED875B0FC0F581005ACB89 /* image.c in Sources */,
+				3CED875C0FC0F581005ACB89 /* indent.c in Sources */,
+				3CED875D0FC0F581005ACB89 /* insdel.c in Sources */,
+				3CED875E0FC0F581005ACB89 /* intervals.c in Sources */,
+				3CED875F0FC0F581005ACB89 /* keyboard.c in Sources */,
+				3CED87600FC0F581005ACB89 /* keymap.c in Sources */,
+				3CED87620FC0F581005ACB89 /* lread.c in Sources */,
+				3CED87630FC0F581005ACB89 /* macros.c in Sources */,
+				3CED87640FC0F581005ACB89 /* marker.c in Sources */,
+				3CED87650FC0F581005ACB89 /* md5.c in Sources */,
+				3C3AF9CA0FC10CDF001240E9 /* menu.c in Sources */,
+				3CED87660FC0F581005ACB89 /* minibuf.c in Sources */,
+				3CED87670FC0F581005ACB89 /* nsfns.m in Sources */,
+				3CED87680FC0F581005ACB89 /* nsfont.m in Sources */,
+				3CED87690FC0F581005ACB89 /* nsimage.m in Sources */,
+				3CED876A0FC0F581005ACB89 /* nsmenu.m in Sources */,
+				3CED876B0FC0F581005ACB89 /* nsselect.m in Sources */,
+				3CED876C0FC0F581005ACB89 /* nsterm.m in Sources */,
+				3CED876E0FC0F581005ACB89 /* print.c in Sources */,
+				3CED876F0FC0F581005ACB89 /* process.c in Sources */,
+				3CED87700FC0F581005ACB89 /* regex.c in Sources */,
+				3CED87710FC0F581005ACB89 /* region-cache.c in Sources */,
+				3CED87720FC0F581005ACB89 /* scroll.c in Sources */,
+				3CED87730FC0F581005ACB89 /* search.c in Sources */,
+				3CED87740FC0F581005ACB89 /* sound.c in Sources */,
+				3CED87750FC0F581005ACB89 /* strftime.c in Sources */,
+				3CED87760FC0F581005ACB89 /* syntax.c in Sources */,
+				3CED87770FC0F581005ACB89 /* sysdep.c in Sources */,
+				3CED87780FC0F581005ACB89 /* term.c in Sources */,
+				3CED877A0FC0F581005ACB89 /* terminal.c in Sources */,
+				3CED877B0FC0F581005ACB89 /* terminfo.c in Sources */,
+				3CED877C0FC0F581005ACB89 /* textprop.c in Sources */,
+				3CED877E0FC0F581005ACB89 /* undo.c in Sources */,
+				3CED877F0FC0F581005ACB89 /* unexmacosx.c in Sources */,
+				3CED87800FC0F581005ACB89 /* window.c in Sources */,
+				3CED87810FC0F581005ACB89 /* xdisp.c in Sources */,
+				3CED87820FC0F581005ACB89 /* xfaces.c in Sources */,
+				3CED87610FC0F581005ACB89 /* lastfile.c in Sources */,
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 		};
 /* End PBXSourcesBuildPhase section */
 
+/* Begin PBXTargetDependency section */
+		3CED88230FC0FE5C005ACB89 /* PBXTargetDependency */ = {
+			isa = PBXTargetDependency;
+			target = 3CED87320FC0F557005ACB89 /* temacs */;
+			targetProxy = 3CED88220FC0FE5C005ACB89 /* PBXContainerItemProxy */;
+		};
+/* End PBXTargetDependency section */
+
 /* Begin PBXVariantGroup section */
 		3CB8E2A50E2CE856003F3104 /* InfoPlist.strings */ = {
 			isa = PBXVariantGroup;
@@ -724,73 +647,23 @@
 		3CA115980C825A540007AFC2 /* Development */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				COPY_PHASE_STRIP = NO;
-				FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
-				GCC_DYNAMIC_NO_PIC = NO;
-				GCC_ENABLE_FIX_AND_CONTINUE = YES;
-				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
-				GCC_OPTIMIZATION_LEVEL = 1;
-				GCC_PREPROCESSOR_DEFINITIONS = (
-					COCOA,
-					HAVE_CONFIG_H,
-					emacs,
-				);
-				HEADER_SEARCH_PATHS = "";
-				INFOPLIST_FILE = Info.plist;
-				INSTALL_PATH = "$(HOME)/Applications";
-				LIBRARY_SEARCH_PATHS = "";
-				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				OTHER_CFLAGS = "";
-				OTHER_LDFLAGS = "-lncurses";
 				PRODUCT_NAME = Emacs;
-				SECTORDER_FLAGS = "";
-				WARNING_CFLAGS = "";
 				WRAPPER_EXTENSION = app;
-				ZERO_LINK = NO;
 			};
 			name = Development;
 		};
 		3CA115990C825A540007AFC2 /* Deployment */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				COPY_PHASE_STRIP = YES;
-				FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
-				GCC_ENABLE_FIX_AND_CONTINUE = NO;
-				GCC_PREPROCESSOR_DEFINITIONS = (
-					COCOA,
-					HAVE_CONFIG_H,
-					emacs,
-				);
-				HEADER_SEARCH_PATHS = "";
-				INFOPLIST_FILE = Info.plist;
-				INSTALL_PATH = "$(HOME)/Applications";
-				LIBRARY_SEARCH_PATHS = "";
-				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				OTHER_CFLAGS = "";
-				OTHER_LDFLAGS = "-lncurses";
 				PRODUCT_NAME = Emacs;
-				SECTORDER_FLAGS = "";
-				WARNING_CFLAGS = "";
 				WRAPPER_EXTENSION = app;
-				ZERO_LINK = NO;
 			};
 			name = Deployment;
 		};
 		3CA1159A0C825A540007AFC2 /* Default */ = {
 			isa = XCBuildConfiguration;
 			buildSettings = {
-				FRAMEWORK_SEARCH_PATHS = "\"$(SYSTEM_DEVELOPER_DIR)/SDKs/MacOSX10.3.0.sdk/System/Library/Frameworks\"";
-				GCC_PREPROCESSOR_DEFINITIONS = "";
-				HEADER_SEARCH_PATHS = "";
-				INFOPLIST_FILE = Info.plist;
-				INSTALL_PATH = "$(HOME)/Applications";
-				LIBRARY_SEARCH_PATHS = "";
-				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				OTHER_CFLAGS = "";
-				OTHER_LDFLAGS = "";
 				PRODUCT_NAME = Emacs;
-				SECTORDER_FLAGS = "";
-				WARNING_CFLAGS = "";
 				WRAPPER_EXTENSION = app;
 			};
 			name = Default;
@@ -799,7 +672,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
+				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
 			};
 			name = Development;
 		};
@@ -807,7 +680,7 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
+				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
 			};
 			name = Deployment;
 		};
@@ -815,7 +688,82 @@
 			isa = XCBuildConfiguration;
 			buildSettings = {
 				MACOSX_DEPLOYMENT_TARGET = 10.3;
-				SDKROOT = /Developer/SDKs/MacOSX10.3.0.sdk;
+				SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk;
+			};
+			name = Default;
+		};
+		3CED87360FC0F576005ACB89 /* Development */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_PHASE_STRIP = NO;
+				GCC_DYNAMIC_NO_PIC = NO;
+				GCC_ENABLE_FIX_AND_CONTINUE = YES;
+				GCC_GENERATE_DEBUGGING_SYMBOLS = YES;
+				GCC_MODEL_TUNING = G5;
+				GCC_OPTIMIZATION_LEVEL = 0;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					emacs,
+					temacs,
+					HAVE_CONFIG_H,
+				);
+				OTHER_LDFLAGS = (
+					"-Xlinker",
+					"-headerpad",
+					"-Xlinker",
+					6C8,
+				);
+				PREBINDING = NO;
+				PRODUCT_NAME = temacs;
+				WARNING_CFLAGS = "-Wno-pointer-sign";
+				ZERO_LINK = YES;
+			};
+			name = Development;
+		};
+		3CED87370FC0F576005ACB89 /* Deployment */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				COPY_PHASE_STRIP = YES;
+				GCC_ENABLE_FIX_AND_CONTINUE = NO;
+				GCC_GENERATE_DEBUGGING_SYMBOLS = NO;
+				GCC_MODEL_TUNING = G5;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					emacs,
+					temacs,
+					HAVE_CONFIG_H,
+				);
+				OTHER_LDFLAGS = (
+					"-Xlinker",
+					"-headerpad",
+					"-Xlinker",
+					6C8,
+				);
+				PREBINDING = NO;
+				PRODUCT_NAME = temacs;
+				WARNING_CFLAGS = "-Wno-pointer-sign";
+				ZERO_LINK = NO;
+			};
+			name = Deployment;
+		};
+		3CED87380FC0F576005ACB89 /* Default */ = {
+			isa = XCBuildConfiguration;
+			buildSettings = {
+				GCC_ENABLE_FIX_AND_CONTINUE = YES;
+				GCC_MODEL_TUNING = G5;
+				GCC_PREPROCESSOR_DEFINITIONS = (
+					emacs,
+					temacs,
+					HAVE_CONFIG_H,
+				);
+				OTHER_LDFLAGS = (
+					"-Xlinker",
+					"-headerpad",
+					"-Xlinker",
+					6C8,
+				);
+				PREBINDING = NO;
+				PRODUCT_NAME = temacs;
+				WARNING_CFLAGS = "-Wno-pointer-sign";
+				ZERO_LINK = YES;
 			};
 			name = Default;
 		};
@@ -842,6 +790,16 @@
 			defaultConfigurationIsVisible = 0;
 			defaultConfigurationName = Default;
 		};
+		3CED87350FC0F576005ACB89 /* Build configuration list for PBXNativeTarget "temacs" */ = {
+			isa = XCConfigurationList;
+			buildConfigurations = (
+				3CED87360FC0F576005ACB89 /* Development */,
+				3CED87370FC0F576005ACB89 /* Deployment */,
+				3CED87380FC0F576005ACB89 /* Default */,
+			);
+			defaultConfigurationIsVisible = 0;
+			defaultConfigurationName = Default;
+		};
 /* End XCConfigurationList section */
 	};
 	rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
--- a/nextstep/INSTALL	Mon May 18 01:56:12 2009 +0000
+++ b/nextstep/INSTALL	Mon May 18 07:56:09 2009 +0000
@@ -23,15 +23,6 @@
 /usr/local).  The bundle will be smaller, but depend on these resources (may
 require 'sudo' for "make install").
 
-On OS X you can also open Cocoa/Emacs.xcodeproj and build it again there.  You
-may need to set some directories.  (Note, ZeroLink currently does not work
-with Emacs owing to the use of private_extern in the code as well as some
-other, unidentifiable problem.)  Before doing this you must run "make install"
-once as outlined above, to set up the lisp resources.
-
-On GNUstep, you CAN'T use ProjectCenter, since PC cannot work with files
-outside of its project directory.
-
 
 Installation
 ------------
@@ -39,6 +30,27 @@
 Move nextstep/Emacs.app to any desired install location.
 
 
+Xcode
+-----
+
+On OS X Emacs can be built under Xcode.  You need to run "configure"
+as described above first.  There are two targets: 'temacs' and 'Emacs.app'.
+
+'temacs' will build the undumped emacs executable, and copy it and the
+*.o files to the src directory.  These steps are necessary so the next target
+works.
+
+'Emacs.app' uses "Run Script" build phases to assemble the Emacs.app bundle.
+It uses the 'ns-app' target in src/Makefile together with the 'install' target
+in the top level Makefile.
+
+The source files under the temacs target must list "pre-crt0" first
+and "lastfile" last, so that dumping works.
+
+(Note, under GNUstep, you CAN'T use ProjectCenter, since PC cannot work
+with files outside of its project directory.)
+
+
 Distributions and Universal Binaries
 ------------------------------------
 
--- a/nextstep/README	Mon May 18 01:56:12 2009 +0000
+++ b/nextstep/README	Mon May 18 07:56:09 2009 +0000
@@ -8,7 +8,7 @@
 W32) using the GNUstep libraries, and on MacOS X systems using the
 Cocoa libraries.
 
-See the INSTALL file in this directory for compilaton instructions.
+See the INSTALL file in this directory for compilation instructions.
 
 Those primarily responsible for the port were, in chronological order:
 Michael Brouwer, Carl Edman, Christian Limpach, Scott Bender,