make fileFixify(FileFixifyAbsolute) pay attention to in_dir

... instead of sheepishly assuming qmake_pwd().
it also canonicalizes consistently with the relative output path now.

Change-Id: I86231f7259179020643405f3c0e696a74031aa4e
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
This commit is contained in:
Oswald Buddenhagen 2015-04-14 19:34:40 +02:00
parent ed4bdd3eec
commit 6accf40a14

View File

@ -2839,7 +2839,12 @@ MakefileGenerator::fileFixify(const QString& file, const QString &out_d, const Q
}
if(fix == FileFixifyAbsolute || (fix == FileFixifyDefault && project->isActiveConfig("no_fixpath"))) {
if(fix == FileFixifyAbsolute && QDir::isRelativePath(ret)) { //already absolute
QString pwd = qmake_getpwd();
QString pwd = QDir(qmake_getpwd()).absoluteFilePath(in_d);
{
QFileInfo in_fi(fileInfo(pwd));
if (in_fi.exists())
pwd = in_fi.canonicalFilePath();
}
if (!pwd.endsWith(QLatin1Char('/')))
pwd += QLatin1Char('/');
ret.prepend(pwd);