Changeset View
Changeset View
Standalone View
Standalone View
head/biology/vcflib/files/Makefile.submod
Property | Old Value | New Value |
---|---|---|
fbsd:nokeywords | null | yes \ No newline at end of property |
svn:eol-style | null | native \ No newline at end of property |
svn:mime-type | null | text/plain \ No newline at end of property |
#OBJ_DIR = ./ | |||||
HEADERS = src/Variant.h \ | |||||
src/split.h \ | |||||
src/join.h | |||||
SOURCES = src/Variant.cpp \ | |||||
src/split.cpp | |||||
OBJECTS= $(SOURCES:.cpp=.o) | |||||
VCF_LIB_LOCAL:=$(shell pwd) | |||||
BIN_DIR:=bin | |||||
LIB_DIR:=lib | |||||
SRC_DIR=src | |||||
INC_DIR:=include | |||||
OBJ_DIR:=obj | |||||
include Makefile.common | |||||
TABIX = tabixpp/tabix.o | |||||
FASTAHACK = fastahack/Fasta.o | |||||
SMITHWATERMAN = smithwaterman/SmithWatermanGotoh.o | |||||
REPEATS = smithwaterman/Repeats.o | |||||
INDELALLELE = smithwaterman/IndelAllele.o | |||||
DISORDER = smithwaterman/disorder.o | |||||
LEFTALIGN = smithwaterman/LeftAlign.o | |||||
FSOM = fsom/fsom.o | |||||
FILEVERCMP = filevercmp/filevercmp.o | |||||
INCLUDES = -Itabixpp/htslib -I$(INC_DIR) -L. -Ltabixpp/htslib | |||||
LDFLAGS = -L$(LIB_DIR) -lvcflib -lhts -lpthread -lz -lm | |||||
all: $(OBJECTS) $(BINS) | |||||
CXX ?= c++ | |||||
CXXFLAGS ?= -O3 -D_FILE_OFFSET_BITS=64 | |||||
#CXXFLAGS = -O2 | |||||
#CXXFLAGS = -pedantic -Wall -Wshadow -Wpointer-arith -Wcast-qual | |||||
SSW = src/ssw.o src/ssw_cpp.o | |||||
ssw.o: src/ssw.h | |||||
ssw_cpp.o:src/ssw_cpp.h | |||||
openmp: | |||||
$(MAKE) CXXFLAGS="$(CXXFLAGS) -fopenmp -D HAS_OPENMP" | |||||
profiling: | |||||
$(MAKE) CXXFLAGS="$(CXXFLAGS) -g" all | |||||
gprof: | |||||
$(MAKE) CXXFLAGS="$(CXXFLAGS) -pg" all | |||||
$(OBJECTS): $(SOURCES) $(HEADERS) $(TABIX) multichoose pre $(SMITHWATERMAN) $(FILEVERCMP) | |||||
$(CXX) -c -o $@ src/$(*F).cpp $(INCLUDES) $(LDFLAGS) $(CXXFLAGS) && cp src/*.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ | |||||
multichoose: pre | |||||
cd multichoose && $(MAKE) && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ | |||||
intervaltree: pre | |||||
cd intervaltree && $(MAKE) && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ | |||||
$(TABIX): pre | |||||
cd tabixpp && $(MAKE) && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ | |||||
$(SMITHWATERMAN): pre | |||||
cd smithwaterman && $(MAKE) && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ && cp *.o $(VCF_LIB_LOCAL)/$(OBJ_DIR)/ | |||||
$(DISORDER): $(SMITHWATERMAN) | |||||
$(REPEATS): $(SMITHWATERMAN) | |||||
$(LEFTALIGN): $(SMITHWATERMAN) | |||||
$(INDELALLELE): $(SMITHWATERMAN) | |||||
$(FASTAHACK): pre | |||||
cd fastahack && $(MAKE) && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ && cp Fasta.o $(VCF_LIB_LOCAL)/$(OBJ_DIR)/ | |||||
#$(FSOM): | |||||
# cd fsom && $(CXX) $(CXXFLAGS) -c fsom.c -lm | |||||
$(FILEVERCMP): pre | |||||
cd filevercmp && make && cp *.h* $(VCF_LIB_LOCAL)/$(INC_DIR)/ && cp *.o $(VCF_LIB_LOCAL)/$(INC_DIR)/ | |||||
$(SHORTBINS): pre | |||||
$(MAKE) bin/$@ | |||||
$(BINS): $(BIN_SOURCES) libvcflib.a $(OBJECTS) $(SMITHWATERMAN) $(FASTAHACK) $(DISORDER) $(LEFTALIGN) $(INDELALLELE) $(SSW) $(FILEVERCMP) pre intervaltree | |||||
$(CXX) src/$(notdir $@).cpp -o $@ $(INCLUDES) $(LDFLAGS) $(CXXFLAGS) | |||||
libvcflib.a: $(OBJECTS) $(SMITHWATERMAN) $(REPEATS) $(FASTAHACK) $(DISORDER) $(LEFTALIGN) $(INDELALLELE) $(SSW) $(FILEVERCMP) $(TABIX) pre | |||||
ar rs libvcflib.a $(OBJECTS) smithwaterman/sw.o $(FASTAHACK) $(SSW) $(FILEVERCMP) $(TABIX) | |||||
cp libvcflib.a $(LIB_DIR) | |||||
test: $(BINS) | |||||
@prove -Itests/lib -w tests/*.t | |||||
pre: | |||||
if [ ! -d $(BIN_DIR) ]; then mkdir -p $(BIN_DIR); fi | |||||
if [ ! -d $(LIB_DIR) ]; then mkdir -p $(LIB_DIR); fi | |||||
if [ ! -d $(INC_DIR) ]; then mkdir -p $(INC_DIR); fi | |||||
if [ ! -d $(OBJ_DIR) ]; then mkdir -p $(OBJ_DIR); fi | |||||
clean: | |||||
rm -f $(BINS) $(OBJECTS) | |||||
rm -f ssw_cpp.o ssw.o | |||||
rm -f libvcflib.a | |||||
rm -rf $(BIN_DIR) | |||||
rm -rf $(LIB_DIR) | |||||
rm -rf $(INC_DIR) | |||||
rm -rf $(OBJ_DIR) | |||||
cd tabixpp && make clean | |||||
cd smithwaterman && make clean | |||||
cd fastahack && make clean | |||||
.PHONY: clean all test pre |