author | Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> |
Fri, 14 May 2010 16:40:13 +0300 | |
changeset 22 | 79de32ba3296 |
parent 3 | 41300fa6a67c |
child 30 | 5dc02b23752f |
permissions | -rw-r--r-- |
0 | 1 |
# JavaScriptCore - Qt4 build info |
2 |
VPATH += $$PWD |
|
3 |
||
4 |
CONFIG(debug, debug|release) { |
|
5 |
isEmpty(GENERATED_SOURCES_DIR):GENERATED_SOURCES_DIR = generated$${QMAKE_DIR_SEP}debug |
|
6 |
OBJECTS_DIR = obj/debug |
|
7 |
} else { # Release |
|
8 |
isEmpty(GENERATED_SOURCES_DIR):GENERATED_SOURCES_DIR = generated$${QMAKE_DIR_SEP}release |
|
9 |
OBJECTS_DIR = obj/release |
|
10 |
} |
|
11 |
||
22
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
12 |
symbian { |
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
13 |
LIBS += -lhal |
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
14 |
} |
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
15 |
|
0 | 16 |
INCLUDEPATH = \ |
17 |
$$PWD \ |
|
18 |
$$PWD/.. \ |
|
19 |
$$PWD/assembler \ |
|
20 |
$$PWD/bytecode \ |
|
21 |
$$PWD/bytecompiler \ |
|
22 |
$$PWD/debugger \ |
|
23 |
$$PWD/interpreter \ |
|
24 |
$$PWD/jit \ |
|
25 |
$$PWD/parser \ |
|
26 |
$$PWD/profiler \ |
|
27 |
$$PWD/runtime \ |
|
28 |
$$PWD/wrec \ |
|
29 |
$$PWD/wtf \ |
|
22
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
30 |
$$PWD/wtf/symbian \ |
0 | 31 |
$$PWD/wtf/unicode \ |
32 |
$$PWD/yarr \ |
|
33 |
$$PWD/API \ |
|
34 |
$$PWD/ForwardingHeaders \ |
|
35 |
$$GENERATED_SOURCES_DIR \ |
|
36 |
$$INCLUDEPATH |
|
37 |
||
38 |
DEFINES += BUILDING_QT__ BUILDING_JavaScriptCore BUILDING_WTF |
|
39 |
||
40 |
GENERATED_SOURCES_DIR_SLASH = $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP} |
|
41 |
win32-* { |
|
42 |
LIBS += -lwinmm |
|
43 |
} |
|
44 |
contains(JAVASCRIPTCORE_JIT,yes) { |
|
45 |
DEFINES+=ENABLE_JIT=1 |
|
46 |
DEFINES+=ENABLE_YARR_JIT=1 |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
47 |
DEFINES+=ENABLE_YARR=1 |
0 | 48 |
} |
49 |
contains(JAVASCRIPTCORE_JIT,no) { |
|
50 |
DEFINES+=ENABLE_JIT=0 |
|
51 |
DEFINES+=ENABLE_YARR_JIT=0 |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
52 |
DEFINES+=ENABLE_YARR=0 |
0 | 53 |
} |
54 |
||
55 |
# In debug mode JIT disabled until crash fixed |
|
56 |
win32-* { |
|
57 |
CONFIG(debug):!contains(DEFINES, ENABLE_JIT=1): DEFINES+=ENABLE_JIT=0 |
|
58 |
} |
|
59 |
||
60 |
# Rules when JIT enabled (not disabled) |
|
61 |
!contains(DEFINES, ENABLE_JIT=0) { |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
62 |
linux*-g++*:greaterThan(QT_GCC_MAJOR_VERSION,3):greaterThan(QT_GCC_MINOR_VERSION,0) { |
0 | 63 |
QMAKE_CXXFLAGS += -fno-stack-protector |
64 |
QMAKE_CFLAGS += -fno-stack-protector |
|
65 |
} |
|
66 |
} |
|
67 |
||
68 |
wince* { |
|
3
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
69 |
INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat |
41300fa6a67c
Revision: 201003
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
0
diff
changeset
|
70 |
SOURCES += $$QT_SOURCE_TREE/src/3rdparty/ce-compat/ce_time.c |
0 | 71 |
DEFINES += WINCEBASIC |
72 |
} |
|
73 |
||
74 |
include(pcre/pcre.pri) |
|
75 |
||
76 |
LUT_FILES += \ |
|
77 |
runtime/DatePrototype.cpp \ |
|
78 |
runtime/JSONObject.cpp \ |
|
79 |
runtime/NumberConstructor.cpp \ |
|
80 |
runtime/StringPrototype.cpp \ |
|
81 |
runtime/ArrayPrototype.cpp \ |
|
82 |
runtime/MathObject.cpp \ |
|
83 |
runtime/RegExpConstructor.cpp \ |
|
84 |
runtime/RegExpObject.cpp |
|
85 |
||
86 |
KEYWORDLUT_FILES += \ |
|
87 |
parser/Keywords.table |
|
88 |
||
89 |
JSCBISON += \ |
|
90 |
parser/Grammar.y |
|
91 |
||
92 |
SOURCES += \ |
|
93 |
wtf/Assertions.cpp \ |
|
94 |
wtf/ByteArray.cpp \ |
|
95 |
wtf/HashTable.cpp \ |
|
96 |
wtf/MainThread.cpp \ |
|
97 |
wtf/RandomNumber.cpp \ |
|
98 |
wtf/RefCountedLeakCounter.cpp \ |
|
99 |
wtf/TypeTraits.cpp \ |
|
100 |
wtf/unicode/CollatorDefault.cpp \ |
|
101 |
wtf/unicode/icu/CollatorICU.cpp \ |
|
102 |
wtf/unicode/UTF8.cpp \ |
|
103 |
API/JSBase.cpp \ |
|
104 |
API/JSCallbackConstructor.cpp \ |
|
105 |
API/JSCallbackFunction.cpp \ |
|
106 |
API/JSCallbackObject.cpp \ |
|
107 |
API/JSClassRef.cpp \ |
|
108 |
API/JSContextRef.cpp \ |
|
109 |
API/JSObjectRef.cpp \ |
|
110 |
API/JSStringRef.cpp \ |
|
111 |
API/JSValueRef.cpp \ |
|
112 |
API/OpaqueJSString.cpp \ |
|
113 |
runtime/InitializeThreading.cpp \ |
|
114 |
runtime/JSGlobalData.cpp \ |
|
115 |
runtime/JSGlobalObject.cpp \ |
|
116 |
runtime/JSStaticScopeObject.cpp \ |
|
117 |
runtime/JSVariableObject.cpp \ |
|
118 |
runtime/JSActivation.cpp \ |
|
119 |
runtime/JSNotAnObject.cpp \ |
|
120 |
runtime/JSONObject.cpp \ |
|
121 |
runtime/LiteralParser.cpp \ |
|
122 |
runtime/MarkStack.cpp \ |
|
123 |
runtime/TimeoutChecker.cpp \ |
|
124 |
bytecode/CodeBlock.cpp \ |
|
125 |
bytecode/StructureStubInfo.cpp \ |
|
126 |
bytecode/JumpTable.cpp \ |
|
127 |
assembler/ARMAssembler.cpp \ |
|
128 |
assembler/MacroAssemblerARM.cpp \ |
|
129 |
jit/JIT.cpp \ |
|
130 |
jit/JITCall.cpp \ |
|
131 |
jit/JITArithmetic.cpp \ |
|
132 |
jit/JITOpcodes.cpp \ |
|
133 |
jit/JITPropertyAccess.cpp \ |
|
134 |
jit/ExecutableAllocator.cpp \ |
|
135 |
jit/JITStubs.cpp \ |
|
136 |
bytecompiler/BytecodeGenerator.cpp \ |
|
137 |
runtime/ExceptionHelpers.cpp \ |
|
138 |
runtime/JSPropertyNameIterator.cpp \ |
|
139 |
interpreter/Interpreter.cpp \ |
|
140 |
bytecode/Opcode.cpp \ |
|
141 |
bytecode/SamplingTool.cpp \ |
|
142 |
yarr/RegexCompiler.cpp \ |
|
143 |
yarr/RegexInterpreter.cpp \ |
|
144 |
yarr/RegexJIT.cpp \ |
|
145 |
interpreter/RegisterFile.cpp |
|
146 |
||
147 |
symbian { |
|
148 |
SOURCES += jit/ExecutableAllocatorSymbian.cpp \ |
|
149 |
runtime/MarkStackSymbian.cpp |
|
150 |
} else { |
|
151 |
win32-*|wince* { |
|
152 |
SOURCES += jit/ExecutableAllocatorWin.cpp \ |
|
153 |
runtime/MarkStackWin.cpp |
|
154 |
} else { |
|
155 |
SOURCES += jit/ExecutableAllocatorPosix.cpp \ |
|
156 |
runtime/MarkStackPosix.cpp |
|
157 |
} |
|
158 |
} |
|
159 |
||
160 |
!contains(DEFINES, USE_SYSTEM_MALLOC) { |
|
161 |
SOURCES += wtf/TCSystemAlloc.cpp |
|
162 |
} |
|
163 |
||
164 |
# AllInOneFile.cpp helps gcc analize and optimize code |
|
165 |
# Other compilers may be able to do this at link time |
|
166 |
SOURCES += \ |
|
167 |
runtime/ArgList.cpp \ |
|
168 |
runtime/Arguments.cpp \ |
|
169 |
runtime/ArrayConstructor.cpp \ |
|
170 |
runtime/ArrayPrototype.cpp \ |
|
171 |
runtime/BooleanConstructor.cpp \ |
|
172 |
runtime/BooleanObject.cpp \ |
|
173 |
runtime/BooleanPrototype.cpp \ |
|
174 |
runtime/CallData.cpp \ |
|
175 |
runtime/Collector.cpp \ |
|
176 |
runtime/CommonIdentifiers.cpp \ |
|
177 |
runtime/ConstructData.cpp \ |
|
178 |
wtf/CurrentTime.cpp \ |
|
179 |
runtime/DateConstructor.cpp \ |
|
180 |
runtime/DateConversion.cpp \ |
|
181 |
runtime/DateInstance.cpp \ |
|
182 |
runtime/DatePrototype.cpp \ |
|
183 |
debugger/Debugger.cpp \ |
|
184 |
debugger/DebuggerCallFrame.cpp \ |
|
185 |
debugger/DebuggerActivation.cpp \ |
|
186 |
wtf/dtoa.cpp \ |
|
187 |
runtime/Error.cpp \ |
|
188 |
runtime/ErrorConstructor.cpp \ |
|
189 |
runtime/ErrorInstance.cpp \ |
|
190 |
runtime/ErrorPrototype.cpp \ |
|
191 |
interpreter/CallFrame.cpp \ |
|
192 |
runtime/Executable.cpp \ |
|
193 |
runtime/FunctionConstructor.cpp \ |
|
194 |
runtime/FunctionPrototype.cpp \ |
|
195 |
runtime/GetterSetter.cpp \ |
|
196 |
runtime/GlobalEvalFunction.cpp \ |
|
197 |
runtime/Identifier.cpp \ |
|
198 |
runtime/InternalFunction.cpp \ |
|
199 |
runtime/Completion.cpp \ |
|
200 |
runtime/JSArray.cpp \ |
|
201 |
runtime/JSAPIValueWrapper.cpp \ |
|
202 |
runtime/JSByteArray.cpp \ |
|
203 |
runtime/JSCell.cpp \ |
|
204 |
runtime/JSFunction.cpp \ |
|
205 |
runtime/JSGlobalObjectFunctions.cpp \ |
|
206 |
runtime/JSImmediate.cpp \ |
|
207 |
runtime/JSLock.cpp \ |
|
208 |
runtime/JSNumberCell.cpp \ |
|
209 |
runtime/JSObject.cpp \ |
|
210 |
runtime/JSString.cpp \ |
|
211 |
runtime/JSValue.cpp \ |
|
212 |
runtime/JSWrapperObject.cpp \ |
|
213 |
parser/Lexer.cpp \ |
|
214 |
runtime/Lookup.cpp \ |
|
215 |
runtime/MathObject.cpp \ |
|
216 |
runtime/NativeErrorConstructor.cpp \ |
|
217 |
runtime/NativeErrorPrototype.cpp \ |
|
218 |
parser/Nodes.cpp \ |
|
219 |
runtime/NumberConstructor.cpp \ |
|
220 |
runtime/NumberObject.cpp \ |
|
221 |
runtime/NumberPrototype.cpp \ |
|
222 |
runtime/ObjectConstructor.cpp \ |
|
223 |
runtime/ObjectPrototype.cpp \ |
|
224 |
runtime/Operations.cpp \ |
|
225 |
parser/Parser.cpp \ |
|
226 |
parser/ParserArena.cpp \ |
|
227 |
runtime/PropertyDescriptor.cpp \ |
|
228 |
runtime/PropertyNameArray.cpp \ |
|
229 |
runtime/PropertySlot.cpp \ |
|
230 |
runtime/PrototypeFunction.cpp \ |
|
231 |
runtime/RegExp.cpp \ |
|
232 |
runtime/RegExpConstructor.cpp \ |
|
233 |
runtime/RegExpObject.cpp \ |
|
234 |
runtime/RegExpPrototype.cpp \ |
|
235 |
runtime/ScopeChain.cpp \ |
|
236 |
runtime/SmallStrings.cpp \ |
|
237 |
runtime/StringConstructor.cpp \ |
|
238 |
runtime/StringObject.cpp \ |
|
239 |
runtime/StringPrototype.cpp \ |
|
240 |
runtime/Structure.cpp \ |
|
241 |
runtime/StructureChain.cpp \ |
|
242 |
runtime/UString.cpp \ |
|
243 |
profiler/HeavyProfile.cpp \ |
|
244 |
profiler/Profile.cpp \ |
|
245 |
profiler/ProfileGenerator.cpp \ |
|
246 |
profiler/ProfileNode.cpp \ |
|
247 |
profiler/Profiler.cpp \ |
|
248 |
profiler/TreeProfile.cpp \ |
|
249 |
wtf/DateMath.cpp \ |
|
250 |
wtf/FastMalloc.cpp \ |
|
22
79de32ba3296
Revision: 201017
Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
parents:
3
diff
changeset
|
251 |
wtf/symbian/BlockAllocatorSymbian.cpp \ |
0 | 252 |
wtf/Threading.cpp \ |
253 |
wtf/qt/MainThreadQt.cpp |
|
254 |
||
255 |
!contains(DEFINES, ENABLE_SINGLE_THREADED=1) { |
|
256 |
SOURCES += wtf/qt/ThreadingQt.cpp |
|
257 |
} else { |
|
258 |
DEFINES += ENABLE_JSC_MULTIPLE_THREADS=0 |
|
259 |
SOURCES += wtf/ThreadingNone.cpp |
|
260 |
} |
|
261 |
||
262 |
# GENERATOR 1-A: LUT creator |
|
263 |
lut.output = $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.lut.h |
|
264 |
lut.commands = perl $$PWD/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} |
|
265 |
lut.depend = ${QMAKE_FILE_NAME} |
|
266 |
lut.input = LUT_FILES |
|
267 |
lut.CONFIG += no_link |
|
268 |
addExtraCompiler(lut) |
|
269 |
||
270 |
# GENERATOR 1-B: particular LUT creator (for 1 file only) |
|
271 |
keywordlut.output = $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}Lexer.lut.h |
|
272 |
keywordlut.commands = perl $$PWD/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT} |
|
273 |
keywordlut.depend = ${QMAKE_FILE_NAME} |
|
274 |
keywordlut.input = KEYWORDLUT_FILES |
|
275 |
keywordlut.CONFIG += no_link |
|
276 |
addExtraCompiler(keywordlut) |
|
277 |
||
278 |
# GENERATOR 2: bison grammar |
|
279 |
jscbison.output = $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.cpp |
|
280 |
jscbison.commands = bison -d -p jscyy ${QMAKE_FILE_NAME} -o $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.c && $(MOVE) $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.c ${QMAKE_FILE_OUT} && $(MOVE) $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.tab.h $${GENERATED_SOURCES_DIR}$${QMAKE_DIR_SEP}${QMAKE_FILE_BASE}.h |
|
281 |
jscbison.depend = ${QMAKE_FILE_NAME} |
|
282 |
jscbison.input = JSCBISON |
|
283 |
jscbison.variable_out = GENERATED_SOURCES |
|
284 |
jscbison.dependency_type = TYPE_C |
|
285 |
jscbison.CONFIG = target_predeps |
|
286 |
addExtraCompilerWithHeader(jscbison) |
|
287 |