|
| 1 | +CFLAGS= -g -Wall -O2 -Wc++-compat #-Wextra |
| 2 | +CPPFLAGS= -DHAVE_KALLOC -DUSE_SIMDE -DSIMDE_ENABLE_NATIVE_ALIASES |
| 3 | +INCLUDES= -Ilib/simde |
| 4 | +OBJS= kthread.o kalloc.o misc.o bseq.o sketch.o sdust.o options.o index.o chain.o align.o hit.o map.o format.o pe.o esterr.o splitidx.o \ |
| 5 | + ksw2_extz2_simde.o ksw2_extd2_simde.o ksw2_exts2_simde.o ksw2_ll_simde.o |
| 6 | +PROG= minimap2 |
| 7 | +PROG_EXTRA= sdust minimap2-lite |
| 8 | +LIBS= -lm -lz -lpthread |
| 9 | + |
| 10 | + |
| 11 | +ifneq ($(arm_neon),) # if arm_neon is defined |
| 12 | +ifeq ($(aarch64),) #if aarch64 is not defined |
| 13 | + CFLAGS+=-D_FILE_OFFSET_BITS=64 -mfpu=neon -fsigned-char |
| 14 | +else #if aarch64 is defined |
| 15 | + CFLAGS+=-D_FILE_OFFSET_BITS=64 -fsigned-char |
| 16 | +endif |
| 17 | +endif |
| 18 | + |
| 19 | +ifneq ($(asan),) |
| 20 | + CFLAGS+=-fsanitize=address |
| 21 | + LIBS+=-fsanitize=address |
| 22 | +endif |
| 23 | + |
| 24 | +ifneq ($(tsan),) |
| 25 | + CFLAGS+=-fsanitize=thread |
| 26 | + LIBS+=-fsanitize=thread |
| 27 | +endif |
| 28 | + |
| 29 | +.PHONY:all extra clean depend |
| 30 | +.SUFFIXES:.c .o |
| 31 | + |
| 32 | +.c.o: |
| 33 | + $(CC) -c $(CFLAGS) $(CPPFLAGS) $(INCLUDES) $< -o $@ |
| 34 | + |
| 35 | +all:$(PROG) |
| 36 | + |
| 37 | +extra:all $(PROG_EXTRA) |
| 38 | + |
| 39 | +minimap2:main.o libminimap2.a |
| 40 | + $(CC) $(CFLAGS) main.o -o $@ -L. -lminimap2 $(LIBS) |
| 41 | + |
| 42 | +minimap2-lite:example.o libminimap2.a |
| 43 | + $(CC) $(CFLAGS) $< -o $@ -L. -lminimap2 $(LIBS) |
| 44 | + |
| 45 | +libminimap2.a:$(OBJS) |
| 46 | + $(AR) -csru $@ $(OBJS) |
| 47 | + |
| 48 | +sdust:sdust.c kalloc.o kalloc.h kdq.h kvec.h kseq.h ketopt.h sdust.h |
| 49 | + $(CC) -D_SDUST_MAIN $(CFLAGS) $< kalloc.o -o $@ -lz |
| 50 | + |
| 51 | +ksw2_ll_simde.o:ksw2_ll_sse.c ksw2.h kalloc.h |
| 52 | + $(CC) -c $(CFLAGS) -msse2 $(CPPFLAGS) $(INCLUDES) $< -o $@ |
| 53 | + |
| 54 | +ksw2_extz2_simde.o:ksw2_extz2_sse.c ksw2.h kalloc.h |
| 55 | + $(CC) -c $(CFLAGS) -msse4.1 $(CPPFLAGS) $(INCLUDES) $< -o $@ |
| 56 | + |
| 57 | +ksw2_extd2_simde.o:ksw2_extd2_sse.c ksw2.h kalloc.h |
| 58 | + $(CC) -c $(CFLAGS) -msse4.1 $(CPPFLAGS) $(INCLUDES) $< -o $@ |
| 59 | + |
| 60 | +ksw2_exts2_simde.o:ksw2_exts2_sse.c ksw2.h kalloc.h |
| 61 | + $(CC) -c $(CFLAGS) -msse4.1 $(CPPFLAGS) $(INCLUDES) $< -o $@ |
| 62 | + |
| 63 | +# other non-file targets |
| 64 | + |
| 65 | +clean: |
| 66 | + rm -fr gmon.out *.o a.out $(PROG) $(PROG_EXTRA) *~ *.a *.dSYM build dist mappy*.so mappy.c python/mappy.c mappy.egg* |
| 67 | + |
| 68 | +depend: |
| 69 | + (LC_ALL=C; export LC_ALL; makedepend -Y -- $(CFLAGS) $(CPPFLAGS) -- *.c) |
| 70 | + |
| 71 | +# DO NOT DELETE |
| 72 | + |
| 73 | +align.o: minimap.h mmpriv.h bseq.h kseq.h ksw2.h kalloc.h |
| 74 | +bseq.o: bseq.h kvec.h kalloc.h kseq.h |
| 75 | +chain.o: minimap.h mmpriv.h bseq.h kseq.h kalloc.h |
| 76 | +esterr.o: mmpriv.h minimap.h bseq.h kseq.h |
| 77 | +example.o: minimap.h kseq.h |
| 78 | +format.o: kalloc.h mmpriv.h minimap.h bseq.h kseq.h |
| 79 | +hit.o: mmpriv.h minimap.h bseq.h kseq.h kalloc.h khash.h |
| 80 | +index.o: kthread.h bseq.h minimap.h mmpriv.h kseq.h kvec.h kalloc.h khash.h |
| 81 | +index.o: ksort.h |
| 82 | +kalloc.o: kalloc.h |
| 83 | +ksw2_extd2_sse.o: ksw2.h kalloc.h |
| 84 | +ksw2_exts2_sse.o: ksw2.h kalloc.h |
| 85 | +ksw2_extz2_sse.o: ksw2.h kalloc.h |
| 86 | +ksw2_ll_sse.o: ksw2.h kalloc.h |
| 87 | +kthread.o: kthread.h |
| 88 | +main.o: bseq.h minimap.h mmpriv.h kseq.h ketopt.h |
| 89 | +map.o: kthread.h kvec.h kalloc.h sdust.h mmpriv.h minimap.h bseq.h kseq.h |
| 90 | +map.o: khash.h ksort.h |
| 91 | +misc.o: mmpriv.h minimap.h bseq.h kseq.h ksort.h |
| 92 | +options.o: mmpriv.h minimap.h bseq.h kseq.h |
| 93 | +pe.o: mmpriv.h minimap.h bseq.h kseq.h kvec.h kalloc.h ksort.h |
| 94 | +sdust.o: kalloc.h kdq.h kvec.h sdust.h |
| 95 | +self-chain.o: minimap.h kseq.h |
| 96 | +sketch.o: kvec.h kalloc.h mmpriv.h minimap.h bseq.h kseq.h |
| 97 | +splitidx.o: mmpriv.h minimap.h bseq.h kseq.h |
0 commit comments