trigger a kernel module rebuild when the kernel config changes
[openwrt-10.03/.git] / include / shell.sh
index 6ee0cf6030ac5e0a71d7be1c2438c58ee9724caf..db4100326277cce3c16e7f9cbb31b57f5bd1c591 100644 (file)
@@ -13,3 +13,22 @@ isset() {
        eval "var=\"\${$1}\""
        [ -n "$var" ]
 }
+
+trapret() {(
+       local retvals="$1"; shift
+       local cmd="$1"; shift
+       for retval in $(echo $retvals); do
+               local trap_$retval=1
+       done
+       "$cmd" "$@" || {
+               local retval="$?"
+               eval "trapped=\${trap_$retval}"
+               [ -n "$trapped" ] || {
+                       return $retval
+               }
+       }
+)}
+
+md5s() {
+       which md5sum 2>&- >&- && md5sum "$@" | awk '{print $1}' || md5 "$@"
+}