]> git.donarmstrong.com Git - bamtools.git/blobdiff - Makefile
Changed GetNextAlignmentCore() calls to GetNextAlignment() in FilterTool
[bamtools.git] / Makefile
index 01405cac91aeb0adf9ce1fabb291bdc111ab3979..f282c204d9081563820daccd0d112a57cf15454b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,31 +1,51 @@
-CXX=           g++\r
-CXXFLAGS=      -Wall -O3 -D_FILE_OFFSET_BITS=64\r
-PROG=          bamtools\r
-API=           BGZF.o \
-               BamIndex.o \
-               BamReader.o \
-               BamWriter.o \
-               BamMultiReader.o
-UTILS=         bamtools_options.o \
-               bamtools_utilities.o
-TOOLKIT=       bamtools_convert.o \
-               bamtools_count.o \
-               bamtools_coverage.o \
-               bamtools_filter.o \
-               bamtools_header.o \
-               bamtools_index.o \
-               bamtools_merge.o \
-               bamtools_sam.o \
-               bamtools_sort.o \
-               bamtools_stats.o
-MAIN=          bamtools.o
-OBJS=          $(API) $(UTILS) $(TOOLKIT) $(MAIN)
-LIBS=          -lz
-\r
-all: $(PROG)\r
-\r
-bamtools: $(OBJS)\r
-       $(CXX) $(CXXFLAGS) -o $@ $(OBJS) $(LIBS)
-\r
-clean:\r
-       rm -fr gmon.out *.o *.a a.out *~\r
+# ==========================
+# BamTools Makefile
+# (c) 2010 Derek Barnett
+#
+# top-level
+# ==========================
+
+# define current BamTools version
+BT_MAJOR_VER = 0
+BT_MINOR_VER = 8
+BT_BUILD_VER = 1025
+export BT_VERSION = $(BT_MAJOR_VER).$(BT_MINOR_VER).$(BT_BUILD_VER)
+
+# define main directories
+export OBJ_DIR  = obj
+export BIN_DIR  = bin
+export SRC_DIR  = src
+
+# define compile/link flags
+export CXX      = g++
+export CXXFLAGS = -Wall -O3 -D_FILE_OFFSET_BITS=64 -DBT_VERSION=$(BT_VERSION)
+export LIBS     = -lz
+
+# define source subdirectories
+SUBDIRS = $(SRC_DIR)/api \
+          $(SRC_DIR)/utils \
+          $(SRC_DIR)/third_party \
+          $(SRC_DIR)/toolkit 
+
+all:
+       @echo "Building BamTools:"
+       @echo "Version: $$BT_VERSION"
+       @echo "========================================================="
+       @echo ""
+       @echo "- Creating target directories"
+       @mkdir -p $(BIN_DIR)
+       @mkdir -p $(OBJ_DIR)
+       @echo ""
+       @for dir in $(SUBDIRS); do \
+               echo "- Building in $$dir"; \
+               $(MAKE) --no-print-directory -C $$dir; \
+               echo ""; \
+       done
+
+.PHONY: all
+
+clean:
+       @echo "Cleaning up."
+       @rm -f $(OBJ_DIR)/* $(BIN_DIR)/*
+
+.PHONY: clean