-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathMakefile
More file actions
67 lines (50 loc) · 1.16 KB
/
Makefile
File metadata and controls
67 lines (50 loc) · 1.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
CC = gcc
CPP = cpp
AR = ar
LIBS = -pthread -flto -lm local/lib/libz.a local/lib/libdivsufsort64.a
#-fsanitize=undefined,address
CFLAGS = -Wfatal-errors -Wextra -Wall -fPIC -std=gnu99 -O2 -Ilocal/include/ -Isrc/
#-g
EXEC = hera-T
SRC = src/alignment.c \
src/barcode.c \
src/bwt.c \
src/dqueue.c \
src/dynamic_alignment.c \
src/genome.c \
src/get_buffer.c \
src/hash_table.c \
src/index.c \
src/io_utils.c \
src/kmhash.c \
src/opt.c \
src/pthread_barrier.c \
src/semaphore_wrapper.c \
src/single_cell.c \
src/utils.c \
src/verbose.c \
src/library_type.c \
src/main.c
OBJ = $(SRC:.c=.o)
DEP = $(OBJ:.o=.d)
.PHONY: all
all: $(EXEC)
.PHONY: debug
debug: LIBS += -fsanitize=undefined,address
debug: CFLAGS += -g
debug: cleanall
debug: $(EXEC)
$(EXEC): $(OBJ)
$(CC) -o $@ $^ $(LIBS)
-include $(DEP)
%.d: %.c
@$(CPP) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
.PHONY: clean
clean:
rm -rf $(OBJ) $(EXEC)
.PHONY: cleandep
cleandep:
rm -f $(DEP)
.PHONY: cleanall
cleanall:
rm -rf $(OBJ) $(EXEC) $(DEP)