-# $Id: Makefile.in,v 1.51 1999/10/23 20:13:02 tom Exp $
+# $Id: Makefile.in,v 1.72 2004/01/16 22:44:56 tom Exp $
##############################################################################
-# Copyright (c) 1998,1999 Free Software Foundation, Inc. #
+# Copyright (c) 1998-2002,2003 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"), #
# authorization. #
##############################################################################
#
-# Author: Thomas E. Dickey <dickey@clark.net> 1996,1997
+# Author: Thomas E. Dickey
#
# Simple makefile for c++ window class demo
CF_MFLAGS = @cf_cv_makeflags@
@SET_MAKE@
-x = @PROG_EXT@
+x = @EXEEXT@
+o = .@OBJEXT@
MODEL = ../@DFT_OBJ_SUBDIR@
-INSTALL_PREFIX = @INSTALL_PREFIX@
+DESTDIR = @DESTDIR@
srcdir = @srcdir@
prefix = @prefix@
exec_prefix = @exec_prefix@
libdir = @libdir@
includedir = @includedir@
+LIBTOOL = @LIBTOOL_CXX@
+LIBTOOL_CLEAN = @LIB_CLEAN@
+LIBTOOL_COMPILE = @LIB_COMPILE@
+LIBTOOL_LINK = @LIB_LINK@
+LIBTOOL_INSTALL = @LIB_INSTALL@
+LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
+
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
AR = @AR@
AR_OPTS = @AR_OPTS@
-RANLIB = @RANLIB@
+
+CXX_AR = @CXX_AR@
+CXX_AR_OPTS = @CXX_AR_OPTS@
+RANLIB = @LIB_PREP@
CXX = @CXX@
+CPP = @CPP@
CXXFLAGS = @CXXFLAGS@
CXXLIBS = @CXXLIBS@
CCFLAGS = $(CPPFLAGS) $(CXXFLAGS)
+CFLAGS_LIBTOOL = $(CCFLAGS)
CFLAGS_NORMAL = $(CCFLAGS)
CFLAGS_DEBUG = $(CCFLAGS) @CXX_G_OPT@ -DTRACE
CFLAGS_PROFILE = $(CCFLAGS) -pg
CFLAGS_DEFAULT = $(CFLAGS_@DFT_UPR_MODEL@)
+NCURSES_MAJOR = @NCURSES_MAJOR@
+NCURSES_MINOR = @NCURSES_MINOR@
REL_VERSION = @cf_cv_rel_version@
ABI_VERSION = @cf_cv_abi_version@
-LINK = @LINK_PROGS@ $(CXX) @CXXLDFLAGS@
+LINK = @LINK_PROGS@ $(LIBTOOL_LINK) $(CXX) @CXXLDFLAGS@
+SHLIB_DIRS = -L../lib
+SHLIB_LIST = $(SHLIB_DIRS) -lncurses@LIB_SUFFIX@ @SHLIB_LIST@
+
+LIBROOT = ncurses++
+
+LIBNAME_LIBTOOL = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.la
+LIBNAME_NORMAL = @LIB_PREFIX@$(LIBROOT)@LIB_SUFFIX@.a
+LIBNAME = @LIB_PREFIX@$(LIBROOT)@CXX_LIB_SUFFIX@
-LIBROOT = ncurses++
-LIBNAME = @LIB_PREFIX@$(LIBROOT).a
+LINK_FLAGS = @EXTRA_LDFLAGS@ -L../lib -l$(LIBROOT)@LIB_SUFFIX@
-LDFLAGS = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) \
- -l$(LIBROOT) \
- @TEST_ARGS@ @LDFLAGS@ \
+LINK_LIBTOOL = @EXTRA_LDFLAGS@ -L../lib ../lib/$(LIBNAME)
+LINK_NORMAL = $(LINK_FLAGS)
+LINK_DEBUG = $(LINK_FLAGS)
+LINK_PROFILE = $(LINK_FLAGS)
+LINK_SHARED = $(LINK_FLAGS)
+
+LDFLAGS = @TEST_ARGS@ @LDFLAGS@ \
@LD_MODEL@ @LIBS@ @EXTRA_LIBS@ @LOCAL_LDFLAGS@ $(CXXLIBS)
-LDFLAGS_NORMAL = $(LDFLAGS)
-LDFLAGS_DEBUG = $(LDFLAGS) @CC_G_OPT@
-LDFLAGS_PROFILE = $(LDFLAGS) -pg
-LDFLAGS_SHARED = $(LDFLAGS) @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@)
+LDFLAGS_DEFAULT = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@)
AUTO_SRC = \
etip.h
-all: $(AUTO_SRC) ../lib/$(LIBNAME) demo$x
+all \
+libs :: $(AUTO_SRC) ../lib/$(LIBNAME)
+
+all :: demo$x
sources : $(AUTO_SRC)
+depend :
+
# 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)/cursslk.o \
- $(MODEL)/cursesapp.o \
- $(MODEL)/cursesmain.o
-
-../lib/$(LIBNAME) : $(LIB_OBJS)
- $(AR) $(AR_OPTS) $@ $?
+ $(MODEL)/cursesf$o \
+ $(MODEL)/cursesm$o \
+ $(MODEL)/cursesw$o \
+ $(MODEL)/cursespad$o \
+ $(MODEL)/cursesp$o \
+ $(MODEL)/cursslk$o \
+ $(MODEL)/cursesapp$o \
+ $(MODEL)/cursesmain$o
+
+../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS)
+ $(CXX_AR) $(CXX_AR_OPTS) $@ $?
$(RANLIB) $@
-OBJS_DEMO = $(MODEL)/demo.o
+../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
+ cd ../lib && $(LIBTOOL_LINK) $(CXX) $(CXXFLAGS) \
+ -o $(LIBNAME) $(LIB_OBJS:$o=.lo) \
+ -rpath $(INSTALL_PREFIX)$(libdir) \
+ -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR) $(SHLIB_LIST)
+
+OBJS_DEMO = $(MODEL)/demo$o
-$(MODEL)/demo.o : $(srcdir)/demo.cc \
+$(MODEL)/demo$o : $(srcdir)/demo.cc \
$(cursesf_h) $(cursesm_h) $(cursesapp_h)
demo$x: $(OBJS_DEMO) \
cp $(srcdir)/etip.h.in $@
sh $(srcdir)/edit_cfg.sh ../include/ncurses_cfg.h $@
-$(INSTALL_PREFIX)$(libdir) :
- $(srcdir)/../mkinstalldirs $@
+$(DESTDIR)$(libdir) :
+ sh $(srcdir)/../mkinstalldirs $@
install \
-install.libs:: ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)
- $(INSTALL) ../lib/$(LIBNAME) $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+install.libs:: ../lib/$(LIBNAME) $(DESTDIR)$(libdir)
+ $(LIBTOOL_INSTALL) $(INSTALL) ../lib/$(LIBNAME) $(DESTDIR)$(libdir)/$(LIBNAME)
uninstall \
uninstall.libs::
- -rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+ -$(LIBTOOL_UNINSTALL) rm -f $(DESTDIR)$(libdir)/$(LIBNAME)
mostlyclean ::
- -rm -f core tags TAGS *~ *.ln *.atac trace
+ -rm -f core tags TAGS *~ *.bak *.i *.ii *.ln *.atac trace
clean :: mostlyclean
- -rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(OBJS_DEMO)
+ -sh -c "if test -n '$x' ; then $(MAKE) clean x=''; fi"
+ -rm -rf $(MODEL)/SunWS_cache
+ -$(LIBTOOL_CLEAN) rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(LIB_OBJS:$o=.lo) $(OBJS_DEMO)
+ -rm -rf .libs
distclean :: clean
-rm -f Makefile