-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
66 lines (49 loc) · 1.22 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
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
AR = ar
CFLAGS += -std=c99 -Wall -Wextra -pedantic -g -DMAKE_VALGRIND_HAPPY -fsanitize=address
ARFLAGS = rvs
INCLUDES = -I.
LDFLAGS = -L.
OPTFLAGS = -Og
LIBS = -pthread
TARGETS = server \
client \
imgclient
OBJECTS = clientLibrary.o \
communication.o \
icl_hash.o \
request.o
INCLUDE_FILES = clientLibrary.h \
communication.h \
icl_hash.h \
request.h
.PHONY: all clean cleanall
.SUFFIXES: .c .h
%: %.c
$(CC) $(CFLAGS) $(INCLUDES) $(OPTFLAGS) -o $@ $< $(LDFLAGS)
%.o: %.c
$(CC) $(CFLAGS) $(INCLUDES) $(OPTFLAGS) -c -o $@ $<
all: $(TARGETS)
server: server.o libstore.a
$(CC) $(CFLAGS) $(INCLUDES) $(OPTFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
client: client.o libstore.a
$(CC) $(CFLAGS) $(INCLUDES) $(OPTFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
imgclient: imgclient.o libstore.a
$(CC) $(CFLAGS) $(INCLUDES) $(OPTFLAGS) $(LDFLAGS) -o $@ $^ $(LIBS)
libstore.a: $(OBJECTS)
$(AR) $(ARFLAGS) $@ $^
clean:
rm -f $(TARGETS) objstore.sock *.o *~ libstore.a testout.log
rm -rf data/
testInternal:
make clean
make all
./server -&
./test.sh
./imgclient >> testout.log
./testsum.sh
killall -w server
@echo "**** test superato"
test:
./test.sh
@echo "**** test superato"