1 # SPDX-License-Identifier: GPL-2.0
3 # Copyright (c) 2000-2005 Silicon Graphics, Inc. All Rights Reserved.
7 include $(TOPDIR)/include/builddefs
9 TARGETS = dirstress fill fill2 getpagesize holes lstat64 \
10 nametest permname randholes runas truncfile usemem \
11 mmapcat append_reader append_writer dirperf metaperf \
12 devzero feature alloc fault fstest t_access_root \
13 godown resvtest writemod writev_on_pagefault makeextents itrash rename \
14 multi_open_unlink unwritten_sync genhashnames t_holes \
15 t_mmap_writev t_truncate_cmtime dirhash_collide t_rename_overwrite \
16 holetest t_truncate_self af_unix t_mmap_stale_pmd \
17 t_mmap_cow_race t_mmap_fallocate fsync-err t_mmap_write_ro \
18 t_ext4_dax_journal_corruption t_ext4_dax_inline_corruption \
19 t_ofd_locks t_mmap_collision mmap-write-concurrent \
20 t_get_file_time t_create_short_dirs t_create_long_dirs t_enospc \
21 t_mmap_writev_overlap checkpoint_journal mmap-rw-fault allocstale
23 LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize preallo_rw_pattern_reader \
24 preallo_rw_pattern_writer ftrunc trunc fs_perms testx looptest \
25 locktest unwritten_mmap bulkstat_unlink_test deduperace \
26 bulkstat_unlink_test_modified t_dir_offset t_futimens t_immutable \
27 stale_handle pwrite_mmap_blocked t_dir_offset2 seek_sanity_test \
28 seek_copy_test t_readdir_1 t_readdir_2 fsync-tester nsexec cloner \
29 renameat2 t_getcwd e4compact test-nextquota punch-alternating \
30 attr-list-by-handle-cursor-test listxattr dio-interleaved t_dir_type \
31 dio-invalidate-cache stat_test t_encrypted_d_revalidate \
32 attr_replace_test swapon mkswap t_attr_corruption t_open_tmpfiles \
33 fscrypt-crypt-util bulkstat_null_ocount splice-test chprojid_fail \
34 detached_mounts_propagation ext4_resize
36 EXTRA_EXECS = dmerror fill2attr fill2fs fill2fs_check scaleread.sh \
37 btrfs_crc32c_forged_name.py
39 SUBDIRS = log-writes perf
41 LLDLIBS = $(LIBHANDLE) $(LIBACL) -lpthread -lrt
43 ifeq ($(HAVE_XLOG_ASSIGN_LSN), true)
44 LINUX_TARGETS += loggen
47 ifeq ($(HAVE_FIEMAP), true)
48 LINUX_TARGETS += fiemap-tester t_stripealign
51 ifeq ($(HAVE_OPEN_BY_HANDLE_AT), true)
52 LINUX_TARGETS += open_by_handle
55 ifeq ($(HAVE_FALLOCATE), true)
56 LCFLAGS += -DHAVE_FALLOCATE
59 ifeq ($(PKG_PLATFORM),linux)
60 TARGETS += $(LINUX_TARGETS)
63 ifeq ($(HAVE_DB), true)
68 ifeq ($(HAVE_AIO), true)
70 SUBDIRS += aio-dio-regress
74 ifeq ($(HAVE_URING), true)
78 SUBDIRS += idmapped-mounts
79 ifeq ($(HAVE_LIBCAP), true)
83 CFILES = $(TARGETS:=.c)
84 LDIRT = $(TARGETS) fssum
87 default: depend $(LDIRT) $(SUBDIRS)
95 $(Q)$(LTLINK) fssum.c md5.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS)
97 $(TARGETS): $(LIBTEST)
99 $(Q)$(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS) $(LIBTEST)
101 LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS)
103 install: default $(addsuffix -install,$(SUBDIRS))
104 $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
105 $(LTINSTALL) -m 755 $(LDIRT) $(PKG_LIB_DIR)/src
106 $(LTINSTALL) -m 755 $(EXTRA_EXECS) $(PKG_LIB_DIR)/src
107 $(LTINSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
110 $(MAKE) -C $* install