# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change: Sam Sep 16 13:08:16 CEST 2006 [mika]
+# Latest change: Fre Apr 06 22:42:04 CEST 2007 [mika]
################################################################################
# {{{ set default PATH
# {{{ check for root-permissions
check4root(){
- if [ "$UID" != 0 ] ; then
+ if [ "$(id -u 2>/dev/null)" != 0 ] ; then
echo 1>&2 "Error: please run this script with uid 0 (root)." ; return 1
fi
}
# {{{ check for user permissions
check4user(){
- if [ "$UID" == 0 ] ; then
+ if [ "$(id -u 2>/dev/null)" = 0 ] ; then
echo 1>&2 "Error: please do not run this script with uid 0 (root)." ; return 1
fi
}
}
# }}}
+# char *reverse_list(list) {{{
+#
+# Returns the reversed order of list
+#
+reverse_list() {
+ local ret
+ ret=''
+ while [ "$#" -gt 0 ] ; do
+ if [ -z "${ret}" ] ; then
+ ret="$1"
+ else
+ ret="$1 ${ret}"
+ fi
+ shift
+ done
+ printf '%s' "${ret}"
+}
+#}}}
+
+# bool is_older_than(reference, files/dirs to check) {{{
+#
+# return 0 if any of the files/dirs are newer than
+# the reference file
+#
+# EXAMPLE: if is_older_than a.out *.o ; then ...
+is_older_than() {
+ local x
+ local ref="$1"
+ shift
+
+ for x in "$@" ; do
+ [ "${x}" -nt "${ref}" ] && return 0
+
+ if [ -d "${x}" ] ; then
+ is_older_than "${ref}" "${x}"/* && return 0
+ fi
+ done
+
+ return 1
+}
+#}}}
+
## END OF FILE #################################################################
# vim:foldmethod=marker tw=80 ai expandtab shiftwidth=2 tabstop=2