# VEC DIR = vec VERSION = .0.0 LIB = libVGR${DIR}.a DESTDIR = ${vgrLIB} DESTLIB = ${DESTDIR}/${LIB} DYNAR = ${DESTDIR}/libSH${DIR}.a SHARLIB = ${DESTDIR}/libVGR${DIR}.so${VERSION} SHARDAT = ${DESTDIR}/libVGR${DIR}.sa${VERSION} FC = f77 CC = cc LD = ld FFLAGS = ${F77_OPTS} -L${vgrLIB1} -L${vgrLIB} CFLAGS = ${CC_OPTS} -L${vgrLIB1} -L${vgrLIB} LDFLAGS = ${LD_OPTS} CD = cd `pwd` FGRIND = pgrind -lf CGRIND = pgrind -lc MGRIND = enscript -2r VGRINC = ${vgrINC} SYS = $vgrSYS LOAD = ${vgrLOAD} PIC = ${vgrPIC} HOME = ${vgrHOME} TERM = x WIN = -l${TERM}win BEV = -lVGRbev DL = -lVGRdl GI = -lVGRgi IM = -lVGRim MJS = -lVGEmjs NRC = -lVGRnrc NRF = -lVGRnrf NWIN = -lVGRnwin PLS = -lVGRpls PLT = -lVGRplt RSH = -lVGRrsh SEDR = -lVGRsedr SO = -lVGRso TEK = -lVGRtek VEC = -lVGRvec VGR = -lVGRvgr XWIN = -lVGRxwin #GI = -lGI .SUFFIXES: .SUFFIXES: .o .c .f .a FSOURCENL = \ FSOURCEL = \ del.f epsiln.f eul.f iand.f iandh.f ior.f l1x.f onaxr.f sclr.f \ rotmtx.f teqatr.f teqab.f vctr.f \ vspxyz.f vsum.f vtrns.f vxyzsp.f FSOURCE = ${FSOURCEL} ${FSOURCENL} CSOURCEL = \ mvc5.c mvc.c mvcf.c shift.c CSOURCENL = # CCSOURCEL = \ # CCSOURCENL = # CCSOURCE = ${CCSOURCEL} ${CCSOURCENL} #VARIENT = ${DESTLIB} FLIBNL = $(FSOURCENL:%.f=${DESTDIR}/lib%.a) CLIBNL = $(CSOURCENL:%.c=${DESTDIR}/lib%.a) OBJECTL = $(FSOURCEL:%.f=$(VARIENT)%.o) $(CSOURCEL:%.c=$(VARIENT)%.o) $(CSOURCEL:%.cc=$(VARIENT)%.o) OBJECTNL = $(FSOURCENL:%.f=$(VARIENT)%.o) $(CSOURCENL:%.c=$(VARIENT)%.o) $(CSOURCENL:%.cc=$(VARIENT)%.o) SOURCES = ${FSOURCE} ${CSOURCE} ${CCSOURCE} CSOURCE = ${CSOURCEL} ${CSOURCENL} OBJECTS = $(OBJECTL) $(OBJECTNL) .PRECIOUS: ${DESTLIB} .f.a: $*.f @if ( test ${LOAD} = dynamic ) ;\ then \ ${FC} ${FFLAGS} ${PIC} -c $*.f 2> /dev/null ;\ ar r ${DYNAR} $*.o ;\ fi ${FC} ${FFLAGS} -c $*.f .c.a: $*.c @if ( test ${LOAD} = dynamic ) ;\ then \ ${CC} ${CFLAGS} ${PIC} -c $*.c 2> /dev/null ;\ ar r ${DYNAR} $*.o ;\ fi ${CC} ${CFLAGS} -c $*.c ${DESTDIR}/lib%.a: %.c ${CC} ${CFLAGS} -c -o $*.o $*.f @ar r $@ $*.o @ranlib $@ ${CC} ${CFLAGS} -pic -c -o $*.o $*.c ${LD} ${LDFLAGS} -Bdynamic -o ${DESTDIR}/lib$(*).so${VERSION} $*.o ${DESTDIR}/lib%.a: %.f ${FC} ${FFLAGS} -c -o $*.o $*.f @ar r $@ $*.o @ranlib $@ ${FC} ${FFLAGS} -pic -c -o $*.o $*.f ${LD} ${LDFLAGS} -Bdynamic -o ${DESTDIR}/lib$(*).so${VERSION} $*.o @rm $*.o @echo " " all: ${FLIBNL} ${CLIBNL} ${DESTLIB} @true prt: echo prt ${DESTLIB} ${OBJECTNL} ${DESTLIB}: ${DESTLIB}( ${OBJECTL} ) @if ( test ${LOAD} = dynamic ) ;\ then \ uu="`nm ${DYNAR} | sed -n -e '/\.o:/p' -e '/ T /p' | sed -n -f ${HOME}/src/SED.u` " ;\ ranlib ${DYNAR} ;\ ${LD} ${LDFLAGS} -o ${SHARLIB} $${uu} -B${LOAD} ${DYNAR} ;\ fi ar rv $@ $? ranlib $@ @rm $? clean: ;@rm -f ${OBJECTS};touch dummyf.o dummyc.o grind: ; ${FGRIND} ${FSOURCE} ; ${CGRIND} ${CSOURCE} printf: ${FSOURCE} ;${FGRIND} $? ;touch printf printc: ${CSOURCE} ;${CGRIND} $? ;touch printc printm:Makefile ;${MGRIND} $? ; touch printm #LIB RULES # #PRINT LIBS # dirs: @echo ${DIRS} forl: @echo ${FSOURCEL} fornl: @echo ${FSOURCENL} ccl: @echo ${CSOURCEL} ccnl: @echo ${CSOURCENL} CCl: @echo ${CCSOURCEL} CCnl: @echo ${CCSOURCENL} .INIT: @echo " " @true .DONE: @echo " " @true