summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--qmake/generators/unix/unixmake2.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp
index 49300f3102..70a7d66a9b 100644
--- a/qmake/generators/unix/unixmake2.cpp
+++ b/qmake/generators/unix/unixmake2.cpp
@@ -282,14 +282,17 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
QString odir;
if(!project->values("OBJECTS_DIR").isEmpty())
odir = project->first("OBJECTS_DIR");
+
+ QString pwd = escapeFilePath(fileFixify(qmake_getpwd()));
+
t << "###### Dependencies" << endl << endl;
- t << odir << ".deps/%.d: %.cpp\n\t";
+ t << odir << ".deps/%.d: " << pwd << "/%.cpp\n\t";
if(project->isActiveConfig("echo_depend_creation"))
t << "@echo Creating depend for $<" << "\n\t";
t << mkdir_p_asstring("$(@D)") << "\n\t"
<< "@$(CXX) " << cmd << " $< | sed \"s,^\\($(*F).o\\):," << odir << "\\1:,g\" >$@" << endl << endl;
- t << odir << ".deps/%.d: %.c\n\t";
+ t << odir << ".deps/%.d: " << pwd << "/%.c\n\t";
if(project->isActiveConfig("echo_depend_creation"))
t << "@echo Creating depend for $<" << "\n\t";
t << mkdir_p_asstring("$(@D)") << "\n\t"
@@ -317,8 +320,9 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t)
}
}
}
+
if(!d_file.isEmpty()) {
- d_file = odir + ".deps/" + d_file + ".d";
+ d_file = odir + ".deps/" + fileFixify(d_file, pwd, Option::output_dir) + ".d";
QStringList deps = findDependencies((*it)).filter(QRegExp(Option::cpp_moc_ext + "$"));
if(!deps.isEmpty())
t << d_file << ": " << deps.join(" ") << endl;