418265857be5c5994b6fc671f930939d84d2c086
[xfstests-dev.git] / src / Makefile
1 # SPDX-License-Identifier: GPL-2.0
2 #
3 # Copyright (c) 2000-2005 Silicon Graphics, Inc.  All Rights Reserved.
4 #
5
6 TOPDIR = ..
7 include $(TOPDIR)/include/builddefs
8
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 dmiperf unwritten_sync genhashnames t_holes \
15         t_mmap_writev t_truncate_cmtime dirhash_collide t_rename_overwrite \
16         holetest t_truncate_self t_mmap_dio 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_locks_execve t_mmap_collision
20
21 LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize preallo_rw_pattern_reader \
22         preallo_rw_pattern_writer ftrunc trunc fs_perms testx looptest \
23         locktest unwritten_mmap bulkstat_unlink_test \
24         bulkstat_unlink_test_modified t_dir_offset t_futimens t_immutable \
25         stale_handle pwrite_mmap_blocked t_dir_offset2 seek_sanity_test \
26         seek_copy_test t_readdir_1 t_readdir_2 fsync-tester nsexec cloner \
27         renameat2 t_getcwd e4compact test-nextquota punch-alternating \
28         attr-list-by-handle-cursor-test listxattr dio-interleaved t_dir_type \
29         dio-invalidate-cache stat_test t_encrypted_d_revalidate \
30         attr_replace_test swapon mkswap
31
32 SUBDIRS = log-writes perf
33
34 LLDLIBS = $(LIBATTR) $(LIBHANDLE) $(LIBACL) -lpthread
35
36 ifeq ($(HAVE_XLOG_ASSIGN_LSN), true)
37 LINUX_TARGETS += loggen
38 endif
39
40 ifeq ($(HAVE_FIEMAP), true)
41 LINUX_TARGETS += fiemap-tester t_stripealign
42 endif
43
44 ifeq ($(HAVE_OPEN_BY_HANDLE_AT), true)
45 LINUX_TARGETS += open_by_handle
46 endif
47
48 ifeq ($(HAVE_FALLOCATE), true)
49 LCFLAGS += -DHAVE_FALLOCATE
50 endif
51
52 ifeq ($(PKG_PLATFORM),linux)
53 TARGETS += $(LINUX_TARGETS)
54 endif
55
56 ifeq ($(HAVE_DB), true)
57 TARGETS += dbtest
58 LLDLIBS += $(LIBGDBM)
59 endif
60
61 ifeq ($(HAVE_AIO), true)
62 SUBDIRS += aio-dio-regress
63 LLDLIBS += -laio
64 endif
65
66 CFILES = $(TARGETS:=.c)
67 LDIRT = $(TARGETS) fssum
68
69
70 default: depend $(LDIRT) $(SUBDIRS)
71
72 depend: .dep
73
74 include $(BUILDRULES)
75
76 fssum: fssum.c md5.c
77         @echo "    [CC]    $@"
78         $(Q)$(LTLINK) fssum.c md5.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS)
79
80 $(TARGETS): $(LIBTEST)
81         @echo "    [CC]    $@"
82         $(Q)$(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS) $(LIBTEST)
83
84 LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS)
85
86 install: default $(addsuffix -install,$(SUBDIRS))
87         $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
88         $(LTINSTALL) -m 755 $(LDIRT) $(PKG_LIB_DIR)/src
89         $(LTINSTALL) -m 755 dmerror fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
90         $(LTINSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
91
92 %-install:
93         $(MAKE) -C $* install
94
95 -include .dep