* Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
authorSteven Tamm <steventamm@mac.com>
Sat, 28 Dec 2002 18:35:52 +0000 (18:35 +0000)
committerSteven Tamm <steventamm@mac.com>
Sat, 28 Dec 2002 18:35:52 +0000 (18:35 +0000)
allow building in a different directory than source.  Uses some
GNU Make extensions, but there is no other make on Mac OS X.

src/ChangeLog
src/Makefile.in

index 39442d9..9467e21 100644 (file)
@@ -1,3 +1,9 @@
+2002-12-28  Steven Tamm  <steventamm@mac.com>
+
+       * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to 
+       allow building in a different directory than source.  Uses some 
+       GNU Make extensions, but there is no other make on Mac OS X.
+
 2002-12-26  Francesco Potort\e,Al\e(B  <pot@gnu.org>
 
        * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
index 1a8cf77..8d8e700 100644 (file)
@@ -540,9 +540,11 @@ MSDOS_OBJ = dosfns.o msdos.o w16select.o
 #endif
 
 #ifdef HAVE_CARBON
+mac = $(dot)$(dot)/mac/
 XMENU_OBJ =
 MAC_OBJ = mac.o macterm.o macfns.o macmenu.o fontset.o
-emacsapp = ../mac/Emacs.app/
+emacsapp = $(PWD)/$(mac)Emacs.app/
+emacsappsrc = ${srcdir}/../mac/Emacs.app/
 #else
 XMENU_OBJ = xmenu.o
 #endif
@@ -1208,20 +1210,34 @@ macterm.o: blockinput.h atimer.h systime.h syssignal.h macterm.h macgui.h \
   termchar.h gnu.h disptab.h buffer.h window.h keyboard.h $(INTERVAL_SRC) \
   process.h coding.h $(config_h)
 
-macosx-app: ${emacsapp}Contents/MacOS/Emacs \
+${emacsapp}Contents/Resources/English.lproj:
+       mkdir -p $@
+
+ifneq (${emacsapp},${emacsappsrc})
+${emacsapp}Contents/Info.plist: ${emacsappsrc}Contents/Info.plist
+       cp $< $@
+${emacsapp}Contents/PkgInfo: ${emacsappsrc}Contents/PkgInfo
+       cp $< $@
+${emacsapp}Contents/Resources/Emacs.icns: ${emacsappsrc}Contents/Resources/Emacs.icns
+       mkdir -p ${emacsapp}Contents/Resources
+       cp $< $@
+${emacsapp}Contents/Resources/English.lproj/InfoPlist.strings: ${emacsappsrc}Contents/Resources/English.lproj/InfoPlist.strings
+       cp $< $@
+endif
+
+macosx-bundle: ${emacsapp}Contents/Resources/English.lproj \
+       ${emacsapp}Contents/Info.plist ${emacsapp}Contents/PkgInfo\
+       ${emacsapp}Contents/Resources/Emacs.icns \
+       ${emacsapp}Contents/Resources/English.lproj/InfoPlist.strings
+macosx-app: macosx-bundle ${emacsapp}Contents/MacOS/Emacs \
   ${emacsapp}Contents/Resources/Emacs.rsrc
-
 ${emacsapp}Contents/MacOS/Emacs: emacs
-       if [ -d ${emacsapp}Contents/MacOS/ ]; then true; else \
-         mkdir ${emacsapp}Contents/MacOS/; \
-       fi
+       mkdir -p ${emacsapp}Contents/MacOS/;
        cd ${emacsapp}Contents/MacOS/; cp ../../../../src/emacs Emacs
-
 ${emacsapp}Contents/Resources/Emacs.rsrc: ../mac/src/Emacs.r
-       /Developer/Tools/Rez -useDF -o \
-       ${emacsapp}Contents/Resources/Emacs.rsrc \
-       /System/Library/Frameworks/Carbon.framework/Headers/Carbon.r \
-       ../mac/src/Emacs.r
+       /Developer/Tools/Rez -useDF \
+       -o ${emacsapp}Contents/Resources/Emacs.rsrc \
+       /System/Library/Frameworks/Carbon.framework/Headers/Carbon.r $<
 #endif
 
 ${libsrc}emacstool: ${libsrc}emacstool.c