1 #######################################################################
9 import platform as _platform
12 #######################################################################
20 default_platform = sys.platform
21 default_platform = _platform_map.get(default_platform, default_platform)
34 # find default_machine value
35 if 'PROCESSOR_ARCHITECTURE' in os.environ:
36 default_machine = os.environ['PROCESSOR_ARCHITECTURE']
38 default_machine = _platform.machine()
39 default_machine = _machine_map.get(default_machine, 'generic')
41 print "sys.argv = " + sys.argv[2]
44 # find default_llvm value
45 if 'LLVM' in os.environ:
48 # Search sys.argv[] for a "platform=foo" argument since we don't have
49 # an 'env' variable at this point.
50 platform = default_platform
51 pattern = re.compile("(platform=)(.*)")
53 m = pattern.match(arg)
59 if platform != 'windows' and subprocess.call(['llvm-config', '--version'], stdout=subprocess.PIPE) == 0:
65 # find default_dri value
66 if default_platform in ('linux', 'freebsd'):
68 elif default_platform in ('winddk', 'windows', 'wince', 'darwin'):
74 #######################################################################
79 from SCons.Variables.BoolVariable import BoolVariable as BoolOption
81 from SCons.Options.BoolOption import BoolOption
83 from SCons.Variables.EnumVariable import EnumVariable as EnumOption
85 from SCons.Options.EnumOption import EnumOption
86 opts.Add(BoolOption('debug', 'debug build', 'yes'))
87 opts.Add(BoolOption('profile', 'profile build', 'no'))
88 opts.Add(BoolOption('quiet', 'quiet command lines', 'yes'))
89 opts.Add(EnumOption('machine', 'use machine-specific assembly code', default_machine,
90 allowed_values=('generic', 'ppc', 'x86', 'x86_64')))
91 opts.Add(EnumOption('platform', 'target platform', default_platform,
92 allowed_values=('linux', 'cell', 'windows', 'winddk', 'wince', 'darwin', 'embedded')))
93 opts.Add('toolchain', 'compiler toolchain', 'default')
94 opts.Add(BoolOption('llvm', 'use LLVM', default_llvm))
95 opts.Add(BoolOption('dri', 'build DRI drivers', default_dri))