1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 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
|
ifndef
DESTDIR=/
endif
BINDIR=$(DESTDIR)/usr/bin
XBINDIR=$(DESTDIR)/usr/X11R6/bin
DOCDIR=$(DESTDIR)/usr/share/doc/clustalw
XDOCDIR=$(DESTDIR)/usr/share/doc/clustalx
LIBDIR=$(DESTDIR)/usr/share/clustalw
MANDIR=$(DESTDIR)/usr/share/man/man1
XMANDIR=$(DESTDIR)/usr/X11R6/man/man1
DOCS=clustalw.doc clustalw.ms README
XDOCS=README.clustalx clustalx.html
MACHINE=$(shell uname -m)
all: clustalx clustalw
clean:
rm -f *.o
distclean:
make clean
rm -f clustalw clustalx
cd tests.clustalw; make clean
OBJECTS = interface.o sequence.o showpair.o malign.o \
util.o trees.o gcgcheck.o prfalign.o pairalign.o \
calcgapcoeff.o calcprf1.o calcprf2.o calctree.o \
readmat.o alnscore.o random.o
XOBJECTS = xutils.o xmenu.o xcolor.o xdisplay.o xscore.o
HEADERS = general.h clustalw.h
CC = cc
ifeq ("$(MACHINE)","alpha")
# -mieee is for the Alpha only: ClustalW divides by zero (yes, I know it's bad) # and expect the processor to goes on. -mieee tells the Alpha to comply with
# the IEEE standard and to shut up about divisions by zero.
CFLAGS = -c -g -O2 -mieee
else
CFLAGS = -c -g -O2
endif
LFLAGS = -O -lm
#NCBI_INC = /dec/biolo/ncbi/include
#NCBI_LIB = /dec/biolo/ncbi/lib
NCBI_INC = /usr/include/ncbi
#NCBI_LIB = /usr/lib
CXFLAGS = -DWIN_MOTIF -I$(NCBI_INC)
#LXFLAGS = -L$(NCBI_LIB) -lvibrant -lncbi -lpthread -lXm -lXmu -lXt -lX11 -lm
LXFLAGS = -L/usr/X11R6/lib -lvibrant -lncbi -lpthread -lXm -lXmu -lXt -lX11 -lm
machine:
echo $(MACHINE)
clustalw : $(OBJECTS) amenu.o clustalw.o
$(CC) -o $@ $(OBJECTS) amenu.o clustalw.o $(LFLAGS)
interface.o : interface.c $(HEADERS) param.h
$(CC) $(CFLAGS) $*.c
amenu.o : amenu.c $(HEADERS) param.h
$(CC) $(CFLAGS) $*.c
clustalx : $(OBJECTS) $(XOBJECTS) clustalx.o
$(CC) -o $@ $(OBJECTS) $(XOBJECTS) clustalx.o $(LFLAGS) $(LXFLAGS)
clustalx.o : clustalx.c $(HEADERS)
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
xmenu.o : xmenu.c $(HEADERS) param.h
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
xdisplay.o : xdisplay.c $(HEADERS) param.h
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
xutils.o : xutils.c $(HEADERS) param.h
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
xcolor.o : xcolor.c $(HEADERS) param.h
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
xscore.o : xscore.c $(HEADERS) param.h
$(CC) $(CFLAGS) $(CXFLAGS) $*.c
readmat.o : readmat.c $(HEADERS) matrices.h
$(CC) $(CFLAGS) $*.c
trees.o : trees.c $(HEADERS) dayhoff.h
$(CC) $(CFLAGS) $*.c
.c.o :
$(CC) $(CFLAGS) $?
install:
install -d $(BINDIR) $(XBINDIR) $(LIBDIR) $(DOCDIR)/examples $(MANDIR) $(XMANDIR) $(XDOCDIR)
install -m 0755 clustalw $(BINDIR)
install -m 0755 clustalx $(XBINDIR)
install -m 0644 clustalw_help clustalx_help $(LIBDIR)
install -m 0644 clustalw.1 $(MANDIR)
install -m 0644 clustalx.1x $(XMANDIR)
install -m 0644 $(DOCS) $(DOCDIR)
install -m 0644 $(XDOCS) $(XDOCDIR)
cp -a -R tests.clustalw $(DOCDIR)/examples/tests
|