]>
Commit | Line | Data |
---|---|---|
6fe7ccc8 A |
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 | ||
6fe7ccc8 A |
29 | include(yarr/yarr.pri) |
30 | ||
31 | INSTALLDEPS += all | |
32 | ||
93a37866 A |
33 | debug_and_release: INCLUDEPATH += $$JAVASCRIPTCORE_GENERATED_SOURCES_DIR/$$targetSubDir() |
34 | ||
6fe7ccc8 A |
35 | SOURCES += \ |
36 | API/JSBase.cpp \ | |
37 | API/JSCallbackConstructor.cpp \ | |
38 | API/JSCallbackFunction.cpp \ | |
39 | API/JSCallbackObject.cpp \ | |
40 | API/JSClassRef.cpp \ | |
41 | API/JSContextRef.cpp \ | |
42 | API/JSObjectRef.cpp \ | |
93a37866 | 43 | API/JSScriptRef.cpp \ |
6fe7ccc8 | 44 | API/JSStringRef.cpp \ |
93a37866 | 45 | API/JSStringRefQt.cpp \ |
6fe7ccc8 | 46 | API/JSValueRef.cpp \ |
93a37866 | 47 | API/JSWeakObjectMapRefPrivate.cpp \ |
6fe7ccc8 A |
48 | API/OpaqueJSString.cpp \ |
49 | assembler/ARMAssembler.cpp \ | |
50 | assembler/ARMv7Assembler.cpp \ | |
93a37866 A |
51 | assembler/LinkBuffer.cpp \ |
52 | assembler/MacroAssembler.cpp \ | |
6fe7ccc8 | 53 | assembler/MacroAssemblerARM.cpp \ |
93a37866 A |
54 | bytecode/ArrayAllocationProfile.cpp \ |
55 | bytecode/ArrayProfile.cpp \ | |
6fe7ccc8 A |
56 | bytecode/CallLinkInfo.cpp \ |
57 | bytecode/CallLinkStatus.cpp \ | |
58 | bytecode/CodeBlock.cpp \ | |
93a37866 A |
59 | bytecode/CodeBlockHash.cpp \ |
60 | bytecode/CodeOrigin.cpp \ | |
61 | bytecode/CodeType.cpp \ | |
6fe7ccc8 A |
62 | bytecode/DFGExitProfile.cpp \ |
63 | bytecode/ExecutionCounter.cpp \ | |
93a37866 | 64 | bytecode/ExitKind.cpp \ |
6fe7ccc8 A |
65 | bytecode/GetByIdStatus.cpp \ |
66 | bytecode/JumpTable.cpp \ | |
67 | bytecode/LazyOperandValueProfile.cpp \ | |
6fe7ccc8 A |
68 | bytecode/MethodOfGettingAValueProfile.cpp \ |
69 | bytecode/Opcode.cpp \ | |
70 | bytecode/PolymorphicPutByIdList.cpp \ | |
93a37866 | 71 | bytecode/PreciseJumpTargets.cpp \ |
6fe7ccc8 | 72 | bytecode/PutByIdStatus.cpp \ |
93a37866 A |
73 | bytecode/ReduceWhitespace.cpp \ |
74 | bytecode/ResolveGlobalStatus.cpp \ | |
6fe7ccc8 | 75 | bytecode/SamplingTool.cpp \ |
93a37866 A |
76 | bytecode/SpecialPointer.cpp \ |
77 | bytecode/SpeculatedType.cpp \ | |
78 | bytecode/StructureStubClearingWatchpoint.cpp \ | |
6fe7ccc8 | 79 | bytecode/StructureStubInfo.cpp \ |
93a37866 A |
80 | bytecode/UnlinkedCodeBlock.cpp \ |
81 | bytecode/Watchpoint.cpp \ | |
6fe7ccc8 A |
82 | bytecompiler/BytecodeGenerator.cpp \ |
83 | bytecompiler/NodesCodegen.cpp \ | |
84 | heap/CopiedSpace.cpp \ | |
93a37866 | 85 | heap/CopyVisitor.cpp \ |
6fe7ccc8 A |
86 | heap/ConservativeRoots.cpp \ |
87 | heap/DFGCodeBlocks.cpp \ | |
93a37866 | 88 | heap/Weak.cpp \ |
6fe7ccc8 | 89 | heap/WeakBlock.cpp \ |
93a37866 A |
90 | heap/WeakHandleOwner.cpp \ |
91 | heap/WeakSet.cpp \ | |
6fe7ccc8 A |
92 | heap/HandleSet.cpp \ |
93 | heap/HandleStack.cpp \ | |
94 | heap/BlockAllocator.cpp \ | |
93a37866 A |
95 | heap/GCThreadSharedData.cpp \ |
96 | heap/GCThread.cpp \ | |
6fe7ccc8 | 97 | heap/Heap.cpp \ |
93a37866 A |
98 | heap/HeapStatistics.cpp \ |
99 | heap/HeapTimer.cpp \ | |
100 | heap/IncrementalSweeper.cpp \ | |
101 | heap/JITStubRoutineSet.cpp \ | |
6fe7ccc8 A |
102 | heap/MachineStackMarker.cpp \ |
103 | heap/MarkStack.cpp \ | |
104 | heap/MarkedAllocator.cpp \ | |
105 | heap/MarkedBlock.cpp \ | |
106 | heap/MarkedSpace.cpp \ | |
93a37866 A |
107 | heap/SlotVisitor.cpp \ |
108 | heap/SuperRegion.cpp \ | |
6fe7ccc8 A |
109 | heap/VTableSpectrum.cpp \ |
110 | heap/WriteBarrierSupport.cpp \ | |
111 | debugger/DebuggerActivation.cpp \ | |
112 | debugger/DebuggerCallFrame.cpp \ | |
113 | debugger/Debugger.cpp \ | |
114 | dfg/DFGAbstractState.cpp \ | |
93a37866 A |
115 | dfg/DFGArgumentsSimplificationPhase.cpp \ |
116 | dfg/DFGArrayMode.cpp \ | |
6fe7ccc8 | 117 | dfg/DFGAssemblyHelpers.cpp \ |
93a37866 | 118 | dfg/DFGBackwardsPropagationPhase.cpp \ |
6fe7ccc8 A |
119 | dfg/DFGByteCodeParser.cpp \ |
120 | dfg/DFGCapabilities.cpp \ | |
93a37866 | 121 | dfg/DFGCommon.cpp \ |
6fe7ccc8 | 122 | dfg/DFGCFAPhase.cpp \ |
93a37866 A |
123 | dfg/DFGCFGSimplificationPhase.cpp \ |
124 | dfg/DFGCPSRethreadingPhase.cpp \ | |
125 | dfg/DFGConstantFoldingPhase.cpp \ | |
6fe7ccc8 | 126 | dfg/DFGCSEPhase.cpp \ |
93a37866 A |
127 | dfg/DFGDCEPhase.cpp \ |
128 | dfg/DFGDisassembler.cpp \ | |
129 | dfg/DFGDominators.cpp \ | |
6fe7ccc8 | 130 | dfg/DFGDriver.cpp \ |
93a37866 | 131 | dfg/DFGEdge.cpp \ |
6fe7ccc8 A |
132 | dfg/DFGFixupPhase.cpp \ |
133 | dfg/DFGGraph.cpp \ | |
134 | dfg/DFGJITCompiler.cpp \ | |
93a37866 A |
135 | dfg/DFGLongLivedState.cpp \ |
136 | dfg/DFGMinifiedNode.cpp \ | |
137 | dfg/DFGNode.cpp \ | |
6fe7ccc8 A |
138 | dfg/DFGNodeFlags.cpp \ |
139 | dfg/DFGOperations.cpp \ | |
140 | dfg/DFGOSREntry.cpp \ | |
141 | dfg/DFGOSRExit.cpp \ | |
142 | dfg/DFGOSRExitCompiler.cpp \ | |
143 | dfg/DFGOSRExitCompiler64.cpp \ | |
144 | dfg/DFGOSRExitCompiler32_64.cpp \ | |
93a37866 | 145 | dfg/DFGOSRExitJumpPlaceholder.cpp \ |
6fe7ccc8 A |
146 | dfg/DFGPhase.cpp \ |
147 | dfg/DFGPredictionPropagationPhase.cpp \ | |
93a37866 | 148 | dfg/DFGPredictionInjectionPhase.cpp \ |
6fe7ccc8 A |
149 | dfg/DFGRepatch.cpp \ |
150 | dfg/DFGSpeculativeJIT.cpp \ | |
151 | dfg/DFGSpeculativeJIT32_64.cpp \ | |
152 | dfg/DFGSpeculativeJIT64.cpp \ | |
93a37866 | 153 | dfg/DFGTypeCheckHoistingPhase.cpp \ |
6fe7ccc8 | 154 | dfg/DFGThunks.cpp \ |
93a37866 A |
155 | dfg/DFGUnificationPhase.cpp \ |
156 | dfg/DFGUseKind.cpp \ | |
157 | dfg/DFGValueSource.cpp \ | |
158 | dfg/DFGVariableAccessDataDump.cpp \ | |
159 | dfg/DFGVariableEvent.cpp \ | |
160 | dfg/DFGVariableEventStream.cpp \ | |
161 | dfg/DFGValidate.cpp \ | |
6fe7ccc8 | 162 | dfg/DFGVirtualRegisterAllocationPhase.cpp \ |
93a37866 | 163 | disassembler/Disassembler.cpp \ |
6fe7ccc8 A |
164 | interpreter/AbstractPC.cpp \ |
165 | interpreter/CallFrame.cpp \ | |
166 | interpreter/Interpreter.cpp \ | |
93a37866 A |
167 | interpreter/JSStack.cpp \ |
168 | jit/ClosureCallStubRoutine.cpp \ | |
6fe7ccc8 A |
169 | jit/ExecutableAllocatorFixedVMPool.cpp \ |
170 | jit/ExecutableAllocator.cpp \ | |
171 | jit/HostCallReturnValue.cpp \ | |
93a37866 | 172 | jit/GCAwareJITStubRoutine.cpp \ |
6fe7ccc8 A |
173 | jit/JITArithmetic.cpp \ |
174 | jit/JITArithmetic32_64.cpp \ | |
175 | jit/JITCall.cpp \ | |
176 | jit/JITCall32_64.cpp \ | |
93a37866 | 177 | jit/JITCode.cpp \ |
6fe7ccc8 | 178 | jit/JIT.cpp \ |
93a37866 | 179 | jit/JITDisassembler.cpp \ |
6fe7ccc8 A |
180 | jit/JITExceptions.cpp \ |
181 | jit/JITOpcodes.cpp \ | |
182 | jit/JITOpcodes32_64.cpp \ | |
183 | jit/JITPropertyAccess.cpp \ | |
184 | jit/JITPropertyAccess32_64.cpp \ | |
93a37866 | 185 | jit/JITStubRoutine.cpp \ |
6fe7ccc8 | 186 | jit/JITStubs.cpp \ |
93a37866 A |
187 | jit/JITThunks.cpp \ |
188 | jit/JumpReplacementWatchpoint.cpp \ | |
6fe7ccc8 | 189 | jit/ThunkGenerators.cpp \ |
93a37866 A |
190 | llint/LLIntCLoop.cpp \ |
191 | llint/LLIntData.cpp \ | |
192 | llint/LLIntEntrypoints.cpp \ | |
193 | llint/LLIntExceptions.cpp \ | |
194 | llint/LLIntSlowPaths.cpp \ | |
195 | llint/LLIntThunks.cpp \ | |
196 | llint/LowLevelInterpreter.cpp \ | |
6fe7ccc8 A |
197 | parser/Lexer.cpp \ |
198 | parser/Nodes.cpp \ | |
199 | parser/ParserArena.cpp \ | |
200 | parser/Parser.cpp \ | |
93a37866 | 201 | parser/SourceProvider.cpp \ |
6fe7ccc8 | 202 | parser/SourceProviderCache.cpp \ |
93a37866 A |
203 | profiler/ProfilerBytecode.cpp \ |
204 | profiler/ProfilerBytecode.h \ | |
205 | profiler/ProfilerBytecodeSequence.cpp \ | |
206 | profiler/ProfilerBytecodes.cpp \ | |
207 | profiler/ProfilerBytecodes.h \ | |
208 | profiler/ProfilerCompilation.cpp \ | |
209 | profiler/ProfilerCompilation.h \ | |
210 | profiler/ProfilerCompilationKind.cpp \ | |
211 | profiler/ProfilerCompilationKind.h \ | |
212 | profiler/ProfilerCompiledBytecode.cpp \ | |
213 | profiler/ProfilerCompiledBytecode.h \ | |
214 | profiler/ProfilerDatabase.cpp \ | |
215 | profiler/ProfilerDatabase.h \ | |
216 | profiler/ProfilerExecutionCounter.h \ | |
217 | profiler/ProfilerOrigin.cpp \ | |
218 | profiler/ProfilerOrigin.h \ | |
219 | profiler/ProfilerOriginStack.cpp \ | |
220 | profiler/ProfilerOriginStack.h \ | |
221 | profiler/ProfilerOSRExit.cpp \ | |
222 | profiler/ProfilerOSRExitSite.cpp \ | |
223 | profiler/ProfilerProfiledBytecodes.cpp \ | |
6fe7ccc8 A |
224 | profiler/Profile.cpp \ |
225 | profiler/ProfileGenerator.cpp \ | |
226 | profiler/ProfileNode.cpp \ | |
93a37866 | 227 | profiler/LegacyProfiler.cpp \ |
6fe7ccc8 A |
228 | runtime/ArgList.cpp \ |
229 | runtime/Arguments.cpp \ | |
230 | runtime/ArrayConstructor.cpp \ | |
231 | runtime/ArrayPrototype.cpp \ | |
232 | runtime/BooleanConstructor.cpp \ | |
233 | runtime/BooleanObject.cpp \ | |
234 | runtime/BooleanPrototype.cpp \ | |
235 | runtime/CallData.cpp \ | |
93a37866 A |
236 | runtime/CodeCache.cpp \ |
237 | runtime/CodeSpecializationKind.cpp \ | |
6fe7ccc8 A |
238 | runtime/CommonIdentifiers.cpp \ |
239 | runtime/Completion.cpp \ | |
240 | runtime/ConstructData.cpp \ | |
241 | runtime/DateConstructor.cpp \ | |
242 | runtime/DateConversion.cpp \ | |
243 | runtime/DateInstance.cpp \ | |
244 | runtime/DatePrototype.cpp \ | |
245 | runtime/ErrorConstructor.cpp \ | |
246 | runtime/Error.cpp \ | |
247 | runtime/ErrorInstance.cpp \ | |
248 | runtime/ErrorPrototype.cpp \ | |
249 | runtime/ExceptionHelpers.cpp \ | |
250 | runtime/Executable.cpp \ | |
251 | runtime/FunctionConstructor.cpp \ | |
93a37866 | 252 | runtime/FunctionExecutableDump.cpp \ |
6fe7ccc8 A |
253 | runtime/FunctionPrototype.cpp \ |
254 | runtime/GCActivityCallback.cpp \ | |
255 | runtime/GetterSetter.cpp \ | |
256 | runtime/Options.cpp \ | |
257 | runtime/Identifier.cpp \ | |
93a37866 | 258 | runtime/IndexingType.cpp \ |
6fe7ccc8 A |
259 | runtime/InitializeThreading.cpp \ |
260 | runtime/InternalFunction.cpp \ | |
261 | runtime/JSActivation.cpp \ | |
262 | runtime/JSAPIValueWrapper.cpp \ | |
263 | runtime/JSArray.cpp \ | |
264 | runtime/JSCell.cpp \ | |
265 | runtime/JSDateMath.cpp \ | |
266 | runtime/JSFunction.cpp \ | |
267 | runtime/JSBoundFunction.cpp \ | |
93a37866 | 268 | runtime/VM.cpp \ |
6fe7ccc8 A |
269 | runtime/JSGlobalObject.cpp \ |
270 | runtime/JSGlobalObjectFunctions.cpp \ | |
93a37866 | 271 | runtime/JSProxy.cpp \ |
6fe7ccc8 A |
272 | runtime/JSLock.cpp \ |
273 | runtime/JSNotAnObject.cpp \ | |
274 | runtime/JSObject.cpp \ | |
275 | runtime/JSONObject.cpp \ | |
276 | runtime/JSPropertyNameIterator.cpp \ | |
93a37866 A |
277 | runtime/JSSegmentedVariableObject.cpp \ |
278 | runtime/JSWithScope.cpp \ | |
279 | runtime/JSNameScope.cpp \ | |
280 | runtime/JSScope.cpp \ | |
6fe7ccc8 A |
281 | runtime/JSString.cpp \ |
282 | runtime/JSStringJoiner.cpp \ | |
93a37866 A |
283 | runtime/JSSymbolTableObject.cpp \ |
284 | runtime/JSCJSValue.cpp \ | |
6fe7ccc8 A |
285 | runtime/JSVariableObject.cpp \ |
286 | runtime/JSWrapperObject.cpp \ | |
287 | runtime/LiteralParser.cpp \ | |
288 | runtime/Lookup.cpp \ | |
289 | runtime/MathObject.cpp \ | |
93a37866 A |
290 | runtime/MemoryStatistics.cpp \ |
291 | runtime/NameConstructor.cpp \ | |
292 | runtime/NameInstance.cpp \ | |
293 | runtime/NamePrototype.cpp \ | |
6fe7ccc8 A |
294 | runtime/NativeErrorConstructor.cpp \ |
295 | runtime/NativeErrorPrototype.cpp \ | |
296 | runtime/NumberConstructor.cpp \ | |
297 | runtime/NumberObject.cpp \ | |
298 | runtime/NumberPrototype.cpp \ | |
299 | runtime/ObjectConstructor.cpp \ | |
300 | runtime/ObjectPrototype.cpp \ | |
301 | runtime/Operations.cpp \ | |
302 | runtime/PropertyDescriptor.cpp \ | |
303 | runtime/PropertyNameArray.cpp \ | |
304 | runtime/PropertySlot.cpp \ | |
93a37866 A |
305 | runtime/PropertyTable.cpp \ |
306 | runtime/PrototypeMap.cpp \ | |
6fe7ccc8 A |
307 | runtime/RegExpConstructor.cpp \ |
308 | runtime/RegExpCachedResult.cpp \ | |
309 | runtime/RegExpMatchesArray.cpp \ | |
310 | runtime/RegExp.cpp \ | |
311 | runtime/RegExpObject.cpp \ | |
312 | runtime/RegExpPrototype.cpp \ | |
313 | runtime/RegExpCache.cpp \ | |
314 | runtime/SamplingCounter.cpp \ | |
6fe7ccc8 | 315 | runtime/SmallStrings.cpp \ |
93a37866 | 316 | runtime/SparseArrayValueMap.cpp \ |
6fe7ccc8 A |
317 | runtime/StrictEvalActivation.cpp \ |
318 | runtime/StringConstructor.cpp \ | |
319 | runtime/StringObject.cpp \ | |
320 | runtime/StringPrototype.cpp \ | |
321 | runtime/StringRecursionChecker.cpp \ | |
322 | runtime/StructureChain.cpp \ | |
323 | runtime/Structure.cpp \ | |
93a37866 A |
324 | runtime/StructureRareData.cpp \ |
325 | runtime/SymbolTable.cpp \ | |
326 | runtime/Watchdog.cpp \ | |
327 | runtime/WatchdogNone.cpp \ | |
6fe7ccc8 A |
328 | tools/CodeProfile.cpp \ |
329 | tools/CodeProfiling.cpp \ | |
330 | yarr/YarrJIT.cpp \ | |
331 | ||
93a37866 A |
332 | linux-*:if(isEqual(QT_ARCH, "i386")|isEqual(QT_ARCH, "x86_64")) { |
333 | SOURCES += \ | |
334 | disassembler/UDis86Disassembler.cpp \ | |
335 | disassembler/udis86/udis86.c \ | |
336 | disassembler/udis86/udis86_decode.c \ | |
337 | disassembler/udis86/udis86_input.c \ | |
338 | disassembler/udis86/udis86_itab_holder.c \ | |
339 | disassembler/udis86/udis86_syn-att.c \ | |
340 | disassembler/udis86/udis86_syn-intel.c \ | |
341 | disassembler/udis86/udis86_syn.c \ | |
342 | } | |
343 | ||
344 | win32:!win32-g++*:isEqual(QT_ARCH, "x86_64"):{ | |
345 | asm_compiler.commands = ml64 /c | |
346 | asm_compiler.commands += /Fo ${QMAKE_FILE_OUT} ${QMAKE_FILE_IN} | |
347 | asm_compiler.output = ${QMAKE_VAR_OBJECTS_DIR}${QMAKE_FILE_BASE}$${first(QMAKE_EXT_OBJ)} | |
348 | asm_compiler.input = ASM_SOURCES | |
349 | asm_compiler.variable_out = OBJECTS | |
350 | asm_compiler.name = compiling[asm] ${QMAKE_FILE_IN} | |
351 | silent:asm_compiler.commands = @echo compiling[asm] ${QMAKE_FILE_IN} && $$asm_compiler.commands | |
352 | QMAKE_EXTRA_COMPILERS += asm_compiler | |
353 | ||
354 | ASM_SOURCES += jit/JITStubsMSVC64.asm | |
355 | } | |
356 | ||
357 | HEADERS += $$files(*.h, true) | |
358 | ||
6fe7ccc8 A |
359 | *sh4* { |
360 | QMAKE_CXXFLAGS += -mieee -w | |
361 | QMAKE_CFLAGS += -mieee -w | |
362 | } | |
363 | ||
364 | lessThan(QT_GCC_MAJOR_VERSION, 5) { | |
365 | # GCC 4.5 and before | |
366 | lessThan(QT_GCC_MINOR_VERSION, 6) { | |
367 | # Disable C++0x mode in JSC for those who enabled it in their Qt's mkspec. | |
368 | *-g++*:QMAKE_CXXFLAGS -= -std=c++0x -std=gnu++0x | |
369 | } | |
6fe7ccc8 | 370 | } |