Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
utils.h File Reference

(ed191b6afa36aaf47478856fc44b9ebc300ff808)

#include <QStringList>
#include <QMap>
#include <QtCore/QFile>
#include <QtCore/QDir>
#include <QtCore/QDateTime>
#include <QtCore/QJsonArray>
#include <QtCore/QJsonObject>
#include <QtCore/QJsonDocument>
#include <iostream>
+ Include dependency graph for utils.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  JsonOutput
 
class  NameFilterFileEntryFunction
 

Enumerations

enum  PlatformFlag {
  WindowsBased = 0x00001 , IntelBased = 0x00010 , ArmBased = 0x00020 , Msvc = 0x00100 ,
  MinGW = 0x00200 , ClangMsvc = 0x00400 , ClangMinGW = 0x00800 , WindowsDesktopMsvc = WindowsBased + Msvc ,
  WindowsDesktopMsvcIntel = WindowsDesktopMsvc + IntelBased , WindowsDesktopMsvcArm = WindowsDesktopMsvc + ArmBased , WindowsDesktopMinGW = WindowsBased + IntelBased + MinGW , WindowsDesktopClangMsvc = WindowsBased + IntelBased + ClangMsvc ,
  WindowsDesktopClangMinGW = WindowsBased + IntelBased + ClangMinGW , UnknownPlatform
}
 
enum  ListOption {
  ListNone = 0 , ListSource , ListTarget , ListRelative ,
  ListMapping
}
 
enum  DebugMatchMode { MatchDebug , MatchRelease , MatchDebugOrRelease }
 
enum  UpdateFileFlag { ForceUpdateFile = 0x1 , SkipUpdateFile = 0x2 , RemoveEmptyQmlDirectories = 0x4 , SkipQmlDesignerSpecificsDirectories = 0x8 }
 

Functions

bool platformHasDebugSuffix (Platform p)
 
std::wostream & operator<< (std::wostream &str, const QString &s)
 
QString normalizeFileName (const QString &name)
 
QString sharedLibrarySuffix ()
 
bool isBuildDirectory (Platform platform, const QString &dirName)
 
bool createSymbolicLink (const QFileInfo &source, const QString &target, QString *errorMessage)
 
bool createDirectory (const QString &directory, QString *errorMessage, bool dryRun)
 
QString findInPath (const QString &file)
 
QMap< QString, QStringqueryQtPaths (const QString &qmakeBinary, QString *errorMessage)
 
QStringList findSharedLibraries (const QDir &directory, Platform platform, DebugMatchMode debugMatchMode, const QString &prefix=QString())
 
bool updateFile (const QString &sourceFileName, const QStringList &nameFilters, const QString &targetDirectory, unsigned flags, JsonOutput *json, QString *errorMessage)
 
bool runProcess (const QString &binary, const QStringList &args, const QString &workingDirectory=QString(), unsigned long *exitCode=0, QByteArray *stdOut=0, QByteArray *stdErr=0, QString *errorMessage=0)
 
bool readPeExecutable (const QString &peExecutableFileName, QString *errorMessage, QStringList *dependentLibraries=0, unsigned *wordSize=0, bool *isDebug=0, bool isMinGW=false, unsigned short *machineArch=nullptr)
 
QStringList findDependentLibraries (const QString &executableFileName, QString *errorMessage)
 
QString findD3dCompiler (Platform platform, const QString &qtBinDir, unsigned wordSize)
 
QStringList findDxc (Platform platform, const QString &qtBinDir, unsigned wordSize)
 
bool patchQtCore (const QString &path, QString *errorMessage)
 
template<class DirectoryFileEntryFunction>
bool updateFile (const QString &sourceFileName, DirectoryFileEntryFunction directoryFileEntryFunction, const QString &targetDirectory, unsigned flags, JsonOutput *json, QString *errorMessage)
 
bool updateFile (const QString &sourceFileName, const QString &targetDirectory, unsigned flags, JsonOutput *json, QString *errorMessage)
 

Variables

static const char windowsSharedLibrarySuffix [] = ".dll"
 
const char * qmakeInfixKey = "QT_INFIX"
 
int optVerboseLevel = 1
 

Enumeration Type Documentation

◆ DebugMatchMode

Enumerator
MatchDebug 
MatchRelease 
MatchDebugOrRelease 

Definition at line 152 of file utils.h.

◆ ListOption

enum ListOption
Enumerator
ListNone 
ListSource 
ListTarget 
ListRelative 
ListMapping 

Definition at line 50 of file utils.h.

◆ PlatformFlag

Enumerator
WindowsBased 
IntelBased 
ArmBased 
Msvc 
MinGW 
ClangMsvc 
ClangMinGW 
WindowsDesktopMsvc 
WindowsDesktopMsvcIntel 
WindowsDesktopMsvcArm 
WindowsDesktopMinGW 
WindowsDesktopClangMsvc 
WindowsDesktopClangMinGW 
UnknownPlatform 

Definition at line 20 of file utils.h.

◆ UpdateFileFlag

Enumerator
ForceUpdateFile 
SkipUpdateFile 
RemoveEmptyQmlDirectories 
SkipQmlDesignerSpecificsDirectories 

Definition at line 198 of file utils.h.

Function Documentation

◆ createDirectory()

bool createDirectory ( const QString & directory,
QString * errorMessage,
bool dryRun )

Definition at line 56 of file utils.cpp.

◆ createSymbolicLink()

bool createSymbolicLink ( const QFileInfo & source,
const QString & target,
QString * errorMessage )

Definition at line 37 of file utils.cpp.

◆ findD3dCompiler()

QString findD3dCompiler ( Platform platform,
const QString & qtBinDir,
unsigned wordSize )

Definition at line 707 of file utils.cpp.

◆ findDependentLibraries()

QStringList findDependentLibraries ( const QString & executableFileName,
QString * errorMessage )
inline

Definition at line 182 of file utils.h.

◆ findDxc()

QStringList findDxc ( Platform platform,
const QString & qtBinDir,
unsigned wordSize )

Definition at line 712 of file utils.cpp.

◆ findInPath()

QString findInPath ( const QString & file)

Definition at line 2884 of file main.cpp.

◆ findSharedLibraries()

QStringList findSharedLibraries ( const QDir & directory,
Platform platform,
DebugMatchMode debugMatchMode,
const QString & prefix = QString() )

Definition at line 80 of file utils.cpp.

References MatchDebug.

◆ isBuildDirectory()

bool isBuildDirectory ( Platform platform,
const QString & dirName )

Definition at line 29 of file utils.cpp.

◆ normalizeFileName()

QString normalizeFileName ( const QString & name)
inline

Definition at line 136 of file utils.h.

◆ operator<<()

std::wostream & operator<< ( std::wostream & str,
const QString & s )
inline

Definition at line 58 of file utils.h.

◆ patchQtCore()

bool patchQtCore ( const QString & path,
QString * errorMessage )

Definition at line 720 of file utils.cpp.

References optVerboseLevel.

◆ platformHasDebugSuffix()

bool platformHasDebugSuffix ( Platform p)
inline

Definition at line 45 of file utils.h.

◆ queryQtPaths()

QMap< QString, QString > queryQtPaths ( const QString & qmakeBinary,
QString * errorMessage )

Definition at line 194 of file utils.cpp.

References qmakeInfixKey.

◆ readPeExecutable()

bool readPeExecutable ( const QString & peExecutableFileName,
QString * errorMessage,
QStringList * dependentLibraries = 0,
unsigned * wordSize = 0,
bool * isDebug = 0,
bool isMinGW = false,
unsigned short * machineArch = nullptr )

Definition at line 700 of file utils.cpp.

◆ runProcess()

bool runProcess ( const QString & binary,
const QStringList & args,
const QString & workingDirectory = QString(),
unsigned long * exitCode = 0,
QByteArray * stdOut = 0,
QByteArray * stdErr = 0,
QString * errorMessage = 0 )

Definition at line 137 of file utils.cpp.

References optVerboseLevel.

◆ sharedLibrarySuffix()

QString sharedLibrarySuffix ( )
inline

Definition at line 141 of file utils.h.

References windowsSharedLibrarySuffix.

◆ updateFile() [1/3]

bool updateFile ( const QString & sourceFileName,
const QString & targetDirectory,
unsigned flags,
JsonOutput * json,
QString * errorMessage )
inline

Definition at line 359 of file utils.h.

◆ updateFile() [2/3]

bool updateFile ( const QString & sourceFileName,
const QStringList & nameFilters,
const QString & targetDirectory,
unsigned flags,
JsonOutput * json,
QString * errorMessage )

Definition at line 249 of file utils.cpp.

References ForceUpdateFile, optVerboseLevel, and SkipUpdateFile.

◆ updateFile() [3/3]

template<class DirectoryFileEntryFunction>
bool updateFile ( const QString & sourceFileName,
DirectoryFileEntryFunction directoryFileEntryFunction,
const QString & targetDirectory,
unsigned flags,
JsonOutput * json,
QString * errorMessage )

Variable Documentation

◆ optVerboseLevel

◆ qmakeInfixKey

const char * qmakeInfixKey = "QT_INFIX"
extern

Definition at line 192 of file utils.cpp.

Referenced by deploy(), PluginInformation::generateAvailablePlugins(), and queryQtPaths().

◆ windowsSharedLibrarySuffix

const char windowsSharedLibrarySuffix[] = ".dll"
static

Definition at line 139 of file utils.h.

Referenced by deploy(), and sharedLibrarySuffix().