diff options
-rwxr-xr-x | source3/script/build_idl.sh | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/source3/script/build_idl.sh b/source3/script/build_idl.sh index 0f4908114e..72d44add61 100755 --- a/source3/script/build_idl.sh +++ b/source3/script/build_idl.sh @@ -16,16 +16,20 @@ PIDL="$PIDL $ARGS" list="" for f in ${IDL_FILES}; do - basename=`basename $f .idl` - ndr="$PIDL_OUTPUTDIR/ndr_$basename.c" - - if [ -f $ndr ]; then - if [ "x`find $f -newer $ndr -print`" = "x$f" ]; then - list="$list $f" - fi - else + b=`basename $f .idl` + outfiles="cli_$b.c $b.h ndr_$b.h srv_$b.c" + outfiles="$outfiles cli_$b.h ndr_$b.c srv_$b.h" + + for o in $outfiles; do + [ -f $PIDL_OUTPUTDIR/$o ] || { + list="$list $f" + break + } + [ $f -nt $PIDL_OUTPUTDIR/$o ] && { list="$list $f" - fi + break + } + done done ## |