summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2010-05-04 07:34:32 +0200
committerAndrew Tridgell <tridge@samba.org>2010-05-04 13:47:07 +0200
commit2d13259aeff6bc5768404e5502890218bce128cd (patch)
tree8646525ff232824c6246034d8cdbfa13198fed53
parent6f895fedf352ad49f4d438127ad1af4afb1cce98 (diff)
downloadsamba-2d13259aeff6bc5768404e5502890218bce128cd.tar.gz
samba-2d13259aeff6bc5768404e5502890218bce128cd.tar.xz
samba-2d13259aeff6bc5768404e5502890218bce128cd.zip
s3-idl: rebuild IDL files based on all outputs
-rwxr-xr-xlibrpc/build_idl.sh22
1 files changed, 13 insertions, 9 deletions
diff --git a/librpc/build_idl.sh b/librpc/build_idl.sh
index ac0fab4801..a130d9eb5a 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
##