aboutsummaryrefslogtreecommitdiff
path: root/contrib/pjdfstest/tests/conf
blob: cf8fb8be0247c2ce3f08ac922c326f93cfa95d92 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
# $FreeBSD: head/tools/regression/pjdfstest/tests/conf 211354 2010-08-15 21:29:03Z pjd $
# vim: filetype=sh noexpandtab ts=8 sw=8
# pjdfstest configuration file

# Supported operating systems: FreeBSD, Darwin, SunOS, Linux
os=`uname`

unsupported_os()
{
	echo "Unsupported operating system ${os}." >/dev/stderr
	exit 1
}

get_mountpoint()
{
	case "${os}" in
	Darwin|FreeBSD)
		df . | tail -1 | awk '{print $NF}'
		;;
	*)
		unsupported_os
		;;
	esac
}

case "${os}" in
Darwin)
	GREP=grep
	#fs=`df -T . | tail -1 | awk '{print $2}'`
	mountpoint="`get_mountpoint`"
	fs=`mount | grep "on $mountpoint" | sed -e 's/.*(//' -e 's/,.*//g' | tr '[:lower:]' '[:upper:]'`
	;;
FreeBSD)
	GREP=grep
	#fs=`df -T . | tail -1 | awk '{print $2}'`
	mountpoint="`get_mountpoint`"
	fs=`mount -p | awk '$2 == "'$mountpoint'" { print toupper($3) }'`
	;;
Solaris|SunOS)
	GREP=ggrep
	pattern=`df -Pk . | tail -1 | awk '{printf("%s on %s \n", $1, $6)}'`
	fs=`mount -v | ${GREP} -E "^${pattern}" | awk '{print $5}' | \
	    tr -s '[:lower:]' '[:upper:]'`
	;;
Linux)
	GREP=grep
	fs=`df -PT . | tail -1 | awk '{print toupper($2)}'`
	;;
*)
	unsupported_os
	;;
esac

# If we cannot figure out file system type, define it here.
#fs="UFS"

if [ -z "${fs}" ]; then
	echo "Cannot figure out file system type, define it by hand." >/dev/stderr
	exit 1
fi