Report on whether XFS was built debug or not for XFS benchmark runs
[xfstests-dev.git] / new
1 #! /bin/sh
2 #
3 # Copyright (c) 2000-2003 Silicon Graphics, Inc.  All Rights Reserved.
4
5 # This program is free software; you can redistribute it and/or modify it
6 # under the terms of version 2 of the GNU General Public License as
7 # published by the Free Software Foundation.
8
9 # This program is distributed in the hope that it would be useful, but
10 # WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
13 # Further, this software is distributed without any warranty that it is
14 # free of the rightful claim of any third person regarding infringement
15 # or the like.  Any license provided herein, whether implied or
16 # otherwise, applies only to this software file.  Patent licenses, if
17 # any, provided herein do not apply to combinations of this program with
18 # other software, or any other product whatsoever.
19
20 # You should have received a copy of the GNU General Public License along
21 # with this program; if not, write the Free Software Foundation, Inc., 59
22 # Temple Place - Suite 330, Boston MA 02111-1307, USA.
23
24 # Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
25 # Mountain View, CA  94043, or:
26
27 # http://www.sgi.com 
28
29 # For further information regarding this notice, see: 
30
31 # http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
32 #
33 #
34 # Make a new test
35 #
36
37 # generic initialization
38 iam=new
39 . ./common.rc
40
41 trap "rm -f /tmp/$$.; exit" 0 1 2 3 15
42
43 _cleanup()
44 {
45     :
46 }
47
48 if [ ! -f group ]
49 then
50     echo "Creating the group index ..."
51     cat <<'End-of-File' >group
52 # QA groups control
53 #
54 # define groups and default group owners
55 # do not start group name with a digit
56 #
57
58 # catch-all
59 #
60 other           some-user-login
61
62 # test-group association ... one line per test
63 #
64 End-of-File
65 fi
66
67 if [ ! -w group ]
68 then
69     chmod u+w group
70     echo "Warning: making the index file \"group\" writeable"
71 fi
72
73 if make
74 then
75     :
76 else
77     echo "Warning: make failed -- some tests may be missing"
78 fi
79
80 last=`grep '^[0-9][0-9]* ' group | sort | tail -1 | sed -e 's/[         ].*//'`
81 # get rid of leading 0s as can be interpreted as octal
82 last=`echo $last | sed 's/^0*//'`
83 id=`$AWK_PROG </dev/null 'BEGIN{printf "%03d\n",'$last'+1}'`
84 echo "Next test is $id"
85
86 if [ -f $id ]
87 then
88     echo "Error: test $id already exists!"
89     _cleanup
90     exit 1
91 fi
92
93 echo -n "Creating skeletal script for you to edit ..."
94
95 cat <<End-of-File >$id
96 #! /bin/sh
97 # XFS QA Test No. $id
98 #
99 # what am I here for?
100 #
101 #-----------------------------------------------------------------------
102 # Copyright (c) 2000-2003 Silicon Graphics, Inc.  All Rights Reserved.
103
104 # This program is free software; you can redistribute it and/or modify it
105 # under the terms of version 2 of the GNU General Public License as
106 # published by the Free Software Foundation.
107
108 # This program is distributed in the hope that it would be useful, but
109 # WITHOUT ANY WARRANTY; without even the implied warranty of
110 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
111
112 # Further, this software is distributed without any warranty that it is
113 # free of the rightful claim of any third person regarding infringement
114 # or the like.  Any license provided herein, whether implied or
115 # otherwise, applies only to this software file.  Patent licenses, if
116 # any, provided herein do not apply to combinations of this program with
117 # other software, or any other product whatsoever.
118
119 # You should have received a copy of the GNU General Public License along
120 # with this program; if not, write the Free Software Foundation, Inc., 59
121 # Temple Place - Suite 330, Boston MA 02111-1307, USA.
122
123 # Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
124 # Mountain View, CA  94043, or:
125
126 # http://www.sgi.com 
127
128 # For further information regarding this notice, see: 
129
130 # http://oss.sgi.com/projects/GenInfo/SGIGPLNoticeExplan/
131 #-----------------------------------------------------------------------
132 #
133 # creator
134 owner=$USER@`_get_fqdn`
135
136 seq=\`basename \$0\`
137 echo "QA output created by \$seq"
138
139 here=\`pwd\`
140 tmp=/tmp/\$\$
141 status=1        # failure is the default!
142 trap "rm -f \$tmp.*; exit \\\$status" 0 1 2 3 15
143
144 # get standard environment, filters and checks
145 . ./common.rc
146 . ./common.filter
147
148 # real QA test starts here
149
150 # if error
151 exit
152
153 # optional stuff if your test has verbose output to help resolve problems
154 #echo
155 #echo "If failure, check \$seq.full (this) and \$seq.full.ok (reference)"
156
157 # success, all done
158 status=0
159 exit
160 End-of-File
161
162 sleep 2         # latency to read messages to this point
163 echo ""
164
165 chmod 755 $id
166 ${EDITOR-vi} $id
167
168 if [ $# -eq 0 ]
169 then
170     while true
171     do
172         echo -n "Add to group(s) [other] (? for list): "
173         read ans
174         [ -z "$ans" ] && ans=other
175         if [ "X$ans" = "X?" ]
176         then
177             $AWK_PROG <group '
178 BEGIN           { text = "# ???" }
179 /^[a-zA-z]/     { printf "%-16.16s %s\n",$1,text; text = "# ???"; next }
180 NF < 2          { next }
181                 { text = $0 }' \
182             | sort
183         else
184             break
185         fi
186     done
187 else
188     # expert mode, groups are on the command line
189     #
190     for g in $*
191     do
192         if grep "^$g[   ]" group >/dev/null
193         then
194             :
195         else
196             echo "Warning: group \"$g\" not defined in ./group"
197         fi
198     done
199     ans="$*"
200 fi
201
202 echo -n "Adding $id to group index ..."
203 echo "$id $ans" >>group
204 echo " done."
205
206 exit 0