Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
main.cpp File Reference

(81984807b30b1865a98fbd928a29d5ab6d8f5375)

#include "utils.h"
#include "qmlutils.h"
#include "qtmoduleinfo.h"
#include "qtplugininfo.h"
#include <QtCore/QCommandLineOption>
#include <QtCore/QCommandLineParser>
#include <QtCore/QDir>
#include <QtCore/QFileInfo>
#include <QtCore/QCoreApplication>
#include <QtCore/QJsonDocument>
#include <QtCore/QJsonObject>
#include <QtCore/QJsonArray>
#include <QtCore/QList>
#include <QtCore/QOperatingSystemVersion>
#include <QtCore/QSharedPointer>
#include <QtCore/private/qconfig_p.h>
#include <algorithm>
#include <cstdio>
#include <iostream>
#include <iterator>
#include <unordered_map>
+ Include dependency graph for main.cpp:

Go to the source code of this file.

Classes

struct  Options
 
class  DllDirectoryFileEntryFunction
 
class  QmlDirectoryFileEntryFunction
 
struct  DeployResult
 

Macros

#define IMAGE_FILE_MACHINE_ARM64   0xaa64
 
#define DECLARE_KNOWN_MODULE(name)    static size_t Qt##name ## ModuleId = QtModule::InvalidId
 
#define DEFINE_KNOWN_MODULE(name)    m[QLatin1String("Qt6" #name)] = &Qt##name ## ModuleId
 

Enumerations

enum  ExlusiveOptionValue { OptionAuto , OptionEnabled , OptionDisabled }
 
enum  CommandLineParseFlag { CommandLineParseError = 0x1 , CommandLineParseHelpRequested = 0x2 , CommandLineVersionRequested = 0x4 }
 

Functions

 DECLARE_KNOWN_MODULE (3DQuick)
 
 DECLARE_KNOWN_MODULE (Core)
 
 DECLARE_KNOWN_MODULE (Designer)
 
 DECLARE_KNOWN_MODULE (DesignerComponents)
 
 DECLARE_KNOWN_MODULE (Gui)
 
 DECLARE_KNOWN_MODULE (Qml)
 
 DECLARE_KNOWN_MODULE (QmlTooling)
 
 DECLARE_KNOWN_MODULE (Quick)
 
 DECLARE_KNOWN_MODULE (WebEngineCore)
 
 DECLARE_KNOWN_MODULE (Widgets)
 
static void assignKnownModuleIds ()
 
static QString webProcessBinary (const char *binaryName, Platform p)
 
static QString moduleNameToOptionName (const QString &moduleName)
 
static QByteArray formatQtModules (const ModuleBitset &mask, bool option=false)
 
static QString formatQtPlugins (const PluginInformation &pluginInfo)
 
static Platform platformFromMkSpec (const QString &xSpec)
 
static ExlusiveOptionValue parseExclusiveOptions (const QCommandLineParser *parser, const QCommandLineOption &enableOption, const QCommandLineOption &disableOption)
 
static QString findBinary (const QString &directory, Platform platform)
 
static QString msgFileDoesNotExist (const QString &file)
 
static QCommandLineOption createQMakeOption ()
 
static QCommandLineOption createQtPathsOption ()
 
static QCommandLineOption createVerboseOption ()
 
static int parseEarlyArguments (const QStringList &arguments, Options *options, QString *errorMessage)
 
static int parseArguments (const QStringList &arguments, QCommandLineParser *parser, Options *options, QString *errorMessage)
 
static QString lineBreak (QString s)
 
static QString helpText (const QCommandLineParser &p, const PluginInformation &pluginInfo)
 
static bool isQtModule (const QString &libName)
 
static bool findDependentQtLibraries (const QString &qtBinDir, const QString &binary, Platform platform, QString *errorMessage, QStringList *result, unsigned *wordSize=nullptr, bool *isDebug=nullptr, unsigned short *machineArch=nullptr, int *directDependencyCount=nullptr, int recursionDepth=0)
 
static QString pdbFileName (QString libraryFileName)
 
static QStringList qmlCacheFileFilters ()
 
static qint64 qtModule (QString module, const QString &infix)
 
static QString deployPlugin (const QString &plugin, const QDir &subDir, const bool dueToModule, const DebugMatchMode &debugMatchMode, ModuleBitset *pluginNeededQtModules, const ModuleBitset &disabledQtModules, const PluginSelections &pluginSelections, const QString &libraryLocation, const QString &infix, Platform platform, bool deployInsightTrackerPlugin, bool deployOpenSslPlugin)
 
static bool needsPluginType (const QString &subDirName, const PluginInformation &pluginInfo, const PluginSelections &pluginSelections)
 
QStringList findQtPlugins (ModuleBitset *usedQtModules, const ModuleBitset &disabledQtModules, const PluginInformation &pluginInfo, const PluginSelections &pluginSelections, const QString &qtPluginsDirName, const QString &libraryLocation, const QString &infix, DebugMatchMode debugMatchModeIn, Platform platform, QString *platformPlugin, bool deployInsightTrackerPlugin, bool deployOpenSslPlugin)
 
static QStringList translationNameFilters (const ModuleBitset &modules, const QString &prefix)
 
static bool deployTranslations (const QString &sourcePath, const ModuleBitset &usedQtModules, const QString &target, const Options &options, QString *errorMessage)
 
static QStringList findFFmpegLibs (const QString &qtBinDir, Platform platform)
 
static QStringList findOpenSslLibraries (const QString &openSslRootDir, Platform platform)
 
static QString libraryPath (const QString &libraryLocation, const char *name, const QString &infix, Platform platform, bool debug)
 
static QString vcDebugRedistDir ()
 
static QString vcRedistDir ()
 
static QStringList findMinGWRuntimePaths (const QString &qtBinDir, Platform platform, const QStringList &runtimeFilters)
 
static QStringList compilerRunTimeLibs (const QString &qtBinDir, Platform platform, bool isDebug, unsigned short machineArch)
 
static int qtVersion (const QMap< QString, QString > &qtpathsVariables)
 
static bool updateLibrary (const QString &sourceFileName, const QString &targetDirectory, const Options &options, QString *errorMessage)
 
static QString getIcuVersion (const QString &libName)
 
static DeployResult deploy (const Options &options, const QMap< QString, QString > &qtpathsVariables, const PluginInformation &pluginInfo, QString *errorMessage)
 
static bool deployWebProcess (const QMap< QString, QString > &qtpathsVariables, const char *binaryName, const PluginInformation &pluginInfo, const Options &sourceOptions, QString *errorMessage)
 
static bool deployWebEngineCore (const QMap< QString, QString > &qtpathsVariables, const PluginInformation &pluginInfo, const Options &options, bool isDebug, QString *errorMessage)
 
QT_END_NAMESPACE QT_USE_NAMESPACE int main (int argc, char **argv)
 [0]
 

Variables

static QtModuleInfoStore qtModuleEntries
 
static const char webEngineProcessC [] = "QtWebEngineProcess"
 

Macro Definition Documentation

◆ DECLARE_KNOWN_MODULE

#define DECLARE_KNOWN_MODULE ( name)     static size_t Qt##name ## ModuleId = QtModule::InvalidId

Definition at line 41 of file main.cpp.

◆ DEFINE_KNOWN_MODULE

#define DEFINE_KNOWN_MODULE ( name)     m[QLatin1String("Qt6" #name)] = &Qt##name ## ModuleId

Definition at line 55 of file main.cpp.

Referenced by assignKnownModuleIds().

◆ IMAGE_FILE_MACHINE_ARM64

#define IMAGE_FILE_MACHINE_ARM64   0xaa64

Definition at line 24 of file main.cpp.

Referenced by deploy().

Enumeration Type Documentation

◆ CommandLineParseFlag

Enumerator
CommandLineParseError 
CommandLineParseHelpRequested 
CommandLineVersionRequested 

Definition at line 238 of file main.cpp.

◆ ExlusiveOptionValue

Enumerator
OptionAuto 
OptionEnabled 
OptionDisabled 

Definition at line 151 of file main.cpp.

Function Documentation

◆ assignKnownModuleIds()

static void assignKnownModuleIds ( )
static

Definition at line 58 of file main.cpp.

References DEFINE_KNOWN_MODULE, QSet< T >::end(), QSet< T >::find(), i, it, and qtModuleEntries.

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compilerRunTimeLibs()

static QStringList compilerRunTimeLibs ( const QString & qtBinDir,
Platform platform,
bool isDebug,
unsigned short machineArch )
static

Definition at line 1357 of file main.cpp.

References QDir::Dirs, findMinGWRuntimePaths(), platform(), QStringLiteral, QDir::toNativeSeparators(), vcDebugRedistDir(), vcRedistDir(), WindowsDesktopClangMinGW, WindowsDesktopMinGW, WindowsDesktopMsvcArm, and WindowsDesktopMsvcIntel.

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ createQMakeOption()

static QCommandLineOption createQMakeOption ( )
static

Definition at line 244 of file main.cpp.

Referenced by parseArguments(), and parseEarlyArguments().

+ Here is the caller graph for this function:

◆ createQtPathsOption()

static QCommandLineOption createQtPathsOption ( )
static

Definition at line 253 of file main.cpp.

Referenced by parseArguments(), and parseEarlyArguments().

+ Here is the caller graph for this function:

◆ createVerboseOption()

static QCommandLineOption createVerboseOption ( )
static

Definition at line 262 of file main.cpp.

Referenced by parseArguments(), and parseEarlyArguments().

+ Here is the caller graph for this function:

◆ DECLARE_KNOWN_MODULE() [1/10]

DECLARE_KNOWN_MODULE ( 3DQuick )

◆ DECLARE_KNOWN_MODULE() [2/10]

DECLARE_KNOWN_MODULE ( Core )

◆ DECLARE_KNOWN_MODULE() [3/10]

DECLARE_KNOWN_MODULE ( Designer )

◆ DECLARE_KNOWN_MODULE() [4/10]

DECLARE_KNOWN_MODULE ( DesignerComponents )

◆ DECLARE_KNOWN_MODULE() [5/10]

DECLARE_KNOWN_MODULE ( Gui )

◆ DECLARE_KNOWN_MODULE() [6/10]

DECLARE_KNOWN_MODULE ( Qml )

◆ DECLARE_KNOWN_MODULE() [7/10]

DECLARE_KNOWN_MODULE ( QmlTooling )

◆ DECLARE_KNOWN_MODULE() [8/10]

DECLARE_KNOWN_MODULE ( Quick )

◆ DECLARE_KNOWN_MODULE() [9/10]

DECLARE_KNOWN_MODULE ( WebEngineCore )

◆ DECLARE_KNOWN_MODULE() [10/10]

DECLARE_KNOWN_MODULE ( Widgets )

◆ deploy()

static DeployResult deploy ( const Options & options,
const QMap< QString, QString > & qtpathsVariables,
const PluginInformation & pluginInfo,
QString * errorMessage )
static

Definition at line 1460 of file main.cpp.

References QFileInfo::absoluteFilePath(), Options::additionalLibraries, Options::binaries, Qt::CaseInsensitive, ClangMsvc, Options::compilerRunTime, compilerRunTimeLibs(), createDirectory(), Options::debugDetection, Options::DebugDetectionAuto, Options::DebugDetectionForceDebug, Options::DebugDetectionForceRelease, Options::deployInsightTrackerPlugin, Options::deployPdb, QmlDirectoryFileEntryFunction::DeployPdb, deployTranslations(), dir, Options::directory, disabled, Options::disabledLibraries, Options::dryRun, errorMessage(), Options::ffmpeg, QFileInfo::fileName(), findD3dCompiler(), findDependentLibraries(), findDependentQtLibraries(), findDxc(), findFFmpegLibs(), findInPath(), findOpenSslLibraries(), findQmlDirectory(), findQtPlugins(), Options::forceOpenSslPlugin, formatQtModules(), getIcuVersion(), i, IMAGE_FILE_MACHINE_ARM64, QString::isEmpty(), QFileInfo::isFile(), Options::json, Options::libraries, Options::libraryDirectory, libraryPath(), MatchDebug, MatchDebugOrRelease, MatchRelease, Msvc, Options::openSslRootDirectory, optVerboseLevel, Options::patchQt, patchQtCore(), Options::platform, Options::pluginDirectory, Options::plugins, Options::pluginSelections, Q_UNUSED, qmakeInfixKey, Options::qmlDirectories, Options::qmlDirectory, Options::qmlImportPaths, QStringLiteral, qtModule(), qtModuleEntries, qtVersion(), Options::quickImports, runQmlImportScanner(), SkipQmlDesignerSpecificsDirectories, SkipUpdateFile, Options::softwareRasterizer, Options::systemD3dCompiler, Options::systemDxc, QDir::toNativeSeparators(), Options::translations, Options::translationsDirectory, updateFile(), Options::updateFileFlags, updateLibrary(), WindowsBased, and windowsSharedLibrarySuffix.

Referenced by deployWebProcess(), and main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deployPlugin()

static QString deployPlugin ( const QString & plugin,
const QDir & subDir,
const bool dueToModule,
const DebugMatchMode & debugMatchMode,
ModuleBitset * pluginNeededQtModules,
const ModuleBitset & disabledQtModules,
const PluginSelections & pluginSelections,
const QString & libraryLocation,
const QString & infix,
Platform platform,
bool deployInsightTrackerPlugin,
bool deployOpenSslPlugin )
static

Definition at line 968 of file main.cpp.

References d, PluginSelections::disabledPluginTypes, PluginSelections::enabledPluginTypes, errorMessage(), PluginSelections::excludedPlugins, findDependentQtLibraries(), formatQtModules(), PluginSelections::includedPlugins, MatchDebug, optVerboseLevel, platform(), platformHasDebugSuffix(), QString::startsWith(), and QDir::toNativeSeparators().

Referenced by findQtPlugins().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deployTranslations()

static bool deployTranslations ( const QString & sourcePath,
const ModuleBitset & usedQtModules,
const QString & target,
const Options & options,
QString * errorMessage )
static

Definition at line 1156 of file main.cpp.

References QFileInfo::absoluteFilePath(), JsonOutput::addFile(), QList< T >::append(), QString::append(), arguments, QList< T >::clear(), QDir::entryInfoList(), errorMessage(), Options::json, Options::languages, QString::mid(), optVerboseLevel, QStringLiteral, runProcess(), SkipUpdateFile, QDir::toNativeSeparators(), translationNameFilters(), and Options::updateFileFlags.

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deployWebEngineCore()

static bool deployWebEngineCore ( const QMap< QString, QString > & qtpathsVariables,
const PluginInformation & pluginInfo,
const Options & options,
bool isDebug,
QString * errorMessage )
static

Definition at line 1835 of file main.cpp.

References QFileInfo::absoluteFilePath(), createDirectory(), deployWebProcess(), Options::directory, Options::dryRun, errorMessage(), QFileInfo::fileName(), QFileInfo::filePath(), QFileInfo::isDir(), Options::json, optVerboseLevel, Options::platform, platformHasDebugSuffix(), QStringLiteral, QDir::toNativeSeparators(), Options::translations, Options::translationsDirectory, updateFile(), Options::updateFileFlags, and webEngineProcessC.

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deployWebProcess()

static bool deployWebProcess ( const QMap< QString, QString > & qtpathsVariables,
const char * binaryName,
const PluginInformation & pluginInfo,
const Options & sourceOptions,
QString * errorMessage )
static

Definition at line 1818 of file main.cpp.

References Options::binaries, deploy(), Options::directory, errorMessage(), QStringLiteral, Options::quickImports, Options::translations, updateFile(), and webProcessBinary().

Referenced by deployWebEngineCore().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findBinary()

static QString findBinary ( const QString & directory,
Platform platform )
inlinestatic

Definition at line 218 of file main.cpp.

References Qt::CaseInsensitive, QDir::cleanPath(), directory, QDir::entryInfoList(), QDir::Executable, QDir::Files, platform(), QStringLiteral, webEngineProcessC, and WindowsBased.

Referenced by parseArguments().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findDependentQtLibraries()

static bool findDependentQtLibraries ( const QString & qtBinDir,
const QString & binary,
Platform platform,
QString * errorMessage,
QStringList * result,
unsigned * wordSize = nullptr,
bool * isDebug = nullptr,
unsigned short * machineArch = nullptr,
int * directDependencyCount = nullptr,
int recursionDepth = 0 )
static

Definition at line 809 of file main.cpp.

References errorMessage(), fileName, findDependentQtLibraries(), i, isQtModule(), normalizeFileName(), platform(), readPeExecutable(), QDir::toNativeSeparators(), and WindowsDesktopMinGW.

Referenced by deploy(), deployPlugin(), and findDependentQtLibraries().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findFFmpegLibs()

static QStringList findFFmpegLibs ( const QString & qtBinDir,
Platform platform )
static

Definition at line 1213 of file main.cpp.

References Qt::CaseInsensitive, findSharedLibraries(), MatchDebugOrRelease, and platform().

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findMinGWRuntimePaths()

static QStringList findMinGWRuntimePaths ( const QString & qtBinDir,
Platform platform,
const QStringList & runtimeFilters )
static

Definition at line 1329 of file main.cpp.

References QFileInfo::absolutePath(), QList< T >::append(), QDir::entryInfoList(), QDir::Files, filters, findInPath(), QString::isEmpty(), platform(), sharedLibrarySuffix(), and WindowsDesktopClangMinGW.

Referenced by compilerRunTimeLibs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findOpenSslLibraries()

static QStringList findOpenSslLibraries ( const QString & openSslRootDir,
Platform platform )
static

Definition at line 1241 of file main.cpp.

References Qt::CaseInsensitive, findSharedLibraries(), MatchDebugOrRelease, and platform().

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ findQtPlugins()

QStringList findQtPlugins ( ModuleBitset * usedQtModules,
const ModuleBitset & disabledQtModules,
const PluginInformation & pluginInfo,
const PluginSelections & pluginSelections,
const QString & qtPluginsDirName,
const QString & libraryLocation,
const QString & infix,
DebugMatchMode debugMatchModeIn,
Platform platform,
QString * platformPlugin,
bool deployInsightTrackerPlugin,
bool deployOpenSslPlugin )

Definition at line 1069 of file main.cpp.

References deployPlugin(), QDir::Dirs, findQtPlugins(), findSharedLibraries(), formatQtModules(), PluginSelections::includeSoftPlugins, QtModule::InvalidId, QString::isEmpty(), needsPluginType(), QDir::NoDotAndDotDot, optVerboseLevel, platform(), and qtModuleEntries.

Referenced by deploy(), and findQtPlugins().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ formatQtModules()

static QByteArray formatQtModules ( const ModuleBitset & mask,
bool option = false )
static

Definition at line 101 of file main.cpp.

References moduleNameToOptionName(), qtModule(), and qtModuleEntries.

Referenced by deploy(), deployPlugin(), findQtPlugins(), and helpText().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ formatQtPlugins()

static QString formatQtPlugins ( const PluginInformation & pluginInfo)
static

Definition at line 118 of file main.cpp.

Referenced by helpText().

+ Here is the caller graph for this function:

◆ getIcuVersion()

static QString getIcuVersion ( const QString & libName)
static

Definition at line 1452 of file main.cpp.

Referenced by deploy().

+ Here is the caller graph for this function:

◆ helpText()

static QString helpText ( const QCommandLineParser & p,
const PluginInformation & pluginInfo )
inlinestatic

Definition at line 764 of file main.cpp.

References formatQtModules(), formatQtPlugins(), QString::fromLatin1(), lineBreak(), moduleNameToOptionName(), and qtModuleEntries.

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ isQtModule()

static bool isQtModule ( const QString & libName)
inlinestatic

Definition at line 799 of file main.cpp.

References Qt::CaseInsensitive.

Referenced by findDependentQtLibraries().

+ Here is the caller graph for this function:

◆ libraryPath()

static QString libraryPath ( const QString & libraryLocation,
const char * name,
const QString & infix,
Platform platform,
bool debug )
static

Definition at line 1280 of file main.cpp.

References debug, platform(), platformHasDebugSuffix(), and sharedLibrarySuffix().

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ lineBreak()

static QString lineBreak ( QString s)
inlinestatic

Definition at line 752 of file main.cpp.

References i.

Referenced by QUnicodeTools::getLineBreaks(), helpText(), and QTextBoundaryFinder::toPreviousBoundary().

+ Here is the caller graph for this function:

◆ main()

◆ moduleNameToOptionName()

static QString moduleNameToOptionName ( const QString & moduleName)
static

Definition at line 91 of file main.cpp.

References QString::mid(), QString::prepend(), and QString::toLower().

Referenced by formatQtModules(), helpText(), and parseArguments().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ msgFileDoesNotExist()

static QString msgFileDoesNotExist ( const QString & file)
static

Definition at line 233 of file main.cpp.

References file, and QDir::toNativeSeparators().

Referenced by parseArguments(), and parseEarlyArguments().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ needsPluginType()

static bool needsPluginType ( const QString & subDirName,
const PluginInformation & pluginInfo,
const PluginSelections & pluginSelections )
static

Definition at line 1058 of file main.cpp.

References PluginSelections::enabledPluginTypes, and PluginSelections::includedPlugins.

Referenced by findQtPlugins().

+ Here is the caller graph for this function:

◆ parseArguments()

static int parseArguments ( const QStringList & arguments,
QCommandLineParser * parser,
Options * options,
QString * errorMessage )
inlinestatic

Definition at line 330 of file main.cpp.

References QCommandLineParser::addHelpOption(), Options::additionalLibraries, QCommandLineParser::addOption(), QCommandLineParser::addPositionalArgument(), QCommandLineParser::addVersionOption(), arguments, Options::binaries, QDir::cleanPath(), CommandLineParseError, CommandLineParseHelpRequested, CommandLineVersionRequested, Options::compilerRunTime, createQMakeOption(), createQtPathsOption(), createVerboseOption(), Options::debugDetection, Options::DebugDetectionForceDebug, Options::DebugDetectionForceRelease, Options::deployInsightTrackerPlugin, Options::deployPdb, Options::directory, Options::disabledLibraries, PluginSelections::disabledPluginTypes, Options::dryRun, PluginSelections::enabledPluginTypes, errorMessage(), QCommandLineParser::errorText(), PluginSelections::excludedPlugins, Options::ffmpeg, file, findBinary(), findSharedLibraries(), Options::forceOpenSslPlugin, ForceUpdateFile, QCommandLineOption::HiddenFromHelp, i, Options::ignoreLibraryErrors, PluginSelections::includedPlugins, PluginSelections::includeSoftPlugins, QString::isEmpty(), QCommandLineParser::isSet(), Options::json, Options::languages, Options::libraries, Options::libraryDirectory, Options::list, ListMapping, ListRelative, ListSource, ListTarget, MatchDebugOrRelease, MinGW, moduleNameToOptionName(), msgFileDoesNotExist(), Options::openSslRootDirectory, OptionAuto, OptionDisabled, OptionEnabled, optVerboseLevel, QCommandLineParser::parse(), QCommandLineParser::ParseAsLongOptions, parseExclusiveOptions(), Options::patchQt, Options::platform, Options::pluginDirectory, Options::plugins, Options::pluginSelections, QCommandLineParser::positionalArguments(), Options::qmlDirectories, Options::qmlDirectory, Options::qmlImportPaths, QStringLiteral, qtModuleEntries, Options::quickImports, QCommandLineParser::setApplicationDescription(), QCommandLineParser::setSingleDashWordOptionMode(), SkipUpdateFile, Options::softwareRasterizer, QString::split(), Options::systemD3dCompiler, Options::systemDxc, Options::translations, Options::translationsDirectory, Options::updateFileFlags, QCommandLineParser::value(), QCommandLineParser::values(), WindowsBased, WindowsDesktopMinGW, and WindowsDesktopMsvc.

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseEarlyArguments()

static int parseEarlyArguments ( const QStringList & arguments,
Options * options,
QString * errorMessage )
static

Definition at line 271 of file main.cpp.

References QCommandLineParser::addOption(), arguments, QDir::cleanPath(), CommandLineParseError, createQMakeOption(), createQtPathsOption(), createVerboseOption(), errorMessage(), QCommandLineParser::isSet(), msgFileDoesNotExist(), ok, optVerboseLevel, QCommandLineParser::parse(), QCommandLineParser::ParseAsLongOptions, QStringLiteral, Options::qtpathsBinary, QCommandLineParser::setSingleDashWordOptionMode(), QString::toInt(), QDir::toNativeSeparators(), and QCommandLineParser::value().

Referenced by main().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ parseExclusiveOptions()

static ExlusiveOptionValue parseExclusiveOptions ( const QCommandLineParser * parser,
const QCommandLineOption & enableOption,
const QCommandLineOption & disableOption )
static

Definition at line 157 of file main.cpp.

References disabled, QCommandLineParser::isSet(), OptionAuto, OptionDisabled, and OptionEnabled.

Referenced by parseArguments().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ pdbFileName()

static QString pdbFileName ( QString libraryFileName)
static

Definition at line 862 of file main.cpp.

Referenced by QmlDirectoryFileEntryFunction::operator()(), and updateLibrary().

+ Here is the caller graph for this function:

◆ platformFromMkSpec()

static Platform platformFromMkSpec ( const QString & xSpec)
static

Definition at line 133 of file main.cpp.

References UnknownPlatform, WindowsDesktopClangMinGW, WindowsDesktopClangMsvc, WindowsDesktopMinGW, WindowsDesktopMsvc, and WindowsDesktopMsvcArm.

Referenced by main().

+ Here is the caller graph for this function:

◆ qmlCacheFileFilters()

static QStringList qmlCacheFileFilters ( )
inlinestatic

Definition at line 870 of file main.cpp.

References QStringLiteral.

◆ qtModule()

static qint64 qtModule ( QString module,
const QString & infix )
static

Definition at line 942 of file main.cpp.

References qPrintable, qtModule(), qtModuleEntries, QString::size(), and QString::startsWith().

Referenced by deploy(), formatQtModules(), qtModule(), and translationNameFilters().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ qtVersion()

static int qtVersion ( const QMap< QString, QString > & qtpathsVariables)
inlinestatic

Definition at line 1419 of file main.cpp.

References dot(), QStringLiteral, QString::section(), and QString::toInt().

Referenced by deploy(), and QShaderPrivate::qtQsbVersion().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ translationNameFilters()

static QStringList translationNameFilters ( const ModuleBitset & modules,
const QString & prefix )
static

Definition at line 1143 of file main.cpp.

References QString::push_back(), qtModule(), and qtModuleEntries.

Referenced by deployTranslations().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ updateLibrary()

static bool updateLibrary ( const QString & sourceFileName,
const QString & targetDirectory,
const Options & options,
QString * errorMessage )
static

Definition at line 1430 of file main.cpp.

References Options::deployPdb, errorMessage(), Options::ignoreLibraryErrors, Options::json, pdbFileName(), updateFile(), and Options::updateFileFlags.

Referenced by deploy().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ vcDebugRedistDir()

static QString vcDebugRedistDir ( )
static

Definition at line 1292 of file main.cpp.

References QStringLiteral.

Referenced by compilerRunTimeLibs(), and vcRedistDir().

+ Here is the caller graph for this function:

◆ vcRedistDir()

static QString vcRedistDir ( )
static

Definition at line 1294 of file main.cpp.

References QDir::cleanPath(), QFile::decodeName(), QDir::Dirs, QDir::entryInfoList(), QFileInfo::isDir(), QDir::Name, QDir::NoDotAndDotDot, qgetenv(), QStringLiteral, QDir::Reversed, QDir::toNativeSeparators(), and vcDebugRedistDir().

Referenced by compilerRunTimeLibs().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ webProcessBinary()

static QString webProcessBinary ( const char * binaryName,
Platform p )
inlinestatic

Definition at line 85 of file main.cpp.

References QStringLiteral, and WindowsBased.

Referenced by deployWebProcess().

+ Here is the caller graph for this function:

Variable Documentation

◆ qtModuleEntries

◆ webEngineProcessC

const char webEngineProcessC[] = "QtWebEngineProcess"
static

Definition at line 83 of file main.cpp.

Referenced by deployWebEngineCore(), and findBinary().