155 lines
2.5 KiB
Plaintext
155 lines
2.5 KiB
Plaintext
# Makefile for vepe - Solaris (sparc) version
|
|
# -------------------------------------------
|
|
|
|
PROGS= vepe
|
|
|
|
|
|
|
|
|
|
all: $(PROGS)
|
|
|
|
|
|
|
|
|
|
|
|
#
|
|
# ``Interesting'' suffices that make needs to know about
|
|
#
|
|
.SUFFIXES: .a $(SUFFIXES)
|
|
|
|
|
|
#
|
|
# Directories
|
|
#
|
|
SRC=.
|
|
#STADENSRC=/nfs/rutland/home3/pubseq/inhouse/share/src/staden
|
|
STADENSRC=$(SRC)/../staden
|
|
STADENBIN=$(STADENSRC)
|
|
# Use the ted sources compiled for staden executables
|
|
INCLUDES= -I$(STADENSRC)
|
|
|
|
|
|
#
|
|
# Compilers and flags
|
|
#
|
|
# debug on
|
|
CC= gcc
|
|
GCCWARNINGS = -Wreturn-type -Wunused -Wswitch -Wcomment -W -Wformat \
|
|
-Wuninitialized
|
|
CFLAGS= -g -ansi -pedantic $(GCCWARNINGS) $(INCLUDES)
|
|
# KFLAGS - for compiling non ANSI C modules
|
|
KFLAGS= -g $(INCLUDES)
|
|
F77= f77
|
|
FFLAGS= -ansi -g -C -Nx500
|
|
|
|
LD = f77
|
|
SPRO = /opt/SUNWspro/SC2.0.1
|
|
LDFLAGS = -Bstatic -g -L$(SPRO) -L/usr/ccs/lib -L/usr/ucblib -L/usr/openwin/lib
|
|
LIBS = -lm -lucb -lelf -Bdynamic -ldl -Bstatic -lsocket -lnsl -lintl
|
|
FLIBS = -lV77 -lF77 -lM77
|
|
XLIBS = -lXaw -lXt -lXmu -lXext -lX11
|
|
LFLAGS = $(FLIBS) $(LIBS)
|
|
XLFLAGS = $(FLIBS) $(XLIBS) $(LIBS)
|
|
|
|
# For stdargs on the Sun
|
|
#GNULIB = /usr/local/lib/gcc-gnulib
|
|
|
|
#
|
|
# Avoid compilation of objects in remote directories
|
|
#
|
|
$(STADENBIN)/%.o : $(STADENSRC)/%.f
|
|
$(STADENBIN)/%.o : $(STADENSRC)/%.c
|
|
|
|
#
|
|
# Common objects, needed by every program
|
|
#
|
|
COMMONOBJS=\
|
|
$(STADENBIN)/seeme.o\
|
|
$(STADENBIN)/nxspec.o\
|
|
$(STADENBIN)/userface.o\
|
|
$(STADENBIN)/userfacecom.o\
|
|
$(STADENBIN)/helpnmenu.o\
|
|
$(STADENBIN)/nxhelpmenu.o\
|
|
$(STADENBIN)/FtoC.o\
|
|
$(STADENBIN)/subs89.a
|
|
|
|
|
|
#
|
|
# 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.
|
|
#
|
|
|
|
#
|
|
# Vector excision program
|
|
#
|
|
|
|
VEP=\
|
|
vep.o\
|
|
$(STADENBIN)/dias89.a\
|
|
$(STADENBIN)/subs89.a
|
|
|
|
|
|
VEPOBJS=\
|
|
$(VEP)\
|
|
$(COMMONOBJS)
|
|
|
|
|
|
vep: $(VEPOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(VEPOBJS) $(LFLAGS)
|
|
|
|
|
|
|
|
VEPE=\
|
|
vepe.o\
|
|
$(STADENBIN)/dias89.a\
|
|
expio.o\
|
|
expFileIO.o
|
|
|
|
|
|
VEPEOBJS=\
|
|
$(VEPE)\
|
|
$(COMMONOBJS)
|
|
|
|
|
|
vepe: $(VEPEOBJS)
|
|
$(LD) $(LDFLAGS) -o $@ $(VEPEOBJS) $(LFLAGS)
|
|
|
|
COBJS = expFileIO.o testc.o
|
|
FOBJS = expFileIO.o testf.o
|
|
|
|
|
|
testc: $(COBJS)
|
|
$(CC) $(CFLAGS) -o $@ $(COBJS)
|
|
|
|
testf: $(FOBJS)
|
|
$(F77) $(FFLAGS) -o $@ $(FOBJS)
|
|
|
|
#
|
|
# Files requiring simple FORTRAN compilation (thing.f -> thing.o)
|
|
#
|
|
%.o: $(SRC)/%.f
|
|
$(F77) $(FFLAGS) -c $<
|
|
|
|
|
|
#
|
|
# Files requiring simple C compilation (thing.c -> thing.o)
|
|
#
|
|
%.o: %.c
|
|
$(CC) $(CFLAGS) -c $<
|
|
%.o: $(SRC)/%.c
|
|
$(CC) $(CFLAGS) -c $<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
clean:
|
|
rm -f $(PROGS) *.o *.a *~
|
|
|
|
|
|
install: clean all
|