From 499284b7e311cd91dc674ae924d49ceb86c36809 Mon Sep 17 00:00:00 2001 From: Martchus Date: Sun, 18 Sep 2016 13:54:12 +0200 Subject: [PATCH 04/31] 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 ed7d057a88..1694dea086 100644 --- a/qmake/generators/makefile.cpp +++ b/qmake/generators/makefile.cpp @@ -3212,7 +3212,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()) { @@ -3237,7 +3237,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 47e4c7531c..057853a4ce 100644 --- a/qmake/generators/makefile.h +++ b/qmake/generators/makefile.h @@ -95,7 +95,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 86d10c213c..c1b28a52e9 100644 --- a/qmake/generators/win32/winmakefile.cpp +++ b/qmake/generators/win32/winmakefile.cpp @@ -761,7 +761,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.24.1