+# SPDX-License-Identifier: GPL-2.0
#
# Copyright (c) 2000-2005 Silicon Graphics, Inc. All Rights Reserved.
#
nametest permname randholes runas truncfile usemem \
mmapcat append_reader append_writer dirperf metaperf \
devzero feature alloc fault fstest t_access_root \
- godown resvtest writemod makeextents itrash rename \
- multi_open_unlink dmiperf unwritten_sync genhashnames
-
-LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize \
- preallo_rw_pattern_reader preallo_rw_pattern_writer ftrunc trunc \
- fs_perms testx looptest locktest unwritten_mmap \
- bulkstat_unlink_test bulkstat_unlink_test_modified t_dir_offset
+ godown resvtest writemod writev_on_pagefault makeextents itrash rename \
+ multi_open_unlink dmiperf unwritten_sync genhashnames t_holes \
+ t_mmap_writev t_truncate_cmtime dirhash_collide t_rename_overwrite \
+ holetest t_truncate_self t_mmap_dio af_unix t_mmap_stale_pmd \
+ t_mmap_cow_race t_mmap_fallocate fsync-err t_mmap_write_ro \
+ t_ext4_dax_journal_corruption t_ext4_dax_inline_corruption \
+ t_ofd_locks t_locks_execve t_mmap_collision mmap-write-concurrent
+
+LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize preallo_rw_pattern_reader \
+ preallo_rw_pattern_writer ftrunc trunc fs_perms testx looptest \
+ locktest unwritten_mmap bulkstat_unlink_test \
+ bulkstat_unlink_test_modified t_dir_offset t_futimens t_immutable \
+ stale_handle pwrite_mmap_blocked t_dir_offset2 seek_sanity_test \
+ seek_copy_test t_readdir_1 t_readdir_2 fsync-tester nsexec cloner \
+ renameat2 t_getcwd e4compact test-nextquota punch-alternating \
+ attr-list-by-handle-cursor-test listxattr dio-interleaved t_dir_type \
+ dio-invalidate-cache stat_test t_encrypted_d_revalidate \
+ attr_replace_test swapon mkswap t_attr_corruption t_open_tmpfiles \
+ fscrypt-crypt-util bulkstat_null_ocount
+
+SUBDIRS = log-writes perf
+
+LLDLIBS = $(LIBATTR) $(LIBHANDLE) $(LIBACL) -lpthread -lrt
ifeq ($(HAVE_XLOG_ASSIGN_LSN), true)
LINUX_TARGETS += loggen
endif
-IRIX_TARGETS = open_unlink
-
-ifeq ($(PKG_PLATFORM),linux)
-TARGETS += $(LINUX_TARGETS)
+ifeq ($(HAVE_FIEMAP), true)
+LINUX_TARGETS += fiemap-tester t_stripealign
endif
-ifeq ($(PKG_PLATFORM),irix)
-TARGETS += $(IRIX_TARGETS)
+ifeq ($(HAVE_OPEN_BY_HANDLE_AT), true)
+LINUX_TARGETS += open_by_handle
endif
-ifeq ($(HAVE_DB), true)
-TARGETS += dbtest
+ifeq ($(HAVE_FALLOCATE), true)
+LCFLAGS += -DHAVE_FALLOCATE
endif
ifeq ($(PKG_PLATFORM),linux)
-TARGETS += t_immutable
+TARGETS += $(LINUX_TARGETS)
+endif
+
+ifeq ($(HAVE_DB), true)
+TARGETS += dbtest
+LLDLIBS += $(LIBGDBM)
endif
ifeq ($(HAVE_AIO), true)
SUBDIRS += aio-dio-regress
+LLDLIBS += -laio
endif
CFILES = $(TARGETS:=.c)
-LDIRT = $(TARGETS)
-
-default: $(TARGETS) $(SUBDIRS)
-
-include $(BUILDRULES)
-LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS)
-
-randholes: randholes.o $(LIBTEST)
- $(LINKTEST) $(LIBTEST) $(LDLIBS)
-
-truncfile: truncfile.o $(LIBTEST)
- $(LINKTEST) $(LIBTEST) $(LDLIBS)
-
-dbtest: dbtest.o $(LIBTEST)
- $(LINKTEST) $(LIBTEST) $(LIBGDBM) $(LDLIBS)
-
-genhashnames: genhashnames.o
- $(LINKTEST)
-
-nametest: nametest.o $(LIBTEST)
- $(LINKTEST) $(LIBTEST) $(LDLIBS)
+LDIRT = $(TARGETS) fssum
-bstat: bstat.o
- $(LINKTEST) $(LIBHANDLE) $(LDLIBS)
-t_immutable: t_immutable.o
- $(LINKTEST) $(LIBACL) $(LIBHANDLE) $(LDLIBS)
+default: depend $(LDIRT) $(SUBDIRS)
-loggen: loggen.o
- $(LINKTEST) $(LDLIBS)
+depend: .dep
-fstest: fstest.o
- $(LINKTEST)
-
-resvtest: resvtest.o
- $(LINKTEST)
-
-itrash: itrash.o
- $(LINKTEST)
-
-multi_open_unlink: multi_open_unlink.o
- $(LINKTEST) $(LIBATTR) $(LDLIBS)
-
-#scaleread: scaleread.o $(LDLIBS)
-# $(LINKTEST)
-
-acl_get: acl_get.o
- $(LINKTEST) $(LIBACL) $(LIBATTR) $(LDLIBS)
-
-dmiperf: dmiperf.o
- $(LINKTEST) $(LIBATTR) $(LDLIBS)
-
-preallo_rw_pattern_reader:
- $(CC) $(GCFLAGS) $(LDFLAGS) -DREAD iopat.c -o preallo_rw_pattern_reader
-
-preallo_rw_pattern_writer:
- $(CC) $(GCFLAGS) $(LDFLAGS) -DWRITE iopat.c -o preallo_rw_pattern_writer
-
-ftrunc: ftrunc.o
- $(LINKTEST)
-
-trunc: trunc.o
- $(LINKTEST)
-
-fs_perms: fs_perms.o
- $(LINKTEST)
-
-testx: testx.o
- $(LINKTEST)
-
-looptest: looptest.o
- $(LINKTEST)
-
-locktest: locktest.o
- $(LINKTEST)
+include $(BUILDRULES)
-unwritten_sync: unwritten_sync.o
- $(LINKTEST)
+fssum: fssum.c md5.c
+ @echo " [CC] $@"
+ $(Q)$(LTLINK) fssum.c md5.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS)
-ifeq ($(PKG_PLATFORM),irix)
-fill2: fill2.o
- $(LINKTEST) -lgen
+$(TARGETS): $(LIBTEST)
+ @echo " [CC] $@"
+ $(Q)$(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS) $(LIBTEST)
-runas: runas.o
- $(LINKTEST) -lgen
+LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS)
-open_unlink: open_unlink.o $(LIBHANDLE)
- $(LINKTEST) $(LIBHANDLE) $(LDLIBS)
+install: default $(addsuffix -install,$(SUBDIRS))
+ $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 755 $(LDIRT) $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 755 dmerror fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
-endif
+%-install:
+ $(MAKE) -C $* install
-install:
- $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
- $(INSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/src
- $(INSTALL) -m 755 fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
- $(INSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
+-include .dep