summaryrefslogtreecommitdiff
path: root/libstdc++
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1998-08-30 21:18:37 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1998-08-30 21:18:37 +0000
commitfaea7e667b37929b072442356c7ef0b5fe811c0f (patch)
tree27c0539168d9ec3467724bc5037192c09633922a /libstdc++
parent84e6c574f4678863986ddb2461c22d466269509f (diff)
downloadgcc-faea7e667b37929b072442356c7ef0b5fe811c0f.tar.gz
d
* Makefile.in (INTERFACE): New, set to 2. (ARLIB): Set to libstdc++.a.$(VERSION) (ARLINK, MARLINK): New macros. (LIBS): Add $(ARLINK). ($(ARLINK), marlink): New targets. (install): Don't check $(libsubdir). Handle versioned libraries. * config/linux.ml (ARLIB, MARLINK, SHLIB, MSHLINK): New macros. (LIBS): Add marlink $(ARLINK). * config/aix.ml (ARLIB): Set to libstdc++-ar.a.$(VERSION) (ARLINK): New macros. (BUILD_LIBS): Add $(ARLINK). * config/dec-osf.ml (LIBS): Add $(ARLINK). * config/elf.ml (LIBS): Likewise. * config/elfshlibm.ml (LIBS): Likewise. * config/hpux.ml (LIBS): Likewise. * config/iris5.ml (LIBS): Likewise. * config/sol2shm.ml (LIBS): Likewise. * config/sunos4.ml (LIBS): Likewise. * configure.in: Use ${topsrcdir}/config.if to put LIBSTDCXX_INTERFACE, CXX_INTERFACE, LIBC_INTERFACE in ${package_makefile_frag}. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@22114 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++')
-rw-r--r--libstdc++/Makefile.in36
1 files changed, 31 insertions, 5 deletions
diff --git a/libstdc++/Makefile.in b/libstdc++/Makefile.in
index 77e2ec931b2..6736c2c9699 100644
--- a/libstdc++/Makefile.in
+++ b/libstdc++/Makefile.in
@@ -15,6 +15,7 @@
# Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
VERSION = 2.9.0
+INTERFACE = 2
OBJS = cstringi.o stdexcepti.o cstdlibi.o cmathi.o stlinst.o
SUBLIBS = $(STAMP)-string $(STAMP)-complx
@@ -27,7 +28,9 @@ HEADERS= cassert cctype cerrno cfloat ciso646 climits clocale cmath complex \
memory numeric pthread_alloc queue rope set slist stack utility \
vector fstream iomanip iostream strstream iosfwd
-ARLIB = libstdc++.a
+ARLIB = libstdc++.a.$(VERSION)
+ARLINK = libstdc++.a
+MARLINK = libstdc++.a.`echo $(VERSION) | sed 's/\([0-9][.][0-9]\).*/\1/'`
SHLIB = libstdc++.so.$(VERSION)
SHARLIB = libstdc++-sh.a
SHLINK = libstdc++.so
@@ -37,7 +40,7 @@ SHDEPS =
STAMP = bigstmp
-LIBS = $(ARLIB)
+LIBS = $(ARLIB) $(ARLINK)
#### package, host, target, and site dependent Makefile fragments come in here.
##
@@ -85,6 +88,12 @@ $(ARLIB): stdlist
mv t$(ARLIB) $(ARLIB)
$(RANLIB) $(ARLIB)
+$(ARLINK):
+ ln -f -s $(ARLIB) $(ARLINK)
+
+marlink:
+ @$(MAKE) $(MARLINK) "ARLINK=$(MARLINK)"
+
$(SHLIB): piclist
$(CC) $(LIBCXXFLAGS) $(SHFLAGS) -shared -o $(SHLIB) `cat piclist` $(SHDEPS)
@@ -270,21 +279,38 @@ install:
else true ; \
fi
rootme=`pwd`/ ; export rootme ; \
- if [ x$(libsubdir) = x ] || [ x$(enable_version_specific_runtime_libs) != xyes ]; then \
+ if [ x$(enable_version_specific_runtime_libs) != xyes ]; then \
INSTALLDIR=$(libdir); \
else \
INSTALLDIR=$(libsubdir); \
fi; \
- rm -f $${INSTALLDIR}$(MULTISUBDIR)/$(SHLINK) ; \
+ INSTALLLINKDIR=$(libsubdir); \
+ rm -f $${INSTALLLINKDIR}$(MULTISUBDIR)/$(SHLINK) ; \
+ rm -f $${INSTALLLINKDIR}$(MULTISUBDIR)/$(ARLINK) ; \
for FILE in $(LIBS) ; do \
rm -f $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
if [ $$FILE = $(SHLINK) ] ; then \
- ln -f -s $(SHLIB) $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
+ if [ -f $${INSTALLDIR}/$(MSHLINK) ]; then \
+ ln -f -s $${INSTALLDIR}/$(MSHLINK) $${INSTALLLINKDIR}$(MULTISUBDIR)/$$FILE ; \
+ else \
+ ln -f -s $${INSTALLDIR}/$(SHLIB) $${INSTALLLINKDIR}$(MULTISUBDIR)/$$FILE ; \
+ fi; \
+ elif [ $$FILE = $(ARLINK) ] ; then \
+ if [ -f $${INSTALLDIR}/$(MARLINK) ]; then \
+ ln -f -s $${INSTALLDIR}/$(MARLINK) $${INSTALLLINKDIR}$(MULTISUBDIR)/$$FILE ; \
+ else \
+ ln -f -s $${INSTALLDIR}/$(ARLIB) $${INSTALLLINKDIR}$(MULTISUBDIR)/$$FILE ; \
+ fi; \
elif [ $$FILE = mshlink ]; then \
for FILE in $(MSHLINK) ; do \
rm -f $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
ln -f -s $(SHLIB) $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
done; \
+ elif [ $$FILE = marlink ]; then \
+ for FILE in $(MARLINK) ; do \
+ rm -f $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
+ ln -f -s $(ARLIB) $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
+ done; \
elif [ $$FILE = $(SHLIB) ]; then \
$(INSTALL_PROGRAM) $$FILE $${INSTALLDIR}$(MULTISUBDIR)/$$FILE ; \
: On the HP, shared libraries must be mode 555. ;\