]> git.donarmstrong.com Git - samtools.git/blobdiff - Makefile
Release samtools-0.1.5a (for compatibility with Bio::DB::Sam)
[samtools.git] / Makefile
index 6bf4227753c1e29844701fa897d631fa6f3b39d8..7bb44694e0ab26f8266bdadddb25075159b8b365 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,16 +1,18 @@
 CC=                    gcc
 CXX=           g++
-CFLAGS=                -g -Wall #-O2 -m64 #-arch ppc
+CFLAGS=                -g -Wall -O2 #-m64 #-arch ppc
 CXXFLAGS=      $(CFLAGS)
-DFLAGS=                -D_IOLIB=2 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 #-D_NO_RAZF #-D_NO_CURSES
-OBJS=          bam.o bam_import.o bam_pileup.o bam_lpileup.o bam_sort.o bam_index.o \
-                       razf.o bgzf.o faidx.o bam_tview.o bam_maqcns.o bam_aux.o bam_plcmd.o \
-                       bam_mate.o bam_rmdup.o glf.o bam_stat.o kstring.o bam_md.o sam.o sam_view.o \
-                       bam_rmdupse.o
-PROG=          razip bgzip samtools
+DFLAGS=                -D_FILE_OFFSET_BITS=64 -D_USE_KNETFILE #-D_NO_CURSES
+LOBJS=         bgzf.o kstring.o bam_aux.o bam.o bam_import.o sam.o bam_index.o \
+                       bam_pileup.o bam_lpileup.o bam_md.o glf.o razf.o faidx.o knetfile.o     \
+                       bam_sort.o
+AOBJS=         bam_tview.o bam_maqcns.o bam_plcmd.o sam_view.o \
+                       bam_rmdup.o bam_rmdupse.o bam_mate.o bam_stat.o bam_color.o     \
+                       bamtk.o
+PROG=          samtools
 INCLUDES=      
-LIBS=          -lm -lz
 SUBDIRS=       . misc
+LIBPATH=       
 
 .SUFFIXES:.c .o
 
@@ -22,8 +24,8 @@ all-recur lib-recur clean-recur cleanlocal-recur install-recur:
                wdir=`pwd`; \
                list='$(SUBDIRS)'; for subdir in $$list; do \
                        cd $$subdir; \
-                       $(MAKE) -f Makefile.generic CC="$(CC)" CXX="$(CXX)" DFLAGS="$(DFLAGS)" CFLAGS="$(CFLAGS)" \
-                               INCLUDES="$(INCLUDES)" LIBS="$(LIBS)" $$target || exit 1; \
+                       $(MAKE) CC="$(CC)" DFLAGS="$(DFLAGS)" CFLAGS="$(CFLAGS)" \
+                               INCLUDES="$(INCLUDES)" LIBPATH="$(LIBPATH)" $$target || exit 1; \
                        cd $$wdir; \
                done;
 
@@ -31,17 +33,18 @@ all:$(PROG)
 
 lib:libbam.a
 
-libbam.a:$(OBJS)
-               $(AR) -cru $@ $(OBJS)
+libbam.a:$(LOBJS)
+               $(AR) -cru $@ $(LOBJS)
 
-samtools:lib bamtk.o
-               $(CC) $(CFLAGS) -o $@ bamtk.o $(LIBS) -L. -lbam -lcurses
+### For the curses library: comment out `-lcurses' if you do not have curses installed
+samtools:lib $(AOBJS)
+               $(CC) $(CFLAGS) -o $@ $(AOBJS) $(LIBPATH) -lm -lcurses -lz -L. -lbam
 
 razip:razip.o razf.o
-               $(CC) $(CFLAGS) -o $@ razf.o razip.o $(LIBS)
+               $(CC) $(CFLAGS) -o $@ razf.o razip.o -lz
 
 bgzip:bgzip.o bgzf.o
-               $(CC) $(CFLAGS) -o $@ bgzf.o bgzip.o $(LIBS)
+               $(CC) $(CFLAGS) -o $@ bgzf.o bgzip.o -lz
 
 razip.o:razf.h
 bam.o:bam.h razf.h bam_endian.h kstring.h
@@ -55,13 +58,12 @@ bam_tview.o:bam.h faidx.h bam_maqcns.h
 bam_maqcns.o:bam.h ksort.h bam_maqcns.h
 bam_sort.o:bam.h ksort.h razf.h
 bam_md.o:bam.h faidx.h
-razf.o:razf.h
 glf.o:glf.h
 
 faidx.o:faidx.h razf.h khash.h
 faidx_main.o:faidx.h razf.h
 
 cleanlocal:
-               rm -fr gmon.out *.o a.out *.dSYM $(PROG) *~ *.a
+               rm -fr gmon.out *.o a.out *.dSYM razip $(PROG) *~ *.a
 
 clean:cleanlocal-recur