scons on windows その3(Tool)
sconsにはToolという概念があって、これがコンパイラやリンカのセットを表している。WindowsだとvcやMinGWなどがあり、Linuxだとgccだ。さらに32bitと64bitがあるのでWindowsのCは環境がいろいろあるぞと。
# 無指定 env = Environment() # Default。たぶん指定しないのと同じ env = Environment(tools = ['default']) # msvcを指定 env = Environment(tools = ['msvc']) # mingwを指定 env = Environment(tools = ['mingw']) # 野良Toolを指定 env = Environment(tools = ['default', 'foo'], toolpath = ['tools']) # Blenderの例。scons提供のものではない独自のToolをEnvironment生成時ではなく、 # 後から指定している env.Tool('mstoolkit', [toolpath])
Toolの選択
env = Environment(tools = ['default']) ↓ lib/site-package/scons-2.1.0.alpha.20101125/SCons/Environment.py Environment = Base Base#__init ↓ def apply_tools: ↓ Base#Tool ↓ lib/site-package/scons-2.1.0.alpha.20101125/SCons/Tool/__init__.py
野良Toolの書き方
def exists():
def generate():
memo
http://www.scons.org/wiki/MsvsMultipleVersions
http://www.scons.org/wiki/CrossCompilingMingw
http://www.dtic.upf.edu/~dgarcia/Codders/sconstools.html
todo
64bitのToolは?