summaryrefslogtreecommitdiffstats
path: root/SConstruct
diff options
context:
space:
mode:
authorLeon Clarke <leonclarke@google.com>2010-01-19 14:06:41 +0000
committerLeon Clarke <leonclarke@google.com>2010-01-19 16:34:04 +0000
commite46be819fca9468a0cd4e74859ce0f778eb8ca60 (patch)
treef9c37105a3367f2ad5d31fbc2cb37b84fa67b59a /SConstruct
parentd0582a6c46733687d045e4188a1bcd0123c758a1 (diff)
downloadandroid_external_v8-e46be819fca9468a0cd4e74859ce0f778eb8ca60.tar.gz
android_external_v8-e46be819fca9468a0cd4e74859ce0f778eb8ca60.tar.bz2
android_external_v8-e46be819fca9468a0cd4e74859ce0f778eb8ca60.zip
New version of v8 from bleeding edge at revision 3649
Diffstat (limited to 'SConstruct')
-rwxr-xr-xSConstruct23
1 files changed, 21 insertions, 2 deletions
diff --git a/SConstruct b/SConstruct
index 2087a94f..739e3445 100755
--- a/SConstruct
+++ b/SConstruct
@@ -143,6 +143,9 @@ LIBRARY_FLAGS = {
},
'os:macos': {
'CCFLAGS': ['-ansi', '-mmacosx-version-min=10.4'],
+ 'library:shared': {
+ 'CPPDEFINES': ['V8_SHARED']
+ }
},
'os:freebsd': {
'CPPPATH' : ['/usr/local/include'],
@@ -178,6 +181,12 @@ LIBRARY_FLAGS = {
'CCFLAGS': ['-m32'],
'LINKFLAGS': ['-m32']
},
+ 'armvariant:thumb2': {
+ 'CPPDEFINES': ['V8_ARM_VARIANT_THUMB']
+ },
+ 'armvariant:arm': {
+ 'CPPDEFINES': ['V8_ARM_VARIANT_ARM']
+ },
'arch:x64': {
'CPPDEFINES': ['V8_TARGET_ARCH_X64'],
'CCFLAGS': ['-m64'],
@@ -656,6 +665,11 @@ SIMPLE_OPTIONS = {
'values': ['default', 'hidden'],
'default': 'hidden',
'help': 'shared library symbol visibility'
+ },
+ 'armvariant': {
+ 'values': ['arm', 'thumb2', 'none'],
+ 'default': 'none',
+ 'help': 'generate thumb2 instructions instead of arm instructions (default)'
}
}
@@ -663,7 +677,7 @@ SIMPLE_OPTIONS = {
def GetOptions():
result = Options()
result.Add('mode', 'compilation mode (debug, release)', 'release')
- result.Add('sample', 'build sample (shell, process)', '')
+ result.Add('sample', 'build sample (shell, process, lineprocessor)', '')
result.Add('env', 'override environment settings (NAME0:value0,NAME1:value1,...)', '')
result.Add('importenv', 'import environment settings (NAME0,NAME1,...)', '')
for (name, option) in SIMPLE_OPTIONS.iteritems():
@@ -731,7 +745,7 @@ def IsLegal(env, option, values):
def VerifyOptions(env):
if not IsLegal(env, 'mode', ['debug', 'release']):
return False
- if not IsLegal(env, 'sample', ["shell", "process"]):
+ if not IsLegal(env, 'sample', ["shell", "process", "lineprocessor"]):
return False
if not IsLegal(env, 'regexp', ["native", "interpreted"]):
return False
@@ -839,6 +853,10 @@ def PostprocessOptions(options):
# Print a warning if profiling is enabled without profiling support
print "Warning: forcing profilingsupport on when prof is on"
options['profilingsupport'] = 'on'
+ if (options['armvariant'] == 'none' and options['arch'] == 'arm'):
+ options['armvariant'] = 'arm'
+ if (options['armvariant'] != 'none' and options['arch'] != 'arm'):
+ options['armvariant'] = 'none'
def ParseEnvOverrides(arg, imports):
@@ -931,6 +949,7 @@ def BuildSpecific(env, mode, env_overrides):
d8_env = Environment()
d8_env.Replace(**context.flags['d8'])
+ context.ApplyEnvOverrides(d8_env)
shell = d8_env.Program('d8' + suffix, object_files + shell_files)
context.d8_targets.append(shell)