AT_TESTED([ovs-vsctl])
AT_TESTED([perl])
-m4_include([m4/compat.at])
+m4_include([m4/compat.m4])
dnl Make AT_SETUP automatically run the ovs_init() shell function
dnl as the first step in every test.
}
ovs_wait () {
- # First try a quick sleep, so that the test completes very quickly
+ # First try the condition without waiting.
+ ovs_wait_cond && return 0
+
+ # Try a quick sleep, so that the test completes very quickly
# in the normal case. POSIX doesn't require fractional times to
# work, so this might not work.
sleep 0.1
- ovs_wait_cond && exit 0
+ ovs_wait_cond && return 0
+
# Then wait up to 10 seconds.
for d in 0 1 2 3 4 5 6 7 8 9; do
sleep 1
- ovs_wait_cond && exit 0
+ ovs_wait_cond && return 0
done
- exit 1
+ return 1
}
# Prints the integers from $1 to $2, increasing by $3 (default 1) on stdout.
]
m4_divert_pop([PREPARE_TESTS])
-m4_define([OVS_WAIT],
- [AT_CHECK(
- [ovs_wait_cond () { $1
+m4_define([OVS_WAIT], [dnl
+ovs_wait_cond () {
+ $1
}
-ovs_wait], [0], [ignore], [ignore], [$2])])
+if ovs_wait; then :
+else
+ $2
+ AT_FAIL_IF([:])
+fi
+])
+
+dnl OVS_WAIT_UNTIL(COMMAND)
+dnl
+dnl Executes shell COMMAND in a loop until it returns
+dnl zero return code. If COMMAND did not return
+dnl zero code within reasonable time limit, then
+dnl the test fails.
m4_define([OVS_WAIT_UNTIL], [OVS_WAIT([$1], [$2])])
+
+dnl OVS_WAIT_WHILE(COMMAND)
+dnl
+dnl Executes shell COMMAND in a loop until it returns
+dnl non-zero return code. If COMMAND did not return
+dnl non-zero code within reasonable time limit, then
+dnl the test fails.
m4_define([OVS_WAIT_WHILE],
[OVS_WAIT([if $1; then return 1; else return 0; fi], [$2])])
mv cleanup.tmp cleanup
}
])
+
+dnl Autoconf 2.63 compatibility verison of macro introduced in Autoconf 2.64:
+m4_ifndef([AS_VAR_APPEND],
+ [m4_divert_text([PREPARE_TESTS],
+ [as_var_append () {
+ eval $1=\$$1\$2
+ }
+])
+ m4_define([AS_VAR_APPEND], [as_var_append $1 $2])])
+
+dnl Autoconf 2.63 compatibility verison of macro introduced in Autoconf 2.64:
+m4_ifndef([AT_CHECK_UNQUOTED],
+ [m4_define([AT_CHECK_UNQUOTED],
+ [_AT_CHECK([$1], [$2], AS_ESCAPE(m4_dquote(m4_expand([$3])), [""]),
+ AS_ESCAPE(m4_dquote(m4_expand([$4])),[""]), [$5], [$6])])])
+
+dnl Autoconf 2.63 compatibility verison of macro introduced in Autoconf 2.64:
+m4_ifndef([AT_SKIP_IF],
+ [m4_define([AT_SKIP_IF],
+ [AT_CHECK([($1) \
+ && exit 77 || exit 0], [0], [ignore], [ignore])])])
+
+dnl Autoconf 2.63 compatibility verison of macro introduced in Autoconf 2.64:
+m4_ifndef([AT_FAIL_IF],
+ [m4_define([AT_FAIL_IF],
+ [AT_CHECK([($1) \
+ && exit 99 || exit 0], [0], [ignore], [ignore])])])