From 07fa0fe80bd49e335ff8663ee8c67aa6b0f042c8 Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 18 Sep 2016 13:54:12 +0200 Subject: [PATCH 05/33] Make sure *.pc files are installed correctly --- qmake/generators/makefile.cpp | 8 ++++++-- qmake/generators/makefile.h | 2 +- qmake/generators/win32/winmakefile.cpp | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/qmake/generators/makefile.cpp b/qmake/generators/makefile.cpp index b7e591d2ab..5abf0624f4 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -3189,7 +3189,7 @@ MakefileGenerator::openOutput(QFile &file, const QString &build) const } QString -MakefileGenerator::pkgConfigFileName(bool fixify) +MakefileGenerator::pkgConfigFileName(bool fixify, bool onlyPrependDestdir) { QString ret = project->first("QMAKE_PKGCONFIG_FILE").toQString(); if (ret.isEmpty()) { @@ -3214,7 +3214,11 @@ MakefileGenerator::pkgConfigFileName(bool fixify) if(fixify) { if(QDir::isRelativePath(ret) && !project->isEmpty("DESTDIR")) ret.prepend(project->first("DESTDIR").toQString()); - ret = fileFixify(ret, FileFixifyBackwards); + if (onlyPrependDestdir) { + ret = Option::fixPathToLocalOS(ret); + } else { + ret = fileFixify(ret, FileFixifyBackwards); + } } return ret; } diff --git a/qmake/generators/makefile.h b/qmake/generators/makefile.h index b5c150e1cb..afb0e91381 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -89,7 +89,7 @@ protected: virtual void writeDefaultVariables(QTextStream &t); QString pkgConfigPrefix() const; - QString pkgConfigFileName(bool fixify=true); + QString pkgConfigFileName(bool fixify=true, bool onlyPrependDestdir = false); QString pkgConfigFixPath(QString) const; void writePkgConfigFile(); // for pkg-config diff --git a/qmake/generators/win32/winmakefile.cpp b/qmake/generators/win32/winmakefile.cpp index e0d03ccc1c..37eee7fca3 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -747,7 +747,7 @@ QString Win32MakefileGenerator::defaultInstall(const QString &t) } if(!ret.isEmpty()) ret += "\n\t"; - ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true), dst_pc); + ret += installMetaFile(ProKey("QMAKE_PKGCONFIG_INSTALL_REPLACE"), pkgConfigFileName(true, true), dst_pc); if(!uninst.isEmpty()) uninst.append("\n\t"); uninst.append("-$(DEL_FILE) " + escapeFilePath(dst_pc)); -- 2.19.2