(unidata.txt): Don't use $<, it's non-portable in this context.
[bpt/emacs.git] / Makefile.in
index d77de33..8adddf4 100644 (file)
@@ -3,7 +3,8 @@
 # DIST: that first.
 
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
-#   2001, 2002, 2003, 2004, 2005, 2006, 2007  Free Software Foundation, Inc.
+#   2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+#   Free Software Foundation, Inc.
 
 # This file is part of GNU Emacs.
 
@@ -138,11 +139,11 @@ man1dir=$(mandir)/man1
 # since there are now many packages documented with the texinfo
 # system, it is inappropriate to imply that it is part of Emacs.
 infodir=@infodir@
-INFO_FILES=ada-mode autotype calc ccmode cl dired-x ebrowse ediff efaq \
-           eintr elisp emacs emacs-mime erc eshell eudc flymake forms  \
-           gnus idlwave info message mh-e newsticker org pcl-cvs pgg   \
-           rcirc reftex remember sc ses sieve speedbar tramp vip viper \
-           widget woman smtpmail url
+INFO_FILES=ada-mode autotype calc ccmode cl dbus dired-x ebrowse ediff \
+           efaq eintr elisp emacs emacs-mime epa erc eshell eudc       \
+           flymake forms gnus idlwave info message mh-e newsticker     \
+           nxml-mode org pcl-cvs pgg rcirc reftex remember sc ses sieve        \
+           speedbar tramp vip viper widget woman smtpmail url
 
 # Directory for local state files for all programs.
 localstatedir=@localstatedir@
@@ -170,6 +171,12 @@ x_default_search_path=@x_default_search_path@
 # Location to install Emacs.app on Mac OS X
 carbon_appdir=@carbon_appdir@
 
+# Where the etc/emacs.desktop file is to be installed.
+desktopdir=$(datarootdir)/applications
+
+# Where the etc/images/icons/hicolor directory is to be installed.
+icondir=$(datarootdir)/icons
+
 # ==================== Emacs-specific directories ====================
 
 # These variables hold the values Emacs will actually use.  They are
@@ -424,12 +431,12 @@ install-arch-dep: mkdir
 ## Note that the Makefiles in the etc directory are potentially useful
 ## in an installed Emacs, so should not be excluded.
 
-## installuser: 
+## installuser:
 ## http://lists.gnu.org/archive/html/emacs-devel/2007-10/msg01672.html
 ## Nuisance because i) it needs to be the user running install, so
 ## configure can't set it; ii) can't (?) use the result of rule
 ## commands to set make variables.
-install-arch-indep: mkdir info
+install-arch-indep: mkdir info install-etc
        -set ${COPYDESTS} ; \
        unset CDPATH; \
        for dir in ${COPYDIR} ; do \
@@ -571,6 +578,17 @@ install-arch-indep: mkdir info
           chmod a+r $(DESTDIR)${man1dir}/$${page}${manext}); \
        done
 
+## Install those items from etc/ that need to end up elsewhere.
+install-etc: mkdir
+       ${INSTALL_DATA} ${srcdir}/etc/emacs.desktop \
+         $(DESTDIR)${desktopdir}/emacs.desktop
+       for icon in $(srcdir)/etc/images/icons/*/*x*/apps/*.*; do \
+         if [ -r $${icon} ]; then \
+           iicon=`echo "$${icon}" | sed 's,$(srcdir)/etc/images/icons,$(DESTDIR)${icondir},'` ; \
+           ${INSTALL_DATA} $${icon} $${iicon} ; \
+         fi ; \
+       done
+
 ### Install LEIM files.  Although they are machine-independent, we
 ### have separate target here instead of including it in
 ### `install-arch-indep'.  People who extracted LEIM files after they
@@ -591,11 +609,19 @@ mkdir: FRC
          $(srcdir)/mkinstalldirs $(DESTDIR)${datadir}; \
          chmod a+r $(DESTDIR)${datadir};\
        fi
+       icondirs= ; \
+       for dir in $(srcdir)/etc/images/icons/*/*x*/apps; do \
+         if [ -d $${dir} ]; then \
+           icondirs="$${icondirs} $${dir}" ; \
+         fi ; \
+       done ; \
+       icondirs=`echo "$${icondirs}" | sed 's,$(srcdir)/etc/images/icons,$(DESTDIR)${icondir},g'` ; \
        $(srcdir)/mkinstalldirs ${COPYDESTS} $(DESTDIR)${infodir} $(DESTDIR)${man1dir} \
          $(DESTDIR)${bindir} $(DESTDIR)${docdir} $(DESTDIR)${libexecdir} \
          $(DESTDIR)${datadir}/emacs/site-lisp \
          $(DESTDIR)${datadir}/emacs/${version}/site-lisp \
-         $(DESTDIR)`echo ${locallisppath} | sed 's,:, $(DESTDIR),g'`
+         $(DESTDIR)`echo ${locallisppath} | sed 's,:, $(DESTDIR),g'` \
+         $(DESTDIR)${desktopdir} $${icondirs}
 
 ### Delete all the installed files that the `install' target would
 ### create (but not the noninstalled files such as `make all' would
@@ -753,6 +779,24 @@ info: force-info
        -(cd doc/misc; $(MAKE) $(MFLAGS) info)
        -(cd doc/lispref; $(MAKE) $(MFLAGS) info)
        -(cd doc/lispintro; $(MAKE) $(MFLAGS) info)
+
+# The info/dir file must be updated by hand when new manuals are added.
+check-info-dir: info
+       cd info ; \
+       missing= ; \
+       for file in *; do \
+         test -f "$${file}" || continue ; \
+         case $${file} in \
+           *-[0-9]*|COPYING|dir) continue ;; \
+         esac ; \
+         grep -q -F ": ($${file})." dir || missing="$${missing} $${file}" ; \
+       done ; \
+       if test -n "$${missing}"; then \
+         echo "Missing info/dir entries: $${missing}" ; \
+         exit 1 ; \
+       fi ; \
+       echo "info/dir is OK"
+
 dvi:
        (cd doc/emacs; $(MAKE) $(MFLAGS) dvi)
        (cd doc/misc; $(MAKE) $(MFLAGS) dvi)
@@ -776,7 +820,6 @@ maybe_bootstrap:
        if [ \( "$$bar" = '$(srcdir)/lisp/*.elc' \) -o \( "$$bar" = '' \) ]; then \
          echo "Your tree does not include the compiled Lisp files."; \
          echo "You need to do \`make bootstrap' to build Emacs."; \
-         echo "Emacs now requires Texinfo version 4.2."; \
          exit 1;\
        fi