import os def my_builder(target, source, env): for i in range(0, len(source)): txt = open(source[i].abspath).read() txt = txt + os.linesep + "Author: " + env['AUTHOR'] open(target[i].abspath, "wb").write(txt) env = Environment() env['BUILDERS']['MyBuilder'] = Builder(action = my_builder) env.MyBuilder(['output1.txt', 'output2.txt'], ['input1.txt', 'input2.txt'], AUTHOR = "Foo")
The custom builder allows an argument to be passed in into our custom builder. How we pass the argument is by using the Python's keyword argument, e.g. AUTHOR = "Foo". The custom builder function can then read this value from the env, e.g. env["AUTHOR"].
No comments:
Post a Comment