Installed Makefile rules for NNTP testing.
[gnus] / lisp / Makefile.in
index 108c6fa..776d5ef 100644 (file)
@@ -1,32 +1,96 @@
+prefix = @prefix@
+datarootdir = @datarootdir@
 datadir = @datadir@
 lispdir = @lispdir@
-prefix = @prefix@
 srcdir = @srcdir@
 subdir = lisp
 top_srcdir = @top_srcdir@
 
 EMACS = @EMACS@
-FLAGS = -batch -q -no-site-file -l ./dgnushack.el
+FLAGS = @FLAGS@
 INSTALL = @INSTALL@
 INSTALL_DATA = @INSTALL_DATA@
 SHELL = /bin/sh
 VPATH = @srcdir@
+W3DIR = @W3@
+URLDIR = @URL@
+EMACS_COMP = URLDIR="$(URLDIR)" W3DIR="$(W3DIR)" lispdir="$(lispdir)" srcdir=$(srcdir) $(EMACS) $(FLAGS)
+
+all total: clean-some gnus-load.el
+       $(EMACS_COMP) -f dgnushack-compile
+
+clean-some:
+       rm -f *.elc gnus-load.el auto-autoloads.* custom-load.*
+
+warn: clean-some gnus-load.el
+       $(EMACS_COMP) --eval '(dgnushack-compile t)' 2>&1 | egrep -v "variable G|inhibit-point-motion-hooks|coding-system|temp-results|variable gnus|variable nn|scroll-in-place|deactivate-mark|filladapt-mode|byte-code-function-p|print-quoted|ps-right-header|ps-left-header|article-inhibit|print-escape|ssl-program-arguments|message-log-max"
+
+fail-on-warning: clean-some gnus-load.el
+       $(EMACS_COMP) -f dgnushack-compile-error-on-warn
+
+# The "clever" rule is unsafe, since redefined macros are loaded from
+# .elc files, and not the .el file.
+clever some l: gnus-load.el
+       $(EMACS_COMP) -f dgnushack-compile
+
+install: install-el-elc list-installed-shadows
+
+# Test rules
+check: test-registry test-nntp
+
+test-registry:
+       $(EMACS) $(FLAGS) -l ert -l gnus-registry.el -f ert-run-tests-batch-and-exit
 
-all total:
-       rm -f *.elc ; $(EMACS) $(FLAGS) -f dgnushack-compile
+test-nntp:
+       $(EMACS) $(FLAGS) -l ert -l tests/gnustest-nntp.el -f ert-run-tests-batch-and-exit
 
-warn:
-       rm -f *.elc ; $(EMACS) $(FLAGS) --eval '(dgnushack-compile t)' 2>&1 | egrep -v "variable G|inhibit-point-motion-hooks|coding-system|temp-results|variable gnus|variable nn|scroll-in-place|deactivate-mark|filladapt-mode|byte-code-function-p|print-quoted|ps-right-header|ps-left-header|article-inhibit|print-escape|ssl-program-arguments|message-log-max"
+# This entry will never install .el files if there are no .elc files.
+install-el: gnus-load.el
+       $(SHELL) $(top_srcdir)/mkinstalldirs "$(lispdir)"
+       $(INSTALL_DATA) gnus-load.el "$(lispdir)/gnus-load.el"
+       @for p in *.elc; do \
+         p=`basename $$p c`; \
+         if [ -f "$(srcdir)/$$p" ]; then \
+           echo "$(INSTALL_DATA) $$p \"$(lispdir)/$$p\""; \
+           $(INSTALL_DATA) $(srcdir)/$$p "$(lispdir)/$$p"; \
+         fi; \
+       done
 
-clever some:
-       $(EMACS) $(FLAGS) -f dgnushack-compile
+install-elc: clever
+       rm -f dgnushack.elc
+       $(SHELL) $(top_srcdir)/mkinstalldirs "$(lispdir)"
+       @for p in *.elc; do \
+         echo "$(INSTALL_DATA) $$p \"$(lispdir)/$$p\""; \
+         $(INSTALL_DATA) $$p "$(lispdir)/$$p"; \
+       done
 
-install: clever
+install-el-elc: clever
        rm -f dgnushack.elc
-       $(SHELL) $(top_srcdir)/mkinstalldirs $(lispdir)
+       $(SHELL) $(top_srcdir)/mkinstalldirs "$(lispdir)"
+       $(INSTALL_DATA) gnus-load.el "$(lispdir)/gnus-load.el"
+       @for p in *.elc; do \
+         q=`basename $$p c`; \
+         if [ -f "$(srcdir)/$$q" ]; then \
+           echo "$(INSTALL_DATA) $$q \"$(lispdir)/$$q\""; \
+           $(INSTALL_DATA) $(srcdir)/$$q "$(lispdir)/$$q"; \
+         fi; \
+         echo "$(INSTALL_DATA) $$p \"$(lispdir)/$$p\""; \
+         $(INSTALL_DATA) $$p "$(lispdir)/$$p"; \
+       done
+
+list-installed-shadows:
+       $(EMACS_COMP) -f dgnushack-find-lisp-shadows
+
+remove-installed-shadows:
+       $(EMACS_COMP) -f dgnushack-remove-lisp-shadows
+
+uninstall:
        for p in *.elc; do \
-         echo " $(INSTALL_DATA) $$p $(lispdir)/$$p"; \
-         $(INSTALL_DATA) $$p $(lispdir)/$$p; \
+         rm -f "$(lispdir)/$$p"; \
+       done
+       cd $(srcdir); \
+       for p in *.el; do \
+         rm -f "$(lispdir)/$$p"; \
        done
 
 tags:
@@ -39,19 +103,15 @@ pot:
        xpot -drgnus -r`cat ./version` *.el > rgnus.pot
 
 gnus-load.el:
-       echo ";;; gnus-load.el --- automatically extracted custom dependencies" > gnus-load.el
-       echo ";;" >> gnus-load.el
-       echo ";;; Code:" >> gnus-load.el
-       echo >> gnus-load.el
-       $(EMACS)  $(FLAGS) -l ./dgnushack.el -l cus-edit.el *.el \
-               -f custom-make-dependencies >> gnus-load.el
-       echo >> gnus-load.el
-       echo "(provide 'gnus-load)" >> gnus-load.el
-       echo >> gnus-load.el
-       echo ";;; gnus-load.el ends here" >> gnus-load.el
-
-distclean:
-       rm -f *.orig *.rej *.elc *~ Makefile
+       $(EMACS_COMP) -f dgnushack-make-cus-load $(srcdir)
+       $(EMACS_COMP) -f dgnushack-make-auto-load $(srcdir)
+       $(EMACS_COMP) -f dgnushack-make-load
+
+clean:
+       rm -f *.elc *.orig *.rej *~ auto-autoloads.* custom-load.* gnus-load.el
+
+distclean: clean
+       rm -f Makefile
 
 Makefile: $(srcdir)/Makefile.in ../config.status
        cd .. \