Author: tpot Date: 2005-09-22 23:30:08 +0000 (Thu, 22 Sep 2005) New Revision: 10436
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10436 Log: Some thoughts on getting pidl working in scons. Modified: branches/SAMBA_4_0/source/build/scons/pidl.py Changeset: Modified: branches/SAMBA_4_0/source/build/scons/pidl.py =================================================================== --- branches/SAMBA_4_0/source/build/scons/pidl.py 2005-09-22 19:44:08 UTC (rev 10435) +++ branches/SAMBA_4_0/source/build/scons/pidl.py 2005-09-22 23:30:08 UTC (rev 10436) @@ -10,7 +10,13 @@ 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 @@ 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):