irix is fussy about how it is fed its mount options
[xfstests-dev.git] / common.rc
index 6be40f6d547f35405ad08fcf2a602a919c86aa95..ab8f641680a442d6b4c24b8fc85706ac755142c3 100644 (file)
--- a/common.rc
+++ b/common.rc
@@ -147,10 +147,21 @@ _test_options()
        TEST_OPTIONS="$TEST_OPTIONS ${log_opt}logdev=$TEST_LOGDEV"
 }
 
+_mount_ops_minus_o_comma_replace()
+{
+       # irix is fussy about how it is fed its mount options
+       # - multiple -o's are not allowed
+       # - no spaces between comma delimitered options
+       
+       # this sed script replaces all -o's (except the first) with a comma
+       # not required for linux, but won't hurt
+       sed -e 's/[[:space:]]*-o[[:space:]]*/UnIqUe/1; s/[[:space:]]*-o[[:space:]]*/,/g; s/UnIqUe/ -o /1'
+}
+
 _scratch_mount_options()
 {
     _scratch_options mount
-    echo $SCRATCH_OPTIONS $MOUNT_OPTIONS $* $SCRATCH_DEV $SCRATCH_MNT
+    echo $SCRATCH_OPTIONS $MOUNT_OPTIONS $* $SCRATCH_DEV $SCRATCH_MNT | _mount_ops_minus_o_comma_replace
 }
 
 _scratch_mount()
@@ -161,7 +172,7 @@ _scratch_mount()
 _test_mount()
 {
     _test_options mount
-    _mount -t $FSTYP $TEST_OPTIONS $MOUNT_OPTIONS $* $TEST_DEV $TEST_DIR
+    _mount -t $FSTYP $(echo $TEST_OPTIONS $MOUNT_OPTIONS $* | _mount_ops_minus_o_comma_replace) $TEST_DEV $TEST_DIR
 }
 
 _scratch_mkfs_options()