root/tags/solaris_20011018/Makefile

Revision 313, 23.2 KB (checked in by anonymous, 11 years ago)

This commit was manufactured by cvs2svn to create tag
'solaris_20011018'.

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