diff options
author | Feng Qian <fqian@google.com> | 2009-06-17 12:12:20 -0700 |
---|---|---|
committer | Feng Qian <fqian@google.com> | 2009-06-17 12:12:20 -0700 |
commit | 5f1ab04193ad0130ca8204aadaceae083aca9881 (patch) | |
tree | 5a92cd389e2cfe7fb67197ce14b38469462379f8 /JavaScriptCore/JavaScriptCore.scons | |
parent | 194315e5a908cc8ed67d597010544803eef1ac59 (diff) | |
download | external_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.zip external_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.tar.gz external_webkit-5f1ab04193ad0130ca8204aadaceae083aca9881.tar.bz2 |
Get WebKit r44544.
Diffstat (limited to 'JavaScriptCore/JavaScriptCore.scons')
-rw-r--r-- | JavaScriptCore/JavaScriptCore.scons | 309 |
1 files changed, 0 insertions, 309 deletions
diff --git a/JavaScriptCore/JavaScriptCore.scons b/JavaScriptCore/JavaScriptCore.scons deleted file mode 100644 index 30665cf..0000000 --- a/JavaScriptCore/JavaScriptCore.scons +++ /dev/null @@ -1,309 +0,0 @@ -# The keys in sources are the paths to the directories -# the values are an array of source files in those directories to compile -sources = {} -sources['API'] = [ - 'API/JSBase.cpp', - 'API/JSCallbackConstructor.cpp', - 'API/JSCallbackFunction.cpp', - 'API/JSCallbackObject.cpp', - 'API/JSClassRef.cpp', - 'API/JSContextRef.cpp', - 'API/JSObjectRef.cpp', - 'API/JSProfilerPrivate.cpp', - 'API/JSStringRef.cpp', - 'API/JSValueRef.cpp', - 'API/OpaqueJSString.cpp', -] -sources['bytecompiler'] = [ - 'bytecompiler/BytecodeGenerator.cpp', -] -sources['debugger'] = [ - 'debugger/Debugger.cpp', - 'debugger/DebuggerActivation.cpp', - 'debugger/DebuggerCallFrame.cpp', -] -sources['parser'] = [ - 'parser/Lexer.cpp', - 'parser/Nodes.cpp', - 'parser/Parser.cpp', -] -sources['pcre'] = [ - 'pcre/pcre_compile.cpp', - 'pcre/pcre_exec.cpp', - 'pcre/pcre_tables.cpp', - 'pcre/pcre_ucp_searchfuncs.cpp', - 'pcre/pcre_xclass.cpp', -] -sources['profiler'] = [ - 'profiler/HeavyProfile.cpp', - 'profiler/Profile.cpp', - 'profiler/ProfileGenerator.cpp', - 'profiler/ProfileNode.cpp', - 'profiler/Profiler.cpp', - 'profiler/TreeProfile.cpp', -] -sources['runtime'] = [ - 'runtime/ArgList.cpp', - 'runtime/Arguments.cpp', - 'runtime/ArrayConstructor.cpp', - 'runtime/ArrayPrototype.cpp', - 'runtime/BooleanConstructor.cpp', - 'runtime/BooleanObject.cpp', - 'runtime/BooleanPrototype.cpp', - 'runtime/CallData.cpp', - 'runtime/Collector.cpp', - 'runtime/Completion.cpp', - 'runtime/CommonIdentifiers.cpp', - 'runtime/ConstructData.cpp', - 'runtime/DateConstructor.cpp', - 'runtime/DateInstance.cpp', - 'runtime/DateMath.cpp', - 'runtime/DatePrototype.cpp', - 'runtime/Error.cpp', - 'runtime/ErrorConstructor.cpp', - 'runtime/ErrorInstance.cpp', - 'runtime/ErrorPrototype.cpp', - 'runtime/ExceptionHelpers.cpp', - 'runtime/FunctionConstructor.cpp', - 'runtime/FunctionPrototype.cpp', - 'runtime/GetterSetter.cpp', - 'runtime/GlobalEvalFunction.cpp', - 'runtime/Identifier.cpp', - 'runtime/InitializeThreading.cpp', - 'runtime/InternalFunction.cpp', - 'runtime/JSActivation.cpp', - 'runtime/JSArray.cpp', - 'runtime/JSByteArray.cpp', - 'runtime/JSCell.cpp', - 'runtime/JSFunction.cpp', - 'runtime/JSGlobalData.cpp', - 'runtime/JSGlobalObject.cpp', - 'runtime/JSGlobalObjectFunctions.cpp', - 'runtime/JSImmediate.cpp', - 'runtime/JSLock.cpp', - 'runtime/JSNotAnObject.cpp', - 'runtime/JSNumberCell.cpp', - 'runtime/JSObject.cpp', - 'runtime/JSPropertyNameIterator.cpp', - 'runtime/JSStaticScopeObject.cpp', - 'runtime/JSString.cpp', - 'runtime/JSValue.cpp', - 'runtime/JSVariableObject.cpp', - 'runtime/JSWrapperObject.cpp', - 'runtime/Lookup.cpp', - 'runtime/MathObject.cpp', - 'runtime/NativeErrorConstructor.cpp', - 'runtime/NativeErrorPrototype.cpp', - 'runtime/NumberConstructor.cpp', - 'runtime/NumberObject.cpp', - 'runtime/NumberPrototype.cpp', - 'runtime/ObjectConstructor.cpp', - 'runtime/ObjectPrototype.cpp', - 'runtime/Operations.cpp', - 'runtime/PropertyNameArray.cpp', - 'runtime/PropertySlot.cpp', - 'runtime/PrototypeFunction.cpp', - 'runtime/RegExp.cpp', - 'runtime/RegExpConstructor.cpp', - 'runtime/RegExpObject.cpp', - 'runtime/RegExpPrototype.cpp', - 'runtime/ScopeChain.cpp', - 'runtime/SmallStrings.cpp', - 'runtime/StringConstructor.cpp', - 'runtime/StringObject.cpp', - 'runtime/StringPrototype.cpp', - 'runtime/Structure.cpp', - 'runtime/StructureChain.cpp', - 'runtime/TimeoutChecker.cpp', - 'runtime/UString.cpp', -] -sources['bytecode'] = [ - 'bytecode/CodeBlock.cpp', - 'bytecode/StructureStubInfo.cpp', - 'bytecode/JumpTable.cpp', - 'bytecode/Opcode.cpp', - 'bytecode/SamplingTool.cpp', -] -sources['interpreter'] = [ - 'interpreter/CallFrame.cpp', - 'interpreter/Interpreter.cpp', - 'interpreter/RegisterFile.cpp', -] -sources['jit'] = [ - 'jit/ExecutableAllocator.cpp', - 'jit/JIT.cpp', -] -sources['wrec'] = [ - 'wrec/CharacterClass.cpp', - 'wrec/CharacterClassConstructor.cpp', - 'wrec/WREC.cpp', - 'wrec/WRECFunctors.cpp', - 'wrec/WRECGenerator.cpp', - 'wrec/WRECParser.cpp', -] -sources['wtf'] = [ - 'wtf/Assertions.cpp', - 'wtf/ByteArray.cpp', - 'wtf/CurrentTime.cpp', - 'wtf/FastMalloc.cpp', - 'wtf/HashTable.cpp', - 'wtf/RandomNumber.cpp', - 'wtf/RefCountedLeakCounter.cpp', - 'wtf/Threading.cpp', - 'wtf/TypeTraits.cpp', - 'wtf/dtoa.cpp', -] -sources['wtf/unicode'] = [ - 'wtf/unicode/CollatorDefault.cpp', - 'wtf/unicode/UTF8.cpp', -] -sources['wtf/unicode/icu'] = [ - 'wtf/unicode/icu/CollatorICU.cpp', -] - -env = Environment() - -building_on_win32 = env['PLATFORM'] == 'win32' or env['PLATFORM'] == 'cygwin' - -# Scons uses gcc when building under cygwin by default -# We also have to manually force 8.0 or Scons will try and -# look up what version to use using the registry and fail -# due to lack of cygwin-python registry support -if env['PLATFORM'] == 'cygwin': - env['MSVS_VERSION'] = '8.0' - # Some systems have PROGRAMFILES, some have ProgramFiles - # Scons msvc tool only expects 'ProgramFiles' - import os - if os.getenv('PROGRAMFILES') and not os.getenv('ProgramFiles'): - os.environ['ProgramFiles'] = os.getenv('PROGRAMFILES') - - env.Tool('msvc') - env.Tool('mslink') - env.Tool('mslib') - -# Scons is failing to carry the %PATH% value through correctly -# Hack IncrediBuild into our path so cl.exe doesn't crash -if env['PLATFORM'] == 'win32': - env.AppendENVPath('PATH', 'c:/Program Files/Xoreax/IncrediBuild') - -if env['PLATFORM'] == 'darwin': - sources['API'].append('API/JSStringRefCF.cpp') - sources['profiler'].append('profiler/ProfilerServer.mm') - sources['wtf'].append('wtf/ThreadingPthreads.cpp') - sources['wtf'].append('wtf/MainThread.cpp') - sources['wtf/mac'] = ['wtf/mac/MainThreadMac.mm'] - sources['wtf'].append('wtf/TCSystemAlloc.cpp') - sources['jit'].append('jit/ExecutableAllocatorPosix.cpp') -elif building_on_win32: - sources['wtf'].append('wtf/ThreadingNone.cpp') - sources['jit'].append('jit/ExecutableAllocatorWin.cpp') - env.Append(CPPDEFINES = ['ENABLE_JSC_MULTIPLE_THREADS=0']) - -derived_sources_path = 'DerivedSources/JavaScriptCore/' -def DerivedSources(path): - return derived_sources_path + path - -derived_sources_results = map(DerivedSources, [ - 'ArrayPrototype.lut.h', - 'DatePrototype.lut.h', - 'MathObject.lut.h', - 'NumberConstructor.lut.h', - 'RegExpConstructor.lut.h', - 'RegExpObject.lut.h', - 'StringPrototype.lut.h' - 'chartables.c', - 'grammar.cpp', - 'grammar.h', - 'lexer.lut.h', -]) - -derived_sources_sources = [ - 'runtime/ArrayPrototype.cpp', - 'runtime/DatePrototype.cpp', - 'runtime/MathObject.cpp', - 'runtime/NumberConstructor.cpp', - 'runtime/RegExpConstructor.cpp', - 'runtime/RegExpObject.cpp', - 'runtime/StringPrototype.cpp', - 'parser/Grammar.y', - 'parser/Lexer.cpp', -] - -# Generate DerivedSources -# Make sure Windows knows where bash (and all the other cygwin commands) live -if env['PLATFORM'] == 'win32': - env.AppendENVPath('PATH', 'C:/cygwin/bin') -env.Command(derived_sources_results, derived_sources_sources, 'bash make-generated-sources.sh') -sources[derived_sources_path] = [DerivedSources('Grammar.cpp')] - -# Handle os-version specific build settings -if env['PLATFORM'] == 'darwin': - from subprocess import Popen, PIPE - version_pieces = Popen(["sw_vers", "-productVersion"], stdout = PIPE).communicate()[0].split('.') - if map(int, version_pieces)[:2] > (10, 5): - # Dtrace doesn't exist in Tiger, and was broken in Leopard - env.Command(DerivedSources('TracingDtrace.h'), 'runtime/Tracing.d', '/usr/sbin/dtrace -h -o $TARGET -s $SOURCE') - -# This build file builds the Chromium port for now, support for -# others could be added later. -env.Append(CPPDEFINES = ['BUILDING_CHROMIUM__']) - -# I'm not certain how many of these windows defines are actually required. -if building_on_win32: - env.Append(CPPDEFINES = ['_WIN32_WINNT=0x0600', 'WINVER=0x0600', 'WIN32', '_WINDOWS', 'NOMINMAX', 'UNICODE', '_UNICODE', '__STD_C', '_HAS_EXCEPTIONS=0']) - -# Scons out-of-the-box only supports precompiled headers for MSVC -# remove this when we fix Scons to understand GCC precompiled headers -if env['CC'] == 'gcc': - env['CCFLAGS'] = '-include JavaScriptCorePrefix.h' -# Turns out the MSVC PCH support is badly broken -# env['PCH'] = 'JavaScriptCorePrefix.h' -# env['PCHSTOP'] = 'JavaScriptCorePrefix.h' - -if env['PLATFORM'] == 'darwin': - env['FRAMEWORKS'] = ['CoreFoundation', 'Foundation'] - env['LIBS'] = ['icucore'] - # Apple does not ship the ICU headers with Mac OS X, so WebKit includes a copy of 3.2 headers - env.Append(CPPPATH = 'icu') - -webkit_libraries_path = "../WebKitLibraries/win/" -def WebKitLibraries(path): - return webkit_libraries_path + path - -include_paths = ['.', '..', 'ForwardingHeaders'] + sources.keys() -env.Append(CPPPATH = include_paths) -if building_on_win32: - env.Append(CPPPATH = ['os-win32', WebKitLibraries('include')]) - env.Prepend(LIBPATH = [WebKitLibraries('lib')]) - env.Append(LIBS = ['icuin', 'icuuc', 'user32', 'winmm']) - -# Save off a copy of the environment for use with jsc -jsc_env = env.Clone() - -if building_on_win32: - env.StaticLibrary("JavaScriptCore", sources.values()) -else: - env.SharedLibrary("JavaScriptCore", sources.values()) - - -env = jsc_env - -# Build the jsc testing shell -shell_sources = ['jsc.cpp'] -build_directory = '.' # This should be changed to point to wherever JavaScriptCore gets built to - -# It's hacky to re-use the same environment from JavaScriptCore -# but it makes building on windows easier for now -env['CPPPATH'] = include_paths -env['LIBS'] = ['JavaScriptCore'] -env['LIBPATH'] = [build_directory] - -if env['PLATFORM'] == 'darwin': - env.Append(LIBS = ['edit']) - env.Append(CPPPATH = 'icu') -elif building_on_win32: - env.Append(CPPPATH = ['os-win32', WebKitLibraries('include')]) - env.Prepend(LIBPATH = [WebKitLibraries('lib')]) - env.Append(LIBS = ['icuin', 'icuuc', 'user32', 'winmm']) - -env.Program('jsc', shell_sources) |