summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2008-12-13 10:09:13 +0000
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2008-12-13 10:09:13 +0000
commite2b69ddffb9e731ef6c1bb1b704fe9038e999817 (patch)
treedc285de5d6de757c3a63a006b0f7c098b90ffc06
parent6340a4c9ed80e1a04e688be7578161583d886892 (diff)
downloadrockbox-e2b69ddffb9e731ef6c1bb1b704fe9038e999817.tar.gz
rockbox-e2b69ddffb9e731ef6c1bb1b704fe9038e999817.zip
rbutil fixes for OpenBSD (FS#9340 by Brian Waichunas).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@19417 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--rbutil/rbutilqt/base/autodetection.cpp21
-rw-r--r--rbutil/rbutilqt/encodersgui.cpp2
-rw-r--r--rbutil/rbutilqt/tts.cpp2
3 files changed, 22 insertions, 3 deletions
diff --git a/rbutil/rbutilqt/base/autodetection.cpp b/rbutil/rbutilqt/base/autodetection.cpp
index 2a82bf319f..54c047792a 100644
--- a/rbutil/rbutilqt/base/autodetection.cpp
+++ b/rbutil/rbutilqt/base/autodetection.cpp
@@ -45,6 +45,12 @@
45#include <setupapi.h> 45#include <setupapi.h>
46#include <winioctl.h> 46#include <winioctl.h>
47#endif 47#endif
48
49#if defined(Q_OS_OPENBSD)
50#include <sys/param.h>
51#include <sys/mount.h>
52#endif
53
48#include "detect.h" 54#include "detect.h"
49#include "utils.h" 55#include "utils.h"
50 56
@@ -209,7 +215,7 @@ QStringList Autodetection::getMountpoints()
209 tempList << list.at(i).absolutePath(); 215 tempList << list.at(i).absolutePath();
210 } 216 }
211 217
212#elif defined(Q_OS_MACX) 218#elif defined(Q_OS_MACX) || defined(Q_OS_OPENBSD)
213 int num; 219 int num;
214 struct statfs *mntinf; 220 struct statfs *mntinf;
215 221
@@ -269,6 +275,19 @@ QString Autodetection::resolveMountPoint(QString device)
269 } 275 }
270#endif 276#endif
271 277
278#if defined(Q_OS_OPENBSD)
279 int num;
280 struct statfs *mntinf;
281
282 num = getmntinfo(&mntinf, MNT_WAIT);
283 while(num--) {
284 if(QString(mntinf->f_mntfromname).startsWith(device)
285 && QString(mntinf->f_fstypename).contains("msdos", Qt::CaseInsensitive))
286 return QString(mntinf->f_mntonname);
287 mntinf++;
288 }
289#endif
290
272#if defined(Q_OS_WIN32) 291#if defined(Q_OS_WIN32)
273 QString result; 292 QString result;
274 unsigned int driveno = device.replace(QRegExp("^.*([0-9]+)"), "\\1").toInt(); 293 unsigned int driveno = device.replace(QRegExp("^.*([0-9]+)"), "\\1").toInt();
diff --git a/rbutil/rbutilqt/encodersgui.cpp b/rbutil/rbutilqt/encodersgui.cpp
index 4d009252b4..82bd8650fb 100644
--- a/rbutil/rbutilqt/encodersgui.cpp
+++ b/rbutil/rbutilqt/encodersgui.cpp
@@ -41,7 +41,7 @@ void EncExesGui::showCfg(QString name)
41 { 41 {
42 42
43 // try to autodetect encoder 43 // try to autodetect encoder
44#if defined(Q_OS_LINUX) || defined(Q_OS_MACX) 44#if defined(Q_OS_LINUX) || defined(Q_OS_MACX) || defined(Q_OS_OPENBSD)
45 QStringList path = QString(getenv("PATH")).split(":", QString::SkipEmptyParts); 45 QStringList path = QString(getenv("PATH")).split(":", QString::SkipEmptyParts);
46#elif defined(Q_OS_WIN) 46#elif defined(Q_OS_WIN)
47 QStringList path = QString(getenv("PATH")).split(";", QString::SkipEmptyParts); 47 QStringList path = QString(getenv("PATH")).split(";", QString::SkipEmptyParts);
diff --git a/rbutil/rbutilqt/tts.cpp b/rbutil/rbutilqt/tts.cpp
index 76eacd54ca..252608f53e 100644
--- a/rbutil/rbutilqt/tts.cpp
+++ b/rbutil/rbutilqt/tts.cpp
@@ -107,7 +107,7 @@ void TTSExes::setCfg(RbSettings* sett)
107 { 107 {
108 QString exepath; 108 QString exepath;
109 //try autodetect tts 109 //try autodetect tts
110#if defined(Q_OS_LINUX) || defined(Q_OS_MACX) 110#if defined(Q_OS_LINUX) || defined(Q_OS_MACX) || defined(Q_OS_OPENBSD)
111 QStringList path = QString(getenv("PATH")).split(":", QString::SkipEmptyParts); 111 QStringList path = QString(getenv("PATH")).split(":", QString::SkipEmptyParts);
112#elif defined(Q_OS_WIN) 112#elif defined(Q_OS_WIN)
113 QStringList path = QString(getenv("PATH")).split(";", QString::SkipEmptyParts); 113 QStringList path = QString(getenv("PATH")).split(";", QString::SkipEmptyParts);