aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--share/qbs/imports/qbs/PathTools/path-tools.js2
-rw-r--r--share/qbs/module-providers/Qt/templates/android_support.qbs34
-rw-r--r--share/qbs/module-providers/Qt/templates/core.qbs3
-rw-r--r--share/qbs/modules/Android/sdk/sdk.qbs1
-rw-r--r--share/qbs/modules/cpp/CppModule.qbs1
-rw-r--r--share/qbs/modules/cpp/android-gcc.qbs14
6 files changed, 14 insertions, 41 deletions
diff --git a/share/qbs/imports/qbs/PathTools/path-tools.js b/share/qbs/imports/qbs/PathTools/path-tools.js
index b2cb63e39..a857a7139 100644
--- a/share/qbs/imports/qbs/PathTools/path-tools.js
+++ b/share/qbs/imports/qbs/PathTools/path-tools.js
@@ -107,6 +107,8 @@ function dynamicLibraryFilePath(product, variantSuffix, version, maxParts) {
version = undefined;
}
+ fileName += product.moduleProperty("cpp", "archSuffix");
+
// Append the suffix (i.e. libqbs.1.0.0.dylib, libqbs.so, qbs.dll)
fileName += product.moduleProperty("cpp", "dynamicLibrarySuffix");
diff --git a/share/qbs/module-providers/Qt/templates/android_support.qbs b/share/qbs/module-providers/Qt/templates/android_support.qbs
index bdbb0e43b..3790037f3 100644
--- a/share/qbs/module-providers/Qt/templates/android_support.qbs
+++ b/share/qbs/module-providers/Qt/templates/android_support.qbs
@@ -68,7 +68,6 @@ Module {
}
Properties {
condition: _enableSdkSupport
- Android.sdk._archInName: _multiAbi
Android.sdk._bundledInAssets: _multiAbi
}
Properties {
@@ -79,6 +78,7 @@ Module {
condition: _enableSdkSupport && Utilities.versionCompare(version, "6.0") >= 0
Android.sdk.minimumVersion: "23"
}
+ cpp.archSuffix: _multiAbi ? "_" + Android.ndk.abi : ""
Rule {
condition: _enableSdkSupport
@@ -324,10 +324,8 @@ Module {
var input = inputs["android.nativelibrary"][i];
File.copy(input.filePath,
FileInfo.joinPaths(product.Qt.android_support._deployQtOutDir,
- "libs",
- input.Android.ndk.abi,
- input.baseName + "_" + input.Android.ndk.abi +
- ".so"));
+ "libs", input.Android.ndk.abi,
+ input.fileName));
}
}
};
@@ -396,31 +394,7 @@ Module {
File.remove(oldLibs[i]);
}
};
-
- // androiddeployqt doesn't strip the deployed libraries anymore so it has to done here
- var stripLibsCmd = new JavaScriptCommand();
- stripLibsCmd.description = "Stripping unneeded symbols from deployed qt libraries";
- stripLibsCmd.sourceCode = function() {
- var stripArgs = ["--strip-all"];
- var architectures = [];
- for (var i in inputs["android.nativelibrary"])
- architectures.push(inputs["android.nativelibrary"][i].Android.ndk.abi);
- for (var i in architectures) {
- var abiDirPath = FileInfo.joinPaths(product.Android.sdk.packageContentsDir,
- "lib", architectures[i]);
- var files = File.directoryEntries(abiDirPath, File.Files);
- for (var i = 0; i < files.length; ++i) {
- var filePath = FileInfo.joinPaths(abiDirPath, files[i]);
- if (FileInfo.suffix(filePath) == "so") {
- stripArgs.push(filePath);
- }
- }
- }
- var process = new Process();
- process.exec(product.cpp.stripPath, stripArgs, false);
- }
-
- return [copyCmd, androidDeployQtCmd, moveCmd, stripLibsCmd];
+ return [copyCmd, androidDeployQtCmd, moveCmd];
}
}
diff --git a/share/qbs/module-providers/Qt/templates/core.qbs b/share/qbs/module-providers/Qt/templates/core.qbs
index 691e4b50c..8f0b0e2df 100644
--- a/share/qbs/module-providers/Qt/templates/core.qbs
+++ b/share/qbs/module-providers/Qt/templates/core.qbs
@@ -190,7 +190,8 @@ Module {
return undefined;
return frameworks;
}
- cpp.rpaths: qbs.targetOS.contains('linux') ? [libPath] : undefined
+ cpp.rpaths: qbs.targetOS.contains('linux') && !qbs.targetOS.contains("android") ? [libPath] :
+ undefined
cpp.runtimeLibrary: qbs.toolchain.contains("msvc")
? config.contains("static_runtime") ? "static" : "dynamic"
: original
diff --git a/share/qbs/modules/Android/sdk/sdk.qbs b/share/qbs/modules/Android/sdk/sdk.qbs
index b3f977689..f0e727caf 100644
--- a/share/qbs/modules/Android/sdk/sdk.qbs
+++ b/share/qbs/modules/Android/sdk/sdk.qbs
@@ -96,7 +96,6 @@ Module {
property bool _enableRules: !product.multiplexConfigurationId && !!packageName
- property bool _archInName: false
property bool _bundledInAssets: true
Group {
diff --git a/share/qbs/modules/cpp/CppModule.qbs b/share/qbs/modules/cpp/CppModule.qbs
index ce672b8e7..9f4e6be99 100644
--- a/share/qbs/modules/cpp/CppModule.qbs
+++ b/share/qbs/modules/cpp/CppModule.qbs
@@ -173,6 +173,7 @@ Module {
property string executablePrefix: ""
property string staticLibrarySuffix: ""
property string dynamicLibrarySuffix: ""
+ property string archSuffix: ""
property string loadableModuleSuffix: ""
property string executableSuffix: ""
property string debugInfoSuffix: ""
diff --git a/share/qbs/modules/cpp/android-gcc.qbs b/share/qbs/modules/cpp/android-gcc.qbs
index bd58cbcca..5759606aa 100644
--- a/share/qbs/modules/cpp/android-gcc.qbs
+++ b/share/qbs/modules/cpp/android-gcc.qbs
@@ -41,7 +41,7 @@ LinuxGCC {
condition: qbs.targetOS.contains("android") && qbs.toolchain && qbs.toolchain.contains("llvm")
priority: 2
- rpaths: [rpathOrigin]
+ rpaths: []
cxxLanguageVersion: "c++14"
property string cxxStlBaseDir: FileInfo.joinPaths(Android.ndk.ndkDir, "sources", "cxx-stl")
@@ -128,12 +128,7 @@ LinuxGCC {
return includes;
}
- defines: {
- var list = ["ANDROID"];
- // Might be superseded by an -mandroid-version or similar Clang compiler flag in future
- list.push("__ANDROID_API__=" + Android.ndk.platformVersion);
- return list;
- }
+ defines: ["ANDROID", "__ANDROID__"]
binutilsPath: FileInfo.joinPaths(Android.ndk.ndkDir, "toolchains", "llvm", "prebuilt",
Android.ndk.hostArch, "bin");
@@ -158,9 +153,10 @@ LinuxGCC {
}
}
- targetVendor: "none"
+ target: [targetArch, targetSystem, targetAbi].join("-")
targetSystem: "linux"
- targetAbi: "android" + (["armeabi", "armeabi-v7a"].contains(Android.ndk.abi) ? "eabi" : "")
+ targetAbi: "android" + (["armeabi", "armeabi-v7a"].contains(Android.ndk.abi) ? "eabi" : "") +
+ Android.ndk.platformVersion
endianness: "little"