diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp index 4069b14..e583419 100644 --- a/qmake/generators/unix/unixmake2.cpp +++ b/qmake/generators/unix/unixmake2.cpp @@ -1546,26 +1546,38 @@ UnixMakefileGenerator::writePkgConfigFile() // ### does make sense only for project->variables()["ALL_DEPS"].append(fname); QTextStream t(&ft); - QString prefix = pkgConfigPrefix(); - QString libDir = project->first("QMAKE_PKGCONFIG_LIBDIR"); - if(libDir.isEmpty()) - libDir = prefix + "/lib"; - QString includeDir = project->first("QMAKE_PKGCONFIG_INCDIR"); - if(includeDir.isEmpty()) - includeDir = prefix + "/include"; - QString pluginsDir = project->first("QMAKE_PKGCONFIG_PLUGINS"); - if(pluginsDir.isEmpty()) - pluginsDir = prefix + "/plugins"; - QString translationsDir = qInstallPathTranslations(); - if(translationsDir.isEmpty()) - translationsDir = prefix + "/translations"; - - t << "prefix=" << prefix << endl; - t << "exec_prefix=${prefix}\n" - << "libdir=" << pkgConfigFixPath(libDir) << "\n" - << "includedir=" << pkgConfigFixPath(includeDir) << "\n" - << "translationsdir=" << pkgConfigFixPath(translationsDir) << endl; - t << "pluginsdir=" << pkgConfigFixPath(pluginsDir) << endl; // non-standard entry. Provides path for plugins + QString prefix = pkgConfigPrefix(); + QString libDir = qInstallPathLibs(); + if (libDir.isEmpty()) + { + libDir = prefix + "/lib"; + } + QString includeDir = qInstallPathHeaders(); + if (includeDir.isEmpty()) + { + includeDir = prefix + "/include"; + } + QString pluginsDir = qInstallPathPlugins(); + if (pluginsDir.isEmpty()) + { + pluginsDir = prefix + "/plugins"; + } + QString translationsDir = qInstallPathTranslations(); + if (translationsDir.isEmpty()) + { + translationsDir = prefix + "/translations"; + } + + t << "prefix=" << prefix << endl + << "exec_prefix=${prefix}" << endl + << "libdir=" << pkgConfigFixPath(libDir) << endl + << "includedir=" << pkgConfigFixPath(includeDir) << endl + // non-standard entry. Provides path for plugins + << "pluginsdir=" << pkgConfigFixPath(pluginsDir) << endl + // non-standard entry. Provides path for translations + << "translationsdir=" << pkgConfigFixPath(translationsDir) << endl + << endl; + // non-standard entry. Provides useful info normally only // contained in the internal .qmake.cache file t << varGlue("CONFIG", "qt_config=", " ", "") << endl << endl;