aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/scriptengine
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/scriptengine')
-rw-r--r--src/lib/scriptengine/CMakeLists.txt367
-rw-r--r--src/lib/scriptengine/scriptengine.pro98
-rw-r--r--src/lib/scriptengine/scriptengine.qbs464
-rw-r--r--src/lib/scriptengine/use_scriptengine.pri30
4 files changed, 0 insertions, 959 deletions
diff --git a/src/lib/scriptengine/CMakeLists.txt b/src/lib/scriptengine/CMakeLists.txt
deleted file mode 100644
index 7e5a60d69..000000000
--- a/src/lib/scriptengine/CMakeLists.txt
+++ /dev/null
@@ -1,367 +0,0 @@
-set(QT_SCRIPT_PATH "${CMAKE_CURRENT_SOURCE_DIR}/../../shared/qtscript/src/")
-
-if (UNIX)
- set(_USE_SYSTEM_MALLOC NO)
-else()
- set(_USE_SYSTEM_MALLOC YES)
-endif (UNIX)
-
-set(JAVASCRIPT_CORE_INCLUDES
- assembler
- bytecode
- bytecompiler
- debugger
- interpreter
- jit
- parser
- pcre
- profiler
- runtime
- wrec
- wtf
- wtf/unicode
- yarr
- API
- ForwardingHeaders
- generated
-)
-list_transform_prepend(JAVASCRIPT_CORE_INCLUDES "${QT_SCRIPT_PATH}/3rdparty/javascriptcore/JavaScriptCore/")
-
-set(QT_SCRIPT_PUBLIC_INCLUDES
- "${CMAKE_CURRENT_SOURCE_DIR}/include"
- "${CMAKE_CURRENT_BINARY_DIR}/include"
-)
-
-set(QT_SCRIPT_INCLUDES
- "${QT_SCRIPT_PATH}/3rdparty/javascriptcore"
- "${QT_SCRIPT_PATH}/3rdparty/javascriptcore/JavaScriptCore"
- "${QT_SCRIPT_PATH}/script"
- "${QT_SCRIPT_PATH}/script/api"
- "${QT_SCRIPT_PATH}/script/parser"
- "${CMAKE_CURRENT_BINARY_DIR}/include/QtScript/${QT_VERSION}/QtScript"
-)
-
-set(QT_SCRIPT_DEFINES
- "QT_BUILD_SCRIPT_LIB"
- "QT_NO_USING_NAMESPACE"
- "JSC=QTJSC"
- "jscyyparse=qtjscyyparse"
- "jscyylex=qtjscyylex"
- "jscyyerror=qtjscyyerror"
- "WTF=QTWTF"
- "LOG_DISABLED=1"
- "WTF_USE_JAVASCRIPTCORE_BINDINGS=1"
- "WTF_CHANGES=1"
- "JS_NO_EXPORT"
-
- # JavaScriptCore
- "BUILDING_QT__"
- "BUILDING_JavaScriptCore"
- "BUILDING_WTF"
- "ENABLE_JIT=0"
- "ENABLE_YARR_JIT=0"
- "ENABLE_YARR=0"
-
- # WebKit
- "WTF_USE_ACCELERATED_COMPOSITING"
-)
-
-if (APPLE)
- list(APPEND QT_SCRIPT_DEFINES "ENABLE_JSC_MULTIPLE_THREADS=0")
-elseif(WIN32)
- list(APPEND QT_SCRIPT_DEFINES "NOMINMAX" "_CRT_RAND_S")
-endif()
-
-if (MSVC)
- set(QT_SCRIPT_CXX_FLAGS "/wd4018" "/wd4146" "/wd4244" "/wd4267" "/wd4291"
- "/wd4334" "/wd4344" "/wd4396" "/wd4503" "/wd4800" "/wd4819" "/wd4996")
-else()
- set(QT_SCRIPT_CXX_FLAGS "-fno-strict-aliasing" "-w"
- "-Wall" "-Wreturn-type" "-Wcast-align" "-Wchar-subscripts"
- "-Wformat-security" "-Wreturn-type" "-Wno-unused-parameter"
- "-Wno-sign-compare" "-Wno-switch" "-Wno-switch-enum" "-Wundef"
- "-Wmissing-noreturn" "-Winit-self" "-Wno-deprecated" "-Wno-suggest-attribute=noreturn"
- "-Wno-nonnull-compare" "-pthread")
-endif()
-
-set(QT_SCRIPT_PUBLIC_DEPENDS Qt${QT_VERSION_MAJOR}::Core)
-if (UNIX)
- list(APPEND QT_SCRIPT_PUBLIC_DEPENDS "pthread")
-elseif(WIN32)
- list(APPEND QT_SCRIPT_PUBLIC_DEPENDS "winmm")
-endif()
-
-set(PCRE_SOURCES
- pcre_compile.cpp
- pcre_exec.cpp
- pcre_tables.cpp
- pcre_ucp_searchfuncs.cpp
- pcre_xclass.cpp
-)
-list_transform_prepend(PCRE_SOURCES "${QT_SCRIPT_PATH}/3rdparty/javascriptcore/JavaScriptCore/pcre/")
-
-if (NOT _USE_SYSTEM_MALLOC)
- set(SYSTEM_MALLOC_SOURCES
- wtf/TCSystemAlloc.cpp
- )
- list_transform_prepend(SYSTEM_MALLOC_SOURCES "${QT_SCRIPT_PATH}/3rdparty/javascriptcore/JavaScriptCore/")
-
-else()
- set(SYSTEM_MALLOC_SOURCES "")
- list(APPEND QT_SCRIPT_DEFINES "USE_SYSTEM_MALLOC")
-endif()
-
-set(JAVASCRIPT_CORE_SOURCES
- API/JSBase.cpp
- API/JSCallbackConstructor.cpp
- API/JSCallbackFunction.cpp
- API/JSCallbackObject.cpp
- API/JSClassRef.cpp
- API/JSContextRef.cpp
- API/JSObjectRef.cpp
- API/JSStringRef.cpp
- API/JSValueRef.cpp
- API/OpaqueJSString.cpp
- assembler/ARMAssembler.cpp
- assembler/MacroAssemblerARM.cpp
- bytecode/CodeBlock.cpp
- bytecode/JumpTable.cpp
- bytecode/Opcode.cpp
- bytecode/SamplingTool.cpp
- bytecode/StructureStubInfo.cpp
- bytecompiler/BytecodeGenerator.cpp
- bytecompiler/NodesCodegen.cpp
- debugger/DebuggerActivation.cpp
- debugger/DebuggerCallFrame.cpp
- debugger/Debugger.cpp
- generated/Grammar.cpp
- interpreter/CallFrame.cpp
- interpreter/Interpreter.cpp
- interpreter/RegisterFile.cpp
- parser/Lexer.cpp
- parser/Nodes.cpp
- parser/ParserArena.cpp
- parser/Parser.cpp
- profiler/Profile.cpp
- profiler/ProfileGenerator.cpp
- profiler/ProfileNode.cpp
- profiler/Profiler.cpp
- runtime/ArgList.cpp
- runtime/Arguments.cpp
- runtime/ArrayConstructor.cpp
- runtime/ArrayPrototype.cpp
- runtime/BooleanConstructor.cpp
- runtime/BooleanObject.cpp
- runtime/BooleanPrototype.cpp
- runtime/CallData.cpp
- runtime/Collector.cpp
- runtime/CommonIdentifiers.cpp
- runtime/Completion.cpp
- runtime/ConstructData.cpp
- runtime/DateConstructor.cpp
- runtime/DateConversion.cpp
- runtime/DateInstance.cpp
- runtime/DatePrototype.cpp
- runtime/ErrorConstructor.cpp
- runtime/Error.cpp
- runtime/ErrorInstance.cpp
- runtime/ErrorPrototype.cpp
- runtime/ExceptionHelpers.cpp
- runtime/Executable.cpp
- runtime/FunctionConstructor.cpp
- runtime/FunctionPrototype.cpp
- runtime/GetterSetter.cpp
- runtime/GlobalEvalFunction.cpp
- runtime/Identifier.cpp
- runtime/InitializeThreading.cpp
- runtime/InternalFunction.cpp
- runtime/JSActivation.cpp
- runtime/JSAPIValueWrapper.cpp
- runtime/JSArray.cpp
- runtime/JSByteArray.cpp
- runtime/JSCell.cpp
- runtime/JSFunction.cpp
- runtime/JSGlobalData.cpp
- runtime/JSGlobalObject.cpp
- runtime/JSGlobalObjectFunctions.cpp
- runtime/JSImmediate.cpp
- runtime/JSLock.cpp
- runtime/JSNotAnObject.cpp
- runtime/JSNumberCell.cpp
- runtime/JSObject.cpp
- runtime/JSONObject.cpp
- runtime/JSPropertyNameIterator.cpp
- runtime/JSStaticScopeObject.cpp
- runtime/JSString.cpp
- runtime/JSValue.cpp
- runtime/JSVariableObject.cpp
- runtime/JSWrapperObject.cpp
- runtime/LiteralParser.cpp
- runtime/Lookup.cpp
- runtime/MarkStackPosix.cpp
- runtime/MarkStackSymbian.cpp
- runtime/MarkStackWin.cpp
- runtime/MarkStack.cpp
- runtime/MathObject.cpp
- runtime/NativeErrorConstructor.cpp
- runtime/NativeErrorPrototype.cpp
- runtime/NumberConstructor.cpp
- runtime/NumberObject.cpp
- runtime/NumberPrototype.cpp
- runtime/ObjectConstructor.cpp
- runtime/ObjectPrototype.cpp
- runtime/Operations.cpp
- runtime/PropertyDescriptor.cpp
- runtime/PropertyNameArray.cpp
- runtime/PropertySlot.cpp
- runtime/PrototypeFunction.cpp
- runtime/RegExpConstructor.cpp
- runtime/RegExp.cpp
- runtime/RegExpObject.cpp
- runtime/RegExpPrototype.cpp
- runtime/ScopeChain.cpp
- runtime/SmallStrings.cpp
- runtime/StringConstructor.cpp
- runtime/StringObject.cpp
- runtime/StringPrototype.cpp
- runtime/StructureChain.cpp
- runtime/Structure.cpp
- runtime/TimeoutChecker.cpp
- runtime/UString.cpp
- runtime/UStringImpl.cpp
- wtf/Assertions.cpp
- wtf/ByteArray.cpp
- wtf/CurrentTime.cpp
- wtf/DateMath.cpp
- wtf/dtoa.cpp
- wtf/FastMalloc.cpp
- wtf/HashTable.cpp
- wtf/MainThread.cpp
- wtf/qt/MainThreadQt.cpp
- wtf/qt/ThreadingQt.cpp
- wtf/RandomNumber.cpp
- wtf/RefCountedLeakCounter.cpp
- wtf/ThreadingNone.cpp
- wtf/Threading.cpp
- wtf/TypeTraits.cpp
- wtf/unicode/CollatorDefault.cpp
- wtf/unicode/icu/CollatorICU.cpp
- wtf/unicode/UTF8.cpp
-)
-list_transform_prepend(JAVASCRIPT_CORE_SOURCES "${QT_SCRIPT_PATH}/3rdparty/javascriptcore/JavaScriptCore/")
-
-set(API_SOURCES
- qscriptable.cpp
- qscriptable.h
- qscriptable_p.h
- qscriptclass.cpp
- qscriptclass.h
- qscriptclasspropertyiterator.cpp
- qscriptclasspropertyiterator.h
- qscriptcontext.cpp
- qscriptcontext.h
- qscriptcontextinfo.cpp
- qscriptcontextinfo.h
- qscriptcontext_p.h
- qscriptengineagent.cpp
- qscriptengineagent.h
- qscriptengineagent_p.h
- qscriptengine.cpp
- qscriptengine.h
- qscriptengine_p.h
- qscriptextensioninterface.h
- qscriptextensionplugin.cpp
- qscriptextensionplugin.h
- qscriptprogram.cpp
- qscriptprogram.h
- qscriptprogram_p.h
- qscriptstring.cpp
- qscriptstring.h
- qscriptstring_p.h
- qscriptvalue.cpp
- qscriptvalue.h
- qscriptvalueiterator.cpp
- qscriptvalueiterator.h
- qscriptvalue_p.h
- qtscriptglobal.h
-)
-list_transform_prepend(API_SOURCES "${QT_SCRIPT_PATH}/script/api/")
-
-set(BRIDGE_SOURCES
- qscriptactivationobject.cpp
- qscriptactivationobject_p.h
- qscriptclassobject.cpp
- qscriptclassobject_p.h
- qscriptfunction.cpp
- qscriptfunction_p.h
- qscriptglobalobject.cpp
- qscriptglobalobject_p.h
- qscriptobject.cpp
- qscriptobject_p.h
- qscriptqobject.cpp
- qscriptqobject_p.h
- qscriptstaticscopeobject.cpp
- qscriptstaticscopeobject_p.h
- qscriptvariant.cpp
- qscriptvariant_p.h
-)
-list_transform_prepend(BRIDGE_SOURCES "${QT_SCRIPT_PATH}/script/bridge/")
-
-set(PARSER_SOURCES
- qscriptast.cpp
- qscriptastfwd_p.h
- qscriptast_p.h
- qscriptastvisitor.cpp
- qscriptastvisitor_p.h
- qscriptgrammar.cpp
- qscriptgrammar_p.h
- qscriptlexer.cpp
- qscriptlexer_p.h
- qscriptsyntaxchecker.cpp
- qscriptsyntaxchecker_p.h
-)
-list_transform_prepend(PARSER_SOURCES "${QT_SCRIPT_PATH}/script/parser/")
-
-find_package(Perl)
-
-get_target_property(_QT_MOC_EXECUTABLE Qt${QT_VERSION_MAJOR}::moc IMPORTED_LOCATION)
-get_filename_component(_QT_LIBEXEC_DIRECTORY ${_QT_MOC_EXECUTABLE} DIRECTORY)
-
-file(GLOB API_HEADERS "${QT_SCRIPT_PATH}/script/api/*.h")
-
-set(EXTERNAL_DEPENDS "")
-if(APPLE)
- set(EXTERNAL_DEPENDS "-framework CoreFoundation")
-endif()
-
-if(WIN32)
- set(EXTERNAL_DEPENDS "winmm")
-endif()
-
-add_custom_command(
- OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/include/QtScript/qscriptengine.h"
- COMMAND ${PERL_EXECUTABLE} "${_QT_LIBEXEC_DIRECTORY}/syncqt.pl"
- -minimal
- -version "${QT_VERSION}"
- -outdir ${CMAKE_CURRENT_BINARY_DIR}
- "${QT_SCRIPT_PATH}/.."
- BYPRODUCTS
- DEPENDS ${API_HEADERS}
- )
-
-add_qbs_library(qbsscriptengine
- DEFINES ${QT_SCRIPT_DEFINES}
- DEPENDS Qt${QT_VERSION_MAJOR}::CorePrivate Qt6Core5Compat ${EXTERNAL_DEPENDS}
- PUBLIC_DEPENDS ${QT_SCRIPT_PUBLIC_DEPENDS}
- INCLUDES ${QT_SCRIPT_PUBLIC_INCLUDES} ${QT_SCRIPT_INCLUDES} ${JAVASCRIPT_CORE_INCLUDES}
- PUBLIC_INCLUDES ${QT_SCRIPT_PUBLIC_INCLUDES}
- SOURCES
- "${CMAKE_CURRENT_BINARY_DIR}/include/QtScript/qscriptengine.h"
- ${PCRE_SOURCES}
- ${SYSTEM_MALLOC_SOURCES}
- ${JAVASCRIPT_CORE_SOURCES}
- ${API_SOURCES}
- ${BRIDGE_SOURCES}
- ${PARSER_SOURCES}
- )
-target_compile_options(qbsscriptengine PRIVATE ${QT_SCRIPT_CXX_FLAGS})
diff --git a/src/lib/scriptengine/scriptengine.pro b/src/lib/scriptengine/scriptengine.pro
deleted file mode 100644
index 34fd5a5f8..000000000
--- a/src/lib/scriptengine/scriptengine.pro
+++ /dev/null
@@ -1,98 +0,0 @@
-TARGET = qbsscriptengine
-include(../library.pri)
-
-QT = core-private
-
-versionAtLeast(QT_VERSION, 6.0.0) {
- QT += core5compat
-}
-
-DEFINES += QT_BUILD_SCRIPT_LIB
-
-DEFINES += JSC=QTJSC jscyyparse=qtjscyyparse jscyylex=qtjscyylex jscyyerror=qtjscyyerror WTF=QTWTF
-DEFINES += QT_NO_USING_NAMESPACE
-
-CONFIG += building-libs
-
-GENERATED_SOURCES_DIR = generated
-
-CONFIG += QTDIR_build
-include(../../shared/qtscript/src/3rdparty/javascriptcore/WebKit.pri)
-
-# Disable a few warnings on Windows.
-# These are in addition to the ones disabled in WebKit.pri
-msvc: QMAKE_CXXFLAGS += -wd4396 -wd4099
-else: QMAKE_CXXFLAGS += -Wno-deprecated
-
-# We cannot afford -O0 for QtScript even in debug builds.
-QMAKE_CXXFLAGS_DEBUG += -O2
-
-darwin {
- DEFINES += ENABLE_JSC_MULTIPLE_THREADS=0
- contains(QT_CONFIG, coreservices) {
- LIBS_PRIVATE += -framework CoreServices
- } else {
- LIBS_PRIVATE += -framework CoreFoundation
- }
-}
-win32 {
- LIBS += -lwinmm
-}
-
-# Suppress 'LEAK' messages (see QTBUG-18201)
-DEFINES += LOG_DISABLED=1
-
-JAVASCRIPTCORE_JIT = no
-include(../../shared/qtscript/src/3rdparty/javascriptcore/JavaScriptCore/JavaScriptCore.pri)
-
-# This line copied from WebCore.pro
-DEFINES += WTF_USE_JAVASCRIPTCORE_BINDINGS=1 WTF_CHANGES=1
-
-CONFIG(release, debug|release): DEFINES += NDEBUG
-
-# Avoid JSC C API functions being exported.
-DEFINES += JS_NO_EXPORT
-
-!build_pass {
- versionAtLeast(QT_VERSION, 6.1.0) {
- qtPrepareLibExecTool(QMAKE_SYNCQT, syncqt, , system)
- } else {
- qtPrepareTool(QMAKE_SYNCQT, syncqt, , system)
- }
- QMAKE_SYNCQT += \
- -minimal -version $$[QT_VERSION] \
- -outdir $$system_quote($$system_path($$OUT_PWD)) \
- $$system_quote($$system_path($$clean_path($$PWD/../../shared/qtscript)))
- !system($$QMAKE_SYNCQT): error("Failed to execute syncqt for the bundled QtScript module.")
-}
-
-INCLUDEPATH += \
- $$PWD/include \
- $$OUT_PWD/include \
- $$OUT_PWD/include/QtScript/$$[QT_VERSION]/QtScript \
- $$PWD/../../shared/qtscript/src/script \
- $$PWD/../../shared/qtscript/src/script/api
-
-include(../../shared/qtscript/src/script/api/api.pri)
-include(../../shared/qtscript/src/script/parser/parser.pri)
-
-BRIDGESRCDIR = ../../shared/qtscript/src/script/bridge
-SOURCES += \
- $$BRIDGESRCDIR/qscriptactivationobject.cpp \
- $$BRIDGESRCDIR/qscriptclassobject.cpp \
- $$BRIDGESRCDIR/qscriptfunction.cpp \
- $$BRIDGESRCDIR/qscriptglobalobject.cpp \
- $$BRIDGESRCDIR/qscriptobject.cpp \
- $$BRIDGESRCDIR/qscriptqobject.cpp \
- $$BRIDGESRCDIR/qscriptstaticscopeobject.cpp \
- $$BRIDGESRCDIR/qscriptvariant.cpp
-
-HEADERS += \
- $$BRIDGESRCDIR/qscriptactivationobject_p.h \
- $$BRIDGESRCDIR/qscriptclassobject_p.h \
- $$BRIDGESRCDIR/qscriptfunction_p.h \
- $$BRIDGESRCDIR/qscriptglobalobject_p.h \
- $$BRIDGESRCDIR/qscriptobject_p.h \
- $$BRIDGESRCDIR/qscriptqobject_p.h \
- $$BRIDGESRCDIR/qscriptstaticscopeobject_p.h \
- $$BRIDGESRCDIR/qscriptvariant_p.h
diff --git a/src/lib/scriptengine/scriptengine.qbs b/src/lib/scriptengine/scriptengine.qbs
deleted file mode 100644
index fcbd6ffaf..000000000
--- a/src/lib/scriptengine/scriptengine.qbs
+++ /dev/null
@@ -1,464 +0,0 @@
-import qbs.File
-import qbs.FileInfo
-import qbs.Probes
-import qbs.Process
-import qbs.Utilities
-
-Project {
- QbsLibrary {
- condition: qbsbuildconfig.useBundledQtScript || !Qt.script.present
- Depends {
- name: "Qt.script"
- condition: !qbsbuildconfig.useBundledQtScript
- required: false
- }
- Depends { name: "QtScriptFwdHeaders" }
- Depends { name: "cpp" }
- Depends { name: "Qt"; submodules: ["core-private"] }
- Depends {
- name: "Qt.core5compat";
- condition: Utilities.versionCompare(Qt.core.version, "6.0.0") >= 0
- }
- name: "qbsscriptengine"
-
- generatePkgConfigFile: false
- generateQbsModule: false
-
- property bool useSystemMalloc: !qbs.targetOS.contains("macos")
- && !qbs.targetOS.contains("unix")
- property string qtscriptPath: "../../shared/qtscript/src/"
- cpp.includePaths: {
- var result = base.concat(
- ".",
- "include"
- );
-
- var jscBaseDir = qtscriptPath + "3rdparty/javascriptcore";
- result.push(jscBaseDir);
- jscBaseDir += "/JavaScriptCore";
- result.push(jscBaseDir);
-
- var jscSubDirs = [
- "assembler",
- "bytecode",
- "bytecompiler",
- "debugger",
- "interpreter",
- "jit",
- "parser",
- "pcre",
- "profiler",
- "runtime",
- "wrec",
- "wtf",
- "wtf/unicode",
- "yarr",
- "API",
- "ForwardingHeaders",
- "generated"];
- result = result.concat(jscSubDirs.map(function(s) { return jscBaseDir + '/' + s; }));
-
- result.push(qtscriptPath + "script");
- result.push(qtscriptPath + "script/api");
- result.push(qtscriptPath + "script/parser");
- result = result.concat(QtScriptFwdHeaders.publicIncludePaths,
- QtScriptFwdHeaders.privateIncludePaths);
- return result;
- }
- cpp.defines: {
- var result = base.concat([
- "QT_BUILD_SCRIPT_LIB", "QT_NO_USING_NAMESPACE",
- "JSC=QTJSC", "jscyyparse=qtjscyyparse", "jscyylex=qtjscyylex",
- "jscyyerror=qtjscyyerror",
- "WTF=QTWTF",
- "LOG_DISABLED=1",
- "WTF_USE_JAVASCRIPTCORE_BINDINGS=1", "WTF_CHANGES=1",
- "JS_NO_EXPORT"]);
- if (qbs.buildVariant != "debug")
- result.push("NDEBUG");
- if (qbs.targetOS.contains("macos"))
- result.push("ENABLE_JSC_MULTIPLE_THREADS=0");
-
- // JavaScriptCore
- result.push("BUILDING_QT__", "BUILDING_JavaScriptCore", "BUILDING_WTF",
- "ENABLE_JIT=0", "ENABLE_YARR_JIT=0", "ENABLE_YARR=0");
- if (qbs.targetOS.contains("windows")) {
- // Prevent definition of min, max macros in windows.h
- result.push("NOMINMAX");
- // Enables rand_s
- result.push("_CRT_RAND_S");
- }
-
- // WebKit
- result.push("WTF_USE_ACCELERATED_COMPOSITING");
- if (useSystemMalloc)
- result.push("USE_SYSTEM_MALLOC");
-
- result = result.filter(function(value) {
- return value !== "QT_RESTRICTED_CAST_FROM_ASCII"
- && value !== "QT_NO_CAST_FROM_BYTEARRAY"
- && value !== "QT_NO_CAST_FROM_ASCII";
- })
- return result;
- }
- cpp.cxxFlags: {
- var result = base;
- if (qbs.toolchain.contains("gcc")) {
- result.push("-fno-strict-aliasing",
- "-Wall", "-Wreturn-type", "-Wcast-align", "-Wchar-subscripts",
- "-Wformat-security", "-Wreturn-type", "-Wno-unused-parameter",
- "-Wno-sign-compare", "-Wno-switch", "-Wno-switch-enum", "-Wundef",
- "-Wmissing-noreturn", "-Winit-self", "-Wno-deprecated",
- "-Wno-suggest-attribute=noreturn", "-Wno-nonnull-compare");
- } else if (qbs.toolchain.contains("msvc")) {
- result.push("-wd4291", "-wd4344", "-wd4396", "-wd4503", "-wd4800", "-wd4819",
- "-wd4996");
- }
- if (qbs.targetOS.contains("unix"))
- result.push("-pthread");
-
- return result;
- }
- cpp.warningLevel: "none"
- cpp.optimization: "fast" // We cannot afford -O0 for QtScript even in debug builds.
- cpp.frameworks: base.concat(qbs.targetOS.contains("darwin") ? ["CoreFoundation"] : [])
- Properties {
- condition: qbs.targetOS.contains("unix")
- cpp.dynamicLibraries: base.concat(["pthread"])
- }
- Properties {
- condition: qbs.targetOS.contains("windows")
- cpp.dynamicLibraries: base.concat(["winmm"])
- }
-
- Group {
- name: "pcre"
- prefix: qtscriptPath + "3rdparty/javascriptcore/JavaScriptCore/pcre/"
- files: [
- "pcre_compile.cpp",
- "pcre_exec.cpp",
- "pcre_tables.cpp",
- "pcre_ucp_searchfuncs.cpp",
- "pcre_xclass.cpp",
- ]
- }
-
- Group {
- name: "system malloc replacement"
- prefix: qtscriptPath + "3rdparty/javascriptcore/JavaScriptCore/"
- condition: !useSystemMalloc
- files: [
- "wtf/TCSystemAlloc.cpp",
- ]
- }
-
- Group {
- name: "JavaScriptCore"
- prefix: qtscriptPath + "3rdparty/javascriptcore/JavaScriptCore/"
- files: [
- "API/JSBase.cpp",
- "API/JSCallbackConstructor.cpp",
- "API/JSCallbackFunction.cpp",
- "API/JSCallbackObject.cpp",
- "API/JSClassRef.cpp",
- "API/JSContextRef.cpp",
- "API/JSObjectRef.cpp",
- "API/JSStringRef.cpp",
- "API/JSValueRef.cpp",
- "API/OpaqueJSString.cpp",
- "assembler/ARMAssembler.cpp",
- "assembler/MacroAssemblerARM.cpp",
- "bytecode/CodeBlock.cpp",
- "bytecode/JumpTable.cpp",
- "bytecode/Opcode.cpp",
- "bytecode/SamplingTool.cpp",
- "bytecode/StructureStubInfo.cpp",
- "bytecompiler/BytecodeGenerator.cpp",
- "bytecompiler/NodesCodegen.cpp",
- "debugger/DebuggerActivation.cpp",
- "debugger/DebuggerCallFrame.cpp",
- "debugger/Debugger.cpp",
- "generated/Grammar.cpp",
- "interpreter/CallFrame.cpp",
- "interpreter/Interpreter.cpp",
- "interpreter/RegisterFile.cpp",
- "parser/Lexer.cpp",
- "parser/Nodes.cpp",
- "parser/ParserArena.cpp",
- "parser/Parser.cpp",
- "profiler/Profile.cpp",
- "profiler/ProfileGenerator.cpp",
- "profiler/ProfileNode.cpp",
- "profiler/Profiler.cpp",
- "runtime/ArgList.cpp",
- "runtime/Arguments.cpp",
- "runtime/ArrayConstructor.cpp",
- "runtime/ArrayPrototype.cpp",
- "runtime/BooleanConstructor.cpp",
- "runtime/BooleanObject.cpp",
- "runtime/BooleanPrototype.cpp",
- "runtime/CallData.cpp",
- "runtime/Collector.cpp",
- "runtime/CommonIdentifiers.cpp",
- "runtime/Completion.cpp",
- "runtime/ConstructData.cpp",
- "runtime/DateConstructor.cpp",
- "runtime/DateConversion.cpp",
- "runtime/DateInstance.cpp",
- "runtime/DatePrototype.cpp",
- "runtime/ErrorConstructor.cpp",
- "runtime/Error.cpp",
- "runtime/ErrorInstance.cpp",
- "runtime/ErrorPrototype.cpp",
- "runtime/ExceptionHelpers.cpp",
- "runtime/Executable.cpp",
- "runtime/FunctionConstructor.cpp",
- "runtime/FunctionPrototype.cpp",
- "runtime/GetterSetter.cpp",
- "runtime/GlobalEvalFunction.cpp",
- "runtime/Identifier.cpp",
- "runtime/InitializeThreading.cpp",
- "runtime/InternalFunction.cpp",
- "runtime/JSActivation.cpp",
- "runtime/JSAPIValueWrapper.cpp",
- "runtime/JSArray.cpp",
- "runtime/JSByteArray.cpp",
- "runtime/JSCell.cpp",
- "runtime/JSFunction.cpp",
- "runtime/JSGlobalData.cpp",
- "runtime/JSGlobalObject.cpp",
- "runtime/JSGlobalObjectFunctions.cpp",
- "runtime/JSImmediate.cpp",
- "runtime/JSLock.cpp",
- "runtime/JSNotAnObject.cpp",
- "runtime/JSNumberCell.cpp",
- "runtime/JSObject.cpp",
- "runtime/JSONObject.cpp",
- "runtime/JSPropertyNameIterator.cpp",
- "runtime/JSStaticScopeObject.cpp",
- "runtime/JSString.cpp",
- "runtime/JSValue.cpp",
- "runtime/JSVariableObject.cpp",
- "runtime/JSWrapperObject.cpp",
- "runtime/LiteralParser.cpp",
- "runtime/Lookup.cpp",
- "runtime/MarkStackPosix.cpp",
- "runtime/MarkStackSymbian.cpp",
- "runtime/MarkStackWin.cpp",
- "runtime/MarkStack.cpp",
- "runtime/MathObject.cpp",
- "runtime/NativeErrorConstructor.cpp",
- "runtime/NativeErrorPrototype.cpp",
- "runtime/NumberConstructor.cpp",
- "runtime/NumberObject.cpp",
- "runtime/NumberPrototype.cpp",
- "runtime/ObjectConstructor.cpp",
- "runtime/ObjectPrototype.cpp",
- "runtime/Operations.cpp",
- "runtime/PropertyDescriptor.cpp",
- "runtime/PropertyNameArray.cpp",
- "runtime/PropertySlot.cpp",
- "runtime/PrototypeFunction.cpp",
- "runtime/RegExpConstructor.cpp",
- "runtime/RegExp.cpp",
- "runtime/RegExpObject.cpp",
- "runtime/RegExpPrototype.cpp",
- "runtime/ScopeChain.cpp",
- "runtime/SmallStrings.cpp",
- "runtime/StringConstructor.cpp",
- "runtime/StringObject.cpp",
- "runtime/StringPrototype.cpp",
- "runtime/StructureChain.cpp",
- "runtime/Structure.cpp",
- "runtime/TimeoutChecker.cpp",
- "runtime/UString.cpp",
- "runtime/UStringImpl.cpp",
- "wtf/Assertions.cpp",
- "wtf/ByteArray.cpp",
- "wtf/CurrentTime.cpp",
- "wtf/DateMath.cpp",
- "wtf/dtoa.cpp",
- "wtf/FastMalloc.cpp",
- "wtf/HashTable.cpp",
- "wtf/MainThread.cpp",
- "wtf/qt/MainThreadQt.cpp",
- "wtf/qt/ThreadingQt.cpp",
- "wtf/RandomNumber.cpp",
- "wtf/RefCountedLeakCounter.cpp",
- "wtf/ThreadingNone.cpp",
- "wtf/Threading.cpp",
- "wtf/TypeTraits.cpp",
- "wtf/unicode/CollatorDefault.cpp",
- "wtf/unicode/icu/CollatorICU.cpp",
- "wtf/unicode/UTF8.cpp",
- ]
- }
- Group {
- name: "api"
- prefix: qtscriptPath + "script/api/"
- files: [
- "qscriptable.cpp",
- "qscriptable.h",
- "qscriptable_p.h",
- "qscriptclass.cpp",
- "qscriptclass.h",
- "qscriptclasspropertyiterator.cpp",
- "qscriptclasspropertyiterator.h",
- "qscriptcontext.cpp",
- "qscriptcontext.h",
- "qscriptcontextinfo.cpp",
- "qscriptcontextinfo.h",
- "qscriptcontext_p.h",
- "qscriptengineagent.cpp",
- "qscriptengineagent.h",
- "qscriptengineagent_p.h",
- "qscriptengine.cpp",
- "qscriptengine.h",
- "qscriptengine_p.h",
- "qscriptextensioninterface.h",
- "qscriptextensionplugin.cpp",
- "qscriptextensionplugin.h",
- "qscriptprogram.cpp",
- "qscriptprogram.h",
- "qscriptprogram_p.h",
- "qscriptstring.cpp",
- "qscriptstring.h",
- "qscriptstring_p.h",
- "qscriptvalue.cpp",
- "qscriptvalue.h",
- "qscriptvalueiterator.cpp",
- "qscriptvalueiterator.h",
- "qscriptvalue_p.h",
- "qtscriptglobal.h",
- ]
- }
- Group {
- name: "bridge"
- prefix: qtscriptPath + "script/bridge/"
- files: [
- "qscriptactivationobject.cpp",
- "qscriptactivationobject_p.h",
- "qscriptclassobject.cpp",
- "qscriptclassobject_p.h",
- "qscriptfunction.cpp",
- "qscriptfunction_p.h",
- "qscriptglobalobject.cpp",
- "qscriptglobalobject_p.h",
- "qscriptobject.cpp",
- "qscriptobject_p.h",
- "qscriptqobject.cpp",
- "qscriptqobject_p.h",
- "qscriptstaticscopeobject.cpp",
- "qscriptstaticscopeobject_p.h",
- "qscriptvariant.cpp",
- "qscriptvariant_p.h",
- ]
- }
- Group {
- name: "parser"
- prefix: qtscriptPath + "script/parser/"
- files: [
- "qscriptast.cpp",
- "qscriptastfwd_p.h",
- "qscriptast_p.h",
- "qscriptastvisitor.cpp",
- "qscriptastvisitor_p.h",
- "qscriptgrammar.cpp",
- "qscriptgrammar_p.h",
- "qscriptlexer.cpp",
- "qscriptlexer_p.h",
- "qscriptsyntaxchecker.cpp",
- "qscriptsyntaxchecker_p.h",
- ]
- }
-
- Export {
- Depends { name: "QtScriptFwdHeaders" }
- Depends { name: "cpp" }
- property stringList includePaths: [exportingProduct.sourceDirectory + "/include"]
- .concat(QtScriptFwdHeaders.publicIncludePaths)
- Properties {
- condition: qbs.targetOS.contains("unix")
- cpp.dynamicLibraries: base.concat(["pthread"])
- }
- Properties {
- condition: qbs.targetOS.contains("windows")
- cpp.dynamicLibraries: base.concat(["winmm"])
- }
- }
- }
- Product {
- type: ["hpp"]
- name: "QtScriptFwdHeaders"
- condition: qbsbuildconfig.useBundledQtScript || !Qt.script.present
- Depends { name: "qbsbuildconfig" }
- Depends {
- name: "Qt.script"
- condition: !qbsbuildconfig.useBundledQtScript
- required: false
- }
- Depends { name: "Qt.core" }
- Group {
- files: [
- "../../shared/qtscript/src/script/api/*.h"
- ]
- fileTags: ["qtscriptheader"]
- }
- Probes.BinaryProbe {
- id: perlProbe
- names: "perl"
- }
- property string perlPath: perlProbe.found ? perlProbe.filePath : undefined
- Rule {
- multiplex: true
- inputs: ["qtscriptheader"]
- Artifact {
- filePath: "include/QtScript/qscriptengine.h"
- fileTags: ["hpp"]
- }
- prepare: {
- var syncQtPath;
- if (Utilities.versionCompare(product.Qt.core.version, "6.1") >= 0) {
- syncQtPath = FileInfo.joinPaths(product.Qt.core.libExecPath, "syncqt.pl");
- } else {
- syncQtPath = FileInfo.joinPaths(product.Qt.core.binPath, "syncqt.pl");
- }
- if (!File.exists(syncQtPath)) {
- // syncqt.pl is not in Qt's bin path. We might have a developer build.
- // As we don't provide QT_HOST_BINS/src in our Qt modules we must
- // kindly ask qmake.
- var qmake = FileInfo.joinPaths(product.Qt.core.binPath,
- "qmake" + product.cpp.executableSuffix);
- var p = new Process();
- if (p.exec(qmake, ["-query", "QT_HOST_BINS/src"]) !== 0)
- throw new Error("Error while querying qmake.");
- syncQtPath = FileInfo.joinPaths(p.readStdOut().replace(/\r?\n/, ''),
- "syncqt.pl");
- }
- var qtScriptSrcPath = FileInfo.cleanPath(
- FileInfo.path(inputs["qtscriptheader"][0].filePath) + "/../../..");
- console.info("qtScriptSrcPath: " + qtScriptSrcPath);
- var cmd = new Command(product.perlPath, [
- syncQtPath,
- "-minimal",
- "-version", product.Qt.core.version,
- "-outdir", FileInfo.cleanPath(
- FileInfo.path(output.filePath) + "/../.."),
- qtScriptSrcPath
- ]);
- cmd.description = "creating forwarding headers for the bundled QtScript module.";
- return cmd;
- }
- }
- Export {
- Depends { name: "Qt.core" }
- property stringList publicIncludePaths: [
- FileInfo.joinPaths(exportingProduct.buildDirectory, "include")
- ]
- property stringList privateIncludePaths: [
- FileInfo.joinPaths(exportingProduct.buildDirectory, "include",
- "QtScript", Qt.core.version, "QtScript")
- ]
- }
- }
-}
diff --git a/src/lib/scriptengine/use_scriptengine.pri b/src/lib/scriptengine/use_scriptengine.pri
deleted file mode 100644
index 9981b442a..000000000
--- a/src/lib/scriptengine/use_scriptengine.pri
+++ /dev/null
@@ -1,30 +0,0 @@
-include(../bundledlibs.pri)
-
-qbs_use_bundled_qtscript:!qbs_do_not_link_bundled_qtscript {
- include(../../library_dirname.pri)
- isEmpty(QBSLIBDIR) {
- QBSLIBDIR = $$shadowed($$PWD/../../../$${QBS_LIBRARY_DIRNAME})
- }
-
- versionAtLeast(QT_VERSION, 6.0.0) {
- QT *= core5compat
- }
-
- LIBS += -L$$QBSLIBDIR
- macos {
- LIBS += -lqbsscriptengine
- }
- else {
- LIBS += -lqbsscriptengine$$qtPlatformTargetSuffix()
- }
-
- isEmpty(QBS_RPATH): QBS_RPATH = ../$$QBS_LIBRARY_DIRNAME
- !qbs_disable_rpath {
- linux-*: QMAKE_LFLAGS += -Wl,-z,origin \'-Wl,-rpath,\$\$ORIGIN/$${QBS_RPATH}\'
- macos: QMAKE_LFLAGS += -Wl,-rpath,@loader_path/$${QBS_RPATH}
- }
-}
-
-INCLUDEPATH += \
- $$PWD/include \
- $$shadowed($$PWD/include)