-# $Id: Makefile.in,v 1.6 1998/02/11 12:14:03 tom Exp $
+# $Id: Makefile.in,v 1.38 2006/12/17 15:58:32 tom Exp $
##############################################################################
-# Copyright (c) 1998 Free Software Foundation, Inc. #
+# Copyright (c) 1998-2005,2006 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"), #
# use or other dealings in this Software without prior written #
# authorization. #
##############################################################################
+# Makefile for tack
#
-# Author: Thomas E. Dickey <dickey@clark.net> 1997
+# The variable 'srcdir' refers to the source-distribution, and can be set with
+# the configure script by "--srcdir=DIR".
#
-# Makefile for terminfo/termcap test program
-#
-# The following pre-processor variables may be set.
-#
-# SELECT Use this define if your operating system has the select
-# system call.
-#
-# WAIT_MODE Use this define if your operating system cannot tell if
-# a chracter is ready in the input queue. Funtion keys
-# must be padded with blanks.
-#
-# If generated without pre-processor variables, a terminfo test
-# program will be generated for System V Release 3.
+# The rules are organized to produce the libraries for the configured models,
+# and the programs with the configured default model.
# turn off _all_ suffix rules; we'll generate our own
.SUFFIXES:
SHELL = /bin/sh
THIS = Makefile
+CF_MFLAGS = @cf_cv_makeflags@
+@SET_MAKE@
+
+x = @EXEEXT@
+o = .@OBJEXT@
+
MODEL = ../@DFT_OBJ_SUBDIR@
-INSTALL_PREFIX = @INSTALL_PREFIX@
+DESTDIR = @DESTDIR@
srcdir = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
bindir = @bindir@
libdir = @libdir@
+mandir = @mandir@
+includedir = @includedir@
+datadir = @datadir@
+
+LIBTOOL = @LIBTOOL@
+LIBTOOL_CLEAN = @LIB_CLEAN@
+LIBTOOL_COMPILE = @LIB_COMPILE@
+LIBTOOL_LINK = @LIB_LINK@
+LIBTOOL_INSTALL = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
INSTALL = @INSTALL@
-INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_PROG = @INSTALL_PROGRAM@
+INSTALL_DATA = @INSTALL_DATA@
+
+AWK = @AWK@
+LN_S = @LN_S@
CC = @CC@
+CPP = @CPP@
CFLAGS = @CFLAGS@
INCDIR = $(srcdir)/../include
-CPPFLAGS = -I../tack -I$(srcdir) @CPPFLAGS@ \
- -DHAVE_CONFIG_H -DSELECT
+CPPFLAGS = -DHAVE_CONFIG_H -I../tack -I$(srcdir) @CPPFLAGS@
CCFLAGS = $(CPPFLAGS) $(CFLAGS)
+CFLAGS_LIBTOOL = $(CCFLAGS)
CFLAGS_NORMAL = $(CCFLAGS)
CFLAGS_DEBUG = $(CCFLAGS) @CC_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -pg
-CFLAGS_SHARED = $(CCFLAGS) # @CC_SHARED_OPTS@
+CFLAGS_SHARED = $(CCFLAGS) @CC_SHARED_OPTS@
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
+REL_VERSION = @cf_cv_rel_version@
+ABI_VERSION = @cf_cv_abi_version@
+LOCAL_LIBDIR = @top_builddir@/lib
+
LD = @LD@
-LINK = $(CC)
+LINK = @LINK_PROGS@ $(LIBTOOL_LINK) $(CC)
LDFLAGS = @EXTRA_LDFLAGS@ \
- -L../lib \
- -L$(libdir) \
- -lncurses@DFT_ARG_SUFFIX@ @LDFLAGS@ @LD_MODEL@ @LIBS@ @EXTRA_LIBS@
+ @TINFO_ARGS@ @LDFLAGS@ @LD_MODEL@ @LIBS@
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @CC_SHARED_OPTS@ @LD_SHARED_OPTS@
+LDFLAGS_LIBTOOL = $(LDFLAGS) $(CFLAGS_LIBTOOL)
+LDFLAGS_NORMAL = $(LDFLAGS) $(CFLAGS_NORMAL)
+LDFLAGS_DEBUG = $(LDFLAGS) $(CFLAGS_DEBUG)
+LDFLAGS_PROFILE = $(LDFLAGS) $(CFLAGS_PROFILE)
+LDFLAGS_SHARED = $(LDFLAGS) $(CFLAGS_SHARED) @LD_SHARED_OPTS@
LDFLAGS_DEFAULT = $(LDFLAGS_@DFT_UPR_MODEL@)
LINT = @LINT@
LINT_OPTS = @LINT_OPTS@
-LINT_LIBS = -lncurses @LIBS@
-
-# This would be $(SHARED_OBJS), but make cannot handle this much forward ref.
-TACK_DEPS = \
- $(MODEL)/ansi.o \
- $(MODEL)/charset.o \
- $(MODEL)/color.o \
- $(MODEL)/control.o \
- $(MODEL)/crum.o \
- $(MODEL)/edit.o \
- $(MODEL)/fun.o \
- $(MODEL)/init.o \
- $(MODEL)/menu.o \
- $(MODEL)/modes.o \
- $(MODEL)/output.o \
- $(MODEL)/pad.o \
- $(MODEL)/scan.o \
- $(MODEL)/sync.o \
- $(MODEL)/sysdep.o \
- $(MODEL)/tack.o
-
-TARGET = tack
-
-all: $(TACK_DEPS) $(TARGET)
+LINT_LIBS = -lncurses@LIB_SUFFIX@ @LIBS@
+
+PROGS = tack$x
+
+# Default library, for linking applications
+DEPS_CURSES = ../lib/@LIB_PREFIX@ncurses@DFT_DEP_SUFFIX@
+
+################################################################################
+all: $(PROGS)
sources:
-$(TARGET): $(TACK_DEPS)
- @ echo linking $@ ... ; $(LINK) $(TACK_DEPS) $(LDFLAGS_DEFAULT) -o $@
+install: install.tack
+uninstall: uninstall.tack
-$(TACK_DEPS): $(srcdir)/tack.h
+# this line simplifies the configure-script
+libs \
+install.libs \
+uninstall.libs:
-lint:
- lint $(C_SRC)
+EDITARGS = $(DESTDIR)$(mandir) $(srcdir) $(srcdir)/*.[0-9]*
-mostlyclean :
- -rm -f core tags TAGS *~ *.ln *.atac trace
+install.tack: $(PROGS) \
+ $(DESTDIR)$(bindir) \
+ $(DESTDIR)$(mandir)
+ $(LIBTOOL_INSTALL) $(INSTALL_PROG) tack$x $(DESTDIR)$(bindir)/tack$x
+ sh ../edit_man.sh normal installing $(EDITARGS)
-clean :: mostlyclean
- rm -f $(TACK_DEPS) $(TARGET) tack.tar tack.tar.gz
+uninstall.tack:
+ -@$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(bindir)/tack$x
+ -sh ../edit_man.sh normal removing $(EDITARGS)
-distclean :: clean
- -rm -f Makefile
+$(DESTDIR)$(bindir) \
+$(DESTDIR)$(mandir) :
+ sh $(srcdir)/../mkinstalldirs $@
-realclean : distclean
+#
+# Rules for building tack
+#
-# vi tags
-tags: $(C_SRC) $(DIR)/tack.h
- ctags $(>)
+DEPS_TACK = \
+ $(MODEL)/ansi$o \
+ $(MODEL)/charset$o \
+ $(MODEL)/color$o \
+ $(MODEL)/control$o \
+ $(MODEL)/crum$o \
+ $(MODEL)/edit$o \
+ $(MODEL)/fun$o \
+ $(MODEL)/init$o \
+ $(MODEL)/menu$o \
+ $(MODEL)/modes$o \
+ $(MODEL)/output$o \
+ $(MODEL)/pad$o \
+ $(MODEL)/scan$o \
+ $(MODEL)/sync$o \
+ $(MODEL)/sysdep$o \
+ $(MODEL)/tack$o
+
+tack$x: $(DEPS_TACK) $(DEPS_CURSES)
+ @ECHO_LINK@ $(LINK) $(DEPS_TACK) $(LDFLAGS_DEFAULT) -o $@
-# emacs tags
-TAGS: $(C_SRC)
- etags $(C_SRC)
+#
+# Utility productions start here
+#
-install: $(TARGET)
- $(INSTALL_PROGRAM) $(TARGET) $(INSTALL_PREFIX)$(bindir)/$(TARGET)
+tags:
+ ctags *.[ch]
-list: $(srcdir)/tack.h $(C_SRC)
- for name in $(>) ; \
- do \
- ucb cat -n $$name | ucb pr -h "$$name" | ucb lpr ; \
- done
+@MAKE_UPPER_TAGS@TAGS:
+@MAKE_UPPER_TAGS@ etags *.[ch]
-# archive a backup copy
-arch: $(srcdir)/Makefile $(srcdir)/tack.h $(C_SRC)
- rm -f tack.a
- ar q tack.a $(>)
+mostlyclean ::
+ -rm -f core tags TAGS *~ *.bak *.i *.atac trace
-tack.tar.gz: tack.tar
- gzip tack.tar
+clean :: mostlyclean
+ -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
+ -rm -f $(PROGS)
+ -rm -rf .libs
+
+distclean :: clean
+ -rm -f Makefile
+
+realclean :: distclean
+
+tack.tar: Makefile.in modules *.[ch] tack.1 HISTORY COPYING
+ tar -cvf tack.tar Makefile.in modules *.[ch] tack.1 HISTORY COPYING
+
+# These rules are used to allow "make -n" to work on a clean directory-tree
+../include/hashsize.h \
+../include/parametrized.h \
+../include/term.h :
+ cd ../include; $(MAKE) $(CF_MFLAGS)
+
+$(DEPS_CURSES) :
+ cd ../ncurses; $(MAKE) $(CF_MFLAGS)
+
+lint:
+ $(LINT) $(LINT_OPTS) $(CPPFLAGS) $(srcdir)/*.c $(LINT_LIBS)
-tack.tar: makefile *.[ch] tack.1 HISTORY
- tar -cvf tack.tar makefile *.[ch] tack.1 HISTORY
+###############################################################################
+# The remainder of this file is automatically generated during configuration
+###############################################################################