-firstlast$x: $(MODEL)/firstlast$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/firstlast$o $(LDFLAGS_DEFAULT)
-
-gdc$x: $(MODEL)/gdc$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/gdc$o $(LDFLAGS_CURSES)
-
-hanoi$x: $(MODEL)/hanoi$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hanoi$o $(LDFLAGS_CURSES)
-
-hashtest$x: $(MODEL)/hashtest$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/hashtest$o $(LDFLAGS_CURSES)
-
-inserts$x: $(MODEL)/inserts$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/inserts$o $(LDFLAGS_CURSES)
-
-ins_wide$x: $(MODEL)/ins_wide$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ins_wide$o $(LDFLAGS_CURSES)
-
-keynames$x: $(MODEL)/keynames$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/keynames$o $(LDFLAGS_CURSES)
-
-knight$x: $(MODEL)/knight$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/knight$o $(LDFLAGS_CURSES)
-
-lrtest$x: $(MODEL)/lrtest$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/lrtest$o $(LDFLAGS_CURSES)
-
-ncurses$x: $(MODEL)/ncurses$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/ncurses$o $(LDFLAGS_DEFAULT)
-
-newdemo$x: $(MODEL)/newdemo$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/newdemo$o $(LDFLAGS_CURSES)
-
-rain$x: $(MODEL)/rain$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/rain$o $(LDFLAGS_CURSES)
-
-railroad$x: $(MODEL)/railroad$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/railroad$o $(LDFLAGS_TINFO)
-
-tclock$x: $(MODEL)/tclock$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/tclock$o $(LDFLAGS_CURSES) $(MATH_LIB)
-
-testaddch$x: $(MODEL)/testaddch$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testaddch$o $(LDFLAGS_CURSES)
-
-testcurs$x: $(MODEL)/testcurs$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testcurs$o $(LDFLAGS_CURSES)
-
-testscanw$x: $(MODEL)/testscanw$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/testscanw$o $(LDFLAGS_CURSES)
-
-view$x: $(MODEL)/view$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/view$o $(LDFLAGS_CURSES)
-
-worm$x: $(MODEL)/worm$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/worm$o $(LDFLAGS_CURSES)
-
-xmas$x: $(MODEL)/xmas$o $(LOCAL_LIBS)
- @ECHO_LINK@ $(LINK) -o $@ $(MODEL)/xmas$o $(LDFLAGS_CURSES)
-
-libs \
-install \
-install.libs \
-install.test:
-
-uninstall:
-uninstall.libs:
-uninstall.test:
-
-mostlyclean ::
- -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace
-
-clean :: mostlyclean
- -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
- -rm -rf *$o screendump *.lis $(TESTS) .libs
-
-distclean :: clean
- -rm -f Makefile ncurses_cfg.h config.*
-
-realclean :: distclean
-
-lint:
- sh -c 'for N in $(TESTS); do echo LINT:$$N; $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/$$N.c $(LINT_LIBS); done'
+HEADER_DEPS = \
+ $(incdir)/curses.h \
+ $(incdir)/term.h \
+ $(incdir)/ncurses_cfg.h \
+ $(incdir)/ncurses_def.h \
+ $(incdir)/ncurses_dll.h \
+ $(incdir)/term.h \
+ $(incdir)/unctrl.h \
+ $(INCDIR)/nc_alloc.h
+
+################################################################################
+
+@MAKE_PHONY@.PHONY : all
+@MAKE_PHONY@.PHONY : check
+
+all::
+
+# Verify that each header-file can be compiled without including another.
+check::
+ @$(SHELL) -c "for header in *.h;\
+ do \
+ echo \"** testing \$${header}\" ; \
+ echo \"#include <\$${header}>\" >headers.c; \
+ echo \"int main(void) { return 0; }\" >>headers.c; \
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) headers.c; \
+ done"
+ -@rm -f headers.*
+
+# The rest is generated from the "programs" and "modules" files...