prefix ?= /usr datadir ?= $(prefix)/share INSTALL=install ifneq ($(MAKECMDGOALS),clean) include ../config-host.mak endif CPPFLAGS ?= override CPPFLAGS += -D_GNU_SOURCE -D__SANE_USERSPACE_TYPES__ \ -I../src/include/ -include ../config-host.h CFLAGS ?= -g -O2 XCFLAGS = override CFLAGS += -D_GNU_SOURCE \ -Wall -Wextra -Wno-unused-parameter -Wno-sign-compare \ -L../src/ ifdef CONFIG_HAVE_STRINGOP_OVERFLOW XCFLAGS += -Wstringop-overflow=0 endif ifdef CONFIG_HAVE_ARRAY_BOUNDS XCFLAGS += -Warray-bounds=0 endif CXXFLAGS ?= override CXXFLAGS += $(CFLAGS) -std=c++11 test_targets += \ 232c93d07b74-test \ 35fa71a030ca-test \ 500f9fbadef8-test \ 7ad0e4b2f83c-test \ 8a9973408177-test \ 917257daa0fe-test \ a0908ae19763-test \ a4c0b3decb33-test \ accept \ accept-link \ accept-reuse \ accept-test \ across-fork splice \ b19062a56726-test \ b5837bd5311d-test \ ce593a6c480a-test \ close-opath \ connect \ cq-full \ cq-overflow \ cq-peek-batch \ cq-ready \ cq-size \ d4ae271dfaae-test \ d77a67ed5f27-test \ defer \ double-poll-crash \ eeed8b54e0df-test \ empty-eownerdead \ eventfd \ eventfd-disable \ eventfd-ring \ fadvise \ fallocate \ fc2a85cb02ef-test \ file-register \ file-update \ files-exit-hang-poll \ files-exit-hang-timeout \ fixed-link \ fsync \ hardlink \ io-cancel \ io_uring_enter \ io_uring_register \ io_uring_setup \ iopoll \ lfs-openat \ lfs-openat-write \ link \ link-timeout \ link_drain \ madvise \ mkdir \ multicqes_drain \ nop \ nop-all-sizes \ open-close \ openat2 \ personality \ pipe-eof \ pipe-reuse \ poll \ poll-cancel \ poll-cancel-ton \ poll-link \ poll-many \ poll-mshot-update \ poll-ring \ poll-v-poll \ probe \ read-write \ register-restrictions \ rename \ ring-leak \ ring-leak2 \ rw_merge_test \ self \ send_recv \ send_recvmsg \ shared-wq \ short-read \ shutdown \ sigfd-deadlock \ socket-rw \ socket-rw-eagain \ sq-full \ sq-poll-dup \ sq-poll-kthread \ sq-poll-share \ sqpoll-disable-exit \ sqpoll-exit-hang \ sqpoll-cancel-hang \ sqpoll-sleep \ sq-space_left \ stdout \ submit-reuse \ submit-link-fail \ symlink \ teardowns \ thread-exit \ timeout \ timeout-new \ timeout-overflow \ unlink \ wakeup-hang \ sendmsg_fs_cve \ rsrc_tags \ # EOL all_targets += $(test_targets) include ../Makefile.quiet ifdef CONFIG_HAVE_STATX test_targets += statx endif all_targets += statx ifdef CONFIG_HAVE_CXX test_targets += sq-full-cpp endif all_targets += sq-full-cpp helpers = helpers.o all: ${helpers} $(test_targets) helpers.o: helpers.c helpers.c $(QUIET_CC)$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $< -luring %: %.c ${helpers} helpers.h $(QUIET_CC)$(CC) $(CPPFLAGS) $(CFLAGS) -o $@ $< ${helpers} -luring $(XCFLAGS) %: %.cc ${helpers} helpers.h $(QUIET_CXX)$(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ $< ${helpers} -luring $(XCFLAGS) test_srcs := \ helpers.c \ 232c93d07b74-test.c \ 35fa71a030ca-test.c \ 500f9fbadef8-test.c \ 7ad0e4b2f83c-test.c \ 8a9973408177-test.c \ 917257daa0fe-test.c \ a0908ae19763-test.c \ a4c0b3decb33-test.c \ accept-link.c \ accept-reuse.c \ accept-test.c \ accept.c \ across-fork.c \ b19062a56726-test.c \ b5837bd5311d-test.c \ ce593a6c480a-test.c \ close-opath.c \ connect.c \ cq-full.c \ cq-overflow.c \ cq-peek-batch.c \ cq-ready.c\ cq-size.c \ d4ae271dfaae-test.c \ d77a67ed5f27-test.c \ defer.c \ double-poll-crash.c \ eeed8b54e0df-test.c \ empty-eownerdead.c \ eventfd-disable.c \ eventfd-ring.c \ eventfd.c \ fadvise.c \ fallocate.c \ fc2a85cb02ef-test.c \ file-register.c \ file-update.c \ files-exit-hang-poll.c \ files-exit-hang-timeout.c \ fixed-link.c \ fsync.c \ hardlink.c \ io-cancel.c \ io_uring_enter.c \ io_uring_register.c \ io_uring_setup.c \ iopoll.c \ lfs-openat-write.c \ lfs-openat.c \ link-timeout.c \ link.c \ link_drain.c \ madvise.c \ mkdir.c \ multicqes_drain.c \ nop-all-sizes.c \ nop.c \ open-close.c \ openat2.c \ personality.c \ pipe-eof.c \ pipe-reuse.c \ poll-cancel-ton.c \ poll-cancel.c \ poll-link.c \ poll-many.c \ poll-mshot-update.c \ poll-ring.c \ poll-v-poll.c \ poll.c \ probe.c \ read-write.c \ register-restrictions.c \ rename.c \ ring-leak.c \ ring-leak2.c \ rw_merge_test.c \ self.c \ send_recvmsg.c \ shared-wq.c \ short-read.c \ shutdown.c \ sigfd-deadlock.c \ socket-rw.c \ socket-rw-eagain.c \ splice.c \ sq-full-cpp.cc \ sq-full.c \ sq-poll-dup.c \ sq-poll-kthread.c \ sq-poll-share.c \ sqpoll-disable-exit.c \ sqpoll-exit-hang.c \ sqpoll-cancel-hang.c \ sqpoll-sleep.c \ sq-space_left.c \ statx.c \ stdout.c \ submit-reuse.c \ submit-link-fail.c \ symlink.c \ teardowns.c \ thread-exit.c \ timeout-new.c \ timeout-overflow.c \ timeout.c \ unlink.c \ wakeup-hang.c \ sendmsg_fs_cve.c \ rsrc_tags.c \ # EOL test_objs := $(patsubst %.c,%.ol,$(patsubst %.cc,%.ol,$(test_srcs))) 35fa71a030ca-test: XCFLAGS = -lpthread 232c93d07b74-test: XCFLAGS = -lpthread send_recv: XCFLAGS = -lpthread send_recvmsg: XCFLAGS = -lpthread poll-link: XCFLAGS = -lpthread accept-link: XCFLAGS = -lpthread submit-reuse: XCFLAGS = -lpthread poll-v-poll: XCFLAGS = -lpthread across-fork: XCFLAGS = -lpthread ce593a6c480a-test: XCFLAGS = -lpthread wakeup-hang: XCFLAGS = -lpthread pipe-eof: XCFLAGS = -lpthread timeout-new: XCFLAGS = -lpthread thread-exit: XCFLAGS = -lpthread ring-leak2: XCFLAGS = -lpthread poll-mshot-update: XCFLAGS = -lpthread install: $(test_targets) runtests.sh runtests-loop.sh $(INSTALL) -D -d -m 755 $(datadir)/liburing-test/ $(INSTALL) -D -m 755 $(test_targets) $(datadir)/liburing-test/ $(INSTALL) -D -m 755 runtests.sh $(datadir)/liburing-test/ $(INSTALL) -D -m 755 runtests-loop.sh $(datadir)/liburing-test/ clean: @rm -f $(all_targets) $(test_objs) helpers.o output/* @rm -rf output/ runtests: all @./runtests.sh $(test_targets) runtests-loop: all @./runtests-loop.sh $(test_targets)