bison

The bison program is a code generator which creates C or C++ files. The generated files are compiled into object files.

waflib.Tools.bison.extension(*k)

Decorator that registers a task generator method which will be invoked during the processing of source files for the extension given:

from waflib import Task
class mytask(Task):
        run_str = 'cp ${SRC} ${TGT}'
@extension('.moo')
def create_maa_file(self, node):
        self.create_task('mytask', node, node.change_ext('.maa'))
def build(bld):
        bld(source='foo.moo')
class waflib.Tools.bison.bison(*k, **kw)[source]

Compiles bison files

color = 'BLUE'

Color for the console display, see waflib.Logs.colors_lst

ext_out = ['.h']

File extensions that objects of this task class may create

hasrun
generator
env

waflib.ConfigSet.ConfigSet object (make sure to provide one)

inputs

List of input nodes, which represent the files used by the task instance

outputs

List of output nodes, which represent the files created by the task instance

dep_nodes

List of additional nodes to depend on

run_after

Set of tasks that must be executed before this one

hcode = b'${BISON} ${BISONFLAGS} ${SRC[0].abspath()} -o ${TGT[0].name}'

String representing an additional hash for the class representation

orig_run_str = '${BISON} ${BISONFLAGS} ${SRC[0].abspath()} -o ${TGT[0].name}'
vars = ['BISON', 'BISONFLAGS']

ConfigSet variables that should trigger a rebuild (class attribute used for waflib.Task.Task.sig_vars())

waflib.Tools.bison.big_bison(self, node)[source]

Creates a bison task, which must be executed from the directory of the output file.

waflib.Tools.bison.configure(conf)[source]

Detects the bison program