-
Notifications
You must be signed in to change notification settings - Fork 42
/
Makefile
62 lines (43 loc) · 2.29 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
CC=gcc
CFLAGS=-O3 -pipe -Wall -Wextra -pedantic
INCLUDE=-I.
EXAMPLE_DIR=examples
OBJ=Message.o TimerWrapper.o MessageQueueWrapper.o SemaphoreWrapper.o SerialWrapper.o SharedMemoryWrapper.o SocketWrapper.o $(EXAMPLE_DIR)/MessageQueueWrapperTest.o $(EXAMPLE_DIR)/SemaphoreWrapperTest.o $(EXAMPLE_DIR)/SerialWrapperTest.o $(EXAMPLE_DIR)/SharedMemoryWrapperTest.o $(EXAMPLE_DIR)/SocketWrapperTest.o
BIN=$(EXAMPLE_DIR)/messageQueueWrapperTest $(EXAMPLE_DIR)/semaphoreWrapperTest $(EXAMPLE_DIR)/serialWrapperTest $(EXAMPLE_DIR)/sharedMemoryWrapperTest $(EXAMPLE_DIR)/socketWrapperTest
all: $(OBJ) $(BIN)
Message.o: Message.c
$(CC) -o $@ $(CFLAGS) -c $^
TimerWrapper.o: TimerWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
MessageQueueWrapper.o: MessageQueueWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
SemaphoreWrapper.o: SemaphoreWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
SharedMemoryWrapper.o: SharedMemoryWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
SocketWrapper.o: SocketWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
SerialWrapper.o: SerialWrapper.c
$(CC) -o $@ $(CFLAGS) -c $^
$(EXAMPLE_DIR)/MessageQueueWrapperTest.o: $(EXAMPLE_DIR)/MessageQueueWrapperTest.c
$(CC) -o $@ $(CFLAGS) -c $(INCLUDE) $^
$(EXAMPLE_DIR)/messageQueueWrapperTest: $(EXAMPLE_DIR)/messageQueueWrapperTest.o MessageQueueWrapper.o TimerWrapper.o Message.o
$(CC) -o $@ $(CFLAGS) $^ -lrt
$(EXAMPLE_DIR)/SemaphoreWrapperTest.o: $(EXAMPLE_DIR)/SemaphoreWrapperTest.c
$(CC) -o $@ $(CFLAGS) -c $(INCLUDE) $^
$(EXAMPLE_DIR)/semaphoreWrapperTest: $(EXAMPLE_DIR)/semaphoreWrapperTest.o SemaphoreWrapper.o
$(CC) -o $@ $(CFLAGS) $^
$(EXAMPLE_DIR)/SerialWrapperTest.o: $(EXAMPLE_DIR)/SerialWrapperTest.c
$(CC) -o $@ $(CFLAGS) -c $(INCLUDE) $^
$(EXAMPLE_DIR)/serialWrapperTest: $(EXAMPLE_DIR)/SerialWrapperTest.o SerialWrapper.o TimerWrapper.o
$(CC) -o $@ $(CFLAGS) $^ -lrt
$(EXAMPLE_DIR)/SharedMemoryWrapperTest.o: $(EXAMPLE_DIR)/SharedMemoryWrapperTest.c
$(CC) -o $@ $(CFLAGS) -c $(INCLUDE) $^
$(EXAMPLE_DIR)/sharedMemoryWrapperTest: $(EXAMPLE_DIR)/SharedMemoryWrapperTest.o SharedMemoryWrapper.o
$(CC) -o $@ $(CFLAGS) $^ -lrt
$(EXAMPLE_DIR)/SocketWrapperTest.o: $(EXAMPLE_DIR)/SocketWrapperTest.c
$(CC) -o $@ $(CFLAGS) -c $(INCLUDE) $^
$(EXAMPLE_DIR)/socketWrapperTest: $(EXAMPLE_DIR)/SocketWrapperTest.o SocketWrapper.o
$(CC) -o $@ $(CFLAGS) $^ -lrt
clean:
-rm -f $(OBJ) $(BIN)