summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsource3/script/build_idl.sh22
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
##