Home | History | Annotate | Download | only in JavaScriptCore
      1 # JavaScriptCore - Qt4 build info
      2 VPATH += $$PWD
      3 
      4 CONFIG(standalone_package) {
      5     isEmpty(JSC_GENERATED_SOURCES_DIR):JSC_GENERATED_SOURCES_DIR = $$PWD/generated
      6 } else {
      7     isEmpty(JSC_GENERATED_SOURCES_DIR):JSC_GENERATED_SOURCES_DIR = generated
      8 }
      9 
     10 CONFIG(debug, debug|release) {
     11     OBJECTS_DIR = obj/debug
     12 } else { # Release
     13     OBJECTS_DIR = obj/release
     14 }
     15 
     16 symbian: {
     17     # Need to guarantee this comes before system includes of /epoc32/include
     18     MMP_RULES += "USERINCLUDE ../JavaScriptCore/profiler"
     19 }
     20 
     21 INCLUDEPATH = \
     22     $$PWD \
     23     $$PWD/.. \
     24     $$PWD/assembler \
     25     $$PWD/bytecode \
     26     $$PWD/bytecompiler \
     27     $$PWD/debugger \
     28     $$PWD/interpreter \
     29     $$PWD/jit \
     30     $$PWD/parser \
     31     $$PWD/pcre \
     32     $$PWD/profiler \
     33     $$PWD/runtime \
     34     $$PWD/wrec \
     35     $$PWD/wtf \
     36     $$PWD/wtf/unicode \
     37     $$PWD/yarr \
     38     $$PWD/API \
     39     $$PWD/ForwardingHeaders \
     40     $$JSC_GENERATED_SOURCES_DIR \
     41     $$INCLUDEPATH
     42 
     43 DEFINES += BUILDING_QT__ BUILDING_JavaScriptCore BUILDING_WTF
     44 
     45 win32-* {
     46     LIBS += -lwinmm
     47 }
     48 contains(JAVASCRIPTCORE_JIT,yes) {
     49     DEFINES+=ENABLE_JIT=1
     50     DEFINES+=ENABLE_YARR_JIT=1
     51     DEFINES+=ENABLE_YARR=1
     52 }
     53 contains(JAVASCRIPTCORE_JIT,no) {
     54     DEFINES+=ENABLE_JIT=0
     55     DEFINES+=ENABLE_YARR_JIT=0
     56     DEFINES+=ENABLE_YARR=0
     57 }
     58 
     59 # Rules when JIT enabled (not disabled)
     60 !contains(DEFINES, ENABLE_JIT=0) {
     61     linux*-g++*:greaterThan(QT_GCC_MAJOR_VERSION,3):greaterThan(QT_GCC_MINOR_VERSION,0) {
     62         QMAKE_CXXFLAGS += -fno-stack-protector
     63         QMAKE_CFLAGS += -fno-stack-protector
     64     }
     65 }
     66 
     67 wince* {
     68     INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat
     69     SOURCES += $$QT_SOURCE_TREE/src/3rdparty/ce-compat/ce_time.c
     70     DEFINES += WINCEBASIC
     71 }
     72 
     73 include(pcre/pcre.pri)
     74 
     75 SOURCES += \
     76     API/JSBase.cpp \
     77     API/JSCallbackConstructor.cpp \
     78     API/JSCallbackFunction.cpp \
     79     API/JSCallbackObject.cpp \
     80     API/JSClassRef.cpp \
     81     API/JSContextRef.cpp \
     82     API/JSObjectRef.cpp \
     83     API/JSStringRef.cpp \
     84     API/JSValueRef.cpp \
     85     API/OpaqueJSString.cpp \
     86     assembler/ARMAssembler.cpp \
     87     assembler/MacroAssemblerARM.cpp \
     88     bytecode/CodeBlock.cpp \
     89     bytecode/JumpTable.cpp \
     90     bytecode/Opcode.cpp \
     91     bytecode/SamplingTool.cpp \
     92     bytecode/StructureStubInfo.cpp \
     93     bytecompiler/BytecodeGenerator.cpp \
     94     bytecompiler/NodesCodegen.cpp \
     95     debugger/DebuggerActivation.cpp \
     96     debugger/DebuggerCallFrame.cpp \
     97     debugger/Debugger.cpp \
     98     interpreter/CallFrame.cpp \
     99     interpreter/Interpreter.cpp \
    100     interpreter/RegisterFile.cpp \
    101     jit/ExecutableAllocatorPosix.cpp \
    102     jit/ExecutableAllocatorSymbian.cpp \
    103     jit/ExecutableAllocatorWin.cpp \
    104     jit/ExecutableAllocator.cpp \
    105     jit/JITArithmetic.cpp \
    106     jit/JITCall.cpp \
    107     jit/JIT.cpp \
    108     jit/JITOpcodes.cpp \
    109     jit/JITPropertyAccess.cpp \
    110     jit/JITStubs.cpp \
    111     parser/Lexer.cpp \
    112     parser/Nodes.cpp \
    113     parser/ParserArena.cpp \
    114     parser/Parser.cpp \
    115     profiler/Profile.cpp \
    116     profiler/ProfileGenerator.cpp \
    117     profiler/ProfileNode.cpp \
    118     profiler/Profiler.cpp \
    119     runtime/ArgList.cpp \
    120     runtime/Arguments.cpp \
    121     runtime/ArrayConstructor.cpp \
    122     runtime/ArrayPrototype.cpp \
    123     runtime/BooleanConstructor.cpp \
    124     runtime/BooleanObject.cpp \
    125     runtime/BooleanPrototype.cpp \
    126     runtime/CallData.cpp \
    127     runtime/Collector.cpp \
    128     runtime/CommonIdentifiers.cpp \
    129     runtime/Completion.cpp \
    130     runtime/ConstructData.cpp \
    131     runtime/DateConstructor.cpp \
    132     runtime/DateConversion.cpp \
    133     runtime/DateInstance.cpp \
    134     runtime/DatePrototype.cpp \
    135     runtime/ErrorConstructor.cpp \
    136     runtime/Error.cpp \
    137     runtime/ErrorInstance.cpp \
    138     runtime/ErrorPrototype.cpp \
    139     runtime/ExceptionHelpers.cpp \
    140     runtime/Executable.cpp \
    141     runtime/FunctionConstructor.cpp \
    142     runtime/FunctionPrototype.cpp \
    143     runtime/GetterSetter.cpp \
    144     runtime/GlobalEvalFunction.cpp \
    145     runtime/Identifier.cpp \
    146     runtime/InitializeThreading.cpp \
    147     runtime/InternalFunction.cpp \
    148     runtime/JSActivation.cpp \
    149     runtime/JSAPIValueWrapper.cpp \
    150     runtime/JSArray.cpp \
    151     runtime/JSByteArray.cpp \
    152     runtime/JSCell.cpp \
    153     runtime/JSFunction.cpp \
    154     runtime/JSGlobalData.cpp \
    155     runtime/JSGlobalObject.cpp \
    156     runtime/JSGlobalObjectFunctions.cpp \
    157     runtime/JSImmediate.cpp \
    158     runtime/JSLock.cpp \
    159     runtime/JSNotAnObject.cpp \
    160     runtime/JSNumberCell.cpp \
    161     runtime/JSObject.cpp \
    162     runtime/JSONObject.cpp \
    163     runtime/JSPropertyNameIterator.cpp \
    164     runtime/JSStaticScopeObject.cpp \
    165     runtime/JSString.cpp \
    166     runtime/JSValue.cpp \
    167     runtime/JSVariableObject.cpp \
    168     runtime/JSWrapperObject.cpp \
    169     runtime/LiteralParser.cpp \
    170     runtime/Lookup.cpp \
    171     runtime/MarkStackPosix.cpp \
    172     runtime/MarkStackSymbian.cpp \
    173     runtime/MarkStackWin.cpp \
    174     runtime/MarkStack.cpp \
    175     runtime/MathObject.cpp \
    176     runtime/NativeErrorConstructor.cpp \
    177     runtime/NativeErrorPrototype.cpp \
    178     runtime/NumberConstructor.cpp \
    179     runtime/NumberObject.cpp \
    180     runtime/NumberPrototype.cpp \
    181     runtime/ObjectConstructor.cpp \
    182     runtime/ObjectPrototype.cpp \
    183     runtime/Operations.cpp \
    184     runtime/PropertyDescriptor.cpp \
    185     runtime/PropertyNameArray.cpp \
    186     runtime/PropertySlot.cpp \
    187     runtime/PrototypeFunction.cpp \
    188     runtime/RegExpConstructor.cpp \
    189     runtime/RegExp.cpp \
    190     runtime/RegExpObject.cpp \
    191     runtime/RegExpPrototype.cpp \
    192     runtime/ScopeChain.cpp \
    193     runtime/SmallStrings.cpp \
    194     runtime/StringConstructor.cpp \
    195     runtime/StringObject.cpp \
    196     runtime/StringPrototype.cpp \
    197     runtime/StructureChain.cpp \
    198     runtime/Structure.cpp \
    199     runtime/TimeoutChecker.cpp \
    200     runtime/UString.cpp \
    201     runtime/UStringImpl.cpp \
    202     wtf/Assertions.cpp \
    203     wtf/ByteArray.cpp \
    204     wtf/CurrentTime.cpp \
    205     wtf/DateMath.cpp \
    206     wtf/dtoa.cpp \
    207     wtf/FastMalloc.cpp \
    208     wtf/HashTable.cpp \
    209     wtf/MainThread.cpp \
    210     wtf/qt/MainThreadQt.cpp \
    211     wtf/qt/ThreadingQt.cpp \
    212     wtf/RandomNumber.cpp \
    213     wtf/RefCountedLeakCounter.cpp \
    214     wtf/ThreadingNone.cpp \
    215     wtf/Threading.cpp \
    216     wtf/TypeTraits.cpp \
    217     wtf/unicode/CollatorDefault.cpp \
    218     wtf/unicode/icu/CollatorICU.cpp \
    219     wtf/unicode/UTF8.cpp \
    220     yarr/RegexCompiler.cpp \
    221     yarr/RegexInterpreter.cpp \
    222     yarr/RegexJIT.cpp
    223 
    224 # Generated files, simply list them for JavaScriptCore
    225 SOURCES += \
    226     $${JSC_GENERATED_SOURCES_DIR}/Grammar.cpp
    227 
    228 !contains(DEFINES, USE_SYSTEM_MALLOC) {
    229     SOURCES += wtf/TCSystemAlloc.cpp
    230 }
    231 
    232