]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - c++/Makefile.in
ncurses 5.2
[ncurses.git] / c++ / Makefile.in
index e8079893736f4ce81c3a68c51df86db10bb9d8f6..630499450afe2953b18d9a99bd0c92b27db30ed5 100644 (file)
@@ -1,4 +1,4 @@
-# $Id: Makefile.in,v 1.52 2000/05/28 01:44:34 tom Exp $
+# $Id: Makefile.in,v 1.56 2000/10/15 00:43:38 tom Exp $
 ##############################################################################
 # Copyright (c) 1998,1999 Free Software Foundation, Inc.                     #
 #                                                                            #
@@ -41,13 +41,15 @@ CF_MFLAGS   = @cf_cv_makeflags@
 x              = @PROG_EXT@
 
 MODEL          = ../@DFT_OBJ_SUBDIR@
-INSTALL_PREFIX = @INSTALL_PREFIX@
+DESTDIR                = @DESTDIR@
 srcdir         = @srcdir@
 prefix         = @prefix@
 exec_prefix    = @exec_prefix@
 libdir         = @libdir@
 includedir     = @includedir@
 
+LIBTOOL                = @LIBTOOL@
+
 INSTALL                = @INSTALL@
 INSTALL_DATA   = @INSTALL_DATA@
 
@@ -64,6 +66,7 @@ CPPFLAGS      = -I../c++ -I$(INCDIR) -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@
 
 CCFLAGS                = $(CPPFLAGS) $(CXXFLAGS)
 
+CFLAGS_LIBTOOL = $(CCFLAGS)
 CFLAGS_NORMAL  = $(CCFLAGS)
 CFLAGS_DEBUG   = $(CCFLAGS) @CXX_G_OPT@ -DTRACE
 CFLAGS_PROFILE = $(CCFLAGS) -pg
@@ -71,25 +74,37 @@ CFLAGS_SHARED       = $(CCFLAGS) @CC_SHARED_OPTS@
 
 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) $(CXX) @CXXLDFLAGS@
+
+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++@LIB_SUFFIX@
-LIBNAME        = @LIB_PREFIX@$(LIBROOT).a
+LINK_FLAGS     = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) -l$(LIBROOT)
 
-LDFLAGS                = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) \
-       -l$(LIBROOT) \
-       @TEST_ARGS@ @LDFLAGS@ \
+LINK_LIBTOOL   = @EXTRA_LDFLAGS@ -L../lib -L$(libdir) ../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_LIBTOOL        = $(LDFLAGS)
 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@)
+LDFLAGS_DEFAULT        = $(LINK_@DFT_UPR_MODEL@) $(LDFLAGS_@DFT_UPR_MODEL@)
 
 AUTO_SRC       = \
                etip.h
@@ -114,10 +129,15 @@ LIB_OBJS = \
        $(MODEL)/cursesapp.o \
        $(MODEL)/cursesmain.o
 
-../lib/$(LIBNAME) : $(LIB_OBJS)
+../lib/$(LIBNAME_NORMAL) : $(LIB_OBJS)
        $(AR) $(AR_OPTS) $@ $?
        $(RANLIB) $@
 
+../lib/$(LIBNAME_LIBTOOL) : $(LIB_OBJS)
+       cd ../lib && $(LIBTOOL) $(CXX) -o $(LIBNAME) $(LIB_OBJS:.o=.lo) \
+               -rpath $(INSTALL_PREFIX)$(libdir) \
+               -version-info $(NCURSES_MAJOR):$(NCURSES_MINOR)
+
 OBJS_DEMO = $(MODEL)/demo.o
 
 $(MODEL)/demo.o : $(srcdir)/demo.cc \
@@ -132,22 +152,23 @@ 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_PREFIX)$(libdir) :
+$(DESTDIR)$(libdir) :
        $(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) ../lib/$(LIBNAME) $(DESTDIR)$(libdir)/$(LIBNAME)
 
 uninstall \
 uninstall.libs::
-       -rm -f $(INSTALL_PREFIX)$(libdir)/$(LIBNAME)
+       -$(LIBTOOL) rm -f $(DESTDIR)$(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)
+       -$(LIBTOOL) rm -f demo$x $(AUTO_SRC) ../lib/$(LIBNAME) $(LIB_OBJS) $(LIB_OBJS:.o=.lo) $(OBJS_DEMO)
+       -rm -rf .libs
 
 distclean :: clean
        -rm -f Makefile