• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1CPPFLAGS ?=
2override CPPFLAGS += -D_GNU_SOURCE -I../src/include/
3CFLAGS ?= -g -O2 -Wall
4LDFLAGS ?=
5override LDFLAGS += -L../src/ -luring
6
7include ../Makefile.quiet
8
9ifneq ($(MAKECMDGOALS),clean)
10include ../config-host.mak
11endif
12
13LDFLAGS ?=
14override LDFLAGS += -L../src/ -luring -lpthread
15
16ifeq ($(CONFIG_USE_SANITIZER),y)
17	override CFLAGS += -fsanitize=address,undefined -fno-omit-frame-pointer -fno-optimize-sibling-calls
18	override CPPFLAGS += -fsanitize=address,undefined -fno-omit-frame-pointer -fno-optimize-sibling-calls
19	override LDFLAGS += -fsanitize=address,undefined
20endif
21
22example_srcs := \
23	io_uring-close-test.c \
24	io_uring-cp.c \
25	io_uring-test.c \
26	io_uring-udp.c \
27	link-cp.c \
28	napi-busy-poll-client.c \
29	napi-busy-poll-server.c \
30	poll-bench.c \
31	send-zerocopy.c \
32	rsrc-update-bench.c \
33	proxy.c \
34	kdigest.c
35
36all_targets :=
37
38
39ifdef CONFIG_HAVE_UCONTEXT
40	example_srcs += ucontext-cp.c
41endif
42all_targets += ucontext-cp helpers.o
43
44example_targets := $(patsubst %.c,%,$(patsubst %.cc,%,$(example_srcs)))
45all_targets += $(example_targets)
46
47helpers = helpers.o
48
49all: $(example_targets)
50
51helpers.o: helpers.c
52	$(QUIET_CC)$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $<
53
54%: %.c $(helpers) ../src/liburing.a
55	$(QUIET_CC)$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $< $(helpers) $(LDFLAGS)
56
57clean:
58	@rm -f $(all_targets)
59
60.PHONY: all clean
61