592 lines
7.7 KiB
Text
592 lines
7.7 KiB
Text
# Makefile for staden X programs (Alpha OSF/1.2 version)
|
|
# ------------------------------------------------------
|
|
|
|
# This makefile generates the following staden programs which
|
|
# run under xterm (normal, `N') and those which run directly under X.
|
|
NPROGS= mep nip pip dap sap sip splitp1 splitp2 splitp3 gip sethelp convert_project rep lip sapf nipf vep
|
|
LPROGS= nipl pipl sipl
|
|
XPROGS= xmep xnip xpip xdap xsap xsip
|
|
PROGS= $(NPROGS) $(LPROGS) $(XPROGS)
|
|
|
|
#
|
|
# ``Interesting'' suffices that make needs to know about
|
|
#
|
|
.SUFFIXES: .a $(SUFFIXES)
|
|
|
|
#
|
|
# Where the wild things are
|
|
#
|
|
SRC=.
|
|
TEDSRC=$(SRC)/../ted
|
|
MISCSRC=$(SRC)/../Misc
|
|
MISCBIN=$(MISCSRC)/alpha-binaries
|
|
INCLUDES= -I$(SRC) -I$(TEDSRC) -I$(MISCSRC)
|
|
|
|
#
|
|
# Compilers and flags
|
|
#
|
|
CC= cc
|
|
CFLAGS= -g -std1 -ieee_with_inexact $(INCLUDES)
|
|
F77= f77
|
|
FFLAGS= -g -C
|
|
|
|
FLIBS= -lfor -lutil -lUfor -lots -lFutil -lm -lfor -lutil -lUfor -lots -lFutil
|
|
XLIBS= -lXaw -lXt -lXmu -lXext -lX11 -ldnet_stub
|
|
LFLAGS= $(FLIBS)
|
|
XLFLAGS= $(FLIBS) $(XLIBS)
|
|
|
|
LD = f77
|
|
CLD = cc
|
|
LDFLAGS = -g -non_shared # Comment out for faster linking when debugging
|
|
|
|
|
|
|
|
#
|
|
# Sequence library handling routines
|
|
#
|
|
SEQLIB=\
|
|
seqlibsubs.o
|
|
|
|
|
|
#
|
|
# The C objects, needed by every X program
|
|
#
|
|
CCORE=\
|
|
postscript.o\
|
|
Graph.o\
|
|
plotLog.o\
|
|
help.o\
|
|
dialogues.o\
|
|
userfacecom.o\
|
|
helpnmenu.o\
|
|
xmenu.o\
|
|
FtoC.o\
|
|
mcspec.o\
|
|
locks.o
|
|
|
|
COBJS=\
|
|
main.o\
|
|
$(CCORE)
|
|
|
|
XDAPCOBJS=\
|
|
xdapmain.o\
|
|
$(CCORE)
|
|
|
|
|
|
#
|
|
# Common objects, needed by every program
|
|
#
|
|
COMMONOBJSB=\
|
|
fmain.o\
|
|
seeme-dec.o\
|
|
nxspec.o\
|
|
userface.o\
|
|
userfacecom.o\
|
|
nxhelpmenu.o\
|
|
helpnmenu.o\
|
|
FtoC.o\
|
|
subs89.a
|
|
|
|
COMMONOBJS=\
|
|
$(COMMONOBJSB)\
|
|
postscript.o
|
|
|
|
SCOMMONOBJS=\
|
|
$(COMMONOBJSB)
|
|
|
|
XCOMMONOBJS=\
|
|
seeme-dec.o\
|
|
xspec.o\
|
|
subs89.a\
|
|
$(COBJS)
|
|
|
|
XDAPCOMMONOBJS=\
|
|
seeme-dec.o\
|
|
xspec.o\
|
|
subs89.a\
|
|
$(XDAPCOBJS)
|
|
|
|
|
|
#
|
|
# Building the programs
|
|
# This should be just a linking phase because all of the object
|
|
# files and library files are generated using implicit rules.
|
|
# We use the fortran compiler to do linking.
|
|
#
|
|
GIP=\
|
|
gip.o
|
|
|
|
GIPOBJS=\
|
|
$(GIP)\
|
|
$(SCOMMONOBJS)
|
|
|
|
gip: $(GIPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(GIPOBJS) $(LFLAGS)
|
|
|
|
|
|
LIP=\
|
|
lip.o
|
|
|
|
LIPOBJS=\
|
|
$(LIP)\
|
|
$(SEQLIB)\
|
|
$(COMMONOBJS)
|
|
|
|
lip: $(LIPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(LIPOBJS) $(LFLAGS)
|
|
|
|
|
|
MEP=\
|
|
mep.o\
|
|
mepsub.o\
|
|
asubs89.a\
|
|
plot92.a
|
|
|
|
MEPOBJS=\
|
|
$(MEP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
XMEPOBJS=\
|
|
$(MEP)\
|
|
$(XCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o
|
|
|
|
mep: $(MEPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(MEPOBJS) $(LFLAGS)
|
|
|
|
xmep: $(XMEPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XMEPOBJS) $(XLFLAGS)
|
|
|
|
|
|
|
|
|
|
NIP=\
|
|
nip.o\
|
|
patternn.a\
|
|
patternnc.a\
|
|
anals89.a\
|
|
asubs89.a\
|
|
plot92.a \
|
|
$(SEQLIB)
|
|
|
|
NIPOBJS=\
|
|
$(NIP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
XNIPOBJS=\
|
|
$(NIP)\
|
|
$(XCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o
|
|
|
|
nip: $(NIPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(NIPOBJS) $(LFLAGS)
|
|
|
|
xnip: $(XNIPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XNIPOBJS) $(XLFLAGS)
|
|
|
|
|
|
|
|
|
|
NIPL=\
|
|
nipl.o\
|
|
patternnc.a\
|
|
anals89.a\
|
|
asubs89.a\
|
|
$(SEQLIB)
|
|
|
|
NIPLOBJS=\
|
|
$(NIPL)\
|
|
$(SCOMMONOBJS)
|
|
|
|
nipl: $(NIPLOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(NIPLOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
NIPF=\
|
|
nipf.o\
|
|
asubs89.a\
|
|
plot92.a
|
|
|
|
NIPFOBJS=\
|
|
$(NIPF)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
|
|
nipf: $(NIPFOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(NIPFOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
|
|
PIP=\
|
|
pip.o\
|
|
analps89.a\
|
|
patternp.a\
|
|
patternpc.a\
|
|
asubs89.a\
|
|
plot92.a\
|
|
$(SEQLIB)
|
|
|
|
PIPOBJS=\
|
|
$(PIP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
XPIPOBJS=\
|
|
$(PIP)\
|
|
$(XCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o
|
|
|
|
pip: $(PIPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(PIPOBJS) $(LFLAGS)
|
|
|
|
xpip:$(XPIPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XPIPOBJS) $(XLFLAGS)
|
|
|
|
|
|
|
|
|
|
PIPL=\
|
|
pipl.o\
|
|
patternpc.a\
|
|
analps89.a\
|
|
asubs89.a\
|
|
$(SEQLIB)
|
|
|
|
PIPLOBJS=\
|
|
$(PIPL)\
|
|
$(SCOMMONOBJS)
|
|
|
|
pipl: $(PIPLOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(PIPLOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
#
|
|
# Trace manager objects
|
|
#
|
|
STDTEDFILES=\
|
|
seq.o\
|
|
seqIOABI.o\
|
|
seqIOALF.o\
|
|
seqIOSCF.o\
|
|
seqIOPlain.o\
|
|
opp.o\
|
|
fpoint.o\
|
|
mach-io.o
|
|
|
|
TMANOBJS=\
|
|
tman_main.o\
|
|
tman_display.o\
|
|
tman_traceDisplay.o\
|
|
tman_basesDisplay.o\
|
|
tman_context.o\
|
|
tman_gadgets.o\
|
|
$(STDTEDFILES)
|
|
|
|
# Some versions of X11R4 may have a bug in SmeLine.c
|
|
XHACK=\
|
|
SmeLine.o
|
|
|
|
EDITOR=\
|
|
$(XHACK)\
|
|
xsapConEdit.o\
|
|
contigEditor.o\
|
|
edUtils.o\
|
|
undo.o\
|
|
Sheet.o\
|
|
select.o\
|
|
extend.o\
|
|
searchUtils.o\
|
|
edMenu.o\
|
|
trans.o\
|
|
$(MISCBIN)/misc.a
|
|
|
|
TAGEDITOR=\
|
|
tagEditor.o\
|
|
tagdbparse.o\
|
|
tagU2.o\
|
|
tagU1.o
|
|
|
|
DAP=\
|
|
dap.o\
|
|
dbsysnew.o\
|
|
dbsyscommon.o\
|
|
asubs89.a\
|
|
plot92.a
|
|
|
|
DAPOBJS=\
|
|
$(DAP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o\
|
|
conEdit.o\
|
|
tagU2.o
|
|
|
|
XDAPOBJS=\
|
|
$(DAP)\
|
|
$(XDAPCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o\
|
|
$(EDITOR)\
|
|
$(TMANOBJS)\
|
|
$(TAGEDITOR)
|
|
|
|
dap: $(DAPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(DAPOBJS) $(LFLAGS)
|
|
|
|
xdap: $(XDAPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XDAPOBJS) $(XLFLAGS)
|
|
|
|
convert_project: cvt.o
|
|
$(CC) $(CFLAGS) -o $@ cvt.o
|
|
|
|
SAP=\
|
|
sap.o\
|
|
dbsyscommon.o\
|
|
dbsysold.o\
|
|
asubs89.a\
|
|
plot92.a
|
|
|
|
SAPOBJS=\
|
|
$(SAP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
XSAPOBJS=\
|
|
$(SAP)\
|
|
$(XCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o
|
|
|
|
sap: $(SAPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SAPOBJS) $(LFLAGS)
|
|
|
|
xsap: $(XSAPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XSAPOBJS) $(XLFLAGS)
|
|
|
|
|
|
|
|
|
|
SAPF=\
|
|
sapf.o\
|
|
dbsyscommon.o\
|
|
dbsysold.o\
|
|
asubs89.a\
|
|
plot92.a
|
|
|
|
SAPFOBJS=\
|
|
$(SAPF)\
|
|
sapmen.o\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
sapf: $(SAPFOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SAPFOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
SIP=\
|
|
sip.o\
|
|
dias89.a\
|
|
plot92.a\
|
|
$(SEQLIB)
|
|
|
|
SIPOBJS=\
|
|
$(SIP)\
|
|
$(COMMONOBJS)\
|
|
pl4010.o
|
|
|
|
XSIPOBJS=\
|
|
$(SIP)\
|
|
$(XCOMMONOBJS)\
|
|
plX.o\
|
|
textOutput.o
|
|
|
|
sip: $(SIPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SIPOBJS) $(LFLAGS)
|
|
|
|
xsip: $(XSIPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(XSIPOBJS) $(XLFLAGS)
|
|
|
|
|
|
|
|
|
|
SIPL=\
|
|
sipl.o\
|
|
dias89.a\
|
|
$(SEQLIB)
|
|
|
|
SIPLOBJS=\
|
|
$(SIPL)\
|
|
$(SCOMMONOBJS)
|
|
|
|
sipl: $(SIPLOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SIPLOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
SETHELP=\
|
|
sethelp.o
|
|
|
|
SETHELPOBJS=\
|
|
$(SETHELP)
|
|
|
|
sethelp: $(SETHELPOBJS)
|
|
$(CLD) $(LDFLAGS) -o $@ $(SETHELPOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
SPLITP1=\
|
|
splitp1.o
|
|
SPLITP1OBJS=\
|
|
$(SPLITP1)\
|
|
$(SCOMMONOBJS)
|
|
|
|
splitp1: $(SPLITP1OBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SPLITP1OBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
SPLITP2=\
|
|
splitp2.o
|
|
SPLITP2OBJS=\
|
|
$(SPLITP2)\
|
|
$(SCOMMONOBJS)
|
|
|
|
splitp2: $(SPLITP2OBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SPLITP2OBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
|
|
SPLITP3=\
|
|
splitp3.o
|
|
SPLITP3OBJS=\
|
|
$(SPLITP3)\
|
|
$(SCOMMONOBJS)
|
|
|
|
splitp3: $(SPLITP3OBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(SPLITP3OBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
REP=\
|
|
rep.o\
|
|
dias89.a\
|
|
subs89.a
|
|
|
|
REPOBJS=\
|
|
$(REP)\
|
|
$(COMMONOBJS)
|
|
|
|
rep: $(REPOBJS)
|
|
$(F77) $(LDFLAGS) -o $@ $(REPOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
|
|
VEP=\
|
|
vep.o\
|
|
dias89.a\
|
|
subs89.a
|
|
|
|
|
|
VEPOBJS=\
|
|
$(VEP)\
|
|
$(SCOMMONOBJS)
|
|
|
|
|
|
vep: $(VEPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(VEPOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
|
|
#
|
|
# Special dependencies
|
|
#
|
|
#
|
|
|
|
#
|
|
# Files requiring simple C compilation (thing.c -> thing.o)
|
|
#
|
|
%.o: $(SRC)/%.c
|
|
$(CC) $(CFLAGS) -c $<
|
|
%.o: $(TEDSRC)/%.c
|
|
$(CC) $(CFLAGS) -c $<
|
|
|
|
# Files requiring simple FORTRAN compilation (thing.f -> thing.o)
|
|
#
|
|
%.o: $(SRC)/%.f
|
|
$(F77) $(FFLAGS) -c $<
|
|
|
|
|
|
#
|
|
# The UNIX library (archive) mechanism is fairly weak so the following
|
|
# procedure is used to generate libraries.
|
|
# * split the source file up into files which each contain
|
|
# a single function or subroutine
|
|
# * compile each of those files
|
|
# * insert the object files individually into the library
|
|
# Each library is built by using a temporary directory.
|
|
# The fortran compilations must be done sequentially in order to
|
|
# avoid filling up the (small on this machine) /tmp directory
|
|
# with compiler debugging information.
|
|
#
|
|
%.a: $(SRC)/%.f
|
|
BINDIR=`pwd`; \
|
|
cd $(SRC); \
|
|
SRCDIR=`pwd`; \
|
|
TMPDIR=/tmp/staden$$$$; \
|
|
if test ! -d $$TMPDIR; \
|
|
then mkdir $$TMPDIR; \
|
|
fi; \
|
|
cd $$TMPDIR; \
|
|
rm -f *.f *.o; \
|
|
fsplit $$SRCDIR/`expr $< : '.*/\(.*\)' \| $<`; \
|
|
$(F77) $(FFLAGS) -c *.f; \
|
|
rm *.f; \
|
|
rm -f $$BINDIR/$@; \
|
|
ar rcv $$BINDIR/$@ *.o; \
|
|
ranlib $$BINDIR/$@; \
|
|
rm *.o; \
|
|
cd $$BINDIR; \
|
|
rm -r $$TMPDIR
|
|
|
|
#.f.a:
|
|
# $(F77) $(FFLAGS) -c $<
|
|
# ar rcv $@ $*.o
|
|
# ranlib $@
|
|
# rm $*.o
|
|
|
|
all: $(PROGS)
|
|
|
|
nprogs: $(NPROGS)
|
|
|
|
xprogs: $(XPROGS)
|
|
|
|
lprogs: $(LPROGS)
|
|
|
|
clean:
|
|
rm -f $(PROGS) *.a *.o *~
|
|
|
|
lint:
|
|
lint -Q -Nn5000 -DNOSTRDUP $(INCLUDES) *.c
|
|
|
|
|