File labtool_dfu-util_path.patch of Package labtool
From 29cf572d79117b9889d720fbe53036753152ed21 Mon Sep 17 00:00:00 2001
From: Niels van Adrichem <nvanadrichem@outlook.com>
Date: Mon, 27 Oct 2014 10:08:57 +0100
Subject: [PATCH] Added case for preinstalled dfu-util
---
app/device/labtool/labtooldevicecommthread.cpp | 26 +++++++++++++++++---------
1 file changed, 17 insertions(+), 9 deletions(-)
diff --git a/app/device/labtool/labtooldevicecommthread.cpp b/app/device/labtool/labtooldevicecommthread.cpp
index 3ae7952..ea6d941 100644
--- a/app/device/labtool/labtooldevicecommthread.cpp
+++ b/app/device/labtool/labtooldevicecommthread.cpp
@@ -211,15 +211,23 @@ void LabToolDeviceCommThread::runDFU()
QString program = appPath + "/dfu-util";
qDebug("DFU program %s", qPrintable(program));
#else
-#ifdef Q_OS_WIN
- QString program = "tools/dfu-util-0.7-binaries/win32-mingw32/dfu-util-static.exe";
-#else // Q_OS_LINUX
- #ifdef QT_ARCH_ARM
- QString program = "tools/dfu-util-0.7-binaries/linux-armel/dfu-util";
- #else
- QString program = "tools/dfu-util-0.7-binaries/linux-i386/dfu-util";
- #endif
-#endif
+ #ifdef Q_OS_WIN
+ QString program = "tools/dfu-util-0.7-binaries/win32-mingw32/dfu-util-static.exe";
+ #else // Q_OS_LINUX
+ QString program;
+ if (QFile::exists("/usr/bin/dfu-util"))
+ {
+ program = "/usr/bin/dfu-util";
+ }
+ else
+ {
+ #ifdef QT_ARCH_ARM
+ program = "tools/dfu-util-0.7-binaries/linux-armel/dfu-util";
+ #else // Revert to i386; Maybe add a case + build for x86_64
+ program = "tools/dfu-util-0.7-binaries/linux-i386/dfu-util";
+ #endif
+ }
+ #endif
if (!QFile::exists(program))
{
program = "../" + program;
--
2.1.4