160437SbosticCC= cc
260371SelanDIRS= libiberty libg++ libg++/src libg++/iostream
360371SelanBUILD_DIR= ${.CURDIR}
460371SelanTARGET_LIB= libg++.a
560371SelanINSTALL_DIR= /usr/lib
660371SelanINCLUDE_INSTALL= /usr/include/g++
760371Selan.CURDIR != pwd
860371SelanIOLIB = $(.CURDIR)/libg++/iostream/libio.a
960371SelanSRCLIB = $(.CURDIR)/libg++/src/stamp
1060371SelanLIBIBERTY = $(.CURDIR)/libiberty/libiberty.a
1160371SelanLIBIBERTY_OBJECTS_TO_GET = `cat needed-list` strerror.o strsignal.o
1260371SelanIOSTREAM_OBS= streambuf.o stdstrbufs.o iostream.o stdstreams.o strstream.o \
1360371Selan  indstream.o PlotFile.o SFile.o fstream.o parsestream.o stream.o makebuf.o \
1460371Selan  editbuf.o filebuf.o sgetline.o igetline.o igetsb.o procbuf.o \
1560371Selan  sbufvform.o sbufvscan.o stdiostream.o floatconv.o outfloat.o iomanip.o
1657899Selan
1760437Sbosticall $(TARGET_LIB): $(IOLIB) $(SRCLIB) $(LIBIBERTY)
1860371Selan	cd ${.CURDIR}/libg++/src; ar qc ${BUILD_DIR}/${TARGET_LIB} *.o
1960371Selan	cd ${.CURDIR}/libg++/iostream; ar qc ${BUILD_DIR}/${TARGET_LIB} \
2060371Selan	$(IOSTREAM_OBS)
2160371Selan	cd ${.CURDIR}/libiberty; ar qc ${BUILD_DIR}/${TARGET_LIB} \
2260371Selan	$(LIBIBERTY_OBJECTS_TO_GET)
2360371Selan	ranlib ${BUILD_DIR}/${TARGET_LIB}
2457899Selan
2560371Selan$(SRCLIB):
2660371Selan	cd ${.CURDIR}/libg++/src; make "CC = $(CC)" "CXX = $(CC)"
2757899Selan
2860371Selan$(IOLIB):
2960371Selan	cd ${.CURDIR}/libg++/iostream; make "CC=$(CC)" libio.a
3057899Selan
3160371Selan$(LIBIBERTY):
3260371Selan	cd ${.CURDIR}/libiberty; make "CC=$(CC)"
3357899Selan
3460371Selaninstall: $(TARGET_LIB)
3560371Selan	if [ -d ${INSTALL_DIR} ]; then true; \
3660371Selan	else mkdir ${INSTALL_DIR}; \
3757899Selan	fi
38*60449Selan	install -c -m 444 ${.CURDIR}/${TARGET_LIB} ${INSTALL_DIR}
39*60449Selan	install -c -m 444 ${LIBIBERTY} ${INSTALL_DIR}
4060371Selan	if [ -d ${INCLUDE_INSTALL} ]; then true; \
4160371Selan	else mkdir ${INCLUDE_INSTALL}; \
4257899Selan	fi
4360371Selan	install -c -m 444 ${.CURDIR}/libg++/g++-include/*.h ${INCLUDE_INSTALL}
4460371Selan	if [ -d ${INCLUDE_INSTALL}/sys ] ; then true; \
4560371Selan	else mkdir ${INCLUDE_INSTALL}/sys; \
4657899Selan	fi
4760371Selan	install -c -m 444 ${.CURDIR}/libg++/g++-include/sys/*.h \
4860371Selan		${INCLUDE_INSTALL}/sys
4960371Selan	install -c -m 444 ${.CURDIR}/libg++/src/*.h ${INCLUDE_INSTALL}
5060371Selan	install -c -m 444 ${.CURDIR}/libg++/iostream/*.h ${INCLUDE_INSTALL}
5160371Selan	install -c -m 444 ${.CURDIR}/libg++/g++-include/*.h ${INCLUDE_INSTALL}
5260371Selan	install -c -m 444 ${.CURDIR}/libg++/_G_config.h ${INCLUDE_INSTALL}
5357899Selan
5460371Selanclean:
5560371Selan	for i in $(DIRS); do \
5660371Selan		cd ${.CURDIR}/$$i ; \
5760371Selan		rm -f *.o *.a *~ core stamp*; \
5860371Selan	done
5960371Selan	rm -f $(BUILD_DIR)/$(TARGET_LIB)
6057899Selan
6157899Selan
6257899Selan
6357899Selan
6457899Selan
6557899Selan
6657899Selan
6757899Selan
6857899Selan
6957899Selan
7057899Selan
7157899Selan
7257899Selan
7357899Selan
7457899Selan
7557899Selan
7657899Selan
7757899Selan
7857899Selan
7957899Selan
8057899Selan
8157899Selan
8257899Selan
8357899Selan
8457899Selan
8557899Selan
8657899Selan
8757899Selan
8857899Selan
8957899Selan
9057899Selan
9157899Selan
9257899Selan
9357899Selan
9457899Selan
9557899Selan
9657899Selan
9757899Selan
9857899Selan
9957899Selan
10057899Selan
10157899Selan
10257899Selan
10357899Selan
10457899Selan
10557899Selan
10657899Selan
10757899Selan
10857899Selan
10957899Selan
11057899Selan
11157899Selan
11257899Selan
11357899Selan
11457899Selan
11557899Selan
11657899Selan
11757899Selan
11857899Selan
11957899Selan
12057899Selan
12157899Selan
122