diff options
Diffstat (limited to 'qmake/generators/makefile.h')
-rw-r--r-- | qmake/generators/makefile.h | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h index 7282d3ad1f..07483dbcb0 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -60,7 +60,7 @@ class MakefileGenerator : protected QMakeSourceFileInfo bool no_io; QHash<QString, bool> init_compiler_already; QString makedir, chkexists; - QString build_args(const QString &outdir=QString()); + QString build_args(); //internal caches mutable QHash<QString, QMakeLocalFileName> depHeuristicsCache; @@ -224,16 +224,22 @@ protected: ProStringList fixLibFlags(const ProKey &var); virtual ProString fixLibFlag(const ProString &lib); +public: //file fixification to unify all file names into a single pattern - enum FileFixifyType { FileFixifyAbsolute, FileFixifyRelative, FileFixifyDefault }; - QString fileFixify(const QString& file, const QString &out_dir=QString(), - const QString &in_dir=QString(), FileFixifyType fix=FileFixifyDefault, bool canon=true) const; - inline QString fileFixify(const QString& file, FileFixifyType fix, bool canon=true) const - { return fileFixify(file, QString(), QString(), fix, canon); } - QStringList fileFixify(const QStringList& files, const QString &out_dir=QString(), - const QString &in_dir=QString(), FileFixifyType fix=FileFixifyDefault, bool canon=true) const; - inline QStringList fileFixify(const QStringList& files, FileFixifyType fix, bool canon=true) const - { return fileFixify(files, QString(), QString(), fix, canon); } + enum FileFixifyType { + FileFixifyFromIndir = 0, + FileFixifyFromOutdir = 1, + FileFixifyToOutDir = 0, + FileFixifyToIndir = 2, + FileFixifyBackwards = FileFixifyFromOutdir | FileFixifyToIndir, + FileFixifyDefault = 0, + FileFixifyAbsolute = 4, + FileFixifyRelative = 8 + }; + Q_DECLARE_FLAGS(FileFixifyTypes, FileFixifyType) +protected: + QString fileFixify(const QString &file, FileFixifyTypes fix = FileFixifyDefault, bool canon = true) const; + QStringList fileFixify(const QStringList &files, FileFixifyTypes fix = FileFixifyDefault, bool canon = true) const; QString installMetaFile(const ProKey &replace_rule, const QString &src, const QString &dst); @@ -259,6 +265,7 @@ public: bool isWindowsShell() const { return Option::dir_sep == QLatin1String("\\"); } QString shellQuote(const QString &str); }; +Q_DECLARE_OPERATORS_FOR_FLAGS(MakefileGenerator::FileFixifyTypes) inline void MakefileGenerator::setNoIO(bool o) { no_io = o; } |