1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-31 17:30:54 -08:00
emacs/nextstep/Makefile.in
Paul Eggert dc152c54f4 Modernize usage of 'macOS' in doc and comments
Apple changed the spelling of its operating system again, to "macOS",
effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
documentation and comments to match this.  Stick with older OS
spellings ("OS X", "Mac OS X") when talking about older releases where
the older names are more correct.
2016-11-06 00:42:03 -07:00

107 lines
3.8 KiB
Makefile

### @configure_input@
## Copyright (C) 2012-2016 Free Software Foundation, Inc.
## 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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>.
### Commentary:
### Code:
SHELL = @SHELL@
srcdir = @srcdir@
abs_builddir = @abs_builddir@
abs_top_builddir = @abs_top_builddir@
EXEEXT = @EXEEXT@
# abs_top_srcdir may contain ".."
top_srcdir_abs = $(shell cd @top_srcdir@; pwd -P)
@SET_MAKE@
MKDIR_P = @MKDIR_P@
## Emacs.app.
ns_appdir = @ns_appdir@
## GNUstep: ns_appdir; macOS: ns_appdir/Contents/MacOS
ns_appbindir = @ns_appbindir@
## GNUstep/Emacs.base or Cocoa/Emacs.base.
ns_appsrc = @ns_appsrc@
## GNUstep: GNUstep/Emacs.base/Resources/Info-gnustep.plist
## macOS: Cocoa/Emacs.base/Contents/Info.plist
ns_check_file = @ns_appdir@/@ns_check_file@
.PHONY: all
all: ${ns_appdir} ${ns_appbindir}/Emacs
${ns_check_file} ${ns_appdir}: ${srcdir}/${ns_appsrc} ${ns_appsrc}
rm -rf ${ns_appdir}
${MKDIR_P} ${ns_appdir}
( cd ${srcdir}/${ns_appsrc} ; tar cfh - . ) | \
( cd ${ns_appdir} ; umask 022; tar xf - )
[ "`cd ${srcdir} && /bin/pwd`" = "`/bin/pwd`" ] || \
( cd ${ns_appsrc} ; tar cfh - . ) | \
( cd ${ns_appdir} ; umask 022; tar xf - )
touch ${ns_appdir}
## Don't create ns_appbindir via an order-only prerequisite, because
## on GNUstep ns_appbindir and ns_bindir are the same, so
## the rule for ns_appbindir would conflict with that for ns_appdir.
${ns_appbindir}/Emacs: ${ns_appdir} ${ns_check_file} ../src/emacs${EXEEXT}
${MKDIR_P} ${ns_appbindir}
cp -f ../src/emacs${EXEEXT} $@
.PHONY: FORCE
../src/emacs${EXEEXT}: FORCE
${MAKE} -C ../src $(notdir $@)
# create a fake installation pointing back to the source tree
# to run GUI Emacs in-place
.PHONY: links
links: ../src/emacs${EXEEXT}
for d in $(shell cd ${srcdir}/${ns_appsrc}; find . -type d); do ${MKDIR_P} ${ns_appdir}/$$d; done
for f in $(shell cd ${srcdir}/${ns_appsrc}; find . -type f); do ln -s $(shell cd ${srcdir}; pwd -P)/${ns_appsrc}/$$f ${ns_appdir}/$$f; done
for d in $(shell cd ${ns_appsrc}; find . -type d); do ${MKDIR_P} ${ns_appdir}/$$d; done
for f in $(shell cd ${ns_appsrc}; find . -type f); do ln -s $(shell cd ${ns_appsrc}; pwd -P)/$$f ${ns_appdir}/$$f; done
ln -s $(top_srcdir_abs)/lisp ${ns_appdir}/Contents/Resources
ln -s $(top_srcdir_abs)/info ${ns_appdir}/Contents/Resources
${MKDIR_P} ${ns_appbindir}
ln -s $(abs_top_builddir)/src/emacs${EXEEXT} ${ns_appbindir}/Emacs
ln -s $(abs_top_builddir)/lib-src ${ns_appbindir}/bin
ln -s $(abs_top_builddir)/lib-src ${ns_appbindir}/libexec
${MKDIR_P} ${ns_appdir}/Contents/Resources/etc
for f in $(shell cd $(top_srcdir_abs)/etc; ls); do ln -s $(top_srcdir_abs)/etc/$$f ${ns_appdir}/Contents/Resources/etc; done
ln -s $(abs_top_builddir)/etc/DOC ${ns_appdir}/Contents/Resources/etc
@echo if the next find prints something, the installation failed
find ${ns_appdir} -exec test \! -e {} \; -ls
.PHONY: clean distclean bootstrap-clean maintainer-clean
clean:
rm -rf ${ns_appdir}
distclean: clean
rm -f Makefile
rm -f GNUstep/Emacs.base/Resources/Info-gnustep.plist \
GNUstep/Emacs.base/Resources/Emacs.desktop \
Cocoa/Emacs.base/Contents/Info.plist \
Cocoa/Emacs.base/Contents/Resources/English.lproj/InfoPlist.strings
bootstrap-clean maintainer-clean: distclean
### Makefile.in ends here