diff options
-rw-r--r-- | .gitmodules | 4 | ||||
m--------- | src/tools/perfparser | 0 | ||||
-rw-r--r-- | src/tools/tools.pro | 29 | ||||
-rw-r--r-- | src/tools/tools.qbs | 8 |
4 files changed, 41 insertions, 0 deletions
diff --git a/.gitmodules b/.gitmodules index ee0a99fda7..6fdaf4283f 100644 --- a/.gitmodules +++ b/.gitmodules @@ -2,3 +2,7 @@ path = src/shared/qbs url = ../../qbs/qbs.git ignore = dirty +[submodule "perfparser"] + path = src/tools/perfparser + url = ../perfparser.git + ignore = dirty diff --git a/src/tools/perfparser b/src/tools/perfparser new file mode 160000 +Subproject 28751d2232d6e04fdef3db72e0e7b77055bafc4 diff --git a/src/tools/tools.pro b/src/tools/tools.pro index 07246b95fe..9fad57d693 100644 --- a/src/tools/tools.pro +++ b/src/tools/tools.pro @@ -49,3 +49,32 @@ isEmpty(BUILD_CPLUSPLUS_TOOLS):BUILD_CPLUSPLUS_TOOLS=$$(BUILD_CPLUSPLUS_TOOLS) } } } + +exists(perfparser/perfparser.pro) { + win32 { + SUBDIRS += perfparser + PERFPARSER_APP_DESTDIR = $$IDE_BUILD_TREE/bin + PERFPARSER_APP_INSTALLDIR = $$QTC_PREFIX/bin + + # On windows we take advantage of the fixed path in eblopenbackend.c: "..\lib\elfutils\" + PERFPARSER_ELFUTILS_INSTALLDIR = $$QTC_PREFIX/bin + PERFPARSER_ELFUTILS_BACKENDS_INSTALLDIR = $$QTC_PREFIX/lib/elfutils + } else { + SUBDIRS += perfparser + PERFPARSER_APP_DESTDIR = $$IDE_BUILD_TREE/libexec/qtcreator + PERFPARSER_APP_INSTALLDIR = $$QTC_PREFIX/libexec/qtcreator + + # On linux we have "$ORIGIN/../$LIB/elfutils" in eblopenbackend.c. Unfortunately $LIB can + # be many different things, so we target the second try where it just loads the plain file + # name. This also allows us to put libdw and libelf in a subdir of lib. + PERFPARSER_ELFUTILS_INSTALLDIR = $$QTC_PREFIX/lib/elfutils + PERFPARSER_ELFUTILS_BACKENDS_INSTALLDIR = $$QTC_PREFIX/lib/elfutils + } + + cache(PERFPARSER_APP_DESTDIR) + cache(PERFPARSER_APP_INSTALLDIR) + cache(PERFPARSER_ELFUTILS_INSTALLDIR) + cache(PERFPARSER_ELFUTILS_BACKENDS_INSTALLDIR) +} + +OTHER_FILES += tools.qbs diff --git a/src/tools/tools.qbs b/src/tools/tools.qbs index b3f27424e6..1de2bfb3c5 100644 --- a/src/tools/tools.qbs +++ b/src/tools/tools.qbs @@ -17,4 +17,12 @@ Project { "iostool/iostool.qbs", "winrtdebughelper/winrtdebughelper.qbs" ].concat(project.additionalTools) + + Project { + name: "PerfParser Tool" + references: [ + "perfparser/perfparser.qbs" + ] + condition: File.exists(project.ide_source_tree + "/src/tools/perfparser/perfparser.qbs") + } } |