-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile.linux
72 lines (59 loc) · 2.57 KB
/
Makefile.linux
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
67
68
69
70
71
72
APP=cloning-apps
APP_BASE=.
CC = gcc
CFLAGS = -Werror -Wall -Wextra -std=gnu99 -fpie -rdynamic -I$(APP_BASE)
ifeq ($(debug),y)
CFLAGS+= -g -O0
else
CFLAGS+= -O2
endif
LDFLAGS += -lpthread
#LIBS += -lpthread
CONFIG_CLONING_APP_MEMORY_OVERHEAD=y
CFLAGS += -DCONFIG_CLONING_APP_MEMORY_OVERHEAD=1
#CONFIG_CLONING_APP_SERVER_UDP=y
#CFLAGS += -DCONFIG_CLONING_APP_SERVER_UDP=1
#CONFIG_CLONING_APP_CHILDREN=y
#CFLAGS += -DCONFIG_CLONING_APP_CHILDREN=1
#CONFIG_CLONING_APP_FILES=y
#CFLAGS += -DCONFIG_CLONING_APP_FILES=1
#CONFIG_CLONING_APP_MEASURE_FORK=y
#CFLAGS += -DCONFIG_CLONING_APP_MEASURE_FORK=1
LIBCLONING_APPS_CINCLUDES-y += -I$(APP_BASE)
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/boot.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/cmdline.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/clone_posix.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/mem.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/mem_posix.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/net.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/net_posix.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/thread.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/os/posix/time.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/mem.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/net.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/time.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/profile.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/server-common.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/main.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_COUNTER) += $(APP_BASE)/counter.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_MEMORY_OVERHEAD) += $(APP_BASE)/memory-overhead.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_CHILDREN) += $(APP_BASE)/children.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_SLEEPER) += $(APP_BASE)/sleeper.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_SERVER_TCP) += $(APP_BASE)/server-tcp.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_SERVER_UDP) += $(APP_BASE)/server-udp.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_FILES) += $(APP_BASE)/files.c
LIBCLONING_APPS_SRCS-$(CONFIG_CLONING_APP_MEASURE_FORK) += $(APP_BASE)/measure-fork.c
LIBCLONING_APPS-OBJS = $(patsubst %.c,%.o,$(LIBCLONING_APPS_SRCS-y))
$(APP): $(LIBCLONING_APPS-OBJS)
$(CC) -pie -o $@ $(CFLAGS) $(LDFLAGS) $^
posix-server: posix-server.c
$(CC) -o $@ $^
%.o: %.c
$(CC) -c -pie -o $@ $(CFLAGS) $<
clean:
rm -f $(APP) $(LIBCLONING_APPS-OBJS)
LIBCLONING_APPS_CINCLUDES-y += -I$(APP_BASE)
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/boot.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/common/net.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/main.c
LIBCLONING_APPS_SRCS-y += $(APP_BASE)/server-tcp.c