# $Id: makeall.dos,v 6.147 2001/11/20 21:47:41 lavr Exp $
##################################################
###  Makefile for non-network-based libraries + asntool
#####


##################################################
# Include common flags and definitions;
# look there for the make HELP as well:

!include "make_gen.dos"


##################################################
# Library object lists

OBJ1  = \
   +ncbibs.obj +wwwutils.obj +ncbierr.obj +ncbienv.obj +ncbifile.obj \
	+ncbiprop.obj +ncbimath.obj +ncbimem.obj +ncbimisc.obj \
	+ncbimsg.obj +ncbistr.obj +ncbisgml.obj +ncbitime.obj +ncbilang.obj \
	+asnbufo.obj +asndebin.obj +asnenbin.obj +asngen.obj +asngenob.obj \
	+asnio.obj +asnlex.obj +asnlext.obj +asnout.obj +asnprint.obj \
	+asntypes.obj +gifgen.obj +togif.obj +tsprintf.obj +ncbiargs.obj \
	+ncbithrs.obj +regex.obj +tree.obj +ncbisock.obj +ncbi_socket_.obj +matrix.obj \
	+ncbibuf.obj +ncbi_buffer.obj +ncbi_core.obj +ncbi_util.obj +ncbi_priv.obj \
	+ncbi_ansi_ext.obj +ncbi_connection.obj +ncbi_connector.obj +ncbi_connutil.obj \
        +ncbi_file_connector.obj +ncbi_http_connector.obj \
        +ncbi_server_info.obj +ncbi_service.obj \
        +ncbi_service_connector.obj +ncbi_service_dispd.obj \
	+ncbi_service_lbsmd_stub.obj +ncbi_socket_connector.obj \
	+urlquery.obj +binary.obj +ncbi_sendmail_.obj +asn_connection.obj

OBJ2  = +objacces.obj +objalign.obj +objall.obj +objbibli.obj \
	+objfeat.obj +objgen.obj +objloc.obj +objmedli.obj +objpub.obj \
	+objres.obj +objseq.obj +objcode.obj +objblock.obj +objsset.obj \
	+objsub.obj +objprt.obj +objfdef.obj +objpubme.obj \
	+objmdrs.obj +objproj.obj + objent2.obj +ent2api.obj +pmfapi.obj \
	+strucapi.obj +qblastapi.obj +vecscnapi.obj +objmim.obj +mimapi.obj +seqport.obj \
	+sequtil.obj +prtutil.obj \
	+simple.obj +tofasta.obj +tofile.obj +tomedlin.obj +valid.obj \
	+alignmgr.obj +aliparse.obj +aliread.obj +alignval.obj +subutil.obj +edutil.obj \
	+asn2ff1.obj +asn2ff2.obj +asn2ff3.obj +alignmgr2.obj \
	+asn2ff4.obj +asn2ff5.obj +asn2ff6.obj +asn2gnbk.obj +ftusrstr.obj +gbfeat.obj \
	+gbftglob.obj +gbparint.obj +utilpars.obj +utilpub.obj +ffprint.obj \
	+wprint.obj +satutil.obj +seqmgr.obj +gather.obj +objmgr.obj \
	+accmmdbs.obj +acccn3ds.obj +lsqfetch.obj +findrepl.obj \
	+jzcoll.obj +jzmisc.obj +maputil.obj +mconsist.obj +codon.obj \
	+sqnutil1.obj +sqnutil2.obj +sqnutil3.obj +salpacc.obj +salprop.obj \
	+udvseq.obj \
	+salsap.obj +salstruc.obj +salutil.obj +salpedit.obj +salpstat.obj \
	+blocks.obj +pgppop.obj +samutil.obj +objalignloc.obj +ddvcolor.obj \
	+viewmgr.obj +ddvcreate.obj +jsavlt.obj +needleman.obj +txalign.obj \
	+fdlobj.obj

OBJ3  = +cdentrez.obj +cdromlib.obj +cdnewlib.obj +casn.obj +cdconfig.obj \
	+objentr.obj

OBJ4  = \
	+vibbutns.obj +vibextra.obj +vibfiles.obj +vibforms.obj \
	+vibgroup.obj +viblists.obj +vibmenus.obj +vibprmpt.obj \
	+vibsbars.obj +vibslate.obj +vibtexts.obj \
	+vibutils.obj +vibwndws.obj +ncbidraw.obj \
	+drawing.obj  +mapping.obj  +picture.obj  +viewer.obj \
	+document.obj +table.obj    +palette.obj  +diagnost.obj +image.obj \
	+vibmouse.obj +treeview.obj +imagelst.obj +odlbox.obj \
	+pictur3d.obj +prim3d1.obj  +prim3d2.obj  +prim3d3.obj \
	+prim3d4.obj  +prim3d5.obj  +viewer3d.obj +shim3d.obj

OBJ5  = +accentr.obj +accutils.obj

OBJ20 = +drawseq.obj +fstyle.obj +smdlg1.obj +smdlg2.obj \
	+smdlg3.obj +smtools.obj +styleman.obj +stylemui.obj +glbpic.obj \
	+layout.obj +vsm.obj +vsmfile.obj +vsmutil.obj +udvgraph.obj +udvopen.obj \
	+udvpanel.obj +dotvibrant.obj +dlgutil1.obj +dlgutil2.obj +e2trmlst.obj \
	+e2docsum.obj +asn2graphic.obj +medview.obj +bspview.obj +gbfview.obj +gphview.obj \
	+gphdraw.obj +gxydraw.obj +gtrdraw.obj +ingengraph.obj +ingenext.obj +ingenwin.obj \
	+biosrc.obj +cdrgn.obj +import.obj +pubdesc.obj +seqsub.obj \
	+saldist.obj +saled.obj +salfiles.obj +salpanel.obj +salparam.obj \
	+salsa.obj +dotmatrx.obj +fea2seg.obj \
	+seqfltr.obj +seqgraph.obj +seqgrphx.obj +seqmtrx.obj \
	+seqpcc.obj \
	+seqanal.obj +aacomp.obj +seqscrl.obj \
	+mapgene.obj +prtgene.obj +salogif.obj

OBJ22 = +corematx.obj +dvncode.obj +objmmdb1.obj +objmmdb2.obj +objmmdb3.obj \
	+objmime.obj +objcn3d.obj +mmdbapi.obj +mmdbapi1.obj +mmdbapi2.obj +mmdbapi3.obj +\
	mmdbapi4.obj +mmdbentr.obj +vastsubs.obj +prunebsc.obj +objcdd.obj +cddutil.obj \
	+cddposutil.obj \
	+thrdalgs.obj +thrdatd.obj  +thrdbwfi.obj +thrdcpal.obj \
	+thrdcpll.obj +thrdcprl.obj +thrdcxei.obj +thrddgri.obj +thrdrsmp.obj \
	+thrdsal0.obj +thrdsalr.obj +thrdsalu.obj +thrdsgoi.obj +thrdslo0.obj \
	+thrdslor.obj +thrdslou.obj +thrdspci.obj +thrdspea.obj +thrdspel.obj \
	+thrdspni.obj +thrdttb0.obj +thrdttbi.obj +thrdzsc.obj

OBJ23 = +csim.obj +db_slist.obj +dust.obj +falign.obj +g_any.obj \
	+sim2.obj +sim3.obj +sim4.obj +simutil.obj +slist.obj +sec.obj +tfuns.obj \
	+toasn3.obj +toporg.obj +pobutil.obj +stsutil.obj +suggadj.obj \
	+suggest.obj +suggslp.obj +blast.obj +blastutl.obj \
	+blastool.obj +blastkar.obj \
	+splutil.obj +actutils.obj +gapxdrop.obj +lookup.obj +readdb.obj \
	+posit.obj +ncbisam.obj \
	+bandalg0.obj +bandalg1.obj +bandalg2.obj +bandalg3.obj \
	+bandalg4.obj +bandalg5.obj +bandalgn.obj +ncbisort.obj \
	+salptool.obj +salign.obj \
	+urkutil.obj +urkpcc.obj +urkptpf.obj \
	+urkepi.obj +urkfltr.obj +urkdust.obj +urksigu.obj +seg.obj \
	+urkbias.obj +urkcnsrt.obj +urktree.obj +pseed3.obj +pattern1.obj \
	+impatool.obj +posit2.obj +newkar.obj +mbalign.obj \
	+vecscrn.obj +mblast.obj +rpsutil.obj +kappa.obj  \
	+xmlblast.obj +bxmlobj.obj +dotseq.obj +spidey.obj +motif.obj

OBJ28 = +ncbidrwg.obj +drawing.obj +mapping.obj +picture.obj +pictogif.obj \
	+gdfontg.obj +gdfontmb.obj +gdfontt.obj +gdfontl.obj +gdfonts.obj

OBJ30 = +algorend.obj +cn3dmsel.obj +cn3dopen.obj +cn3dsave.obj \
	+cn3dxprt.obj +cn3dwin.obj  +cn3dentr.obj +cn3dmesh.obj \
	+cn3dmsg.obj +cn3dmatn.obj +cn3dmodl.obj +cn3dshim.obj \
	+cn3dstyl.obj +seqcons.obj

OBJ45 = +ddvclick.obj +ddvgraph.obj +ddvopen.obj +ddvpanel.obj


### OpenGL versions of LIB4(vibrant.lib) and LIB30(ncbicn3d.lib)
!ifndef CONSOLE
!ifdef OPENGL
.c.ogl:
	copy $*.c $*_ogl.c

OBJ4_COPY0 = $(OBJ4:.obj=.ogl)
OBJ4_COPY = $(OBJ4_COPY0:+=)
OBJ4_OGL  = $(OBJ4:.=_ogl.)

OBJ30_COPY0 = $(OBJ30:.obj=.ogl)
OBJ30_COPY  = $(OBJ30_COPY0:+=)
OBJ30_OGL   = $(OBJ30:.=_ogl.)

PNG_INCLUDES =
!ifdef LIBPNG_DIR
!ifdef ZLIB_DIR
PNG_INCLUDES = -D_PNG -I$(LIBPNG_DIR) -I$(ZLIB_DIR)
!endif
!endif

!endif
!endif


##################################################
# The things to make

ASNTOOL_EXE  = asntool.___

DO_OBJ = \
 $(MT_OBJ) $(MAIN_OBJ)

DO_LIB = \
 $(XLIB1)  $(XLIB2)  $(XLIB3)  $(XLIB4)  $(XLIB5) $(XLIB45) \
 $(XLIB20) $(XLIB22) $(XLIB23) $(XLIB28) $(XLIB30) \
 $(XLIB4_OGL) $(XLIB30_OGL)

DO_EXE = \
 $(ASNTOOL_EXE)

nocopy:	$(DO_OBJ) $(DO_LIB) $(DO_EXE)

noexe:	$(DO_OBJ) $(DO_LIB)


##################################################
# Deploy source files

copy_reg:
!ifdef NC
	echo "NO COPY"
!else
	-mkdir $(INCPATH)
	-mkdir $(INCPATH)\connect
	-mkdir $(INCPATH)\ctools
	-mkdir $(LIBPATH)
	-copy *.dos $(LIBPATH)
	-copy *.bat $(LIBPATH)
	copy ..\corelib\tsprintf.h $(INCPATH)
	copy ..\corelib\gifgen.h $(INCPATH)
	copy ..\corelib\ncbi*.h $(INCPATH)
	copy ..\corelib\tree*.h $(INCPATH)
	copy ..\corelib\matrix.h $(INCPATH)
	copy ..\corelib\binary.h $(INCPATH)
	copy ..\corelib\ncbilcl.msw $(INCPATH)\ncbilcl.h
	copy ..\corelib\*.c .
	copy ..\corelib\core*.h .
	copy ..\corelib\regex.h $(INCPATH)
	copy ..\asnlib\*.h .
	copy asn.h $(INCPATH)
	$(DEL) asn.h
	copy ..\asnlib\*.c .
	copy ..\connect\*.c .
	copy ..\connect\ncbi_priv.h .
	copy ..\connect\ncbi_comm.h .
	copy ..\connect\ncbi_server_infop.h .
	copy ..\connect\ncbi_servicep.h .
	copy ..\connect\ncbi_servicep_dispd.h .
	copy ..\connect\ncbi_servicep_lbsmd.h .
	copy ..\connect\*.h $(INCPATH)
	$(DEL) ..\include\ncbi_*.h
	copy ..\connect\ncbi_*.h $(INCPATH)\connect
	copy ..\ctools\*.c .
	copy ..\ctools\*.h $(INCPATH)\ctools
	copy ..\object\*.c .
	copy ..\object\*.h $(INCPATH)
	copy ..\access\*.c .
	copy ..\access\*.h $(INCPATH)
	copy ..\asnstat\*.h $(INCPATH)
	copy ..\api\*.h $(INCPATH)
	copy ..\api\*.c .
	copy ..\cdromlib\*.h $(INCPATH)
	copy ..\cdromlib\*.c .
	copy ..\biostruc\*.h $(INCPATH)
	copy ..\biostruc\*.c .
	copy ..\biostruc\cdd\*.h $(INCPATH)
	copy ..\biostruc\cdd\*.c .
	copy ..\biostruc\cn3d\*.h $(INCPATH)
	copy ..\biostruc\cn3d\*.c .
	copy ..\tools\*.h $(INCPATH)
	copy ..\tools\*.c .
	copy ..\link\mswin\*.rc .
	copy ..\link\mswin\*.ico .
	copy ..\link\mswin\ncbirc.h .
!ifndef CONSOLE
	copy ..\vibrant\*.h $(INCPATH)
	copy ..\vibrant\*.c .
	copy ..\desktop\*.h $(INCPATH)
	copy ..\desktop\*.c .
	copy ..\gif\*.c .
	copy ..\gif\*.h $(INCPATH)
	copy ..\cn3d\*.h $(INCPATH)
	copy ..\cn3d\*.c .
!endif
	copy ..\ddv\*.h $(INCPATH)
	copy ..\ddv\*.c .
!endif

copy: copy_reg $(OBJ4_COPY) $(OBJ30_COPY)

##########################################################



##########################################################
## Make libraries
##
##########################################################
!ifdef XLIB1
$(XLIB1):
	$(MAKE) -f <<
$(DLL_AVAIL)
$(INCLUDE_GEN)
LIB_NAME = $(XLIB1)
LIB_OBJ = $(OBJ1)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB2
$(XLIB2):
	$(MAKE) -f <<
$(DLL_AVAIL)
$(INCLUDE_GEN)
LIB_NAME = $(XLIB2)
LIB_OBJ = $(OBJ2)
LIB_LIB = $(LIB1)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB3
$(XLIB3):
	$(MAKE) -f <<
$(DLL_AVAIL)
$(INCLUDE_GEN)
LIB_NAME = $(XLIB3)
LIB_OBJ = $(OBJ3)
LIB_LIB = $(LIB2) $(LIB1)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB4
$(XLIB4):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB4)
LIB_OBJ = $(OBJ4)
LIB_LIB = $(LIB1)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB4_OGL
$(XLIB4_OGL):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB4_OGL)
LIB_OBJ = $(OBJ4_OGL)
LIB_LIB = $(LIB1)
LIB_OPT = -D_OPENGL $(PNG_INCLUDES)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB5
$(XLIB5):
	$(MAKE) -f <<
$(DLL_AVAIL)
$(INCLUDE_GEN)
LIB_NAME = $(XLIB5)
LIB_OBJ = $(OBJ5)
LIB_LIB = $(LIB3) $(LIB2) $(LIB1)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB20
$(XLIB20):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB20)
LIB_OBJ = $(OBJ20)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB22
$(XLIB22):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB22)
LIB_OBJ = $(OBJ22)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB23
$(XLIB23):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB23)
LIB_OBJ = $(OBJ23)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB28
$(XLIB28):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB28)
LIB_OBJ = $(OBJ28)
LIB_LIB =
LIB_OPT = -DWIN_GIF
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB30
$(XLIB30):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB30)
LIB_OBJ = $(OBJ30)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB30_OGL
$(XLIB30_OGL):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB30_OGL)
LIB_OBJ = $(OBJ30_OGL)
LIB_LIB =
LIB_OPT = -D_OPENGL $(PNG_INCLUDES)
$(INCLUDE_LIB)
<<
!endif
##########################################################
!ifdef XLIB45
$(XLIB45):
	$(MAKE) -f <<
$(INCLUDE_GEN)
LIB_NAME = $(XLIB45)
LIB_OBJ = $(OBJ45)
LIB_LIB =
$(INCLUDE_LIB)
<<
!endif
##########################################################
##########################################################

##########################################################
!ifdef ASNTOOL_EXE
$(ASNTOOL_EXE):
	$(MAKE) -f <<
$(INCLUDE_GEN)
TEST_NAME = asntool
TEST_OBJ = asntool.obj asncode.obj
TEST_LIB = $(LIB4) $(LIB2) $(LIB1)
RES = 1
$(INCLUDE_EXE)
<<
!endif

