-#
-# Copyright (c) 2000-2002 Silicon Graphics, Inc. All Rights Reserved.
-#
-# This program is free software; you can redistribute it and/or modify it
-# under the terms of version 2 of the GNU General Public License as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it would be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#
-# Further, this software is distributed without any warranty that it is
-# free of the rightful claim of any third person regarding infringement
-# or the like. Any license provided herein, whether implied or
-# otherwise, applies only to this software file. Patent licenses, if
-# any, provided herein do not apply to combinations of this program with
-# other software, or any other product whatsoever.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write the Free Software Foundation, Inc., 59
-# Temple Place - Suite 330, Boston MA 02111-1307, USA.
-#
-# Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
-# Mountain View, CA 94043, or:
-#
-# http://www.sgi.com
-#
-# For further information regarding this notice, see:
-#
-# http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
+#
+# Copyright (c) 2000-2005 Silicon Graphics, Inc. All Rights Reserved.
#
TOPDIR = ..
include $(TOPDIR)/include/builddefs
-TARGETS = alloc acl_get bstat devzero dirstress fault feature \
- fsstress fill fill2 getpagesize holes ioctl loggen lstat64 \
- nametest permname randholes runas truncfile usemem \
- fstest mmapcat append_reader append_writer
+TARGETS = dirstress fill fill2 getpagesize holes lstat64 \
+ 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 t_holes \
+ t_mmap_writev t_truncate_cmtime dirhash_collide
+
+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 t_stripealign \
+ 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
+
+SUBDIRS =
+
+LLDLIBS = $(LIBATTR) $(LIBHANDLE) $(LIBACL)
+
+ifeq ($(HAVE_XLOG_ASSIGN_LSN), true)
+LINUX_TARGETS += loggen
+endif
+
+ifeq ($(HAVE_FIEMAP), true)
+LINUX_TARGETS += fiemap-tester
+endif
+
+ifeq ($(HAVE_FALLOCATE), true)
+LCFLAGS += -DHAVE_FALLOCATE
+endif
+
+IRIX_TARGETS = open_unlink
+
+ifeq ($(PKG_PLATFORM),linux)
+TARGETS += $(LINUX_TARGETS)
+endif
+
+ifeq ($(PKG_PLATFORM),irix)
+TARGETS += $(IRIX_TARGETS)
+LLDLIBS += -lgen
+endif
+
ifeq ($(HAVE_DB), true)
TARGETS += dbtest
+LLDLIBS += $(LIBGDBM)
endif
-CFILES = $(TARGETS:=.c) random.c
-HFILES = global.h
-LDIRT = $(TARGETS)
+ifeq ($(HAVE_AIO), true)
+SUBDIRS += aio-dio-regress
+endif
-default: $(TARGETS)
+ifeq ($(HAVE_SSL), true)
+TARGETS += fssum
+LLDLIBS += -lssl -lcrypto
+ifeq ($(PKG_PLATFORM),linux)
+CFLAGS += -D__LINUX__
+endif
+endif
-include $(BUILDRULES)
+CFILES = $(TARGETS:=.c)
+LDIRT = $(TARGETS)
-install install-dev: default
-# binaries using non-default objects/libs need an entry below
-#
-RANDHOLES_OBJECTS = randholes.o random.o
-randholes: $(HFILES) $(RANDHOLES_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(RANDHOLES_OBJECTS) $(LDLIBS)
+default: depend $(TARGETS) $(SUBDIRS)
-TRUNCFILE_OBJECTS = truncfile.o random.o
-truncfile: $(HFILES) $(TRUNCFILE_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(TRUNCFILE_OBJECTS) $(LDLIBS)
+depend: .dep
-FSSTRESS_OBJECTS = fsstress.o random.o $(LIBATTR)
-fsstress: $(HFILES) $(FSSTRESS_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(FSSTRESS_OBJECTS) $(LDLIBS)
+include $(BUILDRULES)
-DBTEST_OBJECTS = dbtest.o random.o
-dbtest: $(HFILES) $(DBTEST_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(DBTEST_OBJECTS) $(LIBGDBM) $(LDLIBS)
+$(TARGETS): $(LIBTEST)
+ @echo " [CC] $@"
+ $(Q)$(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS) $(LDLIBS) $(LIBTEST)
-NAMETEST_OBJECTS = nametest.o random.o
-nametest: $(HFILES) $(NAMETEST_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(NAMETEST_OBJECTS) $(LDLIBS)
+LINKTEST = $(LTLINK) $@.c -o $@ $(CFLAGS) $(LDFLAGS)
-BSTAT_OBJECTS = bstat.o
-bstat: $(HFILES) $(BSTAT_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(BSTAT_OBJECTS) $(LIBHANDLE) $(LDLIBS)
+install: default $(addsuffix -install,$(SUBDIRS))
+ $(INSTALL) -m 755 -d $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 755 $(TARGETS) $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 755 fill2attr fill2fs fill2fs_check scaleread.sh $(PKG_LIB_DIR)/src
+ $(LTINSTALL) -m 644 dumpfile $(PKG_LIB_DIR)/src
-LOGGEN_OBJECTS = loggen.o $(LIBXFS)
-loggen: $(HFILES) $(LOGGEN_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(LOGGEN_OBJECTS) $(LDLIBS)
+%-install:
+ $(MAKE) -C $* install
-ACLGET_OBJECTS = acl_get.o $(LIBACL) $(LIBATTR)
-acl_get: $(HFILES) $(ACLGET_OBJECTS)
- $(CCF) -o $@ $(LDFLAGS) $(ACLGET_OBJECTS) $(LDLIBS)
+-include .dep