unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* MacOS X Emacs
@ 2002-06-18 18:36 Andreas Schwab
  2002-06-18 19:11 ` Andrew Choi
  0 siblings, 1 reply; 3+ messages in thread
From: Andreas Schwab @ 2002-06-18 18:36 UTC (permalink / raw)
  Cc: emacs-devel

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  <schwab@suse.de>

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

--- Makefile.in.~1.255.~	2002-05-22 10:45:19.000000000 +0200
+++ Makefile.in	2002-06-18 20:19:20.000000000 +0200
@@ -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
+	${srcdir}/../mkinstalldirs ${emacsapp}Contents/MacOS
 	cd ${emacsapp}Contents/MacOS/; cp ../../../../src/emacs 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

-- 
Andreas Schwab, SuSE Labs, schwab@suse.de
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."

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: MacOS X Emacs
  2002-06-18 18:36 MacOS X Emacs Andreas Schwab
@ 2002-06-18 19:11 ` Andrew Choi
  2002-06-18 19:43   ` Andreas Schwab
  0 siblings, 1 reply; 3+ messages in thread
From: Andrew Choi @ 2002-06-18 19:11 UTC (permalink / raw)
  Cc: emacs-devel

> 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  <schwab@suse.de>
> 
> 	* 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.

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').

Andrew.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: MacOS X Emacs
  2002-06-18 19:11 ` Andrew Choi
@ 2002-06-18 19:43   ` Andreas Schwab
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Schwab @ 2002-06-18 19:43 UTC (permalink / raw)
  Cc: emacs-devel

Andrew Choi <akochoi@shaw.ca> 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  <schwab@suse.de>
|> > 
|> > 	* 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  <schwab@suse.de>

	* 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, schwab@suse.de
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."

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2002-06-18 19:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-06-18 18:36 MacOS X Emacs Andreas Schwab
2002-06-18 19:11 ` Andrew Choi
2002-06-18 19:43   ` Andreas Schwab

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).