summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoretheisen <etheisen@cvs.openbsd.org>1996-03-16 05:18:58 +0000
committeretheisen <etheisen@cvs.openbsd.org>1996-03-16 05:18:58 +0000
commitfa9311865deac4c1c188bec200dbb2929b7901d0 (patch)
treecdb42b13f0eee2b33e2aaa1c264797f5affdc99d
parentc96242f4b8d6ec9200c877ab81058c34eaaebda2 (diff)
Allow native BSD build of libg++ 2.7.1. This is a complete replacement of
the GNU build procedure, not a wrapper. Generates standard, profiled, shared object, and shared library versions of libiberty, libstdc++, and libg++. libiberty version 0.0, libstdc++ version 27.1, and libg++ version 27.1. Requires modification of bsd.subdir.mk pmake include. Targets linked with the shared libraries libstdc++ and libg++ will, by default, automatically be run time linked with libm and libcurses.
-rw-r--r--gnu/lib/libg++/Makefile.bsd-wrapper6
-rw-r--r--gnu/lib/libg++/etc/Makefile.bsd-wrapper15
-rw-r--r--gnu/lib/libg++/libg++/Makefile.bsd-wrapper75
-rw-r--r--gnu/lib/libg++/libg++/genclass/Makefile.bsd-wrapper29
-rw-r--r--gnu/lib/libg++/libg++/gperf/Makefile.bsd-wrapper35
-rw-r--r--gnu/lib/libg++/libg++/shlib_version2
-rw-r--r--gnu/lib/libg++/libiberty/Makefile.bsd-wrapper73
-rw-r--r--gnu/lib/libg++/libiberty/shlib_version2
-rw-r--r--gnu/lib/libg++/libio/Makefile.bsd-wrapper87
-rw-r--r--gnu/lib/libg++/libio/shlib_version2
-rw-r--r--gnu/lib/libg++/librx/Makefile.bsd-wrapper16
-rw-r--r--gnu/lib/libg++/librx/shlib_version2
-rw-r--r--gnu/lib/libg++/libstdc++/Makefile.bsd-wrapper377
-rw-r--r--gnu/lib/libg++/libstdc++/shlib_version2
-rw-r--r--gnu/lib/libg++/libstdc++/stl/Makefile.bsd-wrapper26
-rw-r--r--gnu/lib/libg++/libstdc++/stl/shlib_version2
16 files changed, 751 insertions, 0 deletions
diff --git a/gnu/lib/libg++/Makefile.bsd-wrapper b/gnu/lib/libg++/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..2b5d8e1787c
--- /dev/null
+++ b/gnu/lib/libg++/Makefile.bsd-wrapper
@@ -0,0 +1,6 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:41 etheisen Exp $
+
+SUBDIR+= libiberty libio libstdc++ librx libg++ etc
+
+
+.include <bsd.subdir.mk>
diff --git a/gnu/lib/libg++/etc/Makefile.bsd-wrapper b/gnu/lib/libg++/etc/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..94cdbfd4a9c
--- /dev/null
+++ b/gnu/lib/libg++/etc/Makefile.bsd-wrapper
@@ -0,0 +1,15 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:43 etheisen Exp $
+
+FILES= cfg-paper.info* configure.info* standards.info*
+MAN= configure.cat1
+
+all clean cleandir depend lint tags:
+
+afterinstall:
+ @-cd $(.CURDIR); for i in $(FILES); do \
+ cmp -s $$i $(DESTDIR)/usr/share/info/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/share/info/$$i; \
+ done
+
+.include <bsd.prog.mk>
diff --git a/gnu/lib/libg++/libg++/Makefile.bsd-wrapper b/gnu/lib/libg++/libg++/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..d7119bea3be
--- /dev/null
+++ b/gnu/lib/libg++/libg++/Makefile.bsd-wrapper
@@ -0,0 +1,75 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:44 etheisen Exp $
+
+VERSION = 2.7.1
+LIBG++_DIST_VERSION = 2.7.1
+
+.PATH: $(.CURDIR)/src
+
+SUBDIR+= gperf genclass
+
+LIB= g++
+CXXFLAGS+= -fno-implicit-templates
+CPPFLAGS+= -I. -I$(.CURDIR)/src -I$(.CURDIR)/../libio \
+ -I$(.CURDIR)/../libstdc++ -I../libio
+LDADD+= -lcurses
+
+CXXSRCS= AllocRing.cc Obstack.cc builtin.cc $(REGEX_OBJ) Regex.cc \
+ String.cc Intdouble.cc Integer.cc Rational.cc Random.cc \
+ BitSet.cc BitString.cc LogNorm.cc SmplHist.cc SmplStat.cc \
+ Normal.cc NegExp.cc Weibull.cc Erlang.cc DiscUnif.cc \
+ Uniform.cc Poisson.cc HypGeom.cc Geom.cc Binomial.cc RNG.cc \
+ ACG.cc MLCG.cc RndInt.cc Fix.cc Fix16.cc Fix24.cc \
+ CursesW.cc GetOpt.cc chr.cc error.cc gcd.cc hash.cc lg.cc \
+ fmtq.cc ioob.cc pow.cc sqrt.cc str.cc compare.cc \
+ SLList.cc DLList.cc
+CXXOBJS= $(CXXSRCS:N*.h:R:S/$/.o/g)
+CSRCS= bitand.c bitany.c bitblt.c bitclear.c bitcopy.c bitcount.c \
+ bitinvert.c bitlcomp.c bitset1.c bitxor.c timer.c
+COBJS= $(CSRCS:N*.h:R:S/$/.o/g)
+GXXOBJS= $(CXXOBJS) $(COBJS)
+
+RX_DIR= ../librx
+RXOBJ= $(RX_DIR)/rx.o
+LIBIO_DIR= ../libio
+G_CFG_H= $(LIBIO)/_G_config.h
+
+SRCS= $(CXXSRCS) $(CSRCS) $(RXOBJ)
+
+CLEANFILES+= rx.h
+
+all: rx.h $(G_CFG_H)
+
+beforedepend: rx.h $(G_CFG_H)
+
+rx.h:
+ ln -s $(.CURDIR)/../librx/rx.h
+
+$(G_CFG_H):
+ @cd $(.CURDIR)/../libio; $(MAKE) -f Makefile.bsd-wrapper _G_config.h
+
+$(RXOBJ) $(RXOBJ:.o=.po) $(RXOBJ:.o=.so):
+ cd $(.CURDIR)/../$(RX_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+clean: _SUBDIRUSE
+ rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES}
+ rm -f lib${LIB}.a ${GXXOBJS}
+ rm -f lib${LIB}_p.a ${GXXOBJS:.o=.po}
+ rm -f lib${LIB}_pic.a lib${LIB}.so.*.* ${GXXOBJS:.o=.so}
+ rm -f llib-l${LIB}.ln ${GXXOBJS:.o=.ln}
+
+afterinstall:
+ install -d -m 755 -o $(BINOWN) -g $(BINGRP) \
+ $(DESTDIR)/usr/include/g++/gen
+ @-cd $(.CURDIR); for i in libg++.info*; do \
+ cmp -s $$i $(DESTDIR)/usr/share/info/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/share/info/$$i; \
+ done
+ @-cd $(.CURDIR)/src; for i in *.h gen/*.ccP gen/*.hP; do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+
+
+.include <bsd.lib.mk> \ No newline at end of file
diff --git a/gnu/lib/libg++/libg++/genclass/Makefile.bsd-wrapper b/gnu/lib/libg++/libg++/genclass/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..ad053447caf
--- /dev/null
+++ b/gnu/lib/libg++/libg++/genclass/Makefile.bsd-wrapper
@@ -0,0 +1,29 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:47 etheisen Exp $
+
+PROG= genclass
+SRCS=
+NOMAN=
+CLEANFILES+= genclass.tmp sedscript my.out
+
+install:
+ install ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
+ ${PROG} ${DESTDIR}/usr/bin
+
+tags:
+
+GXX_INCLUDEDIR= /usr/include/g++
+
+genclass: genclass.sh
+ echo "/^PROTODIR=/c\\" > sedscript
+ echo "PROTODIR=$$\{PROTODIR-$(GXX_INCLUDEDIR)/gen\}" >> sedscript
+ sed <$(.CURDIR)/../Makefile.bsd-wrapper -n -e '/VERSION/s/LIBG++_DIST_VERSION *= *\(.*\)/s|<VERSION>|\1|/p' >> sedscript
+ sed -f sedscript < $(.CURDIR)/genclass.sh > genclass.tmp
+ chmod 0755 genclass.tmp
+ rm -f sedscript
+ mv genclass.tmp genclass
+
+gentest: gentest.sh expected.out
+ $(.CURDIR)/gentest.sh > my.out 2>&1
+ diff $(.CURDIR)/expected.out my.out
+
+.include <bsd.prog.mk>
diff --git a/gnu/lib/libg++/libg++/gperf/Makefile.bsd-wrapper b/gnu/lib/libg++/libg++/gperf/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..4a536e26b2f
--- /dev/null
+++ b/gnu/lib/libg++/libg++/gperf/Makefile.bsd-wrapper
@@ -0,0 +1,35 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:48 etheisen Exp $
+
+.PATH: $(.CURDIR)/src
+
+PROG= gperf
+CC= g++
+CPPFLAGS+= -nostdinc++ -I$(.CURDIR)/src -I$(.CURDIR)/../../libio \
+ -I$(.CURDIR)/../../libstdc++ -I$(.CURDIR)/../src \
+ -I../../libio
+SRCS= new.cc options.cc iterator.cc main.cc gen-perf.cc \
+ key-list.cc list-node.cc hash-table.cc bool-array.cc \
+ read-line.cc std-err.cc version.cc
+LDFLAGS+= -L../../libstdc++ -L..
+
+STD_DIR= ../../libstdc++
+GXX_DIR= ..
+
+all: $(STD_DIR)/libstdc++.a $(GXX_DIR)/libg++.a
+
+$(STD_DIR)/libstdc++.a:
+ cd $(STD_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+$(GXX_DIR)/libg++.a:
+ cd $(GXX_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+install: maninstall
+ install ${COPY} ${STRIP} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
+ ${PROG} ${DESTDIR}/usr/bin
+ @-cd $(.CURDIR); for i in gperf.info*; do \
+ cmp -s $$i $(DESTDIR)/usr/share/info/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/share/info/$$i; \
+ done
+
+.include <bsd.prog.mk>
diff --git a/gnu/lib/libg++/libg++/shlib_version b/gnu/lib/libg++/libg++/shlib_version
new file mode 100644
index 00000000000..72e5894f74e
--- /dev/null
+++ b/gnu/lib/libg++/libg++/shlib_version
@@ -0,0 +1,2 @@
+major=27
+minor=1
diff --git a/gnu/lib/libg++/libiberty/Makefile.bsd-wrapper b/gnu/lib/libg++/libiberty/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..980cb369c15
--- /dev/null
+++ b/gnu/lib/libg++/libiberty/Makefile.bsd-wrapper
@@ -0,0 +1,73 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:49 etheisen Exp $
+
+LIB= iberty
+CPPFLAGS+= -I$(.CURDIR) -I$(.CURDIR)/../include -I$(.OBJDIR)
+
+# You must do a GNU build and then examine needed-list
+# and config.h to determine HOST_FILES value.
+HOST_FILES= insque.c
+SRCS= argv.c basename.c concat.c cplus-dem.c fdmatch.c \
+ getopt.c getopt1.c getruntime.c hex.c \
+ floatformat.c obstack.c spaces.c strerror.c strsignal.c \
+ vasprintf.c xatexit.c xexit.c xmalloc.c xstrerror.c \
+ $(HOST_FILES)
+
+CLEANFILES+= alloca-conf.h needed-list $(NEEDED_LIST) config.h needed.awk \
+ needed2.awk errors dummy dummy.o
+
+all: alloca-conf.h config.h needed-list
+
+beforedepend: alloca-conf.h config.h needed-list
+
+alloca-conf.h:
+ @echo Creating $(.TARGET) symlink
+ @ln -s $(.CURDIR)/alloca-norm.h alloca-conf.h
+
+# The following is from the GNU makefile
+NEEDED_LIST= lneeded-list
+EXTRA_OFILES=
+
+needed-list: $(NEEDED_LIST)
+ @cp $(NEEDED_LIST) needed-list
+
+lneeded-list: $(EXTRA_OFILES) needed.awk errors
+ @echo Generating needed-list
+ @rm -f lneeded-list
+ @f=""; \
+ for i in `awk -f needed.awk <errors` $(EXTRA_OFILES) ; do \
+ case " $$f " in \
+ *" $$i "*) ;; \
+ *) f="$$f $$i" ;; \
+ esac ; \
+ done ; \
+ echo $$f >>lneeded-list
+
+needed.awk: functions.def
+ @echo "# !Automatically generated from $(.CURDIR)/functions.def"\
+ "- DO NOT EDIT!" >needed.awk
+ @grep '^DEF(' < $(.CURDIR)/functions.def \
+ | sed -e '/DEF/s|DEF.\([^,]*\).*|/\1/ { printf "\1.o " }|' \
+ >>needed.awk
+
+config.h: needed2.awk errors
+ @echo Generating $(.TARGET)
+ @echo "/* !Automatically generated from $(.CURDIR)/functions.def"\
+ "- DO NOT EDIT! */" >config.h
+ @awk -f needed2.awk <errors >>config.h
+
+needed2.awk: functions.def
+ @echo "# !Automatically generated from $(.CURDIR)/functions.def"\
+ "- DO NOT EDIT!" >needed2.awk
+ @grep '^DEFVAR(' < $(.CURDIR)/functions.def \
+ | sed -e '/DEFVAR/s|DEFVAR.\([^,]*\).*|/\1/ { printf "#ifndef NEED_\1\\n#define NEED_\1\\n#endif\\n" }|' >>needed2.awk
+ @grep '^DEFFUNC(' < $(.CURDIR)/functions.def \
+ | sed -e '/DEFFUNC/s|DEFFUNC.\([^,]*\).*|/\1/ { printf "#ifndef NEED_\1\\n#define NEED_\1\\n#endif\\n" }|' >>needed2.awk
+
+dummy.o: dummy.c functions.def
+ @echo Generating $(.TARGET)
+ @$(CC) -c $(CFLAGS) $(CPPFLAGS) $(.IMPSRC) 2>/dev/null
+
+errors: dummy.o
+ @-($(CC) -o dummy $(CFLAGS) $(LDFLAGS) dummy.o) >errors 2>&1 || true
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/libg++/libiberty/shlib_version b/gnu/lib/libg++/libiberty/shlib_version
new file mode 100644
index 00000000000..97c9f92d6b8
--- /dev/null
+++ b/gnu/lib/libg++/libiberty/shlib_version
@@ -0,0 +1,2 @@
+major=0
+minor=0
diff --git a/gnu/lib/libg++/libio/Makefile.bsd-wrapper b/gnu/lib/libg++/libio/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..719fee09a74
--- /dev/null
+++ b/gnu/lib/libg++/libio/Makefile.bsd-wrapper
@@ -0,0 +1,87 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:51 etheisen Exp $
+
+LIBIO= io
+LIBIOSTREAM= iostream
+LIB= $(LIBIO)
+CXXFLAGS+= -fno-implicit-templates -nostdinc++
+CPPFLAGS+= -I$(.CURDIR) -I$(.OBJDIR)
+VERSION= 2.7.1
+
+IO_SRCS= filedoalloc.c floatconv.c genops.c fileops.c iovfprintf.c \
+ iovfscanf.c ioignore.c iopadn.c iofgetpos.c iofread.c \
+ iofscanf.c iofsetpos.c iogetdelim.c iogetline.c ioprintf.c \
+ ioseekoff.c ioseekpos.c outfloat.c strops.c iofclose.c \
+ iopopen.c ioungetc.c
+IOSTREAM_SRCS= builtinbuf.cc filebuf.cc fstream.cc indstream.cc ioassign.cc \
+ ioextend.cc iomanip.cc iostream.cc isgetline.cc isgetsb.cc \
+ isscan.cc osform.cc procbuf.cc sbform.cc sbgetline.cc \
+ sbscan.cc stdiostream.cc stdstrbufs.cc stdstreams.cc \
+ stream.cc streambuf.cc strstream.cc PlotFile.cc SFile.cc \
+ parsestream.cc pfstream.cc editbuf.cc
+STDIO_WRAP_SRCS=iofdopen.c iofflush.c iofgets.c iofopen.c iofprintf.c \
+ iofputs.c iofwrite.c iogets.c ioperror.c ioputs.c ioscanf.c \
+ iosetbuffer.c iosetvbuf.c iosprintf.c iosscanf.c ioftell.c \
+ iovsprintf.c iovsscanf.c
+OSPRIM_SRCS= ioprims.c iostrerror.c cleanup.c
+LIBIO_SRCS= $(IO_SRCS) $(STDIO_WRAP_SRCS) $(OSPRIM_SRCS) stdfiles.c
+LIBIOSTREAM_SRCS= $(IO_SRCS) $(IOSTREAM_SRCS) $(OSPRIM_SRCS)
+
+SRCS= $(LIBIO_SRCS)
+
+CLEANFILES+= _G_config.h iostream.list
+
+FILES= *.h
+
+all: _G_config.h iostream.list $(LIBIOSTREAM)
+
+beforedepend: _G_config.h
+
+$(LIBIOSTREAM):
+ @if [ -z "$(MAKE_IOSTREAM)" ] ; then \
+ cd $(.CURDIR); $(MAKE) -f $(.CURDIR)/Makefile.bsd-wrapper LIB=$(LIBIOSTREAM) SRCS='$$(LIBIOSTREAM_SRCS)' MAKE_IOSTREAM=true ; \
+ exit ; \
+ fi
+
+_G_config.h: gen-params
+ @echo Building $(.TARGET)
+ @rootme=`pwd`/ ; export rootme; \
+ CC="$(CC)"; export CC; \
+ CXX="$(CXX) $(CXXFLAGS)"; export CXX; \
+ CONFIG_NM="nm"; export CONFIG_NM; \
+ $(SHELL) $(.CURDIR)/gen-params LIB_VERSION=$(VERSION) $(G_CONFIG_ARGS) >tmp-params.h
+ @mv tmp-params.h _G_config.h
+
+iostream.list: _G_config.h
+ @echo Generating $(.TARGET)
+ @echo "$(LIBIOSTREAM_SRCS:N*.h:R:S/$/.o/g)" > iostream.list
+clean:
+ rm -f a.out [Ee]rrs mklog core *.core $(CLEANFILES)
+ rm -f lib$(LIBIO).a $(LIBIO_SRCS:.c=.o)
+ rm -f lib$(LIBIO)_p.a $(LIBIO_SRCS:.c=.po)
+ rm -f lib$(LIBIO)_pic.a lib$(LIBIO).so.*.* $(LIBIO_SRCS:.c=.so)
+ rm -f llib-lib$(LIBIO).ln $(LIBIO_SRCS:.c=.ln)
+ rm -f lib$(LIBIOSTREAM).a $(IOSTREAM_SRCS:.cc=.o)
+ rm -f lib$(LIBIOSTREAM)_p.a $(IOSTREAM_SRCS:.cc=.po)
+ rm -f lib$(LIBIOSTREAM)_pic.a lib$(LIBIOSTREAM).so.*.* \
+ $(IOSTREAM_SRCS:.cc=.so)
+ rm -f llib-lib$(LIBIOSTREAM).ln $(IOSTREAM_SRCS:.cc=.ln)
+
+install: _G_config.h
+ install -d -m 755 -o $(BINOWN) -g $(BINGRP) /usr/include/g++
+ @-cd $(.CURDIR); for i in $(FILES); do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+ @-for i in $(FILES); do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+ @-cd $(.CURDIR); for i in iostream.info* ; do \
+ cmp -s $$i $(DESTDIR)/usr/share/info/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/share/info/$$i; \
+ done
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/libg++/libio/shlib_version b/gnu/lib/libg++/libio/shlib_version
new file mode 100644
index 00000000000..72e5894f74e
--- /dev/null
+++ b/gnu/lib/libg++/libio/shlib_version
@@ -0,0 +1,2 @@
+major=27
+minor=1
diff --git a/gnu/lib/libg++/librx/Makefile.bsd-wrapper b/gnu/lib/libg++/librx/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..e00ee756af4
--- /dev/null
+++ b/gnu/lib/libg++/librx/Makefile.bsd-wrapper
@@ -0,0 +1,16 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:53 etheisen Exp $
+
+LIB= rx
+CFLAGS+= -DHAVE_ALLOCA=1 -DSTDC_HEADERS=1 -DHAVE_STRING_H=1
+CPPFLAGS+= -I$(.CURDIR)
+
+SRCS= rx.c
+
+install:
+ @-cd $(.CURDIR); for i in *.h; do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/libg++/librx/shlib_version b/gnu/lib/libg++/librx/shlib_version
new file mode 100644
index 00000000000..97c9f92d6b8
--- /dev/null
+++ b/gnu/lib/libg++/librx/shlib_version
@@ -0,0 +1,2 @@
+major=0
+minor=0
diff --git a/gnu/lib/libg++/libstdc++/Makefile.bsd-wrapper b/gnu/lib/libg++/libstdc++/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..72764b5f88e
--- /dev/null
+++ b/gnu/lib/libg++/libstdc++/Makefile.bsd-wrapper
@@ -0,0 +1,377 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:55 etheisen Exp $
+
+LIB= stdc++
+CXXFLAGS+= -fno-implicit-templates -nostdinc++
+CPPFLAGS+= -I$(.CURDIR) -I$(.CURDIR)/../libio -I../libio
+LDADD+= -lm
+
+SUBDIR+= stl
+
+# stdc++ sources/objs
+STD_SRCS= newi.cc cstringi.cc stddefi.cc stdexcepti.cc typeinfoi.cc \
+ exceptioni.cc cstdlibi.cc cmathi.cc
+SPEC_OBJS= cstrmain.o cstrio.o fcomplex.o fcomio.o dcomplex.o dcomio.o \
+ ldcomplex.o ldcomio.o
+STD_OBJS= $(STD_SRCS:N*.h:R:S/$/.o/g) $(SPEC_OBJS)
+
+IO_DIR= ../libio
+LIBIBERTY_DIR= ../libiberty
+STL_DIR= ./stl
+STD_DIR= ./std
+
+IO_OBJS!= cat $(IO_DIR)/iostream.list
+QIO_OBJS= $(IO_OBJS:S/^/$(IO_DIR)\//g)
+
+LIBIBERTY_OBJS!=cat $(LIBIBERTY_DIR)/needed-list
+LIBIBERTY_OBJS+=strerror.o
+QLIBIBERTY_OBJS=$(LIBIBERTY_OBJS:S/^/$(LIBIBERTY_DIR)\//g)
+
+STL_OBJS= $(STL_DIR)/tempbuf.o $(STL_DIR)/tree.o $(STL_DIR)/random.o
+
+SRCS= $(STD_SRCS) $(SPEC_OBJS) $(QIO_OBJS) $(QLIBIBERTY_OBJS) \
+ $(STL_OBJS)
+
+HEADERS= cassert cctype cerrno cfloat ciso646 climits clocale cmath \
+ complex csetjmp csignal cstdarg cstddef cstdio cstdlib \
+ cstring ctime cwchar cwctype new stddef string exception \
+ stdexcept typeinfo algorithm deque list map queue set stack \
+ vector utility functional iterator memory numeric
+
+clean: _SUBDIRUSE
+ rm -f a.out [Ee]rrs mklog core *.core ${CLEANFILES}
+ rm -f lib${LIB}.a ${STD_OBJS}
+ rm -f lib${LIB}_p.a ${STD_OBJS:.o=.po}
+ rm -f lib${LIB}_pic.a lib${LIB}.so.*.* ${STD_OBJS:.o=.so}
+ rm -f llib-l${LIB}.ln ${STD_OBJS:.o=.ln}
+
+afterinstall:
+ install -d -m 755 -o $(BINOWN) -g $(BINGRP) /usr/include/g++/std
+ @-cd $(.CURDIR); for i in $(HEADERS) *.h std/*.*; do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+#
+# Misc GNU overidden targets.
+#
+$(STL_OBJS) $(STL_OBJS:.o=.po) $(STL_OBJS:.o=.so):
+ cd $(.CURDIR)/$(STL_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+$(QIO_OBJS) $(QIO_OBJS:.o=.po) $(QIO_OBJS:.o=.so):
+ cd $(.CURDIR)/$(IO_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+$(QLIBIBERTY_OBJS) $(QLIBIBERTY_OBJS:.o=.po) $(QLIBIBERTY_OBJS:.o=.so):
+ cd $(.CURDIR)/$(LIBIBERTY_DIR); $(MAKE) -f Makefile.bsd-wrapper
+
+stdexcepti.o: stdexcepti.cc $(.CURDIR)/std/stdexcept.h
+ @echo "${COMPILE.cc} -frtti ${.IMPSRC}"
+ @${COMPILE.cc} -frtti ${.IMPSRC} -frtti -o ${.TARGET}.o
+ @${LD} -x -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+stdexcepti.po: stdexcepti.cc $(.CURDIR)/std/stdexcept.h
+ @echo "${COMPILE.cc} -frtti -p ${.IMPSRC} -o ${.TARGET}"
+ @${COMPILE.cc} -frtti -p ${.IMPSRC} -o ${.TARGET}.o
+ @${LD} -X -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+stdexcepti.so: stdexcepti.cc $(.CURDIR)/std/stdexcept.h
+ @echo "${COMPILE.cc} -frtti ${PICFLAG} -DPIC ${.IMPSRC} -o ${.TARGET}"
+ @${COMPILE.cc} -frtti ${PICFLAG} -DPIC ${.IMPSRC} -o ${.TARGET}.o
+ @${LD} -x -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+typeinfoi.o: typeinfoi.cc $(.CURDIR)/std/typeinfo.h
+ @echo "${COMPILE.cc} -frtti ${.IMPSRC}"
+ @${COMPILE.cc} -frtti ${.IMPSRC} -o ${.TARGET}.o
+ @${LD} -x -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+typeinfoi.po: typeinfoi.cc $(.CURDIR)/std/typeinfo.h
+ @echo "${COMPILE.cc} -frtti -p ${.IMPSRC} -o ${.TARGET}"
+ @${COMPILE.cc} -frtti -p ${.IMPSRC} -o ${.TARGET}.o
+ @${LD} -X -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+typeinfoi.so: typeinfoi.cc $(.CURDIR)/std/typeinfo.h
+ @echo "${COMPILE.cc} -frtti ${PICFLAG} -DPIC ${.IMPSRC} -o ${.TARGET}"
+ @${COMPILE.cc} -frtti ${PICFLAG} -DPIC ${.IMPSRC} -o ${.TARGET}.o
+ @${LD} -x -r ${.TARGET}.o -o ${.TARGET}
+ @rm -f ${.TARGET}.o
+
+STRFUNCS= REP MAIN TRAITS ADDSS ADDPS ADDCS ADDSP ADDSC \
+ EQSS EQPS EQSP NESS NEPS NESP LTSS LTPS LTSP GTSS GTPS GTSP \
+ LESS LEPS LESP GESS GEPS GESP
+STRIO= EXTRACT INSERT GETLINE
+COMFUNCS= MAIN ADDCC ADDCF ADDFC SUBCC SUBCF SUBFC MULCC MULCF MULFC \
+ DIVCC DIVCF DIVFC PLUS MINUS EQCC EQCF EQFC NECC NECF NEFC \
+ ABS ARG POLAR CONJ NORM COS COSH EXP LOG POWCC POWCF POWCI \
+ POWFC SIN SINH SQRT
+COMIO= EXTRACT INSERT
+
+cstrmain.o: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.o'
+ @$(COMPILE.cc) -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.o.o
+ @$(LD) -x -r cstrmain.o.o -o cstrmain.o
+ @rm -f cstrmain.o.o
+
+cstrmain.po: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) -p -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.po'
+ @$(COMPILE.cc) -p -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.po.o
+ @$(LD) -X -r cstrmain.po.o -o cstrmain.po
+ @rm -f cstrmain.po.o
+
+cstrmain.so: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DC \
+ `for N in $(STRFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrmain.so.o
+ @$(LD) -x -r cstrmain.so.o -o cstrmain.so
+ @rm -f cstrmain.so.o
+
+cstrio.o: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.o'
+ @$(COMPILE.cc) -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.o.o
+ @$(LD) -x -r cstrio.o.o -o cstrio.o
+ @rm -f cstrio.o.o
+
+cstrio.po: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) -p -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.po'
+ @$(COMPILE.cc) -p -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.po.o
+ @$(LD) -X -r cstrio.po.o -o cstrio.po
+ @rm -f cstrio.po.o
+
+cstrio.so: sinst.cc $(STD_DIR)/bastring.h \
+ $(STD_DIR)/bastring.cc $(STD_DIR)/straits.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DC \
+ `for N in $(STRIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/sinst.cc -o cstrio.so.o
+ @$(LD) -x -r cstrio.so.o -o cstrio.so
+ @rm -f cstrio.so.o
+
+fcomplex.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.o'
+ @$(COMPILE.cc) -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.o.o
+ @$(LD) -x -r fcomplex.o.o -o fcomplex.o
+ @rm -f fcomplex.o.o
+
+fcomplex.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.po'
+ @$(COMPILE.cc) -p -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.po.o
+ @$(LD) -X -r fcomplex.po.o -o fcomplex.po
+ @rm -f fcomplex.po.o
+
+fcomplex.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DF \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomplex.so.o
+ @$(LD) -x -r fcomplex.so.o -o fcomplex.so
+ @rm -f fcomplex.so.o
+
+
+fcomio.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.o'
+ @$(COMPILE.cc) -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.o.o
+ @$(LD) -x -r fcomio.o.o -o fcomio.o
+ @rm -f fcomio.o.o
+
+fcomio.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.po'
+ @$(COMPILE.cc) -p -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.po.o
+ @$(LD) -X -r fcomio.po.o -o fcomio.po
+ @rm -f fcomio.po.o
+
+fcomio.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DF \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o fcomio.so.o
+ @$(LD) -x -r fcomio.so.o -o fcomio.so
+ @rm -f fcomio.so.o
+
+dcomplex.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.o'
+ @$(COMPILE.cc) -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.o.o
+ @$(LD) -x -r dcomplex.o.o -o dcomplex.o
+ @rm -f dcomplex.o.o
+
+dcomplex.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.po'
+ @$(COMPILE.cc) -p -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.po.o
+ @$(LD) -X -r dcomplex.po.o -o dcomplex.po
+ @rm -f dcomplex.po.o
+
+dcomplex.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomplex.so.o
+ @$(LD) -x -r dcomplex.so.o -o dcomplex.so
+ @rm -f dcomplex.so.o
+
+dcomio.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.o'
+ @$(COMPILE.cc) -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.o.o
+ @$(LD) -x -r dcomio.o.o -o dcomio.o
+ @rm -f dcomio.o.o
+
+dcomio.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.po'
+ @$(COMPILE.cc) -p -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.po.o
+ @$(LD) -X -r dcomio.po.o -o dcomio.po
+ @rm -f dcomio.po.o
+
+dcomio.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o dcomio.so.o
+ @$(LD) -x -r dcomio.so.o -o dcomio.so
+ @rm -f dcomio.so.o
+
+ldcomplex.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.o'
+ @$(COMPILE.cc) -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.o.o
+ @$(LD) -x -r ldcomplex.o.o -o ldcomplex.o
+ @rm -f ldcomplex.o.o
+
+ldcomplex.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.po'
+ @$(COMPILE.cc) -p -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.po.o
+ @$(LD) -X -r ldcomplex.po.o -o ldcomplex.po
+ @rm -f ldcomplex.po.o
+
+ldcomplex.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DLD \
+ `for N in $(COMFUNCS); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomplex.so.o
+ @$(LD) -x -r ldcomplex.so.o -o ldcomplex.so
+ @rm -f ldcomplex.so.o
+
+ldcomio.o: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.o'
+ @$(COMPILE.cc) -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.o.o
+ @$(LD) -x -r ldcomio.o.o -o ldcomio.o
+ @rm -f ldcomio.o.o
+
+ldcomio.po: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) -p -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.po'
+ @$(COMPILE.cc) -p -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.po.o
+ @$(LD) -X -r ldcomio.po.o -o ldcomio.po
+ @rm -f ldcomio.po.o
+
+ldcomio.so: cinst.cc $(STD_DIR)/complext.h $(STD_DIR)/complext.cc \
+ $(STD_DIR)/dcomplex.h $(STD_DIR)/ldcomplex.h
+ @echo '$(COMPILE.cc) $(PICFLAG) -DPIC -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.so'
+ @$(COMPILE.cc) $(PICFLAG) -DPIC -DLD \
+ `for N in $(COMIO); do echo " -D$${N}"; done` \
+ $(.CURDIR)/cinst.cc -o ldcomio.so.o
+ @$(LD) -x -r ldcomio.so.o -o ldcomio.so
+ @rm -f ldcomio.so.o
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/libg++/libstdc++/shlib_version b/gnu/lib/libg++/libstdc++/shlib_version
new file mode 100644
index 00000000000..72e5894f74e
--- /dev/null
+++ b/gnu/lib/libg++/libstdc++/shlib_version
@@ -0,0 +1,2 @@
+major=27
+minor=1
diff --git a/gnu/lib/libg++/libstdc++/stl/Makefile.bsd-wrapper b/gnu/lib/libg++/libstdc++/stl/Makefile.bsd-wrapper
new file mode 100644
index 00000000000..8111b81ea7c
--- /dev/null
+++ b/gnu/lib/libg++/libstdc++/stl/Makefile.bsd-wrapper
@@ -0,0 +1,26 @@
+# $OpenBSD: Makefile.bsd-wrapper,v 1.1 1996/03/16 05:18:57 etheisen Exp $
+
+LIB= stl
+CXXFLAGS+= -fno-implicit-templates -nostdinc++
+CPPFLAGS+= -I$(.CURDIR) -I$(.CURDIR)/.. -I$(.CURDIR)/../../libio \
+ -I$(.OBJDIR)/../../libio
+
+CLEANFILES+= stl.list
+
+SRCS= tempbuf.cc tree.cc random.cc
+
+
+all: stl.list
+
+stl.list: ${SRCS:N*.h:R:S/$/.o/g}
+ @echo Generating stl.list
+ @echo "${SRCS:N*.h:R:S/$/.o/g}" >stl.list
+
+install:
+ @-cd $(.CURDIR); for i in *.h; do \
+ cmp -s $$i $(DESTDIR)/usr/include/g++/$$i || \
+ install -c -o $(BINOWN) -g $(BINGRP) -m $(NONBINMODE) \
+ $$i $(DESTDIR)/usr/include/g++/$$i; \
+ done
+
+.include <bsd.lib.mk>
diff --git a/gnu/lib/libg++/libstdc++/stl/shlib_version b/gnu/lib/libg++/libstdc++/stl/shlib_version
new file mode 100644
index 00000000000..97c9f92d6b8
--- /dev/null
+++ b/gnu/lib/libg++/libstdc++/stl/shlib_version
@@ -0,0 +1,2 @@
+major=0
+minor=0