mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-28 16:21:07 -08:00
Make has trouble with targets containing whitespace, http://savannah.gnu.org/bugs/?712, so the general approach is to use relative paths where possible. It's generally only Emacs itself that needs absolute paths, eg in src/epaths.h. * configure.ac (srcdir): Don't make it absolute - abs_srcdir exists. * Makefile.in (abs_srcdir): New, set by configure. (buildlisppath): Use abs_srcdir. (install-arch-indep, install-etcdoc, install-info, install-man) (install-etc): Quote entities that might contain whitespace. * admin/unidata/Makefile.in (emacs, ${DSTDIR}/charprop.el): Quote entities that might contain whitespace. * leim/Makefile.in (abs_srcdir): New, set by configure. (buildlisppath): Use abs_srcdir. (RUN_EMACS, .el.elc, changed.tit, changed.misc, leim-list.el) ($(srcdir)/ja-dic/ja-dic.el, setwins, distclean, check-declare): Quote entities that might contain whitespace. * lib-src/Makefile.in ($(DESTDIR)${archlibdir}): Quote entities that might contain whitespace. * lisp/Makefile.in (abs_srcdir, abs_lisp): New, set by configure. (emacs, compile, compile-always): Quote entities that might contain whitespace. (custom-deps, finder-data, autoloads): Use abs_lisp. ($(MH_E_DIR)/mh-loaddefs.el, $(TRAMP_DIR)/tramp-loaddefs.el) ($(CAL_DIR)/cal-loaddefs.el, $(CAL_DIR)/diary-loaddefs.el) ($(CAL_DIR)/hol-loaddefs.el): Manually expand target file name. * nextstep/Makefile.in (${ns_check_file} ${ns_appdir}): Quote entities that might contain whitespace. * nt/Makefile.in ($(DESTDIR)${archlibdir}): Quote entities that might contain whitespace. * src/Makefile.in (RUN_TEMACS): Make relative (again). ($(leimdir)/leim-list.el, .el.elc, $(lispsource)/loaddefs.el) (bootstrap-emacs$(EXEEXT)): Quote entities that might contain whitespace. * test/automated/Makefile.in (abs_top_srcdir, top_builddir): New, set by configure. (top_srcdir): Remove. (abs_test, abs_lispsrc): New. (lisp): No longer absolute. (emacs, lisp-compile, compile, compile-always): Quote entities that might contain whitespace. Fixes: debbugs:15675
69 lines
1.9 KiB
Makefile
69 lines
1.9 KiB
Makefile
### @configure_input@
|
|
|
|
## Copyright (C) 2012-2013 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@
|
|
EXEEXT = @EXEEXT@
|
|
|
|
@SET_MAKE@
|
|
MKDIR_P = @MKDIR_P@
|
|
|
|
ns_appdir = @ns_appdir@
|
|
ns_appbindir = @ns_appbindir@
|
|
ns_appsrc = @ns_appsrc@
|
|
ns_check_file = @ns_appdir@/@ns_check_file@
|
|
|
|
${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}
|
|
|
|
${ns_appbindir}/Emacs: ${ns_appdir} ${ns_check_file} ../src/emacs${EXEEXT}
|
|
${MKDIR_P} ${ns_appbindir}
|
|
cp -f ../src/emacs${EXEEXT} ${ns_appbindir}/Emacs
|
|
|
|
.PHONY: all
|
|
|
|
all: ${ns_appdir} ${ns_appbindir}/Emacs
|
|
|
|
|
|
.PHONY: clean distclean 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
|
|
|
|
maintainer-clean: distclean
|
|
|
|
### Makefile.in ends here
|