ncurses 6.2 - patch 20210522
[ncurses.git] / include / Makefile.in
index 49190916d68185cec503656a2ace11dea49f03f8..b911f8eadce13d9e8f12ba0775dac4c7851630b4 100644 (file)
@@ -1,6 +1,7 @@
-# $Id: Makefile.in,v 1.26 2000/09/02 17:53:40 tom Exp $
+# $Id: Makefile.in,v 1.51 2020/09/18 22:55:10 tom Exp $
 ##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc.                          #
+# Copyright 2019,2020 Thomas E. Dickey                                       #
+# Copyright 1998-2013,2015 Free Software Foundation, Inc.                    #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
@@ -27,7 +28,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey 1996-on
 #
 # Makefile for ncurses source code.
 #
@@ -39,7 +40,8 @@
 # turn off _all_ suffix rules; we'll generate our own
 .SUFFIXES:
 
-SHELL          = /bin/sh
+SHELL          = @SHELL@
+VPATH          = @srcdir@
 THIS           = Makefile
 
 DESTDIR                = @DESTDIR@
@@ -47,6 +49,9 @@ srcdir                = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
 includedir     = @includedir@
+includesubdir  = @includesubdir@
+
+INCLUDEDIR     = $(DESTDIR)$(includedir)$(includesubdir)
 
 INSTALL                = @INSTALL@
 INSTALL_DATA   = @INSTALL_DATA@
@@ -54,58 +59,104 @@ INSTALL_DATA       = @INSTALL_DATA@
 AWK            = @AWK@
 LN_S           = @LN_S@
 
+CC             = @CC@
+CFLAGS         = @CFLAGS@ @EXTRA_CFLAGS@
+CPPFLAGS       = -DHAVE_CONFIG_H -I. @CPPFLAGS@
+
+CTAGS          = @CTAGS@
+ETAGS          = @ETAGS@
+
 VERSION                = @cf_cv_rel_version@
 
+# The "Caps" file specifies the terminfo database format, as well as the list
+# of function keys.
+TERMINFO_CAPS  = $(srcdir)/@TERMINFO_CAPS@
+CAPLIST        =       $(TERMINFO_CAPS) \
+               $(srcdir)/Caps-ncurses
+
 # These files are generated by the configure script
 CONFIG_SRC = \
        MKterm.h.awk \
-       curses.h \
+       curses.head \
+       ncurses_dll.h \
        termcap.h \
        unctrl.h
 
 # These files are generated by this makefile
 AUTO_SRC = \
+       curses.h \
        hashsize.h \
        ncurses_def.h \
        parametrized.h \
+       config.h \
        term.h
 
 ################################################################################
 all \
 libs \
+depend \
 sources \
 install ::     $(AUTO_SRC)
 
-term.h: $(srcdir)/Caps MKterm.h.awk
-       $(AWK) -f MKterm.h.awk $(srcdir)/Caps > $@
-       sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
-
-hashsize.h: $(srcdir)/Caps $(srcdir)/MKhashsize.sh
-       sh $(srcdir)/MKhashsize.sh $(srcdir)/Caps >$@
+curses.h :     $(CAPLIST) \
+               curses.head \
+               $(srcdir)/curses.tail \
+               $(srcdir)/MKkey_defs.sh
+       cat curses.head >$@
+       AWK=$(AWK) $(SHELL) $(srcdir)/MKkey_defs.sh $(CAPLIST) >>$@
+       $(SHELL) -c 'if test "@NCURSES_WGETCH_EVENTS@" = "1" ; then cat $(srcdir)/curses.events >>$@ ; fi'
+       $(SHELL) -c 'if test "@NCURSES_CH_T@" = "cchar_t" ; then cat $(srcdir)/curses.wide >>$@ ; fi'
+       cat $(srcdir)/curses.tail >>$@
+
+term.h:        $(CAPLIST) \
+               MKterm.h.awk
+       $(AWK) -f MKterm.h.awk $(CAPLIST) > $@
+       $(SHELL) $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
+
+hashsize.h:    $(CAPLIST) \
+               $(srcdir)/MKhashsize.sh
+       $(SHELL) $(srcdir)/MKhashsize.sh $(CAPLIST) >$@
 
 ncurses_def.h: $(srcdir)/ncurses_defs $(srcdir)/MKncurses_def.sh
-       AWK=$(AWK) sh $(srcdir)/MKncurses_def.sh $(srcdir)/ncurses_defs >$@
+       AWK=$(AWK) $(SHELL) $(srcdir)/MKncurses_def.sh $(srcdir)/ncurses_defs >$@
 
-parametrized.h: $(srcdir)/Caps $(srcdir)/MKparametrized.sh
-       AWK=$(AWK) sh $(srcdir)/MKparametrized.sh $(srcdir)/Caps >$@
+parametrized.h: $(CAPLIST) \
+               $(srcdir)/MKparametrized.sh
+       AWK=$(AWK) $(SHELL) $(srcdir)/MKparametrized.sh $(CAPLIST) >$@
+
+# This is required by pthread.h on MinGW
+config.h:
+       touch $@
 
 tags:
-       ctags *.[ch]
+       $(CTAGS) *.[ch]
 
 @MAKE_UPPER_TAGS@TAGS:
-@MAKE_UPPER_TAGS@      etags *.[ch]
+@MAKE_UPPER_TAGS@      $(ETAGS) *.[ch]
 
 mostlyclean ::
-       -rm -f core tags TAGS *~ *.ln *.atac trace
+       -rm -f core tags TAGS *~ *.bak *.i *.ln *.atac trace
 
 clean :: mostlyclean
        -rm -f $(AUTO_SRC)
+       -rm -rf *.dSYM
 
 distclean :: clean
-       -rm -f Makefile $(CONFIG_SRC)
+       -rm -f Makefile $(CONFIG_SRC) config.h
 
 realclean :: distclean
 
+# 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 remainder of this file is automatically generated during configuration
 ###############################################################################