X-Git-Url: https://git.hcoop.net/bpt/emacs.git/blobdiff_plain/d772827cafca73302741747867f1c9ce514fe509..9695908dfa075b863b4a02cfd119690bc2aa7476:/Makefile.in diff --git a/Makefile.in b/Makefile.in index d80bd1c193..81a7404a9c 100644 --- a/Makefile.in +++ b/Makefile.in @@ -3,7 +3,7 @@ # DIST: that first. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -# 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +# 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 # Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -73,7 +73,6 @@ CFLAGS=@CFLAGS@ LDFLAGS=@LDFLAGS@ CPPFLAGS=@CPPFLAGS@ EXEEXT=@EXEEXT@ -MAKEINFO=@MAKEINFO@ ### These help us choose version- and architecture-specific directories ### to install files in. @@ -125,7 +124,7 @@ libexecdir=@libexecdir@ # (and they contain cross-references that expect them to be there). mandir=@mandir@ man1dir=$(mandir)/man1 -MAN_PAGES=b2m.1 ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \ +MAN_PAGES=ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \ grep-changelog.1 rcs-checkin.1 # Where to install and expect the info files describing Emacs. In the @@ -135,11 +134,14 @@ MAN_PAGES=b2m.1 ctags.1 ebrowse.1 emacs.1 emacsclient.1 etags.1 \ infodir=@infodir@ INFO_FILES=ada-mode auth autotype calc ccmode cl dbus dired-x ebrowse \ ede ediff edt eieio efaq eintr elisp emacs emacs-mime epa erc \ - eshell eudc flymake forms gnus idlwave info mairix-el \ + ert eshell eudc flymake forms gnus idlwave info mairix-el \ message mh-e newsticker nxml-mode org pcl-cvs pgg rcirc \ reftex remember sasl sc semantic ses sieve smtpmail speedbar \ tramp url vip viper widget woman +# If no makeinfo was found and configured --without-makeinfo, "no"; else "yes". +HAVE_MAKEINFO=@HAVE_MAKEINFO@ + # Directory for local state files for all programs. localstatedir=@localstatedir@ @@ -243,6 +245,8 @@ INSTALL_STRIP = # We use gzip to compress installed .el files. GZIP_PROG = @GZIP_PROG@ +# If non-nil, gzip the installed Info and man pages. +GZIP_INFO = @GZIP_INFO@ # ============================= Targets ============================== @@ -260,10 +264,10 @@ EMACSFULL = `echo emacs-${version}${EXEEXT} | sed '$(TRANSFORM)'` # Actually, we now include `lisp' as well, since the compiled files # are not included any more in case of bootstrap or in case Emacs was # checked out from a VCS. -SUBDIR = lib-src src lisp +SUBDIR = lib lib-src src lisp # The subdir makefiles created by config.status. -SUBDIR_MAKEFILES = lib-src/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispref/Makefile doc/lispintro/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile leim/Makefile lisp/Makefile +SUBDIR_MAKEFILES = lib/Makefile lib-src/Makefile doc/emacs/Makefile doc/misc/Makefile doc/lispref/Makefile doc/lispintro/Makefile src/Makefile oldXMenu/Makefile lwlib/Makefile leim/Makefile lisp/Makefile test/automated/Makefile # Subdirectories to install, and where they'll go. # lib-src's makefile knows how to install it, so we don't do that here. @@ -296,8 +300,7 @@ epaths-force: FRC -e 's;\(#.*PATH_BITMAPS\).*$$;\1 "${bitmapdir}";' \ -e 's;\(#.*PATH_X_DEFAULTS\).*$$;\1 "${x_default_search_path}";' \ -e 's;\(#.*PATH_GAME\).*$$;\1 "${gamedir}";' \ - -e 's;\(#.*PATH_DOC\).*$$;\1 "${docdir}";' \ - -e 's;/[*] *arch-tag:.*;/*;') && \ + -e 's;\(#.*PATH_DOC\).*$$;\1 "${docdir}";') && \ ${srcdir}/move-if-change epaths.h.$$$$ src/epaths.h # For parallel make, src should be built before leim. @@ -309,6 +312,8 @@ leim: src Makefile FRC CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \ LDFLAGS='${LDFLAGS}' MAKE='${MAKE}') +lib-src src: lib + src: lib-src FRC .RECURSIVE: ${SUBDIR} leim @@ -316,8 +321,33 @@ src: lib-src FRC # We need to build `emacs' in `src' to compile the *.elc files in `lisp'. lisp: src +# Maintainers can put a copy of gnulib into $(gnulib_srcdir). +gnulib_srcdir = ../gnulib +$(gnulib_srcdir): + git clone git://git.savannah.gnu.org/gnulib.git $@ + +# Update modules from gnulib, for maintainers, who should have it in +# $(gnulib_srcdir) (relative to $(srcdir) and should have build tools +# as per $(gnulib_srcdir)/DEPENDENCIES. +GNULIB_MODULES = dtoastr getopt-gnu mktime +GNULIB_TOOL_FLAGS = \ + --import --no-changelog --no-vc-files --makefile-name=gnulib.mk +sync-from-gnulib: $(gnulib_srcdir) + cd $(srcdir) && \ + $(gnulib_srcdir)/gnulib-tool $(GNULIB_TOOL_FLAGS) $(GNULIB_MODULES) + cp $(gnulib_srcdir)/build-aux/texinfo.tex $(srcdir)/doc/misc + cp \ + $(gnulib_srcdir)/build-aux/config.sub \ + $(gnulib_srcdir)/build-aux/config.guess \ + $(gnulib_srcdir)/build-aux/install-sh \ + $(gnulib_srcdir)/build-aux/mkinstalldirs \ + $(gnulib_srcdir)/build-aux/move-if-change \ + $(srcdir) + cd $(srcdir) && autoreconf -I m4 +.PHONY: sync-from-gnulib + # These targets should be "${SUBDIR} without `src'". -lib-src lisp: Makefile FRC +lib lib-src lisp: Makefile FRC cd $@; $(MAKE) all $(MFLAGS) \ CC='${CC}' CFLAGS='${CFLAGS}' CPPFLAGS='${CPPFLAGS}' \ LDFLAGS='${LDFLAGS}' MAKE='${MAKE}' @@ -356,6 +386,7 @@ blessmail: Makefile src FRC Makefile: config.status $(srcdir)/src/config.in \ $(srcdir)/Makefile.in \ $(srcdir)/src/Makefile.in \ + $(srcdir)/lib/Makefile.in \ $(srcdir)/lib-src/Makefile.in \ $(srcdir)/doc/emacs/Makefile.in \ $(srcdir)/doc/misc/Makefile.in \ @@ -364,17 +395,28 @@ Makefile: config.status $(srcdir)/src/config.in \ $(srcdir)/oldXMenu/Makefile.in \ $(srcdir)/lwlib/Makefile.in \ $(srcdir)/leim/Makefile.in \ - $(srcdir)/lisp/Makefile.in + $(srcdir)/lisp/Makefile.in \ + $(srcdir)/test/automated/Makefile.in ./config.status config.status: ${srcdir}/configure ${srcdir}/lisp/version.el ./config.status --recheck -AUTOCONF_INPUTS = @MAINT@ $(srcdir)/configure.in $(srcdir)/m4/getopt.m4 +AUTOCONF_INPUTS = @MAINT@ $(srcdir)/configure.in $(srcdir)/aclocal.m4 $(srcdir)/configure: $(AUTOCONF_INPUTS) cd ${srcdir} && autoconf +ACLOCAL_INPUTS = @MAINT@ $(srcdir)/m4/gnulib-comp.m4 +$(srcdir)/aclocal.m4: $(ACLOCAL_INPUTS) + cd $(srcdir) && aclocal -I m4 + +AUTOMAKE_INPUTS = @MAINT@ $(srcdir)/aclocal.m4 $(srcdir)/lib/Makefile.am +$(srcdir)/lib/Makefile.in: $(AUTOMAKE_INPUTS) + cd $(srcdir) && automake --gnu -a -c lib/Makefile +am--refresh: +.PHONY: am--refresh + $(srcdir)/src/config.in: $(srcdir)/src/stamp-h.in @ # Usually, there's no need to rebuild src/config.in just @ # because stamp-h.in has changed (since building stamp-h.in @@ -422,12 +464,6 @@ install-arch-dep: mkdir -chmod 1755 $(DESTDIR)${bindir}/$(EMACSFULL) rm -f $(DESTDIR)${bindir}/$(EMACS) -ln $(DESTDIR)${bindir}/$(EMACSFULL) $(DESTDIR)${bindir}/$(EMACS) - -unset CDPATH; \ - for f in `cd lib-src && echo fns-*.el`; do \ - if test -r lib-src/$$f ; then \ - ${INSTALL_DATA} lib-src/$$f $(DESTDIR)${archlibdir}/$$f; \ - else true; fi ; \ - done if test "${ns_appresdir}" != ""; then \ ( cd ${ns_appresdir} ; \ if test -d share/emacs ; then dir=share/emacs/*/*; $(MV_DIRS); fi;\ @@ -576,12 +612,14 @@ install-arch-indep: mkdir info install-etc fi; \ cd ${srcdir}/info ; \ for elt in $(INFO_FILES); do \ - test "$(MAKEINFO)" = "off" && ! test -e $$elt && continue; \ + test "$(HAVE_MAKEINFO)" = "no" && ! test -e $$elt && continue; \ for f in `ls $$elt $$elt-[1-9] $$elt-[1-9][0-9] 2>/dev/null`; do \ ${INSTALL_DATA} $$f $(DESTDIR)${infodir}/$$f; \ chmod a+r $(DESTDIR)${infodir}/$$f; \ - [ -n "${GZIP_PROG}" ] && \ + if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ + rm -f $(DESTDIR)${infodir}/$$f.gz; \ ${GZIP_PROG} -9n $(DESTDIR)${infodir}/$$f; \ + else true; fi; \ done; \ done); \ else true; fi @@ -590,7 +628,7 @@ install-arch-indep: mkdir info install-etc if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd $(DESTDIR)${infodir} && /bin/pwd)` ]; \ then \ for elt in $(INFO_FILES); do \ - test "$(MAKEINFO)" = "off" && ! test -e $$elt && continue; \ + test "$(HAVE_MAKEINFO)" = "no" && ! test -e $$elt && continue; \ (cd $${thisdir}; \ ${INSTALL_INFO} --info-dir=$(DESTDIR)${infodir} $(DESTDIR)${infodir}/$$elt); \ done; \ @@ -601,7 +639,11 @@ install-arch-indep: mkdir info install-etc for page in ${MAN_PAGES}; do \ (cd $${thisdir}; \ ${INSTALL_DATA} ${mansrcdir}/$${page} $(DESTDIR)${man1dir}/$${page}; \ - chmod a+r $(DESTDIR)${man1dir}/$${page}); \ + chmod a+r $(DESTDIR)${man1dir}/$${page}; \ + if [ -n "${GZIP_INFO}" ] && [ -n "${GZIP_PROG}" ]; then \ + rm -f $(DESTDIR)${man1dir}/$${page}.gz; \ + ${GZIP_PROG} -9n $(DESTDIR)${man1dir}/$${page}; \ + else true; fi ); \ done ## Install those items from etc/ that need to end up elsewhere. @@ -674,9 +716,6 @@ uninstall: esac ; \ fi ; \ done - if [ -d $(DESTDIR)${archlibdir} ]; then \ - (cd $(DESTDIR)${archlibdir} && rm -f fns-*) \ - fi -rm -rf $(DESTDIR)${libexecdir}/emacs/${version} (cd $(DESTDIR)${infodir} && \ for elt in $(INFO_FILES); do \ @@ -709,6 +748,7 @@ mostlyclean: FRC (cd src; $(MAKE) $(MFLAGS) mostlyclean) (cd oldXMenu; $(MAKE) $(MFLAGS) mostlyclean) (cd lwlib; $(MAKE) $(MFLAGS) mostlyclean) + (cd lib; $(MAKE) $(MFLAGS) mostlyclean) (cd lib-src; $(MAKE) $(MFLAGS) mostlyclean) -(cd doc/emacs && $(MAKE) $(MFLAGS) mostlyclean) -(cd doc/misc && $(MAKE) $(MFLAGS) mostlyclean) @@ -728,6 +768,7 @@ clean: FRC (cd src; $(MAKE) $(MFLAGS) clean) (cd oldXMenu; $(MAKE) $(MFLAGS) clean) (cd lwlib; $(MAKE) $(MFLAGS) clean) + (cd lib; $(MAKE) $(MFLAGS) clean) (cd lib-src; $(MAKE) $(MFLAGS) clean) -(cd doc/emacs && $(MAKE) $(MFLAGS) clean) -(cd doc/misc && $(MAKE) $(MFLAGS) clean) @@ -747,11 +788,12 @@ top_bootclean=\ ### distribution. top_distclean=\ ${top_bootclean}; \ - rm -f config.status Makefile ${SUBDIR_MAKEFILES} + rm -f config.status Makefile stamp-h1 ${SUBDIR_MAKEFILES} distclean: FRC (cd src; $(MAKE) $(MFLAGS) distclean) (cd oldXMenu; $(MAKE) $(MFLAGS) distclean) (cd lwlib; $(MAKE) $(MFLAGS) distclean) + (cd lib; $(MAKE) $(MFLAGS) distclean) (cd lib-src; $(MAKE) $(MFLAGS) distclean) (cd doc/emacs && $(MAKE) $(MFLAGS) distclean) (cd doc/misc && $(MAKE) $(MFLAGS) distclean) @@ -768,6 +810,7 @@ bootstrap-clean: FRC (cd src; $(MAKE) $(MFLAGS) bootstrap-clean) (cd oldXMenu; $(MAKE) $(MFLAGS) maintainer-clean) (cd lwlib; $(MAKE) $(MFLAGS) maintainer-clean) + (cd lib; $(MAKE) $(MFLAGS) maintainer-clean) (cd lib-src; $(MAKE) $(MFLAGS) maintainer-clean) -(cd doc/emacs && $(MAKE) $(MFLAGS) maintainer-clean) -(cd doc/misc && $(MAKE) $(MFLAGS) maintainer-clean) @@ -788,10 +831,14 @@ bootstrap-clean: FRC ### Makefile. More generally, `make maintainer-clean' should not delete ### anything that needs to exist in order to run `configure' and then ### begin to build the program. +top_maintainer_clean=\ + ${top_distclean}; \ + rm -fr autom4te.cache; \ + rm -f aclocal.m4 maintainer-clean: bootstrap-clean FRC (cd src; $(MAKE) $(MFLAGS) maintainer-clean) (cd lisp; $(MAKE) $(MFLAGS) maintainer-clean) - ${top_distclean} + ${top_maintainer_clean} ### This doesn't actually appear in the coding standards, but Karl ### says GCC supports it, and that's where the configuration part of @@ -799,17 +846,17 @@ maintainer-clean: bootstrap-clean FRC ### it deletes backup and autosave files too. extraclean: for i in ${SUBDIR} leim; do (cd $$i; $(MAKE) $(MFLAGS) extraclean); done - ${top_distclean} + ${top_maintainer_clean} -rm -f config-tmp-* -rm -f *~ \#* # The src subdir knows how to do the right thing # even when the build directory and source dir are different. -TAGS tags: lib-src src +TAGS tags: lib lib-src src cd src; $(MAKE) tags check: - @echo "We don't have any tests for GNU Emacs yet." + cd test/automated; $(MAKE) check dist: cd ${srcdir}; ./make-dist @@ -835,7 +882,7 @@ force-info: # and it's not worth it. This case is only relevant if you download a # release, then change the .texi files. info: force-info - @if test "$(MAKEINFO)" = "off"; then \ + @if test "$(HAVE_MAKEINFO)" = "no"; then \ echo "Configured --without-makeinfo, not building manuals" ; \ else \ $(MAKE) $(MFLAGS) info-real ; \