1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
From 3d3a53de05966c9c1cfd109ebf097adf73ba2855 Mon Sep 17 00:00:00 2001
From: Martchus <martchus@gmx.net>
Date: Sun, 18 Sep 2016 13:54:12 +0200
Subject: [PATCH 04/32] 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 7ff921549da..fc996663d8d 100644
--- a/qmake/generators/makefile.cpp
+++ b/qmake/generators/makefile.cpp
@@ -3242,7 +3242,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()) {
@@ -3267,7 +3267,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 106069c454b..5252a7eaa12 100644
--- a/qmake/generators/makefile.h
+++ b/qmake/generators/makefile.h
@@ -96,7 +96,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 5e446bd7e2b..183cef29089 100644
--- a/qmake/generators/win32/winmakefile.cpp
+++ b/qmake/generators/win32/winmakefile.cpp
@@ -775,7 +775,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.46.0
|