]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - c++/Makefile.in
ncurses 5.1
[ncurses.git] / c++ / Makefile.in
index 6be83aeb82319eafd78f7b611e8bbefcd4e54e9c..e8079893736f4ce81c3a68c51df86db10bb9d8f6 100644 (file)
@@ -1,23 +1,34 @@
-# $Id: Makefile.in,v 1.20 1997/05/04 21:15:38 tom Exp $
-################################################################################
-# Copyright 1996 by Thomas E. Dickey <dickey@clark.net>                        #
-# All Rights Reserved.                                                         #
-#                                                                              #
-# Permission to use, copy, modify, and distribute this software and its        #
-# documentation for any purpose and without fee is hereby granted, provided    #
-# that the above copyright notice appear in all copies and that both that      #
-# copyright notice and this permission notice appear in supporting             #
-# documentation, and that the name of the above listed copyright holder(s) not #
-# be used in advertising or publicity pertaining to distribution of the        #
-# software without specific, written prior permission. THE ABOVE LISTED        #
-# COPYRIGHT HOLDER(S) DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,    #
-# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT #
-# SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY SPECIAL,        #
-# INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM   #
-# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE   #
-# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR    #
-# PERFORMANCE OF THIS SOFTWARE.                                                #
-################################################################################
+# $Id: Makefile.in,v 1.52 2000/05/28 01:44:34 tom Exp $
+##############################################################################
+# Copyright (c) 1998,1999 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"), #
+# to deal in the Software without restriction, including without limitation  #
+# the rights to use, copy, modify, merge, publish, distribute, distribute    #
+# with modifications, sublicense, and/or sell copies of the Software, and to #
+# permit persons to whom the Software is furnished to do so, subject to the  #
+# following conditions:                                                      #
+#                                                                            #
+# The above copyright notice and this permission notice shall be included in #
+# all copies or substantial portions of the Software.                        #
+#                                                                            #
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR #
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,   #
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL    #
+# THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER      #
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING    #
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER        #
+# DEALINGS IN THE SOFTWARE.                                                  #
+#                                                                            #
+# Except as contained in this notice, the name(s) of the above copyright     #
+# holders shall not be used in advertising or otherwise to promote the sale, #
+# use or other dealings in this Software without prior written               #
+# authorization.                                                             #
+##############################################################################
+#
+# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+#
 #  Simple makefile for c++ window class demo
 
 # turn off _all_ suffix rules; we'll generate our own
 
 SHELL          = /bin/sh
 
+CF_MFLAGS      = @cf_cv_makeflags@
+@SET_MAKE@
+x              = @PROG_EXT@
+
 MODEL          = ../@DFT_OBJ_SUBDIR@
+INSTALL_PREFIX = @INSTALL_PREFIX@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
 libdir         = @libdir@
 includedir     = @includedir@
 
+INSTALL                = @INSTALL@
+INSTALL_DATA   = @INSTALL_DATA@
+
+AR             = @AR@
+AR_OPTS                = @AR_OPTS@
+RANLIB         = @RANLIB@
+
 CXX            = @CXX@
 CXXFLAGS       = @CXXFLAGS@
 CXXLIBS                = @CXXLIBS@
 
 INCDIR         = ../include
-CPPFLAGS       = @CPPFLAGS@ -I$(INCDIR) -I$(srcdir)/../c++ -DHAVE_CONFIG_H
+CPPFLAGS       = -I../c++ -I$(INCDIR) -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CXXFLAGS)
 
@@ -48,41 +71,122 @@ CFLAGS_SHARED      = $(CCFLAGS) @CC_SHARED_OPTS@
 
 CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
 
-LINK           = $(CXX)
-LDFLAGS                = -L../lib \
-       -lmenu@DFT_ARG_SUFFIX@ \
-       -lpanel@DFT_ARG_SUFFIX@ \
-       -lncurses@DFT_ARG_SUFFIX@ \
-       @LDFLAGS@ \
+REL_VERSION     = @cf_cv_rel_version@
+ABI_VERSION    = @cf_cv_abi_version@
+
+LINK           = @LINK_PROGS@ $(CXX) @CXXLDFLAGS@
+
+LIBROOT        = ncurses++@LIB_SUFFIX@
+LIBNAME        = @LIB_PREFIX@$(LIBROOT).a
+
+LDFLAGS                = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) \
+       -l$(LIBROOT) \
+       @TEST_ARGS@ @LDFLAGS@ \
        @LD_MODEL@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
 
-all: demo
+LDFLAGS_NORMAL = $(LDFLAGS)
+LDFLAGS_DEBUG  = $(LDFLAGS) @CC_G_OPT@
+LDFLAGS_PROFILE        = $(LDFLAGS) -pg
+LDFLAGS_SHARED = $(LDFLAGS) @LD_SHARED_OPTS@
+
+LDFLAGS_DEFAULT        = $(LDFLAGS_@DFT_UPR_MODEL@)
+
+AUTO_SRC       = \
+               etip.h
 
-OBJS_DEMO = \
+all \
+libs ::                $(AUTO_SRC) ../lib/$(LIBNAME)
+
+all ::         demo$x
+
+sources :      $(AUTO_SRC)
+
+# Build a conventional library for installing, since a shared library would
+# pull in all of the ncurses libraries (panel, menu, form, ncurses) as direct
+# dependencies.
+LIB_OBJS = \
+       $(MODEL)/cursesf.o \
        $(MODEL)/cursesm.o \
        $(MODEL)/cursesw.o \
+       $(MODEL)/cursespad.o \
        $(MODEL)/cursesp.o \
-       $(MODEL)/demo.o
+       $(MODEL)/cursslk.o \
+       $(MODEL)/cursesapp.o \
+       $(MODEL)/cursesmain.o
+
+../lib/$(LIBNAME) : $(LIB_OBJS)
+       $(AR) $(AR_OPTS) $@ $?
+       $(RANLIB) $@
+
+OBJS_DEMO = $(MODEL)/demo.o
+
+$(MODEL)/demo.o : $(srcdir)/demo.cc \
+       $(cursesf_h) $(cursesm_h) $(cursesapp_h)
+
+demo$x:        $(OBJS_DEMO) \
+       ../lib/$(LIBNAME)  \
+       @TEST_DEPS@
+       @ECHO_LINK@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS_DEFAULT)
 
-demo:  $(OBJS_DEMO) \
-       ../lib/libmenu@DFT_DEP_SUFFIX@ \
-       ../lib/libpanel@DFT_DEP_SUFFIX@ \
-       ../lib/libncurses@DFT_DEP_SUFFIX@
-       @ECHO_LINK@ $(LINK) -o $@ $(OBJS_DEMO) $(LDFLAGS)
+etip.h:        $(srcdir)/etip.h.in $(srcdir)/edit_cfg.sh
+       cp $(srcdir)/etip.h.in $@
+       sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
 
-install:
-install.libs:
+$(INSTALL_PREFIX)$(libdir) :
+       $(srcdir)/../mkinstalldirs $@
 
-clean ::
-       -rm -f core demo $(OBJS_DEMO)
+install \
+install.libs:: ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)
+       $(INSTALL) ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+
+uninstall \
+uninstall.libs::
+       -rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+
+mostlyclean ::
+       -rm -f core tags TAGS *~ *.ln *.atac trace
+
+clean :: mostlyclean
+       -rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(OBJS_DEMO)
 
 distclean :: clean
        -rm -f Makefile
 
-mostlyclean :: clean
-
 realclean :: distclean
 
+###############################################################################
+
+cursesw_h      = $(srcdir)/cursesw.h \
+                 etip.h \
+                 $(INCDIR)/curses.h
+
+cursesp_h      = $(srcdir)/cursesp.h \
+                 $(cursesw_h) \
+                 $(INCDIR)/panel.h
+
+cursesf_h      = $(srcdir)/cursesf.h \
+                 $(cursesp_h) \
+                 $(INCDIR)/form.h
+
+cursesm_h      = $(srcdir)/cursesm.h \
+                 $(cursesp_h) \
+                 $(INCDIR)/menu.h
+
+cursslk_h      = $(srcdir)/cursslk.h \
+                 $(cursesw_h)
+
+cursesapp_h    = $(srcdir)/cursesapp.h \
+                 $(cursslk_h)
+
+$(INCDIR)/form.h :
+       cd ../form && $(MAKE) $@
+
+$(INCDIR)/menu.h :
+       cd ../menu && $(MAKE) $@
+
+$(INCDIR)/panel.h :
+       cd ../panel && $(MAKE) $@
+
 ###############################################################################
 # The remainder of this file is automatically generated during configuration
 ###############################################################################