1 | # JavaScriptCore - Qt4 build info
|
---|
2 | VPATH += $$PWD
|
---|
3 |
|
---|
4 | INCLUDEPATH += tmp
|
---|
5 | INCLUDEPATH += $$PWD $$PWD/kjs $$PWD/wtf $$PWD/wtf/unicode $$PWD/VM $$PWD/profiler
|
---|
6 | DEPENDPATH += $$PWD $$PWD/kjs $$PWD/wtf $$PWD/wtf/unicode $$PWD/VM $$PWD/profiler
|
---|
7 | DEFINES -= KJS_IDENTIFIER_HIDE_GLOBALS
|
---|
8 | DEFINES += BUILDING_QT__
|
---|
9 |
|
---|
10 | win32-msvc*: INCLUDEPATH += $$PWD/os-win32
|
---|
11 |
|
---|
12 | isEmpty(GENERATED_SOURCES_DIR):GENERATED_SOURCES_DIR = tmp
|
---|
13 |
|
---|
14 | include(pcre/pcre.pri)
|
---|
15 |
|
---|
16 | LUT_FILES += \
|
---|
17 | kjs/date_object.cpp \
|
---|
18 | kjs/NumberObject.cpp \
|
---|
19 | kjs/string_object.cpp \
|
---|
20 | kjs/ArrayPrototype.cpp \
|
---|
21 | kjs/MathObject.cpp \
|
---|
22 | kjs/RegExpObject.cpp
|
---|
23 |
|
---|
24 | KEYWORDLUT_FILES += \
|
---|
25 | kjs/keywords.table
|
---|
26 |
|
---|
27 | KJSBISON += \
|
---|
28 | kjs/grammar.y
|
---|
29 |
|
---|
30 | SOURCES += \
|
---|
31 | wtf/Assertions.cpp \
|
---|
32 | wtf/HashTable.cpp \
|
---|
33 | wtf/MainThread.cpp \
|
---|
34 | wtf/unicode/CollatorDefault.cpp \
|
---|
35 | wtf/unicode/icu/CollatorICU.cpp \
|
---|
36 | wtf/unicode/UTF8.cpp \
|
---|
37 | API/JSBase.cpp \
|
---|
38 | API/JSCallbackConstructor.cpp \
|
---|
39 | API/JSCallbackFunction.cpp \
|
---|
40 | API/JSCallbackObject.cpp \
|
---|
41 | API/JSClassRef.cpp \
|
---|
42 | API/JSContextRef.cpp \
|
---|
43 | API/JSObjectRef.cpp \
|
---|
44 | API/JSStringRef.cpp \
|
---|
45 | API/JSValueRef.cpp \
|
---|
46 | kjs/InitializeThreading.cpp \
|
---|
47 | kjs/JSGlobalData.cpp \
|
---|
48 | kjs/JSGlobalObject.cpp \
|
---|
49 | kjs/JSVariableObject.cpp \
|
---|
50 | kjs/JSActivation.cpp \
|
---|
51 | kjs/JSNotAnObject.cpp \
|
---|
52 | VM/CodeBlock.cpp \
|
---|
53 | VM/CodeGenerator.cpp \
|
---|
54 | VM/ExceptionHelpers.cpp \
|
---|
55 | VM/Instruction.cpp \
|
---|
56 | VM/JSPropertyNameIterator.cpp \
|
---|
57 | VM/LabelID.cpp \
|
---|
58 | VM/Machine.cpp \
|
---|
59 | VM/Opcode.cpp \
|
---|
60 | VM/Register.cpp \
|
---|
61 | VM/RegisterFile.cpp \
|
---|
62 | VM/RegisterFileStack.cpp \
|
---|
63 | VM/RegisterID.cpp
|
---|
64 |
|
---|
65 | # AllInOneFile.cpp helps gcc analize and optimize code
|
---|
66 | # Other compilers may be able to do this at link time
|
---|
67 | SOURCES += \
|
---|
68 | kjs/JSFunction.cpp \
|
---|
69 | kjs/debugger.cpp \
|
---|
70 | kjs/JSArray.cpp \
|
---|
71 | kjs/ArrayPrototype.cpp \
|
---|
72 | kjs/BooleanObject.cpp \
|
---|
73 | kjs/collector.cpp \
|
---|
74 | kjs/CommonIdentifiers.cpp \
|
---|
75 | kjs/date_object.cpp \
|
---|
76 | kjs/DateMath.cpp \
|
---|
77 | kjs/DebuggerCallFrame.cpp \
|
---|
78 | kjs/dtoa.cpp \
|
---|
79 | kjs/error_object.cpp \
|
---|
80 | kjs/ExecState.cpp \
|
---|
81 | kjs/FunctionPrototype.cpp \
|
---|
82 | kjs/identifier.cpp \
|
---|
83 | kjs/internal.cpp \
|
---|
84 | kjs/interpreter.cpp \
|
---|
85 | kjs/JSImmediate.cpp \
|
---|
86 | kjs/JSLock.cpp \
|
---|
87 | kjs/JSWrapperObject.cpp \
|
---|
88 | kjs/lexer.cpp \
|
---|
89 | kjs/list.cpp \
|
---|
90 | kjs/lookup.cpp \
|
---|
91 | kjs/MathObject.cpp \
|
---|
92 | kjs/nodes.cpp \
|
---|
93 | kjs/nodes2string.cpp \
|
---|
94 | kjs/NumberObject.cpp \
|
---|
95 | kjs/JSObject.cpp \
|
---|
96 | kjs/object_object.cpp \
|
---|
97 | kjs/operations.cpp \
|
---|
98 | kjs/Parser.cpp \
|
---|
99 | kjs/PropertyMap.cpp \
|
---|
100 | kjs/PropertySlot.cpp \
|
---|
101 | kjs/PropertyNameArray.cpp \
|
---|
102 | kjs/regexp.cpp \
|
---|
103 | kjs/RegExpObject.cpp \
|
---|
104 | kjs/ScopeChain.cpp \
|
---|
105 | kjs/string_object.cpp \
|
---|
106 | kjs/ustring.cpp \
|
---|
107 | kjs/JSValue.cpp \
|
---|
108 | profiler/ProfileNode.cpp \
|
---|
109 | profiler/Profile.cpp \
|
---|
110 | profiler/Profiler.cpp \
|
---|
111 | wtf/FastMalloc.cpp \
|
---|
112 | wtf/ThreadingQt.cpp \
|
---|
113 | wtf/qt/MainThreadQt.cpp
|
---|
114 |
|
---|
115 | !CONFIG(QTDIR_build) {
|
---|
116 | defineTest(addExtraCompiler) {
|
---|
117 | QMAKE_EXTRA_COMPILERS += $$1
|
---|
118 | generated_files.depends += compiler_$${1}_make_all
|
---|
119 | export(QMAKE_EXTRA_COMPILERS)
|
---|
120 | export(generated_files.depends)
|
---|
121 | return(true)
|
---|
122 | }
|
---|
123 | }
|
---|
124 |
|
---|
125 | # GENERATOR 1-A: LUT creator
|
---|
126 | lut.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.lut.h
|
---|
127 | lut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
|
---|
128 | lut.depend = ${QMAKE_FILE_NAME}
|
---|
129 | lut.input = LUT_FILES
|
---|
130 | lut.CONFIG += no_link
|
---|
131 | addExtraCompiler(lut)
|
---|
132 |
|
---|
133 | # GENERATOR 1-B: particular LUT creator (for 1 file only)
|
---|
134 | keywordlut.output = $$GENERATED_SOURCES_DIR/lexer.lut.h
|
---|
135 | keywordlut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
|
---|
136 | keywordlut.depend = ${QMAKE_FILE_NAME}
|
---|
137 | keywordlut.input = KEYWORDLUT_FILES
|
---|
138 | keywordlut.CONFIG += no_link
|
---|
139 | addExtraCompiler(keywordlut)
|
---|
140 |
|
---|
141 | # GENERATOR 2: bison grammar
|
---|
142 | kjsbison.output = $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.cpp
|
---|
143 | kjsbison.commands = bison -d -p kjsyy ${QMAKE_FILE_NAME} -o ${QMAKE_FILE_BASE}.tab.c && $(MOVE) ${QMAKE_FILE_BASE}.tab.c ${QMAKE_FILE_OUT} && $(MOVE) ${QMAKE_FILE_BASE}.tab.h $$GENERATED_SOURCES_DIR/${QMAKE_FILE_BASE}.h
|
---|
144 | kjsbison.depend = ${QMAKE_FILE_NAME}
|
---|
145 | kjsbison.input = KJSBISON
|
---|
146 | kjsbison.variable_out = GENERATED_SOURCES
|
---|
147 | kjsbison.dependency_type = TYPE_C
|
---|
148 | kjsbison.CONFIG = target_predeps
|
---|
149 | kjsbison.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_GENERATED_SOURCES_DIR}${QMAKE_FILE_BASE}.h
|
---|
150 | addExtraCompiler(kjsbison)
|
---|