Ignore:
Timestamp:
Mar 26, 2010, 7:05:09 AM (15 years ago)
Author:
Simon Hausmann
Message:

[Qt] Build JavaScriptCore as a static library.
https://bugs.webkit.org/show_bug.cgi?id=36590

Patch by Jocelyn Turcotte <[email protected]> on 2010-03-26
Reviewed by Simon Hausmann.

This patch takes what was left of the unused JavaScriptCore.pro
and moved the compilation logic from JavaScriptCore.pri to
JavaScriptCore.pro.

.:

  • WebKit.pro:

JavaScriptCore:

WebCore:

  • WebCore.pro:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/JavaScriptCore/JavaScriptCore.pro

    r51174 r56623  
    22CONFIG += building-libs
    33include($$PWD/../WebKit.pri)
     4include(JavaScriptCore.pri)
    45
    56TEMPLATE = lib
    67CONFIG += staticlib
    7 TARGET = JavaScriptCore
     8# Don't use JavaScriptCore as the target name. qmake would create a JavaScriptCore.vcproj for msvc
     9# which already exists as a directory
     10TARGET = $$JAVASCRIPTCORE_TARGET
     11QT += core
    812
    913CONFIG += depend_includepath
    1014
    1115contains(QT_CONFIG, embedded):CONFIG += embedded
    12 
    13 CONFIG(QTDIR_build) {
    14     GENERATED_SOURCES_DIR = $$PWD/generated
    15     OLDDESTDIR = $$DESTDIR
    16     include($$QT_SOURCE_TREE/src/qbase.pri)
    17     INSTALLS =
    18     DESTDIR = $$OLDDESTDIR
    19     DEFINES *= NDEBUG
    20 }
    21 
    22 isEmpty(GENERATED_SOURCES_DIR):GENERATED_SOURCES_DIR = tmp
    23 GENERATED_SOURCES_DIR_SLASH = $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}
    24 
    25 INCLUDEPATH += $$GENERATED_SOURCES_DIR
    2616
    2717!CONFIG(QTDIR_build) {
     
    3323}
    3424
    35 CONFIG(release):!CONFIG(QTDIR_build) {
    36     contains(QT_CONFIG, reduce_exports):CONFIG += hide_symbols
    37     unix:contains(QT_CONFIG, reduce_relocations):CONFIG += bsymbolic_functions
    38 }
    39 
    40 linux-*: DEFINES += HAVE_STDINT_H
    41 freebsd-*: DEFINES += HAVE_PTHREAD_NP_H
    42 
    43 DEFINES += BUILD_WEBKIT
    44 
    45 win32-*: DEFINES += _HAS_TR1=0
     25CONFIG(QTDIR_build) {
     26    # Remove the following 2 lines if you want debug information in JavaScriptCore
     27    CONFIG -= separate_debug_info
     28    CONFIG += no_debug_info
     29}
    4630
    4731# Pick up 3rdparty libraries from INCLUDE/LIB just like with MSVC
     
    5539DEFINES += WTF_CHANGES=1
    5640
    57 include(JavaScriptCore.pri)
    58 
    59 QMAKE_EXTRA_TARGETS += generated_files
    60 
    6141*-g++*:QMAKE_CXXFLAGS_RELEASE -= -O2
    6242*-g++*:QMAKE_CXXFLAGS_RELEASE += -O3
     43
     44# Rules when JIT enabled (not disabled)
     45!contains(DEFINES, ENABLE_JIT=0) {
     46    linux*-g++*:greaterThan(QT_GCC_MAJOR_VERSION,3):greaterThan(QT_GCC_MINOR_VERSION,0) {
     47        QMAKE_CXXFLAGS += -fno-stack-protector
     48        QMAKE_CFLAGS += -fno-stack-protector
     49    }
     50}
     51
     52wince* {
     53    SOURCES += $$QT_SOURCE_TREE/src/3rdparty/ce-compat/ce_time.c
     54}
     55
     56include(pcre/pcre.pri)
     57
     58SOURCES += \
     59    API/JSBase.cpp \
     60    API/JSCallbackConstructor.cpp \
     61    API/JSCallbackFunction.cpp \
     62    API/JSCallbackObject.cpp \
     63    API/JSClassRef.cpp \
     64    API/JSContextRef.cpp \
     65    API/JSObjectRef.cpp \
     66    API/JSStringRef.cpp \
     67    API/JSValueRef.cpp \
     68    API/OpaqueJSString.cpp \
     69    assembler/ARMAssembler.cpp \
     70    assembler/MacroAssemblerARM.cpp \
     71    bytecode/CodeBlock.cpp \
     72    bytecode/JumpTable.cpp \
     73    bytecode/Opcode.cpp \
     74    bytecode/SamplingTool.cpp \
     75    bytecode/StructureStubInfo.cpp \
     76    bytecompiler/BytecodeGenerator.cpp \
     77    bytecompiler/NodesCodegen.cpp \
     78    debugger/DebuggerActivation.cpp \
     79    debugger/DebuggerCallFrame.cpp \
     80    debugger/Debugger.cpp \
     81    interpreter/CallFrame.cpp \
     82    interpreter/Interpreter.cpp \
     83    interpreter/RegisterFile.cpp \
     84    jit/ExecutableAllocatorFixedVMPool.cpp \
     85    jit/ExecutableAllocatorPosix.cpp \
     86    jit/ExecutableAllocatorSymbian.cpp \
     87    jit/ExecutableAllocatorWin.cpp \
     88    jit/ExecutableAllocator.cpp \
     89    jit/JITArithmetic.cpp \
     90    jit/JITCall.cpp \
     91    jit/JIT.cpp \
     92    jit/JITOpcodes.cpp \
     93    jit/JITPropertyAccess.cpp \
     94    jit/JITPropertyAccess32_64.cpp \
     95    jit/JITStubs.cpp \
     96    parser/Lexer.cpp \
     97    parser/Nodes.cpp \
     98    parser/ParserArena.cpp \
     99    parser/Parser.cpp \
     100    profiler/Profile.cpp \
     101    profiler/ProfileGenerator.cpp \
     102    profiler/ProfileNode.cpp \
     103    profiler/Profiler.cpp \
     104    runtime/ArgList.cpp \
     105    runtime/Arguments.cpp \
     106    runtime/ArrayConstructor.cpp \
     107    runtime/ArrayPrototype.cpp \
     108    runtime/BooleanConstructor.cpp \
     109    runtime/BooleanObject.cpp \
     110    runtime/BooleanPrototype.cpp \
     111    runtime/CallData.cpp \
     112    runtime/Collector.cpp \
     113    runtime/CommonIdentifiers.cpp \
     114    runtime/Completion.cpp \
     115    runtime/ConstructData.cpp \
     116    runtime/DateConstructor.cpp \
     117    runtime/DateConversion.cpp \
     118    runtime/DateInstance.cpp \
     119    runtime/DatePrototype.cpp \
     120    runtime/ErrorConstructor.cpp \
     121    runtime/Error.cpp \
     122    runtime/ErrorInstance.cpp \
     123    runtime/ErrorPrototype.cpp \
     124    runtime/ExceptionHelpers.cpp \
     125    runtime/Executable.cpp \
     126    runtime/FunctionConstructor.cpp \
     127    runtime/FunctionPrototype.cpp \
     128    runtime/GetterSetter.cpp \
     129    runtime/GlobalEvalFunction.cpp \
     130    runtime/Identifier.cpp \
     131    runtime/InitializeThreading.cpp \
     132    runtime/InternalFunction.cpp \
     133    runtime/JSActivation.cpp \
     134    runtime/JSAPIValueWrapper.cpp \
     135    runtime/JSArray.cpp \
     136    runtime/JSByteArray.cpp \
     137    runtime/JSCell.cpp \
     138    runtime/JSFunction.cpp \
     139    runtime/JSGlobalData.cpp \
     140    runtime/JSGlobalObject.cpp \
     141    runtime/JSGlobalObjectFunctions.cpp \
     142    runtime/JSImmediate.cpp \
     143    runtime/JSLock.cpp \
     144    runtime/JSNotAnObject.cpp \
     145    runtime/JSNumberCell.cpp \
     146    runtime/JSObject.cpp \
     147    runtime/JSONObject.cpp \
     148    runtime/JSPropertyNameIterator.cpp \
     149    runtime/JSStaticScopeObject.cpp \
     150    runtime/JSString.cpp \
     151    runtime/JSValue.cpp \
     152    runtime/JSVariableObject.cpp \
     153    runtime/JSWrapperObject.cpp \
     154    runtime/LiteralParser.cpp \
     155    runtime/Lookup.cpp \
     156    runtime/MarkStackPosix.cpp \
     157    runtime/MarkStackSymbian.cpp \
     158    runtime/MarkStackWin.cpp \
     159    runtime/MarkStack.cpp \
     160    runtime/MathObject.cpp \
     161    runtime/NativeErrorConstructor.cpp \
     162    runtime/NativeErrorPrototype.cpp \
     163    runtime/NumberConstructor.cpp \
     164    runtime/NumberObject.cpp \
     165    runtime/NumberPrototype.cpp \
     166    runtime/ObjectConstructor.cpp \
     167    runtime/ObjectPrototype.cpp \
     168    runtime/Operations.cpp \
     169    runtime/PropertyDescriptor.cpp \
     170    runtime/PropertyNameArray.cpp \
     171    runtime/PropertySlot.cpp \
     172    runtime/PrototypeFunction.cpp \
     173    runtime/RegExpConstructor.cpp \
     174    runtime/RegExp.cpp \
     175    runtime/RegExpObject.cpp \
     176    runtime/RegExpPrototype.cpp \
     177    runtime/ScopeChain.cpp \
     178    runtime/SmallStrings.cpp \
     179    runtime/StringConstructor.cpp \
     180    runtime/StringObject.cpp \
     181    runtime/StringPrototype.cpp \
     182    runtime/StructureChain.cpp \
     183    runtime/Structure.cpp \
     184    runtime/TimeoutChecker.cpp \
     185    runtime/UString.cpp \
     186    runtime/UStringImpl.cpp \
     187    wtf/Assertions.cpp \
     188    wtf/ByteArray.cpp \
     189    wtf/CurrentTime.cpp \
     190    wtf/DateMath.cpp \
     191    wtf/dtoa.cpp \
     192    wtf/FastMalloc.cpp \
     193    wtf/HashTable.cpp \
     194    wtf/MainThread.cpp \
     195    wtf/qt/MainThreadQt.cpp \
     196    wtf/qt/ThreadingQt.cpp \
     197    wtf/RandomNumber.cpp \
     198    wtf/RefCountedLeakCounter.cpp \
     199    wtf/symbian/BlockAllocatorSymbian.cpp \
     200    wtf/ThreadingNone.cpp \
     201    wtf/Threading.cpp \
     202    wtf/TypeTraits.cpp \
     203    wtf/unicode/CollatorDefault.cpp \
     204    wtf/unicode/icu/CollatorICU.cpp \
     205    wtf/unicode/UTF8.cpp \
     206    yarr/RegexCompiler.cpp \
     207    yarr/RegexInterpreter.cpp \
     208    yarr/RegexJIT.cpp
     209
     210# Generated files, simply list them for JavaScriptCore
     211SOURCES += \
     212    $${JSC_GENERATED_SOURCES_DIR}/Grammar.cpp
     213
     214!contains(DEFINES, USE_SYSTEM_MALLOC) {
     215    SOURCES += wtf/TCSystemAlloc.cpp
     216}
Note: See TracChangeset for help on using the changeset viewer.