From: Andrew Tridgell Date: Tue, 4 May 2010 05:34:32 +0000 (+0200) Subject: s3-idl: rebuild IDL files based on all outputs X-Git-Tag: samba-3.6.0pre1~2271 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2d13259aeff6bc5768404e5502890218bce128cd;p=thirdparty%2Fsamba.git s3-idl: rebuild IDL files based on all outputs --- diff --git a/librpc/build_idl.sh b/librpc/build_idl.sh index ac0fab48014..a130d9eb5a5 100755 --- a/librpc/build_idl.sh +++ b/librpc/build_idl.sh @@ -29,16 +29,20 @@ fi list="" for f in ${IDL_FILES}; do - basename=`basename $f .idl` - ndr="$PIDL_OUTPUTDIR/py_$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}_c.c ndr_$b.h ndr_${b}_s.c srv_$b.c" + outfiles="$outfiles cli_$b.h ndr_$b.c ndr_${b}_c.h py_$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 ##