summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@theqtcompany.com>2015-08-27 16:07:25 +0200
committerChristian Kandeler <christian.kandeler@theqtcompany.com>2015-08-27 17:46:25 +0300
commitd65cf0fcecb5cd8f7290bd2afda635a48f7ec71f (patch)
treedb204502638ab57b15a9fb5ffe167b1b20281a3f
parent8793c8fa523c4d05962990cec1031996b8601d0a (diff)
qbs build: Allow to use elfutils provided by the system.
Change-Id: I218c050a79012e0536a54ae71321778cb5875f58 Reviewed-by: Ulf Hermann <ulf.hermann@theqtcompany.com>
-rw-r--r--3rdparty/elfutils/elfutils.qbs1
-rw-r--r--app/app.qbs20
-rw-r--r--perfparser.qbs5
3 files changed, 19 insertions, 7 deletions
diff --git a/3rdparty/elfutils/elfutils.qbs b/3rdparty/elfutils/elfutils.qbs
index 9e5dc8d..84a3628 100644
--- a/3rdparty/elfutils/elfutils.qbs
+++ b/3rdparty/elfutils/elfutils.qbs
@@ -2,6 +2,7 @@ import qbs
Project {
name: "elfutils"
+ condition: !project.useSystemElfUtils
references: [
"backends",
diff --git a/app/app.qbs b/app/app.qbs
index eb948fc..a47fd40 100644
--- a/app/app.qbs
+++ b/app/app.qbs
@@ -4,16 +4,22 @@ QtApplication {
name: "perfparser"
consoleApplication: true
- Depends { name: "dw" }
- Depends { name: "dwelf" }
- Depends { name: "dwfl" }
- Depends { name: "ebl" }
- Depends { name: "elf" }
- Depends { name: "elf32" }
- Depends { name: "elf64" }
+ Depends { name: "dw"; condition: !project.useSystemElfUtils }
+ Depends { name: "dwelf"; condition: !project.useSystemElfUtils }
+ Depends { name: "dwfl"; condition: !project.useSystemElfUtils }
+ Depends { name: "ebl"; condition: !project.useSystemElfUtils }
+ Depends { name: "elf"; condition: !project.useSystemElfUtils }
+ Depends { name: "elf32"; condition: !project.useSystemElfUtils }
+ Depends { name: "elf64"; condition: !project.useSystemElfUtils }
Depends { name: "Qt.network" }
+ Properties {
+ condition: project.useSystemElfUtils
+ cpp.includePaths: ["/usr/include/elfutils"]
+ cpp.dynamicLibraries: ["dw", "elf"]
+ }
+
cpp.allowUnresolvedSymbols: true
cpp.cxxLanguageVersion: "c++11"
diff --git a/perfparser.qbs b/perfparser.qbs
index 43d10f8..e76f54d 100644
--- a/perfparser.qbs
+++ b/perfparser.qbs
@@ -2,6 +2,11 @@ import qbs
Project {
name: "Perf Parser"
+ // condition: qbs.targetOS.contains("linux") TODO: Re-enable once qbs evaluation bug is fixed.
+
+ property bool useSystemElfUtils: !qbs.toolchain.contains("gcc")
+ || qbs.toolchain.contains("clang")
+
references: [
"3rdparty/elfutils",
"app",