From 92d74c340843f52aaced18dcc243965387fcaedb Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Thu, 22 Sep 2005 23:30:08 +0000 Subject: r10436: Some thoughts on getting pidl working in scons. (This used to be commit f1688a8066cd787aa630714ffc161eb0f30414f1) --- source4/build/scons/pidl.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/source4/build/scons/pidl.py b/source4/build/scons/pidl.py index 68a2c2040e..c7d734a4fa 100644 --- a/source4/build/scons/pidl.py +++ b/source4/build/scons/pidl.py @@ -10,7 +10,13 @@ import SCons.Scanner idl_scanner = SCons.Scanner.ClassicCPP("PIDLScan", '.idl', 'CPPPATH', r'depends\(([^,]+),+\)', SCons.Node.FS.default_fs) +def idl_emitter(target, source, env): + base, ext = SCons.Util.splitext(str(source[0])) + result = ['gen_ndr/%s.c' % base, 'gen_ndr/%s.h' % base] + return result + pidl_builder = SCons.Builder.Builder(action='$PIDLCOM', + emitter = idl_emitter, src_suffix = '.idl', suffix='.c', scanner = idl_scanner) @@ -18,7 +24,7 @@ pidl_builder = SCons.Builder.Builder(action='$PIDLCOM', def generate(env): env['PIDL'] = env.Detect('pidl') or './pidl/pidl' env['PIDLFLAGS'] = [] - env['PIDLCOM'] = 'CPP=$CPP $PIDL $PIDLFLAGS -- $SOURCE' + env['PIDLCOM'] = '$PIDL $PIDLFLAGS -- $SOURCE' env['BUILDERS']['NdrMarshaller'] = pidl_builder def exists(env): -- cgit