X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Makefile;h=1dc3f7b1b1ed51862f08967e947e2bfc38eededf;hb=c98f4ce3c7c19af972f58eaf0053b94ba9413c81;hp=01405cac91aeb0adf9ce1fabb291bdc111ab3979;hpb=a00339bed19ef587e28e9391cf21a63266fea66e;p=bamtools.git diff --git a/Makefile b/Makefile index 01405ca..1dc3f7b 100644 --- a/Makefile +++ b/Makefile @@ -1,31 +1,48 @@ -CXX= g++ -CXXFLAGS= -Wall -O3 -D_FILE_OFFSET_BITS=64 -PROG= bamtools -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 - -all: $(PROG) - -bamtools: $(OBJS) - $(CXX) $(CXXFLAGS) -o $@ $(OBJS) $(LIBS) - -clean: - rm -fr gmon.out *.o *.a a.out *~ +# ========================== +# BamTools Makefile +# (c) 2010 Derek Barnett +# +# top-level +# ========================== + +# 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 +export LIBS = -lz + +# define current BamTools version +export BAMTOOLS_VERSION = 0.7.0812 + +# define source subdirectories +SUBDIRS = $(SRC_DIR)/api \ + $(SRC_DIR)/utils \ + $(SRC_DIR)/third_party \ + $(SRC_DIR)/toolkit + +all: + @echo "Building BamTools:" + @echo "Version: $$BAMTOOLS_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