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