diff options
author | William Gallafent <william@gallaf.net> | 2012-11-29 17:42:30 +0000 |
---|---|---|
committer | Joerg Bornemann <joerg.bornemann@digia.com> | 2012-12-03 09:09:29 +0100 |
commit | f0efeb4b0bbd64b00d7aed994be32aa657ccf320 (patch) | |
tree | 30f9f4734cd7e0aef07c84039ba4fc9529b4a43e | |
parent | 4b80fbfe36620f80fc48b847df03f43d12ae61fa (diff) |
Correct behaviour with sources with more than one dot in the name.
Changes baseName calls to completeBaseName in order to correct a problem
which occurs when more than one dot is present in a name. For
example, both 0.foo.cpp and 0.bar.cpp would get an object named
0.o. After this change we get the correct 0.foo.o and 0.bar.o.
Change-Id: I460f254a66c8bc47700e1c972c5da41af69c4a1f
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r-- | share/qbs/modules/cpp/GenericGCC.qbs | 2 | ||||
-rw-r--r-- | share/qbs/modules/cpp/windows-mingw.qbs | 2 | ||||
-rw-r--r-- | share/qbs/modules/cpp/windows-msvc.qbs | 8 |
3 files changed, 6 insertions, 6 deletions
diff --git a/share/qbs/modules/cpp/GenericGCC.qbs b/share/qbs/modules/cpp/GenericGCC.qbs index d87b335a0..ed2843a9f 100644 --- a/share/qbs/modules/cpp/GenericGCC.qbs +++ b/share/qbs/modules/cpp/GenericGCC.qbs @@ -236,7 +236,7 @@ CppModule { Artifact { fileTags: ["obj"] // ### make it possible to override ".obj" in a project file - fileName: ".obj/" + product.name + "/" + input.baseDir + "/" + input.baseName + ".o" + fileName: ".obj/" + product.name + "/" + input.baseDir + "/" + input.completeBaseName + ".o" } prepare: { diff --git a/share/qbs/modules/cpp/windows-mingw.qbs b/share/qbs/modules/cpp/windows-mingw.qbs index 50d92a732..9df586a59 100644 --- a/share/qbs/modules/cpp/windows-mingw.qbs +++ b/share/qbs/modules/cpp/windows-mingw.qbs @@ -31,7 +31,7 @@ GenericGCC { inputs: ["rc"] Artifact { - fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.baseName + "_res.o" + fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.completeBaseName + "_res.o" fileTags: ["obj"] } diff --git a/share/qbs/modules/cpp/windows-msvc.qbs b/share/qbs/modules/cpp/windows-msvc.qbs index e4ab5799d..f992db998 100644 --- a/share/qbs/modules/cpp/windows-msvc.qbs +++ b/share/qbs/modules/cpp/windows-msvc.qbs @@ -67,9 +67,9 @@ CppModule { Artifact { fileTags: ['obj'] fileName: { - var baseName = FileInfo.baseName(product.modules.cpp.precompiledHeader); + var completeBaseName = FileInfo.completeBaseName(product.modules.cpp.precompiledHeader); // ### make the object file dir overridable - return ".obj/" + product.name + "/" + baseName + '.obj' + return ".obj/" + product.name + "/" + completeBaseName + '.obj' } } Artifact { @@ -95,7 +95,7 @@ CppModule { Artifact { fileTags: ['obj'] // ### make the object file dir overridable - fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.baseName + ".obj" + fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.completeBaseName + ".obj" } prepare: { @@ -209,7 +209,7 @@ CppModule { inputs: ["rc"] Artifact { - fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.baseName + ".res" + fileName: ".obj/" + product.name + "/" + input.baseDir.replace(':', '') + "/" + input.completeBaseName + ".res" fileTags: ["obj"] } |