1# makefile for demo programs 2# 3# $Id: makedemo.unx,v 6.96 2016/08/31 19:05:26 ucko Exp $ 4# 5# Sun with unbundled ANSI compiler [ make CC=acc ] 6# Sun with Gnu C [ make CC=gcc ] 7# Sun with Solaris 2.x OS [ make CC="cc -Xa" OTHERLIBS="-lthread -lm" ] 8# Silicon Graphics [ make OTHERLIBS="-lm -lPW -lsun" ] 9# IBM 3090 with AIX [ make ] 10# ULTRIX [ make ] 11# Apple AUX [ make SHELL=\usr\bin ] 12# NeXt [ make CFLAGS1="-c -ansi" ] 13# DEC Alpha under OSF/1 [ make CC=cc ] 14# BeOS [ make OTHERLIBS="" ] 15# 16# Subsequent makes should make ... nocopy instead of make ... all 17# to avoid recopying the include files 18# 19# To Make the Motif version of demos add: 20# VIBLIBS="-lXm -lXmu -lXt -lX11" LIB4=-lvibrant VIBFLAG="-I/am/Motif/include -DWIN_MOTIF" 21# to the argument list. Substitute the path to your Motif includes for 22# /am/Motif/include. 23# 24# Motif versions on Solaris 2.x are more complicated because of changes to 25# the socket I/O. You have explicitly include them. Try: 26# 27# make -f makedemo.unx CC="cc -Xa" 28# VIBLIBS="-L/netopt/X11R5/lib -L/netopt/Motif1.2.2/lib -R/netopt/X11R5/lib:/netopt/Motif1.2.2.lib -lXm -lXmu -lXt -lX11 -lsocket -lnsl -lgen" 29# LIB4=-lvibrant 30# VIBFLAG="-I/netopt/X11R5/include -I/netopt/Motif1.2.2/include -DWIN_MOTIF" 31# 32# The build for RedHat Linux 2.XX with X11R6 requires: 33# CC="gcc -ansi" 34# VIBLIBS="-L/usr/X11R6/lib -lXm -lXpm -lXmu -lXp -lXt -lX11 -lXext" 35# 36# NOTE: It is now possible to build using shared libraries, which 37# consumes significantly less disk space. To date, this has only 38# been tested using Solaris. To use shared libraries, try: 39# make ... NCBI_LINKINGLIBDIR=../shlib 40# NCBI_OTHERLINKOPTIONS=-R`pwd`/../shlib 41# 42 43 44# default flags for compiling and loading 45 46SUFFIXLCL = $(LCL) 47CFLAGS1 = -c -O 48LDFLAGS1 = -O 49CC = cc 50RAN = ls -l 51OTHERLIBS = -lm 52THREAD_OTHERLIBS = -lthread 53THREAD_OTHERLIBS = 54THREAD_OBJ = ncbithr.o 55THREAD_OBJ = 56VIBLIBS = 57VIBFLAG = 58VIB = 59LIBCOPY = cp -p 60SRCCOPY = ./ln-if-absent 61BINCOPY = cp -p 62 63SUFFIXENV = unx 64ASNDIR = asnstat 65LIB1 = -lncbi 66LIBTLS = -lconnssl 67LIB2 = -lncbiobj 68LIB3 = -lncbicdr 69LIB4 = -lvibrant 70LIB4 = 71LIB5 = -lncbiacc 72LIB20 = -lncbidesk 73LIB20 = 74LIB22 = -lncbimmdb 75LIB23 = -lncbitool 76LIBCOMPADJ = -lblastcompadj 77LIB50 = -lregexp 78LIB60 = -lblast 79LIB61 = -lblastapi 80NCBI_INCDIR = ../include 81NCBI_LIBDIR = ../lib 82NCBI_LINKINGLIBDIR = $(NCBI_LIBDIR) 83# A kludge which tells the linker not to try to use shared libraries 84# when linking programs which use main() instead of Nlm_Main() 85USES_MAIN_KLUDGE = -L$(NCBI_LIBDIR) 86NCBI_OTHERLINKOPTIONS = 87CFLAGS = $(CFLAGS1) -I$(NCBI_INCDIR) $(VIBFLAG) 88LDFLAGS = $(LDFLAGS1) -I$(NCBI_INCDIR) $(NCBI_OTHERLINKOPTIONS) -L$(NCBI_LINKINGLIBDIR) $(VIBFLAG) 89ENTREZLIBS = $(LIB5) $(LIB3) 90 91## 92## some things to make 93## 94 95# sources needed for versions of demo programs 96 97EXE1 = testcore makeset \ 98 getmesh indexpub getpub testobj seqtest \ 99 dosimple asn2ff checksub asndhuff \ 100 entrcmd errhdr cdscan findspl \ 101 ncbisort fa2htgs .WAIT testval \ 102 vecscreen gil2bin \ 103 asn2xml debruijn asn2idx sortbyquote subfuse \ 104 test_regexp demo_regexp demo_regexp_grep 105# fastacmd formatdb formatrpsdb blastall blastpgp seedtop makemat copymat 106# impala megablast blastclust rpsblast 107 108SRC1 = testcore.c makeset.c \ 109 getmesh.c indexpub.c getpub.c testobj.c seqtest.c dosimple.c asn2ff.c \ 110 checksub.c asndhuff.c \ 111 entrcmd.c errhdr.c cdscan.c findspl.c \ 112 ncbisort.c fa2htgs.c testval.c \ 113 vecscreen.c gil2bin.c blastclust.c rpsblast.c \ 114 asn2xml.c debruijn.c asn2idx.c sortbyquote.c subfuse.c \ 115 pcretest.c pcredemo.c pcregrep.c 116# fastacmd.c formatdb.c formatrpsdb.c blastall.c blastpgp.c seedtop.c 117# makemat.c copymat.c impala.c megablast.c blastclust.c rpsblast.c 118 119INTERNAL = testgen 120 121## All things to make 122## 123all : ln-if-absent copy .WAIT nocopy 124 125ln-if-absent: ../make/ln-if-absent 126 rm -f ln-if-absent 127 ln -s ../make/ln-if-absent . 128 129nocopy : sources $(EXE1) $(VIB) 130 131sources : $(SRC1) 132 133internal: $(INTERNAL) 134 135## To clean out the directory without removing make 136## 137clean : 138 - rm -f *.[acho] 139 140.NO_PARALLEL: copy 141 142.WAIT: 143 echo Waiting...go 144 145## Implicit actions 146## 147 148.c.o : 149 $(CC) $(CFLAGS) $< 150 151## get all the source files 152## 153 154$(SRC1) : copy 155 156copy : 157 $(SRCCOPY) ../demo/*.* . 158 $(SRCCOPY) ../regexp/test/*.* . 159 $(SRCCOPY) ../regexp/demo/*.* . 160 -$(SRCCOPY) ../internal/*.* . 161 -chmod -R ug+rw,o+r . 162 163## make applications 164## 165 166 167# testcore 168 169testcore : testcore.c 170 $(CC) -o testcore $(LDFLAGS) testcore.c $(LIB4) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 171 172# getmesh 173 174getmesh : getmesh.c 175 $(CC) -o getmesh $(LDFLAGS) getmesh.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 176 177# indexpub 178 179indexpub : indexpub.c 180 $(CC) -o indexpub $(LDFLAGS) indexpub.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 181 182# makeset 183 184makeset : makeset.c 185 $(CC) -o makeset $(LDFLAGS) makeset.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 186 187# getpub 188 189getpub : getpub.c 190 $(CC) -o getpub $(LDFLAGS) getpub.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 191 192# testobj 193 194testobj : testobj.c 195 $(CC) -o testobj $(LDFLAGS) testobj.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 196 197# dosimple 198 199dosimple : dosimple.c 200 $(CC) -o dosimple $(LDFLAGS) dosimple.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 201 202# seqtest 203 204seqtest : seqtest.c 205 $(CC) -o seqtest $(LDFLAGS) seqtest.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 206 207 208# checksub 209 210checksub : checksub.c 211 $(CC) -o checksub $(LDFLAGS) checksub.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 212 213# asn2ff 214 215asn2ff : asn2ff.c 216 $(CC) -o asn2ff $(LDFLAGS) asn2ff.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 217 218# fa2htgs 219 220fa2htgs : fa2htgs.c 221 $(CC) -o fa2htgs $(LDFLAGS) fa2htgs.c $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 222 223# cdscan 224 225cdscan : cdscan.c 226 $(CC) -o cdscan $(LDFLAGS) cdscan.c $(LIB4) $(ENTREZLIBS) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 227 228# findspl 229 230findspl : findspl.c 231 $(CC) -o findspl $(LDFLAGS) findspl.c $(ENTREZLIBS) $(LIB2) $(LIB1) $(OTHERLIBS) 232 233# errhdr 234 235errhdr : errhdr.c 236 $(CC) -o errhdr $(LDFLAGS) errhdr.c $(LIB4) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 237 238 239 240# asndhuff 241 242asndhuff : asndhuff.c 243 $(CC) -o asndhuff $(LDFLAGS) asndhuff.c $(LIB4) $(ENTREZLIBS) $(LIB2) $(LIB1) $(VIBLIBS) $(OTHERLIBS) 244 245# entrcmd 246 247entrcmd : entrcmd.c 248 $(CC) -o entrcmd $(LDFLAGS) entrcmd.c $(ENTREZLIBS) $(LIB2) $(LIB1) $(OTHERLIBS) 249 250# ncbisort 251 252ncbisort : sortcmd.c 253 $(CC) -o ncbisort $(LDFLAGS) sortcmd.c $(LIB23) $(LIBCOMPADJ) \ 254 $(LIB1) $(OTHERLIBS) 255 256# testval 257 258testval : testval.c 259 $(CC) -o testval $(LDFLAGS) testval.c $(LIB2) $(LIB1) $(OTHERLIBS) 260 261# fastacmd 262 263fastacmd : fastacmd.c 264 $(CC) -o fastacmd $(LDFLAGS) fastacmd.c $(LIB23) $(LIBCOMPADJ) \ 265 $(LIB2) $(LIB1) $(OTHERLIBS) 266 267# formatdb 268 269formatdb : formatdb.c 270 $(CC) -o formatdb $(LDFLAGS) formatdb.c $(LIB23) $(LIBCOMPADJ) \ 271 $(LIB2) $(LIB1) $(OTHERLIBS) 272 273# formatrpsdb 274 275formatrpsdb : formatrpsdb.c 276 $(CC) -o formatrpsdb $(LDFLAGS) formatrpsdb.c $(LIB61) $(LIB23) \ 277 $(LIBCOMPADJ) $(LIB60) $(LIB2) $(LIB1) $(OTHERLIBS) 278 279debruijn : debruijn.c 280 $(CC) -o debruijn $(LDFLAGS) debruijn.c $(LIB60) $(LIBCOMPADJ) $(LIB1) $(OTHERLIBS) 281# blastall 282 283blastall : blastall.c $(THREAD_OBJ) 284 $(CC) -o blastall $(LDFLAGS) blastall.c $(THREAD_OBJ) $(LIB61) \ 285 $(LIB60) $(LIB23) $(LIBCOMPADJ) $(LIB2) $(LIB1) \ 286 $(OTHERLIBS) $(THREAD_OTHERLIBS) 287 288# blastpgp 289 290blastpgp : blastpgp.c $(THREAD_OBJ) 291 $(CC) -o blastpgp $(LDFLAGS) blastpgp.c $(THREAD_OBJ) $(LIB23) \ 292 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 293 294# seedtop 295 296seedtop : seedtop.c $(THREAD_OBJ) 297 $(CC) -o seedtop $(LDFLAGS) seedtop.c $(THREAD_OBJ) $(LIB23) \ 298 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 299 300# makemat 301 302makemat : makemat.c $(THREAD_OBJ) 303 $(CC) -o makemat $(LDFLAGS) makemat.c $(THREAD_OBJ) $(LIB23) \ 304 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 305 306# copymat 307 308copymat : copymat.c $(THREAD_OBJ) 309 $(CC) -o copymat $(LDFLAGS) copymat.c $(THREAD_OBJ) $(LIB60) $(LIB23) \ 310 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 311 312# impala 313 314impala : profiles.c $(THREAD_OBJ) 315 $(CC) -o impala $(LDFLAGS) profiles.c $(THREAD_OBJ) $(LIB23) \ 316 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 317 318# testgen 319 320testgen : testgen.c 321 $(CC) -o testgen $(LDFLAGS) testgen.c $(LIB1) $(OTHERLIBS) 322 323#testmem 324 325testmem : testmem.c 326 $(CC) -o testmem $(LDFLAGS) testmem.c $(LIB2) $(LIB1) $(OTHERLIBS) 327 328#packfilt 329 330packfilt : packfilt.c 331 $(CC) -o packfilt $(LDFLAGS) packfilt.c $(LIB2) $(LIB1) $(OTHERLIBS) 332 333# megablast 334 335megablast : megablast.c $(THREAD_OBJ) 336 $(CC) -o megablast $(LDFLAGS) megablast.c $(THREAD_OBJ) $(LIB61) \ 337 $(LIB60) $(LIB23) $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) \ 338 $(THREAD_OTHERLIBS) 339 340# vecscreen 341 342vecscreen : vecscreen.c $(THREAD_OBJ) 343 $(CC) -o vecscreen $(LDFLAGS) vecscreen.c $(THREAD_OBJ) $(LIB23) \ 344 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 345 346# gil2bin 347 348gil2bin : gil2bin.c 349 $(CC) -o gil2bin $(LDFLAGS) gil2bin.c $(LIB23) $(LIBCOMPADJ) \ 350 $(LIB2) $(LIB1) $(OTHERLIBS) 351 352# asn2idx 353 354asn2idx : asn2idx.c 355 $(CC) -o asn2idx $(LDFLAGS) asn2idx.c $(LIB23) $(LIBCOMPADJ) $(LIB2) \ 356 $(LIB1) $(OTHERLIBS) 357 358# sortbyquote 359 360sortbyquote : sortbyquote.c 361 $(CC) -o sortbyquote $(LDFLAGS) sortbyquote.c $(LIB2) $(LIB1) $(OTHERLIBS) 362 363# subfuse 364 365subfuse : subfuse.c 366 $(CC) -o subfuse $(LDFLAGS) subfuse.c $(LIB2) $(LIB1) $(OTHERLIBS) 367 368# blastclust 369 370blastclust : blastclust.c $(THREAD_OBJ) 371 $(CC) -o blastclust $(LDFLAGS) blastclust.c $(THREAD_OBJ) $(LIB23) \ 372 $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) $(THREAD_OTHERLIBS) 373 374# rpsblast 375 376rpsblast : rpsblast.c $(THREAD_OBJ) 377 $(CC) -o rpsblast $(LDFLAGS) rpsblast.c $(THREAD_OBJ) $(LIB61) \ 378 $(LIB60) $(LIB23) $(LIBCOMPADJ) $(LIB2) $(LIB1) $(OTHERLIBS) \ 379 $(THREAD_OTHERLIBS) 380 381 382# asn2xml 383 384asn2xml : asn2xml.c $(THREAD_OBJ) 385 $(CC) -o asn2xml $(LDFLAGS) asn2xml.c $(LIB2) $(LIB1) $(OTHERLIBS) 386 387# regexp demos 388 389test_regexp : pcretest.c 390 $(CC) -o test_regexp $(LDFLAGS) pcretest.c $(LIB50) 391demo_regexp : pcretest.c 392 $(CC) -o demo_regexp $(LDFLAGS) pcredemo.c $(LIB50) 393demo_regexp_grep : pcretest.c 394 $(CC) -o demo_regexp_grep $(LDFLAGS) pcregrep.c $(LIB50) 395