Merge commit 'upstream/0.1.14'
[samtools.git] / Makefile.mingw
1 CC=                     gcc.exe
2 AR=                     ar.exe
3 CFLAGS=         -g -Wall -O2
4 DFLAGS=         -D_USE_KNETFILE -D_CURSES_LIB=2
5 KNETFILE_O=     knetfile.o
6 LOBJS=          bgzf.o kstring.o bam_aux.o bam.o bam_import.o sam.o bam_index.o \
7                         bam_pileup.o bam_lpileup.o bam_md.o glf.o razf.o faidx.o \
8                         $(KNETFILE_O) bam_sort.o sam_header.o bam_reheader.o kprobaln.o
9 AOBJS=          bam_tview.o bam_maqcns.o bam_plcmd.o sam_view.o \
10                         bam_rmdup.o bam_rmdupse.o bam_mate.o bam_stat.o bam_color.o     \
11                         bamtk.o kaln.o bam2bcf.o bam2bcf_indel.o errmod.o sample.o
12 BCFOBJS=        bcftools/bcf.o bcftools/fet.o bcftools/bcf2qcall.o bcftools/bcfutils.o \
13                         bcftools/call1.o bcftools/index.o bcftools/kfunc.o bcftools/ld.o \
14                         bcftools/prob1.o bcftools/vcf.o
15 PROG=           samtools.exe bcftools.exe
16 INCLUDES=       -I. -Iwin32
17 SUBDIRS=        .
18 LIBPATH=
19
20 .SUFFIXES:.c .o
21
22 .c.o:
23                 $(CC) -c $(CFLAGS) $(DFLAGS) $(INCLUDES) $< -o $@
24
25 all:$(PROG)
26
27 .PHONY:all lib clean cleanlocal
28 .PHONY:all-recur lib-recur clean-recur cleanlocal-recur install-recur
29
30 lib:libbam.a
31
32 libbam.a:$(LOBJS)
33                 $(AR) -cru $@ $(LOBJS)
34
35 samtools.exe:$(AOBJS) libbam.a $(BCFOBJS)
36                 $(CC) $(CFLAGS) -o $@ $(AOBJS) $(BCFOBJS) $(LIBPATH) -lm -L. -lbam -Lwin32 -lz -lcurses -lws2_32
37
38 bcftools.exe:$(BCFOBJS) bcftools/main.o kstring.o bgzf.o knetfile.o
39                 $(CC) $(CFLAGS) -o $@ $(BCFOBJS) bcftools/main.o kstring.o bgzf.o knetfile.o -lm -Lwin32 -lz -lws2_32
40
41 razip.o:razf.h
42 bam.o:bam.h razf.h bam_endian.h kstring.h sam_header.h
43 sam.o:sam.h bam.h
44 bam_import.o:bam.h kseq.h khash.h razf.h
45 bam_pileup.o:bam.h razf.h ksort.h
46 bam_plcmd.o:bam.h faidx.h bam_maqcns.h glf.h bcftools/bcf.h bam2bcf.h
47 bam_index.o:bam.h khash.h ksort.h razf.h bam_endian.h
48 bam_lpileup.o:bam.h ksort.h
49 bam_tview.o:bam.h faidx.h bam_maqcns.h
50 bam_maqcns.o:bam.h ksort.h bam_maqcns.h kaln.h
51 bam_sort.o:bam.h ksort.h razf.h
52 bam_md.o:bam.h faidx.h
53 glf.o:glf.h
54 sam_header.o:sam_header.h khash.h
55 bcf.o:bcftools/bcf.h
56 bam2bcf.o:bam2bcf.h errmod.h bcftools/bcf.h
57 bam2bcf_indel.o:bam2bcf.h
58 errmod.o:errmod.h
59
60 faidx.o:faidx.h razf.h khash.h
61 faidx_main.o:faidx.h razf.h
62
63 clean:
64                 rm -fr gmon.out *.o a.out *.exe *.dSYM razip bgzip $(PROG) *~ *.a *.so.* *.so *.dylib