From 08286bb3f862fdc5f6cbdbb104d56d29d06b840a Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 18 Sep 2016 13:54:12 +0200 Subject: [PATCH 05/34] 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 f824f12bce..07abba9e5f 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -3227,7 +3227,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()) { @@ -3252,7 +3252,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 0535017ff6..b2f8b961c0 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -92,7 +92,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 6046e5791e..87157f31ae 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -751,7 +751,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.20.1