1 | # -------------------------------------------------------------------
|
---|
2 | # Target file for the JavaScriptSource library
|
---|
3 | #
|
---|
4 | # See 'Tools/qmake/README' for an overview of the build system
|
---|
5 | # -------------------------------------------------------------------
|
---|
6 |
|
---|
7 | TEMPLATE = lib
|
---|
8 | TARGET = JavaScriptCore
|
---|
9 |
|
---|
10 | include(JavaScriptCore.pri)
|
---|
11 |
|
---|
12 | WEBKIT += wtf
|
---|
13 | QT += core
|
---|
14 | QT -= gui
|
---|
15 |
|
---|
16 | CONFIG += staticlib
|
---|
17 |
|
---|
18 | *-g++*:QMAKE_CXXFLAGS_RELEASE -= -O2
|
---|
19 | *-g++*:QMAKE_CXXFLAGS_RELEASE += -O3
|
---|
20 |
|
---|
21 | # Rules when JIT enabled (not disabled)
|
---|
22 | !contains(DEFINES, ENABLE_JIT=0) {
|
---|
23 | linux*-g++*:greaterThan(QT_GCC_MAJOR_VERSION,3):greaterThan(QT_GCC_MINOR_VERSION,0) {
|
---|
24 | QMAKE_CXXFLAGS += -fno-stack-protector
|
---|
25 | QMAKE_CFLAGS += -fno-stack-protector
|
---|
26 | }
|
---|
27 | }
|
---|
28 |
|
---|
29 | include(yarr/yarr.pri)
|
---|
30 |
|
---|
31 | INSTALLDEPS += all
|
---|
32 |
|
---|
33 | SOURCES += \
|
---|
34 | API/JSBase.cpp \
|
---|
35 | API/JSCallbackConstructor.cpp \
|
---|
36 | API/JSCallbackFunction.cpp \
|
---|
37 | API/JSCallbackObject.cpp \
|
---|
38 | API/JSClassRef.cpp \
|
---|
39 | API/JSContextRef.cpp \
|
---|
40 | API/JSObjectRef.cpp \
|
---|
41 | API/JSStringRef.cpp \
|
---|
42 | API/JSValueRef.cpp \
|
---|
43 | API/JSWeakObjectMapRefPrivate.cpp \
|
---|
44 | API/OpaqueJSString.cpp \
|
---|
45 | assembler/ARMAssembler.cpp \
|
---|
46 | assembler/ARMv7Assembler.cpp \
|
---|
47 | assembler/LinkBuffer.cpp \
|
---|
48 | assembler/MacroAssemblerARM.cpp \
|
---|
49 | assembler/MacroAssemblerSH4.cpp \
|
---|
50 | bytecode/ArrayProfile.cpp \
|
---|
51 | bytecode/CallLinkInfo.cpp \
|
---|
52 | bytecode/CallLinkStatus.cpp \
|
---|
53 | bytecode/CodeBlock.cpp \
|
---|
54 | bytecode/DFGExitProfile.cpp \
|
---|
55 | bytecode/ExecutionCounter.cpp \
|
---|
56 | bytecode/GetByIdStatus.cpp \
|
---|
57 | bytecode/JumpTable.cpp \
|
---|
58 | bytecode/LazyOperandValueProfile.cpp \
|
---|
59 | bytecode/MethodCallLinkInfo.cpp \
|
---|
60 | bytecode/MethodCallLinkStatus.cpp \
|
---|
61 | bytecode/MethodOfGettingAValueProfile.cpp \
|
---|
62 | bytecode/Opcode.cpp \
|
---|
63 | bytecode/PolymorphicPutByIdList.cpp \
|
---|
64 | bytecode/PutByIdStatus.cpp \
|
---|
65 | bytecode/ResolveGlobalStatus.cpp \
|
---|
66 | bytecode/SamplingTool.cpp \
|
---|
67 | bytecode/SpecialPointer.cpp \
|
---|
68 | bytecode/SpeculatedType.cpp \
|
---|
69 | bytecode/StructureStubClearingWatchpoint.cpp \
|
---|
70 | bytecode/StructureStubInfo.cpp \
|
---|
71 | bytecode/Watchpoint.cpp \
|
---|
72 | bytecompiler/BytecodeGenerator.cpp \
|
---|
73 | bytecompiler/NodesCodegen.cpp \
|
---|
74 | heap/CopiedSpace.cpp \
|
---|
75 | heap/ConservativeRoots.cpp \
|
---|
76 | heap/DFGCodeBlocks.cpp \
|
---|
77 | heap/WeakSet.cpp \
|
---|
78 | heap/WeakHandleOwner.cpp \
|
---|
79 | heap/WeakBlock.cpp \
|
---|
80 | heap/HandleSet.cpp \
|
---|
81 | heap/HandleStack.cpp \
|
---|
82 | heap/BlockAllocator.cpp \
|
---|
83 | heap/GCThreadSharedData.cpp \
|
---|
84 | heap/Heap.cpp \
|
---|
85 | heap/HeapTimer.cpp \
|
---|
86 | heap/IncrementalSweeper.cpp \
|
---|
87 | heap/JITStubRoutineSet.cpp \
|
---|
88 | heap/MachineStackMarker.cpp \
|
---|
89 | heap/MarkStack.cpp \
|
---|
90 | heap/MarkedAllocator.cpp \
|
---|
91 | heap/MarkedBlock.cpp \
|
---|
92 | heap/MarkedSpace.cpp \
|
---|
93 | heap/SlotVisitor.cpp \
|
---|
94 | heap/VTableSpectrum.cpp \
|
---|
95 | heap/WriteBarrierSupport.cpp \
|
---|
96 | debugger/DebuggerActivation.cpp \
|
---|
97 | debugger/DebuggerCallFrame.cpp \
|
---|
98 | debugger/Debugger.cpp \
|
---|
99 | dfg/DFGAbstractState.cpp \
|
---|
100 | dfg/DFGArgumentsSimplificationPhase.cpp \
|
---|
101 | dfg/DFGArrayMode.cpp \
|
---|
102 | dfg/DFGAssemblyHelpers.cpp \
|
---|
103 | dfg/DFGByteCodeParser.cpp \
|
---|
104 | dfg/DFGCapabilities.cpp \
|
---|
105 | dfg/DFGCFAPhase.cpp \
|
---|
106 | dfg/DFGCFGSimplificationPhase.cpp \
|
---|
107 | dfg/DFGConstantFoldingPhase.cpp \
|
---|
108 | dfg/DFGCorrectableJumpPoint.cpp \
|
---|
109 | dfg/DFGCSEPhase.cpp \
|
---|
110 | dfg/DFGDisassembler.cpp \
|
---|
111 | dfg/DFGDominators.cpp \
|
---|
112 | dfg/DFGDriver.cpp \
|
---|
113 | dfg/DFGFixupPhase.cpp \
|
---|
114 | dfg/DFGGraph.cpp \
|
---|
115 | dfg/DFGJITCompiler.cpp \
|
---|
116 | dfg/DFGMinifiedNode.cpp \
|
---|
117 | dfg/DFGNodeFlags.cpp \
|
---|
118 | dfg/DFGOperations.cpp \
|
---|
119 | dfg/DFGOSREntry.cpp \
|
---|
120 | dfg/DFGOSRExit.cpp \
|
---|
121 | dfg/DFGOSRExitCompiler.cpp \
|
---|
122 | dfg/DFGOSRExitCompiler64.cpp \
|
---|
123 | dfg/DFGOSRExitCompiler32_64.cpp \
|
---|
124 | dfg/DFGPhase.cpp \
|
---|
125 | dfg/DFGPredictionPropagationPhase.cpp \
|
---|
126 | dfg/DFGRepatch.cpp \
|
---|
127 | dfg/DFGSpeculativeJIT.cpp \
|
---|
128 | dfg/DFGSpeculativeJIT32_64.cpp \
|
---|
129 | dfg/DFGSpeculativeJIT64.cpp \
|
---|
130 | dfg/DFGStructureCheckHoistingPhase.cpp \
|
---|
131 | dfg/DFGThunks.cpp \
|
---|
132 | dfg/DFGValueSource.cpp \
|
---|
133 | dfg/DFGVariableEvent.cpp \
|
---|
134 | dfg/DFGVariableEventStream.cpp \
|
---|
135 | dfg/DFGValidate.cpp \
|
---|
136 | dfg/DFGVirtualRegisterAllocationPhase.cpp \
|
---|
137 | interpreter/AbstractPC.cpp \
|
---|
138 | interpreter/CallFrame.cpp \
|
---|
139 | interpreter/Interpreter.cpp \
|
---|
140 | interpreter/RegisterFile.cpp \
|
---|
141 | jit/ExecutableAllocatorFixedVMPool.cpp \
|
---|
142 | jit/ExecutableAllocator.cpp \
|
---|
143 | jit/HostCallReturnValue.cpp \
|
---|
144 | jit/GCAwareJITStubRoutine.cpp \
|
---|
145 | jit/JITArithmetic.cpp \
|
---|
146 | jit/JITArithmetic32_64.cpp \
|
---|
147 | jit/JITCall.cpp \
|
---|
148 | jit/JITCall32_64.cpp \
|
---|
149 | jit/JIT.cpp \
|
---|
150 | jit/JITExceptions.cpp \
|
---|
151 | jit/JITOpcodes.cpp \
|
---|
152 | jit/JITOpcodes32_64.cpp \
|
---|
153 | jit/JITPropertyAccess.cpp \
|
---|
154 | jit/JITPropertyAccess32_64.cpp \
|
---|
155 | jit/JITStubRoutine.cpp \
|
---|
156 | jit/JITStubs.cpp \
|
---|
157 | jit/JumpReplacementWatchpoint.cpp \
|
---|
158 | jit/ThunkGenerators.cpp \
|
---|
159 | parser/Lexer.cpp \
|
---|
160 | parser/Nodes.cpp \
|
---|
161 | parser/ParserArena.cpp \
|
---|
162 | parser/Parser.cpp \
|
---|
163 | parser/SourceProviderCache.cpp \
|
---|
164 | profiler/Profile.cpp \
|
---|
165 | profiler/ProfileGenerator.cpp \
|
---|
166 | profiler/ProfileNode.cpp \
|
---|
167 | profiler/Profiler.cpp \
|
---|
168 | runtime/ArgList.cpp \
|
---|
169 | runtime/Arguments.cpp \
|
---|
170 | runtime/ArrayConstructor.cpp \
|
---|
171 | runtime/ArrayPrototype.cpp \
|
---|
172 | runtime/BooleanConstructor.cpp \
|
---|
173 | runtime/BooleanObject.cpp \
|
---|
174 | runtime/BooleanPrototype.cpp \
|
---|
175 | runtime/CallData.cpp \
|
---|
176 | runtime/CommonIdentifiers.cpp \
|
---|
177 | runtime/Completion.cpp \
|
---|
178 | runtime/ConstructData.cpp \
|
---|
179 | runtime/DateConstructor.cpp \
|
---|
180 | runtime/DateConversion.cpp \
|
---|
181 | runtime/DateInstance.cpp \
|
---|
182 | runtime/DatePrototype.cpp \
|
---|
183 | runtime/ErrorConstructor.cpp \
|
---|
184 | runtime/Error.cpp \
|
---|
185 | runtime/ErrorInstance.cpp \
|
---|
186 | runtime/ErrorPrototype.cpp \
|
---|
187 | runtime/ExceptionHelpers.cpp \
|
---|
188 | runtime/Executable.cpp \
|
---|
189 | runtime/FunctionConstructor.cpp \
|
---|
190 | runtime/FunctionPrototype.cpp \
|
---|
191 | runtime/GCActivityCallback.cpp \
|
---|
192 | runtime/GetterSetter.cpp \
|
---|
193 | runtime/Options.cpp \
|
---|
194 | runtime/Identifier.cpp \
|
---|
195 | runtime/InitializeThreading.cpp \
|
---|
196 | runtime/InternalFunction.cpp \
|
---|
197 | runtime/JSActivation.cpp \
|
---|
198 | runtime/JSAPIValueWrapper.cpp \
|
---|
199 | runtime/JSArray.cpp \
|
---|
200 | runtime/JSCell.cpp \
|
---|
201 | runtime/JSDateMath.cpp \
|
---|
202 | runtime/JSFunction.cpp \
|
---|
203 | runtime/JSBoundFunction.cpp \
|
---|
204 | runtime/JSGlobalData.cpp \
|
---|
205 | runtime/JSGlobalObject.cpp \
|
---|
206 | runtime/JSGlobalObjectFunctions.cpp \
|
---|
207 | runtime/JSProxy.cpp \
|
---|
208 | runtime/JSLock.cpp \
|
---|
209 | runtime/JSNotAnObject.cpp \
|
---|
210 | runtime/JSObject.cpp \
|
---|
211 | runtime/JSONObject.cpp \
|
---|
212 | runtime/JSPropertyNameIterator.cpp \
|
---|
213 | runtime/JSSegmentedVariableObject.cpp \
|
---|
214 | runtime/JSWithScope.cpp \
|
---|
215 | runtime/JSNameScope.cpp \
|
---|
216 | runtime/JSScope.cpp \
|
---|
217 | runtime/JSString.cpp \
|
---|
218 | runtime/JSStringJoiner.cpp \
|
---|
219 | runtime/JSSymbolTableObject.cpp \
|
---|
220 | runtime/JSValue.cpp \
|
---|
221 | runtime/JSVariableObject.cpp \
|
---|
222 | runtime/JSWrapperObject.cpp \
|
---|
223 | runtime/LiteralParser.cpp \
|
---|
224 | runtime/Lookup.cpp \
|
---|
225 | runtime/MathObject.cpp \
|
---|
226 | runtime/MemoryStatistics.cpp \
|
---|
227 | runtime/NameConstructor.cpp \
|
---|
228 | runtime/NameInstance.cpp \
|
---|
229 | runtime/NamePrototype.cpp \
|
---|
230 | runtime/NativeErrorConstructor.cpp \
|
---|
231 | runtime/NativeErrorPrototype.cpp \
|
---|
232 | runtime/NumberConstructor.cpp \
|
---|
233 | runtime/NumberObject.cpp \
|
---|
234 | runtime/NumberPrototype.cpp \
|
---|
235 | runtime/ObjectConstructor.cpp \
|
---|
236 | runtime/ObjectPrototype.cpp \
|
---|
237 | runtime/Operations.cpp \
|
---|
238 | runtime/PropertyDescriptor.cpp \
|
---|
239 | runtime/PropertyNameArray.cpp \
|
---|
240 | runtime/PropertySlot.cpp \
|
---|
241 | runtime/RegExpConstructor.cpp \
|
---|
242 | runtime/RegExpCachedResult.cpp \
|
---|
243 | runtime/RegExpMatchesArray.cpp \
|
---|
244 | runtime/RegExp.cpp \
|
---|
245 | runtime/RegExpObject.cpp \
|
---|
246 | runtime/RegExpPrototype.cpp \
|
---|
247 | runtime/RegExpCache.cpp \
|
---|
248 | runtime/SamplingCounter.cpp \
|
---|
249 | runtime/SmallStrings.cpp \
|
---|
250 | runtime/SparseArrayValueMap.cpp \
|
---|
251 | runtime/StrictEvalActivation.cpp \
|
---|
252 | runtime/StringConstructor.cpp \
|
---|
253 | runtime/StringObject.cpp \
|
---|
254 | runtime/StringPrototype.cpp \
|
---|
255 | runtime/StringRecursionChecker.cpp \
|
---|
256 | runtime/StructureChain.cpp \
|
---|
257 | runtime/Structure.cpp \
|
---|
258 | runtime/SymbolTable.cpp \
|
---|
259 | runtime/TimeoutChecker.cpp \
|
---|
260 | tools/CodeProfile.cpp \
|
---|
261 | tools/CodeProfiling.cpp \
|
---|
262 | yarr/YarrJIT.cpp \
|
---|
263 |
|
---|
264 | HEADERS += $$files(*.h, true)
|
---|
265 |
|
---|
266 | *sh4* {
|
---|
267 | QMAKE_CXXFLAGS += -mieee -w
|
---|
268 | QMAKE_CFLAGS += -mieee -w
|
---|
269 | }
|
---|
270 |
|
---|
271 | lessThan(QT_GCC_MAJOR_VERSION, 5) {
|
---|
272 | # GCC 4.5 and before
|
---|
273 | lessThan(QT_GCC_MINOR_VERSION, 6) {
|
---|
274 | # Disable C++0x mode in JSC for those who enabled it in their Qt's mkspec.
|
---|
275 | *-g++*:QMAKE_CXXFLAGS -= -std=c++0x -std=gnu++0x
|
---|
276 | }
|
---|
277 | }
|
---|