source: tags/initial/Makefile

Last change on this file was 2, checked in by oldcode, 23 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 22.4 KB
Line 
1
2#********************* Start of user defined Section
3
4# To setup your computer, change file config.makefile first
5
6
7#       set ARBHOME to this directory
8ARBHOME = `pwd`
9
10
11
12#       disable all lib dirs
13LD_LIBRARY_PATH = ${SYSTEM_LD_LIBRARY_PATH}:$(ARBHOME)/LIBLINK:$(ARBHOME)/lib
14
15# get the machine type
16include config.makefile
17
18#********************* Default set and gcc static enviroments *****************
19
20FORCEMASK = umask 002
21
22#---------------------- Some compiler-specific defaults
23
24ifdef ECGS
25dflag1 = -ggdb3
26enumequiv = 
27havebool = -DHAVE_BOOL
28else
29dflag1 = -g
30enumequiv = -fenum-int-equiv
31havebool = 
32endif
33
34#----------------------
35
36ifdef DEBUG
37   dflags = -DDEBUG
38   cflags = $(dflag1) $(dflags)
39   lflags = $(dflag1)
40   fflags = $(dflag1) -C
41else
42   dflags = -DNDEBUG
43   cflags = -O $(dflags)
44   lflags = -O
45   fflags = -O
46endif
47
48   XHOME = /usr/X11
49
50   GMAKE = gmake -r
51   CPP = g++ -Wall $(enumequiv) -D$(MACH) $(havebool) -pipe#            # C++ Compiler /Linker
52   ACC = gcc -Wall -fenum-int-equiv -D$(MACH) -pipe#                            # Ansi C
53   CCLIB = $(ACC)#                      # Ansii C. for shared libraries
54   CCPLIB = $(CPP)#                     # Same for c++
55   AR = ld -r -o#                       # Archive Linker
56   ARLIB = ld -r -o#                    # The same for shared libs.
57   XAR = $(AR)#                         # Linker for archives containing templates
58   MAKEDEPEND = $(FORCEMASK);makedepend $(dflags)
59   SHARED_LIB_SUFFIX = so#              # shared lib suffix
60   F77 = f77
61
62   CTAGS = etags
63   CLEAN_BEFORE_MAKE = # make clean before all (needed because of bug in Sun CC with templates)
64   XMKMF =      /usr/bin/X11/xmkmf
65
66ifdef SEER
67    SEERLIB = SEER/SEER.a
68else
69    SEERLIB =
70endif
71
72#********************* Linux and gcc enviroments *****************
73ifdef LINUX
74
75   LINUX_SPECIALS = -DNO_REGEXPR
76   SITE_DEPENDEND_TARGETS = perl
77   CPP := $(CPP) $(LINUX_SPECIALS) -Wunused
78   ACC := $(ACC) $(LINUX_SPECIALS)
79   CCLIB = $(ACC) -fpic
80   CCPLIB = $(CPP) -fpic        #                       # Same for c++
81   f77_flags = $(fflags) -W -N9 -e
82   F77LIB = -lU77
83
84   ARCPPLIB = g++ -Wall -shared $(LINUX_SPECIALS) -o
85   ARLIB = gcc -Wall -shared $(LINUX_SPECIALS) -o
86   GMAKE = make -j 3 -r
87   XINCLUDES = -I/usr/X11/include -I/usr/X11/include/Xm -I/usr/openwin/include
88
89   SYSLIBS = -lm
90   XLIBS = -lXm -lXpm -lXp -lXt -lXext -lX11 -L$(XHOME)/lib $(SYSLIBS) -lc
91   OWLIBS =  -L${OPENWINHOME}/lib -lxview -lolgx -L$(XHOME)/lib -lX11 $(SYSLIBS) -lc
92   PERLBIN = /usr/bin
93   PERLLIB = /usr/lib
94   CRYPTLIB = -L/usr/lib -lcrypt
95
96endif
97
98#********************* SUN4 && acc CC enviroments *****************
99#********************* SUN4 dynamic libraries libC *****************
100
101ifdef SUN4
102   SITE_DEPENDEND_TARGETS = perl
103   ARLIB =      ld -assert pure-text -o
104   CPP = CC -D$(MACH) -DNO_REGEXPR
105   PP = CC -D$(MACH) -E
106   ACC = acc -D$(MACH) -DNO_REGEXPR
107   CCPLIB = $(CPP) -pic
108   CCLIB = $(ACC) -pic
109
110   XMKMF =      /usr/openwin/bin/xmkmf
111   SHARED_LIB_SUFFIX = so.2.0
112
113   XINCLUDES = -I$(XHOME)/include -I$(OPENWINHOME)/include
114
115   STATIC = -Bstatic
116   DYNAMIC = -Bdynamic
117   MOTIFLIB =  -lXm
118   SYSLIBS = -lm
119   XLIBS =  -L$(XHOME)/lib $(MOTIFLIB) -lXt -lX11 $(SYSLIBS) $(CCPLIBS)
120   OWLIBS =  -L$(OPENWINHOME)/lib -lxview -lolgx -lX11 $(SYSLIBS)
121
122endif
123
124
125#********************* SUN5  CC enviroments  *****************
126#********************* SUN5  ****
127ifdef SUN5
128   SITE_DEPENDEND_TARGETS = perl
129   AR = $(FORCEMASK);ld -r -o#                  # Archive Linker
130   XAR = $(FORCEMASK);CC -xar -o#
131   ARLIB = $(FORCEMASK);ld -G -o#
132
133ifdef SUN_WS_50
134   FAKE_VIRTUAL_TABLE_POINTER = -DFAKE_VIRTUAL_TABLE_POINTER=char # fake pointer to virtual table at start of structs (when passing classes to C)
135   havebool = -DHAVE_BOOL
136
137   SUN_ACC_FLAGS = -errtags=yes -erroff=E_MODIFY_TYPEDEF_IGNORED $(havebool) $(FAKE_VIRTUAL_TABLE_POINTER)
138   SUN_CPP_FLAGS = +w2 $(havebool) $(FAKE_VIRTUAL_TABLE_POINTER)
139   AR = ld -r -o#
140   ARLIB = CC -G -o#
141else
142   SUN_ACC_FLAGS = 
143   SUN_CPP_FLAGS = +w2
144endif
145
146   ACC = $(FORCEMASK);cc -D$(MACH) $(SUN_ACC_FLAGS)
147   CPP = $(FORCEMASK);CC -D$(MACH) $(SUN_CPP_FLAGS)
148   PP = $(FORCEMASK);CC -D$(MACH) -E
149   CCLIB = cc -D$(MACH) $(SUN_ACC_FLAGS) -Kpic
150   CCPLIB = CC -D$(MACH) $(SUN_CPP_FLAGS) -PIC
151
152   XHOME = /usr/dt
153   XMKMF =      /usr/openwin/bin/xmkmf
154   f77_flags = $(fflags) -e -silent
155   F77LIB = -nolib -Bstatic -lF77 -lsunmath -Bdynamic -lm -lc
156
157   XINCLUDES = -I$(XHOME)/include -I$(OPENWINHOME)/include
158   STATIC = -Bstatic
159   DYNAMIC = -Bdynamic
160
161   SYSLIBS = -lm -lsocket -lnsl -lgen -lposix4
162   XLIBS =  -L$(OPENWINHOME)/lib -L$(XHOME)/lib -lXm -lXt -lX11 $(SYSLIBS)
163   OWLIBS =  -L$(OPENWINHOME)/lib -lxview -lolgx -lX11 -L/usr/ucblib -lucb $(SYSLIBS)
164   CTAGS = etags
165   CLEAN_BEFORE_MAKE = $(MAKE) clean# rebuild templates! (needed because of bug in Sun CC)
166
167ifdef DEBUG
168        RTC = -lRTC8M
169endif
170endif
171
172
173#********************* HP and CC/cc enviroments (dynamic) *****************
174
175ifdef HPCC
176   ARLIB =      ld -b -o
177   HPSPECIALS = -D$(MACH) -DNO_REGEXPR -DNO_INLINE
178   XMKMF = /usr/local/bin/X11/xmkmf
179   NOTEMPLATES = 1
180
181   CPP = LDOPTS='+s'; export LDOPTS;CC $(HPSPECIALS)
182   ACC = LDOPTS='+s'; export LDOPTS;cc $(HPSPECIALS) -Ae
183
184   CCPLIB = $(CPP) +z
185   CCLIB = $(ACC) +z
186
187   SYSLIBS = -codelibs -lm
188   SHARED_LIB_SUFFIX = sl
189
190   XINCLUDES = -I/usr/include/X11R5 -I/usr/include/Motif1.2
191   XLIBS = -L/usr/lib/X11R5 -L/usr/lib/Motif1.2  -lXm -lXt -lX11 $(SYSLIBS)
192endif
193
194#********************* HP and CC/cc enviroments (dynamic) *****************
195
196ifdef DIGITAL
197   ARLIB =      ld -r -g -o
198   DIGSPECIALS = -D$(MACH) -DNO_REGEXPR
199   CPP = cxx -w0 -x cxx $(DIGSPECIALS)
200   ACC = cc -w0 $(DIGSPECIALS)
201
202   CCPLIB = $(CPP)
203   CCLIB = $(ACC)
204
205   SHARED_LIB_SUFFIX = so
206   SYSLIBS = 
207
208   STATIC = -non_shared
209   DYNAMIC =
210
211   XINCLUDES = 
212   SYSLIBS = -lm
213   XLIBS =  -lXm -lXt -lX11 $(SYSLIBS)
214endif
215
216#********************* SGI and CC/cc enviroments (dynamic) *****************
217
218ifdef SGI
219   ARLIB =      CC -D$(MACH) -shared -o
220   SGISPECIALS  = -DNO_REGEXPR
221   CPP =        CC -D$(MACH) $(SGISPECIALS)
222   ACC =        cc -w -D$(MACH) $(SGISPECIALS)
223   XMKMF =      /usr/bin/X11/xmkmf
224   CCPLIB = $(CPP)
225   CCLIB = $(ACC)
226   XINCLUDES =
227   SYSLIBS = -lm
228   XLIBS = -lXm -lXt -lX11 $(SYSLIBS)
229endif
230
231#********************* Main dependences *******************
232ifndef ARCPPLIB
233        ARCPPLIB = $(ARLIB)
234endif
235
236dummy:
237        @echo 'Please choose a Makefile option:'
238        @echo ' arb             - Just compile ARB'
239        @echo ' perl            - Compile the PERL XSUBS into lib/ARB.so  and create links in lib to perl'
240        @echo ' binlink         - Create all links in the bin directory'
241        @echo ' all             - Compile ARB + TOOLs + and copy shared libs + link foreign software'
242        @echo ' tarfile         - make all and create "arb.tar.gz"'
243        @echo ' tarale          - compress emacs and ale lisp files int arb_ale.tar.gz'
244        @echo ' save            - save all basic ARB sources into arbsrc_DATE'
245        @echo ' savedepot       - save all extended ARB source (DEPOT2 subdir) into arbdepot_DATE.cpio.gz'
246        @echo ' clean           - remove intermediate files'
247        @echo ' realclean       - remove all generated files'
248        @echo ' rmbak           - remove all "*%" and cores'
249        @echo ' tags            - create tags for xemacs'
250        @echo ' depend          - create dependencies'
251        @echo ' XXX/.depend     - create dependencies in dir XXX'
252        @echo ' rtc_patch       - create LIBLINK/libRTC8M.so (SOLARIS ONLY'
253        @echo ' menus           - create GDEHELP/ARB_GDEmenus from GDEHELP/ARB_GDEmenus.source'
254        @echo ' update          - copy all new files under ../source to ../* (update other versions)'
255        @echo ' export          - make tarfile and export tarfile'
256
257#********************* End of user defined Section *******************
258
259
260
261
262DIR = $(ARBHOME)
263LIBS = -lAW -lARBDB $(RTC) $(XLIBS)
264LIBPATH = -LLIBLINK
265
266DEST_LIB = lib
267DEST_BIN = bin
268
269AINCLUDES =     -I. -I$(DIR)/INCLUDE $(XINCLUDES)
270CPPINCLUDES =   -I. -I$(DIR)/INCLUDE $(XINCLUDES)
271MAKEDEPENDINC = -I. -I$(DIR)/DUMMYINC -I$(DIR)/INCLUDE
272
273#*****          List of all Directories
274ARCHS = \
275                        SEER/SEER.a \
276                        CONSENSUS_TREE/CONSENSUS_TREE.a \
277                        AISC/dummy.a AISC_MKPTPS/dummy.a \
278                        PROBE_COM/server.a \
279                        NAMES_COM/server.a \
280                        ORS_COM/server.a \
281                        ORS_SERVER/ORS_SERVER.a ORS_CGI/ORS_CGI.a \
282                        ARBDB/libARBDB.a \
283                        ARBDBS/libARBDB.a ARBDBPP/libARBDBPP.a \
284                        ARBDB2/libARBDB.a \
285                        ARBDB_COMPRESS/ARBDB_COMPRESS.a \
286                        AWT/libAWT.a WINDOW/libAW.a \
287                        EDIT/EDIT.a  STAT/STAT.a \
288                        PROBE/PROBE.a GDE/GDE.a CONVERTALN/CONVERTALN.a \
289                        NALIGNER/NALIGNER.a \
290                        SERVERCNTRL/SERVERCNTRL.a DIST/DIST.a \
291                        PHYLO/PHYLO.a MERGE/MERGE.a \
292                        DBSERVER/DBSERVER.a NAMES/NAMES.a \
293                        PROBE_DESIGN/PROBE_DESIGN.a \
294                        PROBE_GROUP/PROBE_GROUP.a \
295                        AWTC/AWTC.a AWDEMO/AWDEMO.a NTREE/NTREE.a \
296                        ARB_GDE/ARB_GDE.a  ALIV3/ALIV3.a \
297                        PARSIMONY/PARSIMONY.a TOOLS/TOOLS.a READSEQ/READSEQ.a \
298                        SECONDARY/SECONDARY.a SECEDIT/SECEDIT.a ALEIO/.a \
299                        TEST/TEST.a WETC/WETC.a CAT/CAT.a TRS/TRS.a \
300                        EDIT4/EDIT4.a MULTI_PROBE/MULTI_PROBE.a EISPACK/EISPACK.a
301
302
303ARCHS_CLIENTACC = PROBE_COM/client.a
304ARCHS_CLIENTCPP = NAMES_COM/client.a
305ARCHS_CLIENT = $(ARCHS_CLIENTCPP)
306ARCHS_MAKEBIN =         AISC_MKPTPS/dummy.a AISC/dummy.a
307
308ARCHS_COMMUNICATION =   NAMES_COM/server.a\
309                        PROBE_COM/server.a\
310                        ORS_COM/server.a
311
312
313#***************************************************************************************
314#               Individual Programs Section
315#***************************************************************************************
316
317#***********************************    arb_ntree **************************************
318NTREE = bin/arb_ntree
319ARCHS_NTREE = NAMES_COM/server.a $(ARCHS_CLIENTACC) NTREE/NTREE.a STAT/STAT.a MULTI_PROBE/MULTI_PROBE.a \
320        ARB_GDE/ARB_GDE.a PROBE_DESIGN/PROBE_DESIGN.a \
321        AWTC/AWTC.a SERVERCNTRL/SERVERCNTRL.a MERGE/MERGE.a CAT/CAT.a $(SEERLIB) 
322$(NTREE): $(ARCHS_NTREE) aw db
323        $(CPP) $(lflags) -o $@ $(LIBPATH) \
324                NTREE/NTREE.a STAT/STAT.a PROBE_DESIGN/PROBE_DESIGN.a MULTI_PROBE/MULTI_PROBE.a CAT/CAT.a \
325                AWTC/AWTC.a ARB_GDE/ARB_GDE.a MERGE/MERGE.a SERVERCNTRL/SERVERCNTRL.a $(SEERLIB) \
326                $(ARCHS_CLIENTACC) -lAWT $(LIBS)
327
328#***********************************    arb_edit **************************************
329EDIT = bin/arb_edit
330ARCHS_EDIT = EDIT/EDIT.a ARB_GDE/ARB_GDE.a STAT/STAT.a
331$(EDIT): $(ARCHS_EDIT)
332        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_EDIT) -lAWT -lARBDBPP $(LIBS)
333
334#***********************************    arb_edit4 **************************************
335EDIT4 = bin/arb_edit4
336ARCHS_EDIT4 = NAMES_COM/client.a AWTC/AWTC.a EDIT4/EDIT4.a SECEDIT/SECEDIT.a \
337        SERVERCNTRL/SERVERCNTRL.a STAT/STAT.a ARB_GDE/ARB_GDE.a
338$(EDIT4): $(ARCHS_EDIT4) aw db
339        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_EDIT4) -lAWT $(LIBS)
340
341#***********************************    arb_wetc **************************************
342WETC = bin/arb_wetc
343ARCHS_WETC = WETC/WETC.a
344$(WETC): $(ARCHS_WETC)
345        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_WETC) -lAWT $(LIBS)
346
347#***********************************    arb_dist **************************************
348DIST = bin/arb_dist
349ARCHS_DIST = DIST/DIST.a SERVERCNTRL/SERVERCNTRL.a CONSENSUS_TREE/CONSENSUS_TREE.a \
350                EISPACK/EISPACK.a
351#               FINDCORRWIN/FINDCORRWIN.a FINDCORRMATH/FINDCORRMATH.a
352$(DIST): $(ARCHS_DIST)
353        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_DIST) $(ARCHS_CLIENT) -lAWT $(LIBS)
354
355#***********************************    arb_pars **************************************
356PARSIMONY =             bin/arb_pars
357ARCHS_PARSIMONY =       PARSIMONY/PARSIMONY.a
358$(PARSIMONY): $(ARCHS_PARSIMONY)
359        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_PARSIMONY) -lAWT $(LIBS)
360
361
362#***********************************    arb_naligner **************************************
363NALIGNER = bin/arb_naligner
364ARCHS_NALIGNER = PROBE_COM/server.a NALIGNER/NALIGNER.a SERVERCNTRL/SERVERCNTRL.a
365$(NALIGNER): $(ARCHS_NALIGNER)
366        cp NALIGNER/NALIGNER.com $@
367# no LIB_NALIGNER defined: see NALIGNER/Makefile
368
369#***********************************    arb_secondary **************************************
370SECONDARY = bin/arb_secondary
371ARCHS_SECONDARY = SECONDARY/SECONDARY.a
372$(SECONDARY):   $(ARCHS_SECONDARY)
373        $(CPP) $(cflags) -o $@ $(LIBPATH) $(ARCHS_SECONDARY) -lAWT $(LIBS)     
374
375#***********************************    arb_secedit **************************************
376SECEDIT = bin/arb_secedit
377ARCHS_SECEDIT = SECEDIT/SECEDIT.a
378$(SECEDIT):     $(ARCHS_SECEDIT)
379        $(CPP) $(cflags) -o $@ $(LIBPATH) $(ARCHS_SECEDIT) -lAWT $(LIBS)       
380
381
382#***********************************    arb_probe_group **************************************
383PROBE_GROUP = bin/arb_probe_group
384ARCHS_PROBE_GROUP = PROBE_GROUP/PROBE_GROUP.a SERVERCNTRL/SERVERCNTRL.a $(ARCHS_CLIENTACC)
385$(PROBE_GROUP): $(ARCHS_PROBE_GROUP)
386        $(CPP) $(cflags) -o $@ $(LIBPATH) $(ARCHS_PROBE_GROUP) $(LIBS)
387
388#***********************************    arb_phylo **************************************
389PHYLO = bin/arb_phylo
390ARCHS_PHYLO = PHYLO/PHYLO.a
391$(PHYLO): $(ARCHS_PHYLO)
392        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_PHYLO) -lAWT $(LIBS)
393
394
395#***************************************************************************************
396#                                       SERVER SECTION
397#***************************************************************************************
398
399#***********************************    arb_db_server **************************************
400DBSERVER = bin/arb_db_server
401ARCHS_DBSERVER = DBSERVER/DBSERVER.a SERVERCNTRL/SERVERCNTRL.a
402$(DBSERVER): $(ARCHS_DBSERVER)
403        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_DBSERVER) -lARBDB $(SYSLIBS)
404
405#***********************************    arb_pt_server **************************************
406PROBE = bin/arb_pt_server
407ARCHS_PROBE = PROBE_COM/server.a PROBE/PROBE.a SERVERCNTRL/SERVERCNTRL.a
408$(PROBE): $(ARCHS_PROBE)
409        $(CPP) $(lflags) -o $@ $(LIBPATH) PROBE/PROBE.a PROBE_COM/server.a \
410                        SERVERCNTRL/SERVERCNTRL.a PROBE_COM/client.a $(STATIC) -lARBDB $(CCPLIBS) $(DYNAMIC) $(SYSLIBS) 
411
412#***********************************    arb_name_server **************************************
413NAMES = bin/arb_name_server
414ARCHS_NAMES = NAMES_COM/server.a NAMES/NAMES.a SERVERCNTRL/SERVERCNTRL.a
415$(NAMES): $(ARCHS_NAMES)
416        $(CPP) $(lflags) -o $@ $(LIBPATH) NAMES/NAMES.a SERVERCNTRL/SERVERCNTRL.a NAMES_COM/server.a NAMES_COM/client.a -lARBDB $(SYSLIBS) $(CCPLIBS)
417
418#***********************************    ors **************************************
419ORS_SERVER = tb/ors_server
420ARCHS_ORS_SERVER = ORS_COM/server.a ORS_SERVER/ORS_SERVER.a SERVERCNTRL/SERVERCNTRL.a
421$(ORS_SERVER): $(ARCHS_ORS_SERVER)
422        $(CPP) $(lflags) -o $@ $(LIBPATH) ORS_SERVER/ORS_SERVER.a SERVERCNTRL/SERVERCNTRL.a ORS_COM/server.a ORS_COM/client.a $(STATIC) -lARBDB $(DYNAMIC) $(SYSLIBS) $(CCPLIBS) $(CRYPTLIB)
423
424ORS_CGI = tb/ors_cgi
425ARCHS_ORS_CGI = ORS_COM/server.a ORS_CGI/ORS_CGI.a SERVERCNTRL/SERVERCNTRL.a
426$(ORS_CGI): $(ARCHS_ORS_CGI)
427        $(CPP) $(lflags) -o $@ $(LIBPATH) ORS_CGI/ORS_CGI.a SERVERCNTRL/SERVERCNTRL.a ORS_COM/client.a $(STATIC) -lARBDB $(DYNAMIC) $(SYSLIBS) $(CCPLIBS)
428
429
430EDITDB = tb/editDB
431ARCHS_EDITDB = EDITDB/EDITDB.a
432$(EDITDB): $(ARCHS_EDITDB)
433        $(CPP) $(lflags) -o $@ $(ARCHS_EDITDB) -lARBDB -lAWT $(LIBS)
434
435
436#***********************************    TEST SECTION  **************************************
437AWDEMO = tb/awdemo
438ARCHS_AWDEMO = AWDEMO/AWDEMO.a
439$(AWDEMO): $(ARCHS_AWDEMO)
440        $(CPP) $(lflags) -o $@ $(ARCHS_AWDEMO) $(LIBS)
441
442TEST = tb/dbtest
443ARCHS_TEST = TEST/TEST.a
444$(TEST):        $(ARCHS_TEST)
445        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_TEST)  -lAWT $(LIBS)
446
447ALIV3 = tb/aliv3
448ARCHS_ALIV3 = PROBE_COM/server.a ALIV3/ALIV3.a SERVERCNTRL/SERVERCNTRL.a
449$(ALIV3): $(ARCHS_ALIV3)
450        $(CPP) $(lflags) -o $@ $(LIBPATH) ALIV3/ALIV3.a SERVERCNTRL/SERVERCNTRL.a PROBE_COM/client.a -lARBDB $(SYSLIBS) $(CCPLIBS)
451
452
453ACORR = tb/acorr
454ARCHS_ACORR =   DIST/DIST.a SERVERCNTRL/SERVERCNTRL.a FINDCORRASC/FINDCORRASC.a FINDCORRMATH/FINDCORRMATH.a FINDCORRWIN/FINDCORRWIN.a
455$(ACORR): $(ARCHS_ACORR)
456        $(CPP) $(lflags) -o $@ $(LIBPATH) $(ARCHS_ACORR) $(ARCHS_CLIENT) -lAWT -lARBDBPP $(LIBS)
457
458
459
460ARBDB_COMPRESS = tb/arbdb_compress
461ARCHS_ARBDB_COMPRESS = ARBDB_COMPRESS/ARBDB_COMPRESS.a
462$(ARBDB_COMPRESS): $(ARCHS_ARBDB_COMPRESS)
463        $(CPP) $(lflags) -o $@ $(LIBPATH) ARBDB_COMPRESS/ARBDB_COMPRESS.a -lARBDB
464
465
466#***************************************************************************************
467#                       Rekursiv calls to submakefiles
468#***************************************************************************************
469:
470%.depend: 
471        @$(GMAKE) -C $(@D) -r \
472                "LD_LIBRARY_PATH  = ${LD_LIBRARY_PATH}" \
473                "MAKEDEPENDINC = $(MAKEDEPENDINC)" \
474                "MAKEDEPEND=$(MAKEDEPEND)" depend;
475        @grep "DO NOT DELETE THIS LINE" $(@D)/Makefile >/dev/null && cat $(@D)/Makefile \
476                | sed   -e "s/\/[^      ]*\/DUMMYINC\/[^        ]*\.h//g" \
477                        -e "s/\/usr\/include\/[^        ]*\.h//g" \
478                        -e "s/\/[^      ]*\/INCLUDE/\\\$$(ARBHOME)\/INCLUDE/g" \
479                >$(@D)/Makefile.2 && \
480                mv $(@D)/Makefile.2 $(@D)/Makefile || echo nop
481
482
483%.links: 
484        @$(GMAKE) -C $(@D) -r links || echo '********* Ignoring Errors !!!!! ********';
485
486%.dummy:
487        @echo -------------------------------------------------------------------------------- Making $(@F:.dummy=.a)
488        @$(GMAKE) -C $(@D) -r \
489                "GMAKE = $(GMAKE)" \
490                "ARBHOME = $(ARBHOME)" "cflags = $(cflags) -D_ARB_$(@D:/=)" "lflags = $(lflags)" \
491                "CPPINCLUDES = $(CPPINCLUDES)" "AINCLUDES = $(AINCLUDES)" \
492                "F77 = $(F77)" "f77_flags = $(f77_flags)" "F77LIB = $(F77LIB)" \
493                "CPP = $(CPP)" "ACC = $(ACC)" \
494                "CCLIB = $(CCLIB)" "CCPLIB = $(CCPLIB)" "CCPLIBS = $(CCPLIBS)" \
495                "AR = $(AR)" "XAR = $(XAR)" "ARLIB = $(ARLIB)" "ARCPPLIB = $(ARCPPLIB)" \
496                "LIBPATH = $(LIBPATH)" "SYSLIBS = $(SYSLIBS)" \
497                "XHOME = $(XHOME)" "STATIC = $(STATIC)"\
498                "SHARED_LIB_SUFFIX = $(SHARED_LIB_SUFFIX)" \
499                "LD_LIBRARY_PATH  = $(LD_LIBRARY_PATH)" \
500                "CLEAN_BEFORE_MAKE  = $(CLEAN_BEFORE_MAKE)" \
501                "MAIN = $(@F:.dummy=.a)" 
502
503
504#***************************************************************************************
505#                       Short aliases to make targets
506#***************************************************************************************
507
508mbin:   $(ARCHS_MAKEBIN:.a=.dummy)
509com:    $(ARCHS_COMMUNICATION:.a=.dummy)
510
511db:             ARBDB/libARBDB.dummy
512dbs:    ARBDBS/libARBDB.dummy
513db2:    ARBDB2/libARBDB.dummy
514dp:             ARBDBPP/libARBDBPP.dummy
515aw:             WINDOW/libAW.dummy
516awt:    AWT/libAWT.dummy
517
518mp:     MULTI_PROBE/MULTI_PROBE.dummy
519
520nt:             $(ARCHS_NTREE:.a=.dummy)        $(NTREE)
521ed:             $(ARCHS_EDIT:.a=.dummy)         $(EDIT)
522
523al:             $(ARCHS_ALIGNER:.a=.dummy)      $(ALIGNER)
524nal:    $(ARCHS_NALIGNER:.a=.dummy)     $(NALIGNER)
525a3:             $(ARCHS_ALIV3:.a=.dummy)        $(ALIV3)
526
527di:             $(ARCHS_DIST:.a=.dummy)         $(DIST)
528ph:             $(ARCHS_PHYLO:.a=.dummy)        $(PHYLO)
529pa:             $(ARCHS_PARSIMONY:.a=.dummy)    $(PARSIMONY)
530se:             $(ARCHS_SECEDIT:.a=.dummy)      $(SECEDIT)
531acc:    $(ARCHS_ACORR:.a=.dummy)        $(ACORR)
532
533ds:             $(ARCHS_DBSERVER:.a=.dummy)     $(DBSERVER)
534pr:             $(ARCHS_PROBE:.a=.dummy)        $(PROBE)
535pg:             $(ARCHS_PROBE_GROUP:.a=.dummy)  $(PROBE_GROUP)
536pd:             PROBE_DESIGN/PROBE_DESIGN.dummy
537na:             $(ARCHS_NAMES:.a=.dummy)        $(NAMES)
538os:             $(ARCHS_ORS_SERVER:.a=.dummy)   $(ORS_SERVER)
539oc:             $(ARCHS_ORS_CGI:.a=.dummy)      $(ORS_CGI)
540
541ac:             $(ARCHS_ARBDB_COMPRESS:.a=.dummy)       $(ARBDB_COMPRESS)
542
543te:             $(ARCHS_TEST:.a=.dummy) $(TEST)
544#sec:   $(ARCHS_SECONDARY:.a=.dummy)    $(SECONDARY)
545sec:    $(ARCHS_SECEDIT:.a=.dummy)      $(SECONDARY)
546de:             $(ARCHS_AWDEMO:.a=.dummy)       $(AWDEMO)
547
548e4:             $(ARCHS_EDIT4:.a=.dummy)        $(EDIT4)
549we:             $(ARCHS_WETC:.a=.dummy)         $(WETC)
550eb:             $(ARCHS_EDITDB:.a=.dummy)       $(EDITDB)
551
552#********************************************************************************
553
554depend: $(ARCHS:.a=.depend)
555tags:
556# first search class definitions
557        $(CTAGS)          --language=none "--regex=/^[ \t]*class[ \t]+\([^ \t]+\)/" `find . -name '*.[ch]xx' -type f` 
558        $(CTAGS) --append --language=none "--regex=/\([^ \t]+\)::/" `find . -name '*.[ch]xx' -type f` 
559# then append normal tags (headers first)
560        $(CTAGS) --append --members ARBDB/*.h `find . -name '*.[h]xx' -type f` 
561        $(CTAGS) --append ARBDB/*.c `find . -name '*.[c]xx' -type f`
562tags2:
563        $(CTAGS) `find . -follow -name '*.[ch]xx' -type f` ARBDB/*.[ch]
564links:  ARBDB2/libARBDB.links ARBDBS/libARBDB.links
565
566
567bin/fig2dev:
568        cd fig2dev/dev;$(XMKMF)
569        cd fig2dev;$(XMKMF)
570        cd fig2dev/dev;$(MAKE)
571        cd fig2dev;$(MAKE)
572        cp fig2dev/fig2dev bin
573#       cd fig2dev/dev;make
574#       cd fig2dev;make fig2dev
575#       cp fig2dev/fig2dev bin
576
577figclean:
578        rm -f bin/fig2dev
579        cd fig2dev/dev;$(MAKE) clean
580        -(cd fig2dev;$(MAKE) clean)
581
582gde:            GDE/GDE.dummy
583tools:          TOOLS/TOOLS.dummy
584nf77:           NIELS_F77/NIELS_F77.dummy
585trs:            TRS/TRS.dummy
586convert:        CONVERTALN/CONVERTALN.dummy
587readseq:        READSEQ/READSEQ.dummy
588aleio:          ALEIO/.dummy
589fig2dev:        bin/fig2dev
590
591
592#***************************************************************************************
593#                       Some user commands
594#***************************************************************************************
595rtc_patch:
596        rtc_patch_area -so LIBLINK/libRTC8M.so
597
598menus:
599        $(GMAKE) -C GDEHELP -r "PP=$(PP)" all
600
601tarfile:        all
602        util/arb_compress
603tarale:
604        util/arb_compress_emacs
605export: tarfile
606        util/arb_export
607
608binlink:
609        (cd bin; make all);
610
611all:    arb libs gde tools readseq convert fig2dev openwinprogs aleio binlink $(SITE_DEPENDEND_TARGETS)
612#       (cd LIBLINK; for i in *.s*; do if test -r $$i; then cp $$i  ../lib; fi; done )
613
614libs:   lib/libARBDB.$(SHARED_LIB_SUFFIX) \
615        lib/libARBDBPP.$(SHARED_LIB_SUFFIX) \
616        lib/libARBDO.$(SHARED_LIB_SUFFIX) \
617        lib/libAW.$(SHARED_LIB_SUFFIX) \
618        lib/libAWT.$(SHARED_LIB_SUFFIX)
619
620lib/lib%.$(SHARED_LIB_SUFFIX): LIBLINK/lib%.$(SHARED_LIB_SUFFIX)
621        cp $< $@
622
623bin/arb_%:      DEPOT2/%
624        cp $< $@
625bin/%:  DEPOT2/%
626        cp $< $@
627
628
629ifdef OPENWINHOME
630openwinprogs:   gde     $(DEST_BIN)/arb_gde
631else
632openwinprogs:
633endif
634
635perl:   lib/ARB.pm
636
637
638lib/ARB.pm:     ARBDB/ad_prot.h ARBDB/ad_t_prot.h
639ifdef PERLBIN
640        mkdir -p PERL5/bin
641        (cd PERL5/bin;ln -f -s ${PERLBIN}/perl .);
642endif
643        rm -f lib/perl5
644ifdef PERLLIB
645        (cd lib;ln -f -s ${PERLLIB}/perl5 .);
646else
647        (cd lib;ln -f -s ../PERL5/perl5 .);
648endif
649        rm -f PERL2ARB/ARB.xs
650        rm -f PERL2ARB/proto.h
651        cat ARBDB/ad_prot.h ARBDB/ad_t_prot.h >PERL2ARB/proto.h
652        LD_LIBRARY_PATH=${ARBHOME}/LIBLINK;export LD_LIBRARY_PATH;echo LD_LIBRARY_PATH=$$LD_LIBRARY_PATH;echo calling bin/arb_proto_2_xsub ...;bin/arb_proto_2_xsub PERL2ARB/proto.h PERL2ARB/ARB.xs.h >PERL2ARB/ARB.xs
653        PATH=/usr/arb/bin:${PATH};export PATH;cd PERL2ARB;echo calling perl ${MACH}.PL;perl -I ../lib/perl5 ${MACH}.PL;echo calling make;make
654#       PATH=/usr/arb/bin:${PATH};export PATH;cd PERL2ARB;echo calling perl ${MACH}.PL;perl ${MACH}.PL;echo calling make;make
655        cp PERL2ARB/blib/arch/auto/ARB/ARB.so lib
656        cp PERL2ARB/ARB.pm lib
657        echo Make lib/ARB.pm and lib/ARB.so finished.
658
659wc:
660        wc `find . -type f \( -name '*.[ch]' -o -name '*.[ch]xx' \) -print`
661
662rmbak:
663        find . \( -name '*%' -o -name '*.bak' -o -name 'core' \
664                -o -name 'infile' -o -name treefile -o -name outfile \
665                -o -name 'gde*_?' -o -name '*~' \) \
666        -print -exec rm {} \;
667        rm -f -r .test.?.er
668        rm -f checkpoint*
669        rm -f test.?.er
670
671update:
672        util/arb_update
673
674bclean:         #binary clean
675        rm -f bin/arb_*
676        cd bin;make all
677
678clean:  rmbak figclean
679        rm -f `find . -type f \( -name 'core' -o -name '*.o' -o -name '*.a' ! -type l \) -print`
680        rm -f *_COM/GENH/*.h
681        rm -f *_COM/GENC/*.c
682
683realclean: clean
684        rm -f `find bin -type f -perm -001 -print`
685        rm -f AISC/aisc
686        rm -f AISC_MKPTPS/aisc_mkpt
687
688#*** basic arb libraries
689arbbasic: mbin com
690
691#*** New arb programs (Version 2.0) (Motif)
692arbv2: db aw dp awt dbs nt pa ed e4 we pr pg na al di db2 ph ds trs
693arbv1: db aw dp awt dbs nt pa ed e4 we pr pg na al nal di db2 ph ds trs
694
695ifdef NOTEMPLATES
696arb: arbbasic arbv2
697else
698arb: arbbasic arbv1
699endif
700
701save:   rmbak
702        util/arb_save
703savedepot: rmbak
704        util/arb_save_depot
705# DO NOT DELETE
Note: See TracBrowser for help on using the repository browser.