1# makefile for flat2asn 2# 3# $Id: makeindx.unx,v 6.6 2008/01/25 19:56:25 ucko Exp $ 4# 5# Sun with unbundled ANSI compiler [ make LCL=acc RAN=ranlib CC=acc ] 6# Sun with Gnu C [ make LCL=gcc RAN=ranlib CC=gcc ] 7# Sun with Solaris 2.x OS [ make LCL=sol CC="cc -Xa" ] 8# Silicon Graphics [ make LCL=sgi OTHERLIBS="-lm -lPW -lsun" ] 9# IBM 3090 with AIX [ make LCL=370 ] 10# ULTRIX [ make LCL=ult RAN=ranlib ] 11# Apple AUX [ make LCL=aux SHELL=\usr\bin ] 12# NeXt [ make LCL=nxt CFLAGS1="-c -ansi" RAN=ranlib ] 13# DEC Alpha under OSF/1 [ make LCL=alf CC=cc RAN=ranlib ] 14# BeOS [ make OTHERLIBS="" ] 15# 16# see README for other supported systems 17# 18# Subsequent makes should make ... nocopy instead of make ... all 19# to avoid recopying the include files 20# 21# 22# NOTE: some make utilities (like SGI and IBM 3090) do not like a target 23# which is undefined. This would be $(LIB4) if you are not making a 24# vibrant version. Thus, this library target must be deleted on those 25# systems. The section to be deleted is marked below with DELETE 26# 27 28# default flags for compiling and loading 29 30include $(NCBI)/ncbi.mk 31SUFFIXLCL = $(LCL) 32CFLAGS1 = $(NCBI_CFLAGS1) 33LDFLAGS1 = $(NCBI_LDFLAGS1) 34CC = cc 35RAN = ls -l 36AR=ar 37LIBPATH = -L$(NCBI_ALTLIB) -L$(NCBI_SYBASE)/lib 38OTHERLIBS = $(LIBPATH) -lncbimla -lncbitax -lnetentr -lnetcli -lncbiobj -lncbi $(NCBI_SYBLIBS) $(NCBI_OTHERLIBS) 39 40SUFFIXENV = unx 41ASNDIR = asnstat 42LIBPARSE = libindx.a 43 44 45CFLAGS = $(CFLAGS1) -I../include -I$(NCBI_INCDIR) 46LDFLAGS = $(LDFLAGS1) -I../include -I$(NCBI_INCDIR) -L$(NCBI_LIBDIR) 47 48SRCCOPY = cp -p 49 50## 51## some things to make 52## 53 54# sources needed for indexing and parsing 55 56SRC_I = indx_blk.c block.c entry.c gb_index.c em_index.c \ 57 sp_index.c pr_index.c utilfun.c 58 59SRC_P = add.c asci_blk.c citation.c flat2asn.c flatargs.c \ 60 gb_ascii.c genref.c em_ascii.c ind.c loadfeat.c \ 61 nucprot.c ref.c sp_global.c sp_ref.c sp_ascii.c\ 62 taxcash.c utilfeat.c utilref.c 63 64SRC_ALL = $(SRC_I) $(SRC_P) 65 66# objects needed for indexing and parsing 67 68OBJ_I = indx_blk.o block.o entry.o gb_index.o em_index.o \ 69 sp_index.o pr_index.o utilfun.o 70 71OBJ_P = add.o asci_blk.o citation.o flat2asn.o flatargs.o \ 72 gb_ascii.o genref.o em_ascii.o ind.o loadfeat.o \ 73 nucprot.o ref.o sp_global.o sp_ref.o sp_ascii.o\ 74 taxcash.o utilfeat.o utilref.o 75 76## All things to make 77## 78all : copy .WAIT nocopy flat2asn 79 80nocopy : sources $(LIBPARSE) 81 82sources : $(SRC_ALL) 83 84## To clean out the directory without removing make 85## 86clean : 87 - rm -f *.[acho] 88 89.NO_PARALLEL: copy 90 91.WAIT: 92 echo Waiting...go 93 94## Implicit actions 95## 96 97 98## get all the source files 99## 100 101$(SRC_ALL) : copy 102 103copy : 104 - chmod -R ug+rw,o+r . 105 $(SRCCOPY) ../internal/parser/*.h ../include 106 $(SRCCOPY) ../internal/parser/*.c . 107 - chmod -R ug+rw,o+r . 108 109## make libraries 110## 111 112$(LIBPARSE) : $(OBJ_I) 113 - rm -f $(LIBPARSE) 114 $(AR) cru $(LIBPARSE) $(OBJ_I) 115 $(SRCCOPY) $(LIBPARSE) ../lib 116 $(RAN) ../lib/$(LIBPARSE) 117 118# flat2asn 119 120flat2asn : flat2asn.o $(OBJ_P) $(LIBPARSE) 121 $(CC) -o flat2asn $(LDFLAGS) flat2asn.o $(OBJ_P) ../lib/$(LIBPARSE) $(OTHERLIBS) 122 123