| 0 | 1 # ------------------- | 
|  | 2 # define our includes | 
|  | 3 # ------------------- | 
|  | 4 OBJ_DIR = ../../../obj/ | 
|  | 5 INCLUDES = -Isrc/ -Iinclude/ | 
|  | 6 | 
|  | 7 # ---------------------------------- | 
|  | 8 # define our source and object files | 
|  | 9 # ---------------------------------- | 
|  | 10 | 
|  | 11 SOURCES= src/api/BamAlignment.cpp \ | 
|  | 12          src/api/BamMultiReader.cpp \ | 
|  | 13          src/api/BamReader.cpp \ | 
|  | 14          src/api/BamWriter.cpp \ | 
|  | 15          src/api/SamHeader.cpp \ | 
|  | 16          src/api/SamProgram.cpp \ | 
|  | 17          src/api/SamProgramChain.cpp \ | 
|  | 18          src/api/SamReadGroup.cpp \ | 
|  | 19          src/api/SamReadGroupDictionary.cpp \ | 
|  | 20          src/api/SamSequence.cpp \ | 
|  | 21          src/api/SamSequenceDictionary.cpp \ | 
|  | 22 		 src/api/internal/BamHeader_p.cpp \ | 
|  | 23 		 src/api/internal/BamIndexFactory_p.cpp \ | 
|  | 24 		 src/api/internal/BamMultiReader_p.cpp \ | 
|  | 25 		 src/api/internal/BamRandomAccessController_p.cpp \ | 
|  | 26 		 src/api/internal/BamReader_p.cpp \ | 
|  | 27 		 src/api/internal/BamStandardIndex_p.cpp \ | 
|  | 28 		 src/api/internal/BamToolsIndex_p.cpp \ | 
|  | 29 		 src/api/internal/BamWriter_p.cpp \ | 
|  | 30 		 src/api/internal/BgzfStream_p.cpp \ | 
|  | 31 		 src/api/internal/SamFormatParser_p.cpp \ | 
|  | 32 		 src/api/internal/SamFormatPrinter_p.cpp \ | 
|  | 33 		 src/api/internal/SamHeaderValidator_p.cpp | 
|  | 34 | 
|  | 35 # ---------------------------------- | 
|  | 36 # define our source and object files | 
|  | 37 # ---------------------------------- | 
|  | 38 OBJECTS= $(SOURCES:.cpp=.o) | 
|  | 39 LIBRARY=libbamtools.a | 
|  | 40 | 
|  | 41 all: $(LIBRARY) | 
|  | 42 | 
|  | 43 .PHONY: all | 
|  | 44 | 
|  | 45 $(LIBRARY): $(OBJECTS) | 
|  | 46 	[ -d lib ] || mkdir -p lib | 
|  | 47 	[ -d include ] || mkdir -p include | 
|  | 48 	[ -d include/api ] || mkdir -p include/api | 
|  | 49 	[ -d include/shared ] || mkdir -p include/shared | 
|  | 50 | 
|  | 51 	@cp src/api/*.h include/api | 
|  | 52 	@cp src/shared/*.h include/shared | 
|  | 53 | 
|  | 54 | 
|  | 55 	@echo "  * linking $(LIBRARY)" | 
|  | 56 	ar cr lib/$@  $^ | 
|  | 57 | 
|  | 58 $(OBJECTS): $(SOURCES) | 
|  | 59 	@echo "  * compiling" $(*F).cpp | 
|  | 60 	@$(CXX) -c $(*D)/$(*F).cpp $(LDFLAGS) $(CXXFLAGS) $(INCLUDES) -o $(*D)/$(*F).o | 
|  | 61 |