blob: 3449d180d2e01d02161dbaa51b393492acc76797 [file] [log] [blame]
## automake - create Makefile.in from Makefile.am
## Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
## 2007, 2008, 2009 Free Software Foundation, Inc.
## This program 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 2, or (at your option)
## any later version.
## This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
if %?INSTALL%
include inst-vars.am
endif %?INSTALL%
## ---------- ##
## Building. ##
## ---------- ##
elc-stamp: $(LISP)
@echo 'WARNING: Warnings can be ignored. :-)'
@rm -f elc-temp && touch elc-temp
if test "$(EMACS)" != no; then \
## Make sure "$@" isn't empty initially.
set x; \
## Populate "$@" with elisp files (found in the current directory
## or in $srcdir).
list='$(LISP)'; for p in $$list; do \
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
set x "$$@" "$$d$$p"; shift; \
done; \
## Finally call elisp-comp for all files.
shift; \
EMACS="$(EMACS)" $(SHELL) $(elisp_comp) "$$@" || exit 1; \
else : ; fi
@mv -f elc-temp $@
## Do not use $(ELCFILES) as target, because it may have been emptied
## by the user (to disable byte-compilation), and POSIX does not allow
## an empty target.
$(am__ELCFILES): elc-stamp
## Recover from the removal of $@.
##
## Do not call `make elc-stamp' if emacs is not available, because it would
## be useless.
@if test "$(EMACS)" != no && test ! -f $@; then \
## If `make -j' is used and more than one file has been erased, several
## processes can execute this block. We have to make sure that only
## the first one will run `$(MAKE) $(AM_MAKEFLAGS) elc-stamp', and the
## other ones will wait.
##
## There is a race here if only one child of make receive a signal.
## In that case the build may fail. We remove elc-stamp when we receive
## a signal so we are sure the build will succeed the next time.
trap 'rm -rf elc-lock elc-stamp' 1 2 13 15; \
if mkdir elc-lock 2>/dev/null; then \
## This code is being executed by the first process.
rm -f elc-stamp; \
$(MAKE) $(AM_MAKEFLAGS) elc-stamp; \
rmdir elc-lock; \
else \
## This code is being executed by the follower processes.
## Wait until the first process is done.
while test -d elc-lock; do sleep 1; done; \
## Succeed if and only if the first process succeeded.
test -f elc-stamp; exit $$?; \
fi; \
else : ; fi
## ------------ ##
## Installing. ##
## ------------ ##
if %?INSTALL%
am__installdirs += "$(DESTDIR)$(%NDIR%dir)"
%DIR%LISP_INSTALL = %BASE?$(INSTALL_DATA):$(install_sh_DATA)%
.PHONY install-%EXEC?exec:data%-am: install-%DIR%LISP
install-%DIR%LISP: $(%DIR%_LISP) $(ELCFILES)
@$(NORMAL_INSTALL)
## Do not install anything if EMACS was not found.
@if test "$(EMACS)" != no && test -n "$(%NDIR%dir)"; then \
$(MKDIR_P) "$(DESTDIR)$(%NDIR%dir)"; \
?!BASE? $(am__vpath_adj_setup) \
## Funny invocation because Makefile variable can be empty, leading to
## a syntax error in sh.
list='$(%DIR%_LISP)'; for p in $$list; do \
## A lisp file can be in the source directory or the build directory.
if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
%BASE?$(am__strip_dir):$(am__vpath_adj)% \
echo " $(%DIR%LISP_INSTALL) '$$d$$p' '$(DESTDIR)$(%NDIR%dir)/$$f'"; \
$(%DIR%LISP_INSTALL) "$$d$$p" "$(DESTDIR)$(%NDIR%dir)/$$f" || exit $$?; \
## Only install .elc file if it exists.
if test -f $${p}c; then \
echo " $(%DIR%LISP_INSTALL) '$${p}c' '$(DESTDIR)$(%NDIR%dir)/$${f}c'"; \
$(%DIR%LISP_INSTALL) "$${p}c" "$(DESTDIR)$(%NDIR%dir)/$${f}c" || exit $$?; \
else : ; fi; \
done; \
else : ; fi
endif %?INSTALL%
## -------------- ##
## Uninstalling. ##
## -------------- ##
if %?INSTALL%
.PHONY uninstall-am: uninstall-%DIR%LISP
uninstall-%DIR%LISP:
@$(NORMAL_UNINSTALL)
## Do not uninstall anything if EMACS was not found.
@test "$(EMACS)" != no && test -n "$(%NDIR%dir)" || exit 0; \
list='$(%DIR%_LISP)'; \
?BASE? files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
?!BASE? $(am__nobase_strip_setup); files=`$(am__nobase_strip)`; \
test -n "$$files" || exit 0; \
filesc=`echo "$$files" | sed 's|$$|c|'`; \
echo " ( cd '$(DESTDIR)$(%NDIR%dir)' && rm -f" $$files ")"; \
cd "$(DESTDIR)$(%NDIR%dir)" && rm -f $$files || exit $$?; \
echo " ( cd '$(DESTDIR)$(%NDIR%dir)' && rm -f" $$filesc ")"; \
cd "$(DESTDIR)$(%NDIR%dir)" && rm -f $$filesc
endif %?INSTALL%
## ---------- ##
## Cleaning. ##
## ---------- ##
.PHONY clean-am: clean-lisp
clean-lisp:
-rm -f elc-stamp $(ELCFILES)
## -------------- ##
## Distributing. ##
## -------------- ##
if %?DIST%
DIST_COMMON += %DISTVAR%
endif %?DIST%