]> git.donarmstrong.com Git - bamtools.git/blobdiff - Makefile
Changed GetNextAlignmentCore() calls to GetNextAlignment() in FilterTool
[bamtools.git] / Makefile
index 7abd53b5d31e9c8f14472924b8717f3ea4c710b4..f282c204d9081563820daccd0d112a57cf15454b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,21 +1,51 @@
-CXX=           g++\r
-CXXFLAGS=      -Wall -O3\r
-PROG=          BamConversion BamDump BamTrim BamMultiMerge\r
-LIBS=          -lz\r
-\r
-all: $(PROG)\r
-\r
-BamConversion:  BGZF.o BamReader.o BamWriter.o BamConversionMain.o\r
-       $(CXX) $(CXXFLAGS) -o $@  BGZF.o BamReader.o BamWriter.o BamConversionMain.o $(LIBS)\r
-\r
-BamDump:  BGZF.o BamReader.o BamDumpMain.o\r
-       $(CXX) $(CXXFLAGS) -o $@  BGZF.o BamReader.o BamDumpMain.o $(LIBS)\r
-\r
-BamTrim:  BGZF.o BamReader.o BamWriter.o BamTrimMain.o\r
-       $(CXX) $(CXXFLAGS) -o $@  BGZF.o BamReader.o BamWriter.o BamTrimMain.o $(LIBS)\r
-\r
-BamMultiMerge: BGZF.o BamMultiReader.o BamReader.o BamWriter.o BamMultiMergeMain.o\r
-       $(CXX) $(CXXFLAGS) -o $@ BGZF.o BamMultiReader.o BamReader.o BamWriter.o BamMultiMergeMain.o $(LIBS)\r
-\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