1 # JavaScriptCore - Qt4 build info
5 INCLUDEPATH += $$PWD $$PWD/kjs $$PWD/bindings $$PWD/bindings/c $$PWD/wtf
6 DEPENDPATH += $$PWD $$PWD/kjs $$PWD/bindings $$PWD/bindings/c $$PWD/wtf
7 DEFINES -= KJS_IDENTIFIER_HIDE_GLOBALS
8 qt-port:INCLUDEPATH += $$PWD/bindings/qt
9 qt-port:DEFINES += BUILDING_QT__
10 gtk-port:DEFINES += BUILDING_GTK__
12 win32-msvc*: INCLUDEPATH += $$PWD/os-win32
14 include(pcre/pcre.pri)
18 kjs/number_object.cpp \
19 kjs/string_object.cpp \
20 kjs/array_object.cpp \
30 gtk-port: SOURCES += wtf/TCSystemAlloc.cpp
36 wtf/unicode/UTF8.cpp \
37 bindings/NP_jsobject.cpp \
38 bindings/npruntime.cpp \
39 bindings/runtime_array.cpp \
40 bindings/runtime.cpp \
41 bindings/runtime_method.cpp \
42 bindings/runtime_object.cpp \
43 bindings/runtime_root.cpp \
44 bindings/c/c_class.cpp \
45 bindings/c/c_instance.cpp \
46 bindings/c/c_runtime.cpp \
47 bindings/c/c_utility.cpp \
49 API/JSCallbackConstructor.cpp \
50 API/JSCallbackFunction.cpp \
51 API/JSCallbackObject.cpp \
53 API/JSContextRef.cpp \
58 kjs/JSWrapperObject.cpp \
59 kjs/PropertyNameArray.cpp \
60 kjs/array_instance.cpp \
61 kjs/array_object.cpp \
64 kjs/CommonIdentifiers.cpp \
68 kjs/error_object.cpp \
72 kjs/function_object.cpp \
83 kjs/nodes2string.cpp \
84 kjs/number_object.cpp \
86 kjs/object_object.cpp \
89 kjs/property_map.cpp \
90 kjs/property_slot.cpp \
92 kjs/regexp_object.cpp \
94 kjs/string_object.cpp \
99 bindings/qt/qt_class.cpp \
100 bindings/qt/qt_instance.cpp \
101 bindings/qt/qt_runtime.cpp
103 !CONFIG(QTDIR_build) {
104 defineTest(addExtraCompiler) {
105 QMAKE_EXTRA_COMPILERS += $$1
106 generated_files.depends += compiler_$${1}_make_all
107 export(QMAKE_EXTRA_COMPILERS)
108 export(generated_files.depends)
113 # GENERATOR 1-A: LUT creator
114 lut.output = tmp/${QMAKE_FILE_BASE}.lut.h
115 lut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
116 lut.depend = ${QMAKE_FILE_NAME}
117 lut.input = LUT_FILES
118 lut.CONFIG += no_link
119 addExtraCompiler(lut)
121 # GENERATOR 1-B: particular LUT creator (for 1 file only)
122 keywordlut.output = tmp/lexer.lut.h
123 keywordlut.commands = perl $$PWD/kjs/create_hash_table ${QMAKE_FILE_NAME} -i > ${QMAKE_FILE_OUT}
124 keywordlut.depend = ${QMAKE_FILE_NAME}
125 keywordlut.input = KEYWORDLUT_FILES
126 keywordlut.CONFIG += no_link
127 addExtraCompiler(keywordlut)
129 # GENERATOR 2: bison grammar
130 kjsbison.output = tmp/${QMAKE_FILE_BASE}.cpp
131 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 tmp/${QMAKE_FILE_BASE}.h
132 kjsbison.depend = ${QMAKE_FILE_NAME}
133 kjsbison.input = KJSBISON
134 kjsbison.variable_out = GENERATED_SOURCES
135 kjsbison.dependency_type = TYPE_C
136 kjsbison.CONFIG = target_predeps
137 kjsbison.clean = ${QMAKE_FILE_OUT} ${QMAKE_VAR_OBJECTS_DIR_WTR}${QMAKE_FILE_BASE}.h
138 addExtraCompiler(kjsbison)