0
|
1 CC= gcc
|
|
2 CFLAGS= -g -Wall -O2 #-m64 #-arch ppc
|
|
3 DFLAGS= -D_FILE_OFFSET_BITS=64 -D_USE_KNETFILE -D_CURSES_LIB=1
|
|
4 LOBJS= bgzf.o kstring.o bam_aux.o bam.o bam_import.o sam.o bam_index.o \
|
|
5 bam_pileup.o bam_lpileup.o bam_md.o glf.o razf.o faidx.o knetfile.o \
|
|
6 bam_sort.o
|
|
7 AOBJS= bam_tview.o bam_maqcns.o bam_plcmd.o sam_view.o \
|
|
8 bam_rmdup.o bam_rmdupse.o bam_mate.o bam_stat.o bam_color.o \
|
|
9 bamtk.o
|
|
10 PROG= samtools
|
|
11 INCLUDES=
|
|
12 SUBDIRS= . misc
|
|
13 LIBPATH=
|
|
14 LIBCURSES= -lcurses # -lXCurses
|
|
15
|
|
16 .SUFFIXES:.c .o
|
|
17
|
|
18 .c.o:
|
|
19 $(CC) -c $(CFLAGS) $(DFLAGS) $(INCLUDES) $< -o $@
|
|
20
|
|
21 all-recur lib-recur clean-recur cleanlocal-recur install-recur:
|
|
22 @target=`echo $@ | sed s/-recur//`; \
|
|
23 wdir=`pwd`; \
|
|
24 list='$(SUBDIRS)'; for subdir in $$list; do \
|
|
25 cd $$subdir; \
|
|
26 $(MAKE) CC="$(CC)" DFLAGS="$(DFLAGS)" CFLAGS="$(CFLAGS)" \
|
|
27 INCLUDES="$(INCLUDES)" LIBPATH="$(LIBPATH)" $$target || exit 1; \
|
|
28 cd $$wdir; \
|
|
29 done;
|
|
30
|
|
31 all:$(PROG)
|
|
32
|
|
33 lib:libbam.a
|
|
34
|
|
35 libbam.a:$(LOBJS)
|
|
36 $(AR) -cru $@ $(LOBJS)
|
|
37
|
|
38 samtools:lib $(AOBJS)
|
|
39 $(CC) $(CFLAGS) -o $@ $(AOBJS) -lm $(LIBPATH) $(LIBCURSES) -lz -L. -lbam
|
|
40
|
|
41 razip:razip.o razf.o
|
|
42 $(CC) $(CFLAGS) -o $@ razf.o razip.o -lz
|
|
43
|
|
44 bgzip:bgzip.o bgzf.o
|
|
45 $(CC) $(CFLAGS) -o $@ bgzf.o bgzip.o -lz
|
|
46
|
|
47 razip.o:razf.h
|
|
48 bam.o:bam.h razf.h bam_endian.h kstring.h
|
|
49 sam.o:sam.h bam.h
|
|
50 bam_import.o:bam.h kseq.h khash.h razf.h
|
|
51 bam_pileup.o:bam.h razf.h ksort.h
|
|
52 bam_plcmd.o:bam.h faidx.h bam_maqcns.h glf.h
|
|
53 bam_index.o:bam.h khash.h ksort.h razf.h bam_endian.h
|
|
54 bam_lpileup.o:bam.h ksort.h
|
|
55 bam_tview.o:bam.h faidx.h bam_maqcns.h
|
|
56 bam_maqcns.o:bam.h ksort.h bam_maqcns.h
|
|
57 bam_sort.o:bam.h ksort.h razf.h
|
|
58 bam_md.o:bam.h faidx.h
|
|
59 glf.o:glf.h
|
|
60
|
|
61 faidx.o:faidx.h razf.h khash.h
|
|
62 faidx_main.o:faidx.h razf.h
|
|
63
|
|
64 cleanlocal:
|
|
65 rm -fr gmon.out *.o a.out *.dSYM razip $(PROG) *~ *.a
|
|
66
|
|
67 clean:cleanlocal-recur
|