aboutsummaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@digia.com>2014-07-21 16:49:39 +0200
committerJoerg Bornemann <joerg.bornemann@digia.com>2014-07-22 15:36:01 +0200
commit9d4f02009907ecdebde915062b00b7eba5220a18 (patch)
tree6dbc1958a3262a0ba9a999dd140ae56b18c9b9f7 /share
parent538fc819d54df01b8d8581371bde902da22b7c57 (diff)
simplify signature of MSVC.prepareLinker
Change-Id: I6dc05e5ef71e4fd54e3a27b5e13de9bdb9c57940 Reviewed-by: Christian Kandeler <christian.kandeler@digia.com>
Diffstat (limited to 'share')
-rw-r--r--share/qbs/modules/cpp/msvc.js9
-rw-r--r--share/qbs/modules/cpp/windows-msvc.qbs14
2 files changed, 10 insertions, 13 deletions
diff --git a/share/qbs/modules/cpp/msvc.js b/share/qbs/modules/cpp/msvc.js
index e165d21c0..392a9d92a 100644
--- a/share/qbs/modules/cpp/msvc.js
+++ b/share/qbs/modules/cpp/msvc.js
@@ -125,7 +125,7 @@ function prepareCompiler(product, input, outputs) {
return cmd;
}
-function prepareLinker(product, inputs, outputs, libraryPaths, dynamicLibraries, staticLibraries, linkerFlags) {
+function prepareLinker(product, inputs, outputs) {
var i;
var linkDLL = (outputs.dynamiclibrary ? true : false)
var primaryOutput = (linkDLL ? outputs.dynamiclibrary[0] : outputs.application[0])
@@ -185,12 +185,16 @@ function prepareLinker(product, inputs, outputs, libraryPaths, dynamicLibraries,
var fileName = FileInfo.toWindowsSeparators(allInputs[i].filePath)
args.push(fileName)
}
+
+ var staticLibraries = ModUtils.modulePropertiesFromArtifacts(product, inputs.staticlibrary,
+ "cpp", "staticLibraries");
for (i in staticLibraries) {
var staticLibrary = staticLibraries[i];
if (!staticLibrary.match(/\.lib$/i))
staticLibrary += ".lib";
args.push(staticLibrary)
}
+ var dynamicLibraries = ModUtils.moduleProperties(product, "dynamicLibraries");
for (i in dynamicLibraries) {
var dynamicLibrary = dynamicLibraries[i];
if (!dynamicLibrary.match(/\.lib$/i))
@@ -202,9 +206,12 @@ function prepareLinker(product, inputs, outputs, libraryPaths, dynamicLibraries,
args.push("/ENTRY:" + product.moduleProperty("cpp", "entryPoint"));
args.push('/OUT:' + linkerOutputNativeFilePath)
+ var libraryPaths = ModUtils.moduleProperties(product, 'libraryPaths');
for (i in libraryPaths) {
args.push('/LIBPATH:' + FileInfo.toWindowsSeparators(libraryPaths[i]))
}
+ var linkerFlags = ModUtils.moduleProperties(product, 'platformLinkerFlags').concat(
+ ModUtils.moduleProperties(product, 'linkerFlags'));
args = args.concat(linkerFlags);
if (ModUtils.moduleProperty(product, "allowUnresolvedSymbols"))
args.push("/FORCE:UNRESOLVED");
diff --git a/share/qbs/modules/cpp/windows-msvc.qbs b/share/qbs/modules/cpp/windows-msvc.qbs
index 00c56d153..bc58ee574 100644
--- a/share/qbs/modules/cpp/windows-msvc.qbs
+++ b/share/qbs/modules/cpp/windows-msvc.qbs
@@ -97,12 +97,7 @@ CppModule {
}
prepare: {
- var libraryPaths = ModUtils.moduleProperties(product, 'libraryPaths');
- var dynamicLibraries = ModUtils.moduleProperties(product, "dynamicLibraries");
- var staticLibraries = ModUtils.modulePropertiesFromArtifacts(product, inputs.staticlibrary, 'cpp', 'staticLibraries');
- var linkerFlags = ModUtils.moduleProperties(product, 'platformLinkerFlags').concat(
- ModUtils.moduleProperties(product, 'linkerFlags'));
- return MSVC.prepareLinker(product, inputs, outputs, libraryPaths, dynamicLibraries, staticLibraries, linkerFlags)
+ return MSVC.prepareLinker(product, inputs, outputs);
}
}
@@ -124,12 +119,7 @@ CppModule {
}
prepare: {
- var libraryPaths = ModUtils.moduleProperties(product, 'libraryPaths');
- var dynamicLibraries = ModUtils.moduleProperties(product, 'dynamicLibraries');
- var staticLibraries = ModUtils.modulePropertiesFromArtifacts(product, inputs.staticlibrary, 'cpp', 'staticLibraries');
- var linkerFlags = ModUtils.moduleProperties(product, 'platformLinkerFlags').concat(
- ModUtils.moduleProperties(product, 'linkerFlags'));
- return MSVC.prepareLinker(product, inputs, outputs, libraryPaths, dynamicLibraries, staticLibraries, linkerFlags)
+ return MSVC.prepareLinker(product, inputs, outputs);
}
}