-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
61 lines (43 loc) · 1.92 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
CC=gcc
LD=gcc
STRIP=true
WARNINGS=-Wall -Wextra
DEBUG=-ggdb
COPTIM=-march=native -mfpmath=sse,387 -O2 -fomit-frame-pointer -pipe
DEFINES=
INCLUDES=
CFLAGS=$(WARNINGS) $(COPTIM) $(DEFINES) $(INCLUDES) $(DEBUG)
LDOPTIM=-Wl,-O1 -Wl,--as-needed
LIBFILES=-levent_core -levent_extra
LDFLAGS=$(WARNINGS) $(LDOPTIM) $(LIBFILES) $(DEBUG)
SRC_DIR=.
BUILD_DIR=build
EXECUTABLE=socks_server_libevent
all: $(BUILD_DIR) $(EXECUTABLE)
$(BUILD_DIR):
mkdir $(BUILD_DIR)
$(EXECUTABLE): $(BUILD_DIR)/main_loop.o $(BUILD_DIR)/transfer.o $(BUILD_DIR)/handle_client.o $(BUILD_DIR)/socks_proto.o $(BUILD_DIR)/task.o $(BUILD_DIR)/common.o $(BUILD_DIR)/stack.o
$(LD) -o $@ $^ $(LDFLAGS)
$(STRIP) $@
$(BUILD_DIR)/main_loop.o: $(SRC_DIR)/main_loop.c $(SRC_DIR)/transfer.h $(SRC_DIR)/handle_client.h $(SRC_DIR)/common.h $(SRC_DIR)/stack.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/transfer.o: $(SRC_DIR)/transfer.c $(SRC_DIR)/transfer.h $(SRC_DIR)/common.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/handle_client.o: $(SRC_DIR)/handle_client.c $(SRC_DIR)/handle_client.h $(SRC_DIR)/transfer.h $(SRC_DIR)/socks_proto.h $(SRC_DIR)/task.h $(SRC_DIR)/common.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/socks_proto.o: $(SRC_DIR)/socks_proto.c $(SRC_DIR)/socks_proto.h $(SRC_DIR)/task.h $(SRC_DIR)/common.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/task.o: $(SRC_DIR)/task.c $(SRC_DIR)/task.h $(SRC_DIR)/common.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/common.o: $(SRC_DIR)/common.c $(SRC_DIR)/common.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
$(BUILD_DIR)/stack.o: $(SRC_DIR)/stack.c $(SRC_DIR)/stack.h Makefile
$(CC) -o $@ $< -c $(CFLAGS)
socks_server_: $(BUILD_DIR) socks_server
socks_server: $(BUILD_DIR)/socks_server.o
$(LD) -o $@ $^ $(WARNINGS) $(LDOPTIM) $(DEBUG)
$(STRIP) $@
$(BUILD_DIR)/socks_server.o: $(SRC_DIR)/socks_server.c Makefile
$(CC) -o $@ $< -c $(WARNINGS) $(COPTIM) $(DEFINES) $(DEBUG)
clean:
rm -rf $(BUILD_DIR)