Move tools to libexec

Move qmlimportscanner, qmltyperegistrar, qmljsrootgen, qmlcachegen to libexec
These are internal tools that is not supposed to be run by the user directly.

[ChangeLog][Linux] qmlimportscanner, qmltyperegistrar, qmljsrootgen,
qmlcachegen tools got moved from QTDIR/bin into QTDIR/libexec
directory.

Task-number: QTBUG-88791
Change-Id: I2739044e872ec83ef7da7dd857c26395ecfd407d
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Maximilian Goldstein <max.goldstein@qt.io>
This commit is contained in:
Kai Köhne 2021-03-30 14:38:10 +02:00
parent 4c236f12f9
commit c442542627
10 changed files with 15 additions and 7 deletions

View File

@ -8,6 +8,7 @@ qt_get_tool_target_name(target_name qmltyperegistrar)
qt_internal_add_tool(${target_name}
TARGET_DESCRIPTION "QML Types Registrar"
TOOLS_TARGET Qml # special case
INSTALL_DIR "${INSTALL_LIBEXECDIR}"
SOURCES
../qmlcompiler/qqmljsstreamwriter.cpp ../qmlcompiler/qqmljsstreamwriter_p.h
metatypesjsonprocessor.cpp metatypesjsonprocessor.h

View File

@ -1,6 +1,6 @@
CONFIG += metatypes
qtPrepareTool(QML_TYPEREGISTRAR, qmltyperegistrar)
qtPrepareLibExecTool(QML_TYPEREGISTRAR, qmltyperegistrar)
isEmpty(QML_IMPORT_VERSION): \
QML_IMPORT_VERSION = $$IMPORT_VERSION

View File

@ -107,7 +107,8 @@ static bool generateCache(const QString &qmlFileName, QByteArray *capturedStderr
QProcess proc;
if (capturedStderr == nullptr)
proc.setProcessChannelMode(QProcess::ForwardedChannels);
proc.setProgram(QLibraryInfo::path(QLibraryInfo::BinariesPath) + QDir::separator() + QLatin1String("qmlcachegen"));
proc.setProgram(QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
+ QLatin1String("/qmlcachegen"));
proc.setArguments(QStringList() << qmlFileName);
proc.start();
if (!proc.waitForFinished())

View File

@ -55,7 +55,8 @@ private:
void TestQmlimportscanner::initTestCase()
{
QQmlDataTest::initTestCase();
m_qmlimportscannerPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmlimportscanner");
m_qmlimportscannerPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
+ QLatin1String("/qmlimportscanner");
#ifdef Q_OS_WIN
m_qmlimportscannerPath += QLatin1String(".exe");
#endif

View File

@ -82,8 +82,10 @@ void TestQmllint::initTestCase()
{
QQmlDataTest::initTestCase();
m_qmllintPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmllint");
m_qmljsrootgenPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmljsrootgen");
m_qmltyperegistrarPath = QLibraryInfo::path(QLibraryInfo::BinariesPath) + QLatin1String("/qmltyperegistrar");
m_qmljsrootgenPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
+ QLatin1String("/qmljsrootgen");
m_qmltyperegistrarPath = QLibraryInfo::path(QLibraryInfo::LibraryExecutablesPath)
+ QLatin1String("/qmltyperegistrar");
#ifdef Q_OS_WIN
m_qmllintPath += QLatin1String(".exe");
m_qmljsrootgenPath += QLatin1String(".exe");

View File

@ -8,6 +8,7 @@ qt_get_tool_target_name(target_name qmlcachegen)
qt_internal_add_tool(${target_name}
TARGET_DESCRIPTION "QML Cache Generator"
TOOLS_TARGET Qml # special case
INSTALL_DIR "${INSTALL_LIBEXECDIR}"
SOURCES
qmlcachegen.cpp
DEFINES

View File

@ -3,7 +3,7 @@ static {
return()
}
qtPrepareTool(QML_CACHEGEN, qmlcachegen, _ARCH_CHECK)
qtPrepareLibExecTool(QML_CACHEGEN, qmlcachegen, _ARCH_CHECK)
isEmpty(TARGETPATH): error("Must set TARGETPATH (QML import name) for ahead-of-time QML cache generation")

View File

@ -10,7 +10,7 @@ if(qtc_run|lupdate_run): return()
unset(qt_modules)
}
qtPrepareTool(QML_CACHEGEN, qmlcachegen, _FILTER)
qtPrepareLibExecTool(QML_CACHEGEN, qmlcachegen, _FILTER)
qtPrepareLibExecTool(QMAKE_RCC, rcc, _DEP)
isEmpty(QMLCACHE_DIR): QMLCACHE_DIR = .

View File

@ -8,6 +8,7 @@ qt_get_tool_target_name(target_name qmlimportscanner)
qt_internal_add_tool(${target_name}
TARGET_DESCRIPTION "QML Import Scanner"
TOOLS_TARGET Qml # special case
INSTALL_DIR "${INSTALL_LIBEXECDIR}"
SOURCES
main.cpp
DEFINES

View File

@ -2,6 +2,7 @@ qt_get_tool_target_name(target_name qmljsrootgen)
qt_internal_add_tool(${target_name}
TARGET_DESCRIPTION "QML Global Object Metatypes Generator"
TOOLS_TARGET Qml # special case
INSTALL_DIR "${INSTALL_LIBEXECDIR}"
SOURCES
main.cpp
PUBLIC_LIBRARIES