1CC= cc 2DIRS= libiberty libg++ libg++/src libg++/iostream 3BUILD_DIR= ${.CURDIR} 4TARGET_LIB= libg++.a 5INSTALL_DIR= /usr/lib 6INCLUDE_INSTALL= /usr/include/g++ 7.CURDIR != pwd 8IOLIB = $(.CURDIR)/libg++/iostream/libio.a 9SRCLIB = $(.CURDIR)/libg++/src/stamp 10LIBIBERTY = $(.CURDIR)/libiberty/libiberty.a 11LIBIBERTY_OBJECTS_TO_GET = `cat needed-list` strerror.o strsignal.o 12IOSTREAM_OBS= streambuf.o stdstrbufs.o iostream.o stdstreams.o strstream.o \ 13 indstream.o PlotFile.o SFile.o fstream.o parsestream.o stream.o makebuf.o \ 14 editbuf.o filebuf.o sgetline.o igetline.o igetsb.o procbuf.o \ 15 sbufvform.o sbufvscan.o stdiostream.o floatconv.o outfloat.o iomanip.o 16 17all $(TARGET_LIB): $(IOLIB) $(SRCLIB) $(LIBIBERTY) 18 cd ${.CURDIR}/libg++/src; ar qc ${BUILD_DIR}/${TARGET_LIB} *.o 19 cd ${.CURDIR}/libg++/iostream; ar qc ${BUILD_DIR}/${TARGET_LIB} \ 20 $(IOSTREAM_OBS) 21 cd ${.CURDIR}/libiberty; ar qc ${BUILD_DIR}/${TARGET_LIB} \ 22 $(LIBIBERTY_OBJECTS_TO_GET) 23 ranlib ${BUILD_DIR}/${TARGET_LIB} 24 25$(SRCLIB): 26 cd ${.CURDIR}/libg++/src; make "CC = $(CC)" "CXX = $(CC)" 27 28$(IOLIB): 29 cd ${.CURDIR}/libg++/iostream; make "CC=$(CC)" libio.a 30 31$(LIBIBERTY): 32 cd ${.CURDIR}/libiberty; make "CC=$(CC)" 33 34install: $(TARGET_LIB) 35 if [ -d ${INSTALL_DIR} ]; then true; \ 36 else mkdir ${INSTALL_DIR}; \ 37 fi 38 install -c -m 444 ${.CURDIR}/${TARGET_LIB} ${INSTALL_DIR} 39 install -c -m 444 ${LIBIBERTY} ${INSTALL_DIR} 40 if [ -d ${INCLUDE_INSTALL} ]; then true; \ 41 else mkdir ${INCLUDE_INSTALL}; \ 42 fi 43 install -c -m 444 ${.CURDIR}/libg++/g++-include/*.h ${INCLUDE_INSTALL} 44 if [ -d ${INCLUDE_INSTALL}/sys ] ; then true; \ 45 else mkdir ${INCLUDE_INSTALL}/sys; \ 46 fi 47 install -c -m 444 ${.CURDIR}/libg++/g++-include/sys/*.h \ 48 ${INCLUDE_INSTALL}/sys 49 install -c -m 444 ${.CURDIR}/libg++/src/*.h ${INCLUDE_INSTALL} 50 install -c -m 444 ${.CURDIR}/libg++/iostream/*.h ${INCLUDE_INSTALL} 51 install -c -m 444 ${.CURDIR}/libg++/g++-include/*.h ${INCLUDE_INSTALL} 52 install -c -m 444 ${.CURDIR}/libg++/_G_config.h ${INCLUDE_INSTALL} 53 54clean: 55 for i in $(DIRS); do \ 56 cd ${.CURDIR}/$$i ; \ 57 rm -f *.o *.a *~ core stamp*; \ 58 done 59 rm -f $(BUILD_DIR)/$(TARGET_LIB) 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122