-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
42 lines (31 loc) · 1.56 KB
/
Makefile
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
INC_DIR = include
SRC_DIR = src
TEST_DIR = tests
BENCH_DIR = bench
EXT_DIR = /usr/local/include
CC = gcc
CFLAGS = -O2 -Wall -g -I$(INC_DIR) -I$(SRC_DIR) -I$(EXT_DIR) `pkg-config --cflags libevent glib-2.0`
LDFLAGS = `pkg-config --libs libevent glib-2.0` -levmcast -levamcast
LDFLAGS_TEST = $(LDFLAGS) -lpthread -levent_pthreads
VERBOSE =
TARGET = $(TEST_DIR)/node_init_free $(TEST_DIR)/node_connect $(TEST_DIR)/node_messages $(TEST_DIR)/node_amcast_data $(TEST_DIR)/pqueue_unit $(BENCH_DIR)/node-microbench $(BENCH_DIR)/node-bench
OBJS = $(SRC_DIR)/node.o $(SRC_DIR)/events.o $(SRC_DIR)/message.o $(SRC_DIR)/amcast.o $(SRC_DIR)/pqueue.o
all: $(TARGET)
$(TEST_DIR)/node_init_free: $(TEST_DIR)/node_init_free.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS)
$(TEST_DIR)/node_connect: $(TEST_DIR)/node_connect.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS_TEST)
$(TEST_DIR)/node_messages: $(TEST_DIR)/node_messages.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS)
$(TEST_DIR)/node_amcast_data: $(TEST_DIR)/node_amcast_data.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS)
$(TEST_DIR)/pqueue_unit: $(TEST_DIR)/pqueue_unit.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS)
$(BENCH_DIR)/node-microbench: $(BENCH_DIR)/node-microbench.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS) -lpthread
$(BENCH_DIR)/node-bench: $(BENCH_DIR)/node-bench.o $(OBJS)
$(CC) $(VERBOSE) -o $@ $< $(OBJS) $(LDFLAGS) -lpthread
$(SRC_DIR)/%.o: %.c
$(CC) $(CFLAGS) -c $< $(VERBOSE)
clean:
rm -f $(TEST_DIR)/*.o $(SRC_DIR)/*.o $(BENCH_DIR)/*.o $(OBJS) $(TARGET)