Moved test builder out of SConstruct and into a separate file.
[MidoriGraph.git] / sconsTools / mcs.py
blobfe0bb4bc8f36a1d4a8a33025340f6ed1cc58e26f
1 import os.path
2 import SCons.Builder
3 import SCons.Node.FS
4 import SCons.Util
6 csccom = "$CSC $CSCFLAGS -out:${TARGET.abspath} $SOURCES"
7 csclibcom = "$CSC -t:library $CSCLIBFLAGS $_CSCLIBPATH $_CSCLIBS -out:${TARGET.abspath} $SOURCES"
10 McsBuilder = SCons.Builder.Builder(action = '$CSCCOM',
11 source_factory = SCons.Node.FS.default_fs.Entry, suffix = '.exe')
13 McsLibBuilder = SCons.Builder.Builder(action = '$CSCLIBCOM',
14 source_factory = SCons.Node.FS.default_fs.Entry, suffix = '.dll')
16 def generate(env):
17 env['BUILDERS']['CLIProgram'] = McsBuilder
18 env['BUILDERS']['CLILibrary'] = McsLibBuilder
20 env['CSC'] = 'mcs'
21 env['_CSCLIBS'] = \
22 "${_stripixes('-r:', CILLIBS, '', '-r', '', __env__)}"
23 env['_CSCLIBPATH'] = \
24 "${_stripixes('-lib:', CILLIBPATH, '', '-r', '', __env__)}"
25 env['CSCFLAGS'] = SCons.Util.CLVar('')
26 env['CSCCOM'] = SCons.Action.Action(csccom)
27 env['CSCLIBCOM'] = SCons.Action.Action(csclibcom)
29 def exists(env):
30 return internal_zip or env.Detect('mcs')