-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathMakefile
More file actions
41 lines (28 loc) · 1.08 KB
/
Makefile
File metadata and controls
41 lines (28 loc) · 1.08 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
CC = gcc
CFLAGS = -g -Wall -fprofile-arcs -ftest-coverage
SRV_DIR = server
CLI_DIR = clients
TARGET_SERVER = drinks_bar
TARGET_TCP_CLIENT = atom_supplier
TARGET_UDP_CLIENT = molecule_requester
SRV_OBJ = $(SRV_DIR)/drinks_bar.o
TCP_OBJ = $(CLI_DIR)/atom_supplier.o
UDP_OBJ = $(CLI_DIR)/molecule_requester.o
.PHONY: all clean
all: $(TARGET_SERVER) $(TARGET_TCP_CLIENT) $(TARGET_UDP_CLIENT)
$(TARGET_SERVER): $(SRV_OBJ)
$(CC) $(CFLAGS) -o $@ $^
$(TARGET_TCP_CLIENT): $(TCP_OBJ)
$(CC) $(CFLAGS) -o $@ $^
$(TARGET_UDP_CLIENT): $(UDP_OBJ)
$(CC) $(CFLAGS) -o $@ $^
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
$(SRV_OBJ): $(SRV_DIR)/drinks_bar.c
$(CC) $(CFLAGS) -c $< -o $@
$(TCP_OBJ): $(CLI_DIR)/atom_supplier.c
$(CC) $(CFLAGS) -c $< -o $@
$(UDP_OBJ): $(CLI_DIR)/molecule_requester.c
$(CC) $(CFLAGS) -c $< -o $@
clean:
rm -f $(TARGET_SERVER) $(TARGET_TCP_CLIENT) $(TARGET_UDP_CLIENT) *.o $(SRV_DIR)/*.o $(CLI_DIR)/*.o $(SRV_DIR)/*.socket $(CLI_DIR)/*.socket $(SRV_DIR)/*.dat $(CLI_DIR)/*.dat $(SRV_DIR)/*.gcda $(CLI_DIR)/*.gcda $(SRV_DIR)/*.gcno $(CLI_DIR)/*.gcno $(SRV_DIR)/*.gcov $(CLI_DIR)/*.gcov