diff options
author | Simon Hausmann <simon.hausmann@digia.com> | 2013-04-15 11:50:16 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@digia.com> | 2013-04-15 13:03:20 +0200 |
commit | 891f7029457c5135c365ec32c06e7750abaceeab (patch) | |
tree | 0bf15a932ea3176b7b7da2fd6276c00e1da9d9b5 /src/qml/qml/v4vm/v4vm.pri | |
parent | db78a10ea2537141e58740bd179db19183d236e8 (diff) |
Fix compilation with built-in v4vm JS engine
Change-Id: Ieda9267e296acf6392a5461f4cfb9233a7a409a0
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/qml/qml/v4vm/v4vm.pri')
-rw-r--r-- | src/qml/qml/v4vm/v4vm.pri | 158 |
1 files changed, 158 insertions, 0 deletions
diff --git a/src/qml/qml/v4vm/v4vm.pri b/src/qml/qml/v4vm/v4vm.pri new file mode 100644 index 0000000000..7a600b7a3d --- /dev/null +++ b/src/qml/qml/v4vm/v4vm.pri @@ -0,0 +1,158 @@ +include(llvm_installation.pri) +include(../../../3rdparty/masm/masm-defs.pri) + +CONFIG += exceptions + +!llvm: DEFINES += QMLJS_NO_LLVM + +CONFIG += warn_off + +INCLUDEPATH += $$PWD + +SOURCES += \ + $$PWD/qv4codegen.cpp \ + $$PWD/qv4jsir.cpp \ + $$PWD/qv4engine.cpp \ + $$PWD/qv4context.cpp \ + $$PWD/qv4runtime.cpp \ + $$PWD/qv4value.cpp \ + $$PWD/qv4syntaxchecker.cpp \ + $$PWD/qv4isel_masm.cpp \ + $$PWD/llvm_runtime.cpp \ + $$PWD/qv4isel_p.cpp \ + $$PWD/qv4debugging.cpp \ + $$PWD/qv4lookup.cpp \ + $$PWD/qv4mm.cpp \ + $$PWD/qv4managed.cpp \ + $$PWD/qv4internalclass.cpp \ + $$PWD/qv4sparsearray.cpp \ + $$PWD/qv4arrayobject.cpp \ + $$PWD/qv4argumentsobject.cpp \ + $$PWD/qv4booleanobject.cpp \ + $$PWD/qv4dateobject.cpp \ + $$PWD/qv4errorobject.cpp \ + $$PWD/qv4functionobject.cpp \ + $$PWD/qv4globalobject.cpp \ + $$PWD/qv4jsonobject.cpp \ + $$PWD/qv4mathobject.cpp \ + $$PWD/qv4numberobject.cpp \ + $$PWD/qv4object.cpp \ + $$PWD/qv4objectproto.cpp \ + $$PWD/qv4regexpobject.cpp \ + $$PWD/qv4stringobject.cpp \ + $$PWD/qv4string.cpp \ + $$PWD/qv4objectiterator.cpp \ + $$PWD/qv4regexp.cpp \ + $$PWD/qv4unwindhelper.cpp \ + $$PWD/qv4v8.cpp \ + $$PWD/qv4executableallocator.cpp + +HEADERS += \ + $$PWD/qv4global_p.h \ + $$PWD/qv4codegen_p.h \ + $$PWD/qv4jsir_p.h \ + $$PWD/qv4engine_p.h \ + $$PWD/qv4context_p.h \ + $$PWD/qv4runtime_p.h \ + $$PWD/qv4math_p.h \ + $$PWD/qv4value_p.h \ + $$PWD/qv4syntaxchecker_p.h \ + $$PWD/qv4isel_masm_p.h \ + $$PWD/qv4isel_p.h \ + $$PWD/qv4isel_util_p.h \ + $$PWD/qv4debugging_p.h \ + $$PWD/qv4lookup_p.h \ + $$PWD/qv4identifier_p.h \ + $$PWD/qv4mm_p.h \ + $$PWD/qv4managed_p.h \ + $$PWD/qv4internalclass_p.h \ + $$PWD/qv4sparsearray_p.h \ + $$PWD/qv4arrayobject_p.h \ + $$PWD/qv4argumentsobject_p.h \ + $$PWD/qv4booleanobject_p.h \ + $$PWD/qv4dateobject_p.h \ + $$PWD/qv4errorobject_p.h \ + $$PWD/qv4functionobject_p.h \ + $$PWD/qv4globalobject_p.h \ + $$PWD/qv4jsonobject_p.h \ + $$PWD/qv4mathobject_p.h \ + $$PWD/qv4numberobject_p.h \ + $$PWD/qv4object_p.h \ + $$PWD/qv4objectproto_p.h \ + $$PWD/qv4regexpobject_p.h \ + $$PWD/qv4stringobject_p.h \ + $$PWD/qv4string_p.h \ + $$PWD/qv4property_p.h \ + $$PWD/qv4objectiterator_p.h \ + $$PWD/qv4regexp_p.h \ + $$PWD/qv4unwindhelper_p.h \ + $$PWD/qv4unwindhelper_p-dw2.h \ + $$PWD/qv4unwindhelper_p-arm.h \ + $$PWD/qv4v8_p.h \ + $$PWD/qcalculatehash_p.h \ + $$PWD/qv4util_p.h \ + $$PWD/qv4executableallocator_p.h + +llvm-libs { + +SOURCES += \ + $$PWD/qv4isel_llvm.cpp + +HEADERS += \ + $$PWD/qv4isel_llvm_p.h \ + $$PWD/qv4_llvm_p.h + +LLVM_RUNTIME_BC = $$PWD/llvm_runtime.bc +DEFINES += LLVM_RUNTIME="\"\\\"$$LLVM_RUNTIME_BC\\\"\"" +DEFINES += QMLJS_WITH_LLVM + +INCLUDEPATH += \ + $$system($$LLVM_CONFIG --includedir) + +QMAKE_CXXFLAGS += $$system($$LLVM_CONFIG --cppflags) -fvisibility-inlines-hidden +QMAKE_CXXFLAGS -= -pedantic +QMAKE_CXXFLAGS -= -Wcovered-switch-default + +LIBS += \ + $$system($$LLVM_CONFIG --ldflags) \ + $$system($$LLVM_CONFIG --libs core jit bitreader linker ipo target x86 arm native) + +QMAKE_EXTRA_TARGETS += gen_llvm_runtime + +GEN_LLVM_RUNTIME_FLAGS = $$system($$LLVM_CONFIG --cppflags) +GEN_LLVM_RUNTIME_FLAGS -= -pedantic + +gen_llvm_runtime.target = llvm_runtime +gen_llvm_runtime.commands = clang -O2 -emit-llvm -c -I$$PWD -I$$PWD/../3rdparty/masm $$join(QT.core.includes, " -I", "-I") $$GEN_LLVM_RUNTIME_FLAGS -DQMLJS_LLVM_RUNTIME llvm_runtime.cpp -o $$LLVM_RUNTIME_BC +} + +# Use SSE2 floating point math on 32 bit instead of the default +# 387 to make test results pass on 32 and on 64 bit builds. +linux-g++*:isEqual(QT_ARCH,i386) { + QMAKE_CFLAGS += -march=pentium4 -msse2 -mfpmath=sse + QMAKE_CXXFLAGS += -march=pentium4 -msse2 -mfpmath=sse +} + +linux*|mac { + LIBS += -ldl +} + +debug-with-libunwind { + UW_INC=$$(LIBUNWIND_INCLUDES) + isEmpty(UW_INC): error("Please set LIBUNWIND_INCLUDES") + INCLUDEPATH += $$UW_INC + UW_LIBS=$$(LIBUNWIND_LIBS) + isEmpty(UW_LIBS): error("Please set LIBUNWIND_LIBS") + LIBS += -L$$UW_LIBS + equals(QT_ARCH, arm): LIBS += -lunwind-arm + LIBS += -lunwind-dwarf-common -lunwind-dwarf-local -lunwind-elf32 -lunwind + DEFINES += WTF_USE_LIBUNWIND_DEBUG=1 +} + +valgrind { + DEFINES += V4_USE_VALGRIND +} + +include(moth/moth.pri) +include(../../../3rdparty/masm/masm.pri) +include(../../../3rdparty/double-conversion/double-conversion.pri) |