emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MacOS X Emacs


From: Andreas Schwab
Subject: Re: MacOS X Emacs
Date: Tue, 18 Jun 2002 21:43:15 +0200
User-agent: Gnus/5.090006 (Oort Gnus v0.06) Emacs/21.3.50 (ia64-suse-linux)

Andrew Choi <address@hidden> writes:

|> > I just tried to build Emacs under Darwin with $srcdir != $builddir
|> > and had some problems with ${emacsapp}.  Is the following patch
|> > correct?  Then I tried to run the emacs in the build directory, but
|> > I got an abort in macterm, because GetNewCWindow returned 0.  Any
|> > idea?  (emacs -nw works fine.)
|> > 
|> > Andreas.
|> > 
|> > 2002-06-18  Andreas Schwab  <address@hidden>
|> > 
|> >    * Makefile.in (${emacsapp}Contents/MacOS/Emacs): Support building
|> >    outside source directory.
|> >    (${emacsapp}Contents/Resources/Emacs.rsrc): Likewise.
|> >
|> > [...]
|> 
|> Hi Andreas,
|> 
|> The entire directory under `mac/Emacs.app/' must remain intact for
|> Emacs to run in GUI mode under Mac OS X.  Otherwise Emacs won't be
|> able to find the resources it requires to run.  That's probably what
|> happened.

So what is the right way to handle these rules?  Should emacsapp be
changed to point to ${srcdir}../mac/Emacs.app?  If yes I'll check in this
patch:

2002-06-18  Andreas Schwab  <address@hidden>

        * Makefile.in (emacsapp): Prepend ${srcdir}.
        (${emacsapp}Contents/MacOS/Emacs): Support building outside source
        directory.
        (${emacsapp}Contents/Resources/Emacs.rsrc): Likewise.

--- src/Makefile.in.~1.255.~    2002-05-22 10:45:19.000000000 +0200
+++ src/Makefile.in     2002-06-18 21:30:14.000000000 +0200
@@ -540,7 +540,7 @@ MSDOS_OBJ = dosfns.o msdos.o w16select.o
 #ifdef HAVE_CARBON
 XMENU_OBJ =
 MAC_OBJ = mac.o macterm.o macfns.o macmenu.o fontset.o
-emacsapp = ../mac/Emacs.app/
+emacsapp = ${srcdir}/../mac/Emacs.app/
 #else
 XMENU_OBJ = xmenu.o
 #endif
@@ -1203,16 +1203,15 @@ macosx-app: ${emacsapp}Contents/MacOS/Em
   ${emacsapp}Contents/Resources/Emacs.rsrc
 
 ${emacsapp}Contents/MacOS/Emacs: emacs
-       if [ -d ${emacsapp}Contents/MacOS/ ]; then true; else \
-         mkdir ${emacsapp}Contents/MacOS/; \
-       fi
-       cd ${emacsapp}Contents/MacOS/; cp ../../../../src/emacs Emacs
+       ${srcdir}/../mkinstalldirs ${emacsapp}Contents/MacOS
+       cp emacs ${emacsapp}Contents/MacOS/Emacs
 
-${emacsapp}Contents/Resources/Emacs.rsrc: ../mac/src/Emacs.r
+${emacsapp}Contents/Resources/Emacs.rsrc: ${srcdir}/../mac/src/Emacs.r
+       ${srcdir}/../mkinstalldirs ${emacsapp}Contents/Resources
        /Developer/Tools/Rez -useDF -o \
        ${emacsapp}Contents/Resources/Emacs.rsrc \
        /System/Library/Frameworks/Carbon.framework/Headers/Carbon.r \
-       ../mac/src/Emacs.r
+       ${srcdir}/../mac/src/Emacs.r
 #endif
 
 ${libsrc}emacstool: ${libsrc}emacstool.c

|> Also, currently it can only be started from the Finder (see
|> mac/INSTALL).  You can copy Emacs.app to another location (which shows
|> up simply as the application `Emacs' in the Finder), but you must copy
|> the whole thing (use drag-and-drop in the Finder or `cp -r').

Thanks, that works.  But Emacs should not simply abort just because
GetNewCWindow failed.  Instead it should print an error message and exit,
since that is not an internal error.

Andreas.

-- 
Andreas Schwab, SuSE Labs, address@hidden
SuSE Linux AG, Deutschherrnstr. 15-19, D-90429 Nürnberg
Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
"And now for something completely different."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]