#! /bin/sh # Copyright (C) 2012-2014 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see . # Usage: is_newest FILE FILES # Fail if any file in FILES is newer than FILE, and print the list of # such files on the standard error. Resolve ties in favor of FILE. # NOTE: keep this file Bourne-compatible, for the sake of systems with # non-POSIX /bin/sh (like Solaris). set -u me=is_newest if test $# -lt 2; then echo "$me: too few arguments" >&2 exit 2 fi file=$1; shift newer_files=`find "$@" -prune -newer "$file"` || exit $? if test -n "$newer_files"; then echo "$me: these files are newer than '$file':" >&2 for f in $newer_files; do echo "* $f" >&2; done exit 1 fi exit 0