LEX= flex -v

VERSION=3
VARIETY=3.4 # this corresponds to the name chosen for some combination of os/compiler/debug flags
OPENWINHOME=/usr/openwin

DBG= 

FC = g77
CC = gcc 


DSAP = /opt/dsap/3.4
PFPATH = $(DSAP)/data/pf:.
SCHEMA_DIR = $(DSAP)/data/schemas
SCHEMA_DEFAULT = $(SCHEMA_DIR)/css3.0
GRX_PSCOLOR = full
GRX_FONTPATH = $(DSAP)/data/fonts.bin
VFONTLIB = $(DSAP)/data/hershey
PERLLIB = /usr/lib/perl5
#TCLIB= /opt/dsap/tcl7.4tk4.0/lib
TAUP_TABLE = $(DSAP)/data/tables/taup_ttimes

DLDFLAGS = -shared, -soname,
DLD=$(LD)
DSUFFIX=.so.$(VERSION)
ARFLAGS = cr


TCLLIB=/opt/dsap/tcl7.4tk4.0/lib
#TCLLIB=/opt/dsap/tcltk/lib
TCLINCLUDE=-I/opt/dsap/tcl7.4tk4.0/include
XINCLUDE=$(OPENWINHOME)/include
XLIB=$(OPENWINHOME)/lib
X11LIBS= -L/usr/X11R6/lib -Bstatic -lX11

TKLIBS = -L$(TCLLIB) -lBLT -litk2.0 -lexpectk -ltkx -ltk4.0 $(X11LIBS)
#TKLIBS = -L$(TCLLIB) -litcl3.0 -lBLT  -ltkx -litk3.0 $(X11LIBS)
#SVR4LIBS =  -lsocks -lnsl
SVR4LIBS =   -lnsl
DBLIBS = -L/opt/dsap/3.4/lib -lds -lresponse -ltttaup -lcoords -lstock -lm
TCLLIBS = -L$(TCLLIB) -litcl2.0 -lexpect -ltclx -ltcl7.4
GPLLIBS = -lgpl -lol -lxcom -ltks -lgrx $(X11LIBS) -lcoords  -lstock -lm
GPL2LIBS = -lgpl2 -lol -lxcom -lgrx $(X11LIBS) -lcoords  -lstock -lm
TRLIBS = -ltr $(GPL2LIBS) $(DBLIBS) 

YFLAGS = -d -v -l
FFLAGS = $(DBG)  $(fflags) $(FEXTRA) -I$(DSAP)/include -I$(XINCLUDE)  
CFLAGS = -D_REENTRANT $(DBG) $(cflags) $(CEXTRA) -I$(DSAP)/include -I$(XINCLUDE) 
COFLAGS = -D_REENTRANT  $(cflags) $(CEXTRA) -I$(DSAP)/include -I$(XINCLUDE) 

LDFLAGS = $(ldflags)  $(LDEXTRA) -L$(DSAP)/lib  -L$(XLIB)  $(EXPORT) 
LDLIBS= $(ldlibs)
RANLIB= ranlib

INSTALL=/usr/bin/install 

# include .depends
# include .libs
.KEEP_STATE :


ALL_LIBS = $(LIB) 
#$(DLIB)
.PRECIOUS:$(ALL_LIBS)

MAKE=make -e
DIRS=`find * -type d \( ! -name SCCS ! -name CVS ! -name \*- ! -name TC.Cache -print \) -prune`

all MAN clean depends pf purge relink Include install tags :: FORCED
	@-DIRS="$(DIRS)" ;\
	for i in $$DIRS ; do \
                ( cd $$i && $(MAKE) $@ ; ) \
        done

all:: localall

depends ::
	makedepend 

localall :  $(INCLUDE) $(ALL_LIBS) $(BIN) $(PF) $(DATA) \
	$(MAN1) $(MAN2) $(MAN3) \
	$(MAN4) $(MAN5) $(MAN6) \
	$(MAN7) $(MAN8) $(MAN9) \
	$(MANL)

$(OPTIMIZE:.c=.o) : $(OPTIMIZE)
	$(CC) $(COFLAGS) $(CPPFLAGS) -c $(OUTPUT_OPTION) $<
	
export :: all
#	rm -f $(CLEAN)

Include :: localInclude 

localInclude :: $(INCLUDE:%=$(DSAP)/include/%) 

localpf :: $(PF) $(PF:%=$(DSAP)/data/pf/%) 

install :: localInclude localall localpf \
	$(BIN:%=$(DSAP)/bin/%) \
	$(ALL_LIBS:%=$(DSAP)/lib/%) \
	$(DATA:%=$(DSAP)/data/$(DATADIR)/%) \
	$(MAN1:%=$(DSAP)/man/man1/%) \
	$(MAN2:%=$(DSAP)/man/man2/%) \
	$(MAN3:%=$(DSAP)/man/man3/%) \
	$(MAN4:%=$(DSAP)/man/man4/%) \
	$(MAN5:%=$(DSAP)/man/man5/%) \
	$(MAN6:%=$(DSAP)/man/man6/%) \
	$(MAN7:%=$(DSAP)/man/man7/%) \
	$(MAN8:%=$(DSAP)/man/man8/%) \
	$(MAN9:%=$(DSAP)/man/man9/%) \
	$(MANL:%=$(DSAP)/man/manl/%)


MAN :: $(MAN1:%=$(DSAP)/man/man1/%) \
	$(MAN2:%=$(DSAP)/man/man2/%) \
	$(MAN3:%=$(DSAP)/man/man3/%) \
	$(MAN4:%=$(DSAP)/man/man4/%) \
	$(MAN5:%=$(DSAP)/man/man5/%) \
	$(MAN6:%=$(DSAP)/man/man6/%) \
	$(MAN7:%=$(DSAP)/man/man7/%) \
	$(MAN8:%=$(DSAP)/man/man8/%) \
	$(MAN9:%=$(DSAP)/man/man9/%) \
	$(MANL:%=$(DSAP)/man/manl/%)

FORCED :

clean ::
	rm -f .print .all *.o *.a *~ *- tags *.trace $(BIN) $(ALL_LIBS) $(CLEAN) .make.state

purge ::
	rm -f .make.state
	@-if [ -d SCCS ] ; then sccs clean ; fi

relink ::
	@rm $(BIN) ; $(MAKE) install

$(DSAP)/lib/%.a : %.a

	$(INSTALL) -m 664 $< $(DSAP)/lib
	$(RANLIB) $(DSAP)/lib/$<
 
#$(DSAP)/lib/%.so.$(VERSION) : %.so.$(VERSION)
#	$(INSTALL) -m 664 $< $(DSAP)/lib
#	rm -f $(DSAP)/lib/$*.so ; ln -s $*.so.$(VERSION) $(DSAP)/lib/$*.so

$(DSAP)/bin/% : %
	$(INSTALL) -m 775 $< $(DSAP)/bin

$(DSAP)/data/pf/% : %
	/bin/rm -f $(DSAP)/data/pf/$<
	cp $< $(DSAP)/data/pf/$<
	chmod 444 $(DSAP)/data/pf/$<

$(DSAP)/include/% : %
	/bin/rm -f $(DSAP)/include/$<
	cp $< $(DSAP)/include/$<
	chmod 444 $(DSAP)/include/$<

$(DSAP)/data/$(DATADIR)/% : %
	if [ ! -h $< ] ; then \
	    if [ ! -d $(DSAP)/data/$(DATADIR) ] ; then \
		mkdir -p $(DSAP)/data/$(DATADIR) ; \
	    fi ; \
	    /bin/rm -f $(DSAP)/data/$(DATADIR)/$< ; \
	    cp $< $(DSAP)/data/$(DATADIR)/$< ; \
	    chmod 444 $(DSAP)/data/$(DATADIR)/$< ; \
	fi

$(DSAP)/man/man1/% : %
	/bin/rm -f $(DSAP)/man/man1/$<
	cp $< $(DSAP)/man/man1/$<
	chmod 444 $(DSAP)/man/man1/$<

$(DSAP)/man/man2/% : %
	/bin/rm -f $(DSAP)/man/man2/$<
	cp $< $(DSAP)/man/man2/$<
	chmod 444 $(DSAP)/man/man2/$<

$(DSAP)/man/man3/% : %
	/bin/rm -f $(DSAP)/man/man3/$<
	cp $< $(DSAP)/man/man3/$<
	chmod 444 $(DSAP)/man/man3/$<

$(DSAP)/man/man4/% : %
	/bin/rm -f $(DSAP)/man/man4/$<
	cp $< $(DSAP)/man/man4/$<
	chmod 444 $(DSAP)/man/man4/$<

$(DSAP)/man/man5/% : %
	/bin/rm -f $(DSAP)/man/man5/$<
	cp $< $(DSAP)/man/man5/$<
	chmod 444 $(DSAP)/man/man5/$<

$(DSAP)/man/man6/% : %
	/bin/rm -f $(DSAP)/man/man6/$<
	cp $< $(DSAP)/man/man6/$<
	chmod 444 $(DSAP)/man/man6/$<

$(DSAP)/man/man7/% : %
	/bin/rm -f $(DSAP)/man/man7/$<
	cp $< $(DSAP)/man/man7/$<
	chmod 444 $(DSAP)/man/man7/$<

$(DSAP)/man/man8/% : %
	/bin/rm -f $(DSAP)/man/man8/$<
	cp $< $(DSAP)/man/man8/$<
	chmod 444 $(DSAP)/man/man8/$<

$(DSAP)/man/man9/% : %
	/bin/rm -f $(DSAP)/man/man9/$<
	cp $< $(DSAP)/man/man9/$<
	chmod 444 $(DSAP)/man/man9/$<

tags :: FORCED
	ctags *.c *.f *.h *.l *.y



FPP=/usr/lib/gcc-lib/i486-pc-linux-gnu/2.8.1/cpp
COMPILE.F=$(FC) $(FFLAGS) $(FPPFLAGS) $(TARGET_ARCH) -c
LINK.F=$(FC) $(FFLAGS) $(FPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)


Cppflags=`echo $(FFLAGS) $(FPPFLAGS) | sed 's/-[^I][^ ]*//g'`

.F.f :
	$(FPP) -e $(Cppflags) $*.F | sed '/^#/d' > $*.f"
.F:
	$(FPP) -e $(Cppflags) $*.F | sed '/^#/d' > $*.f"
	$(LINK.f) -o $@ $*.f $(LDLIBS)
.F.o:
	$(FPP) -e $(Cppflags) $*.F | sed '/^#/d' > $*.f"
	$(COMPILE.f) $(OUTPUT_OPTION) $*.f
.F.a:
	$(FPP) -e $(Cppflags) $*.F | sed '/^#/d' > $*.f"
	$(COMPILE.f) -o $% $*.f
	$(AR) $(ARFLAGS) $@ $%
	$(RM) $%

.SUFFIXES: .xpl .xtcl .xwish .xvwish .xwish8

.xpl:
	$(RM) $@
	cat $(DSAP)/data/templates/xpl > $@
	cat $< >> $@
	chmod +x $@
	

.xtcl:
	$(RM) $@
	cat $(DSAP)/data/templates/xtcl > $@
	cat $< >> $@
	chmod +x $@


.xwish:
	$(RM) $@
	cat $(DSAP)/data/templates/xtcl > $@
	cat $< >> $@
	chmod +x $@


.xvwish:
	$(RM) $@
	cat $(DSAP)/data/templates/xtcl > $@
	cat $< >> $@
	chmod +x $@


.xwish8:
	$(RM) $@
	cat $(DSAP)/data/templates/xtcl > $@
	cat $< >> $@
	chmod +x $@














