|
Rex Dieter |
29094f2 |
From bc0981b6fa49aa1821f9d0e649887b82b513dcd4 Mon Sep 17 00:00:00 2001
|
|
Rex Dieter |
29094f2 |
From: Benjamin Reed <ranger@befunk.com>
|
|
Rex Dieter |
29094f2 |
Date: Mon, 30 Mar 2009 14:24:47 +0000
|
|
Rex Dieter |
29094f2 |
Subject: [PATCH 04/33] auto-detect case-insensitive filesystem on OSX
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
svn path=/trunk/kdesupport/automoc/; revision=946924
|
|
Rex Dieter |
29094f2 |
---
|
|
Rex Dieter |
29094f2 |
kde4automoc.cpp | 16 ++++++++++++++--
|
|
Rex Dieter |
29094f2 |
1 file changed, 14 insertions(+), 2 deletions(-)
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
diff --git a/kde4automoc.cpp b/kde4automoc.cpp
|
|
Rex Dieter |
29094f2 |
index 7636601..e85ec62 100644
|
|
Rex Dieter |
29094f2 |
--- a/kde4automoc.cpp
|
|
Rex Dieter |
29094f2 |
+++ b/kde4automoc.cpp
|
|
Rex Dieter |
29094f2 |
@@ -47,6 +47,10 @@
|
|
Rex Dieter |
29094f2 |
#include <utime.h>
|
|
Rex Dieter |
29094f2 |
#endif
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
+#if defined(Q_OS_DARWIN) || defined(Q_OS_MAC)
|
|
Rex Dieter |
29094f2 |
+#include <unistd.h>
|
|
Rex Dieter |
29094f2 |
+#endif
|
|
Rex Dieter |
29094f2 |
+
|
|
Rex Dieter |
29094f2 |
// currently this is only used for the version number, Alex
|
|
Rex Dieter |
29094f2 |
#include "automoc4_config.h"
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
@@ -182,7 +186,7 @@ void AutoMoc::lazyInit()
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
// on the Mac, add -F always, otherwise headers in the frameworks won't be found
|
|
Rex Dieter |
29094f2 |
// is it necessary to do this only optionally ? Alex
|
|
Rex Dieter |
29094f2 |
-#ifdef Q_OS_MAC
|
|
Rex Dieter |
29094f2 |
+#if defined(Q_OS_DARWIN) || defined(Q_OS_MAC)
|
|
Rex Dieter |
29094f2 |
mocIncludes << "-F/Library/Frameworks";
|
|
Rex Dieter |
29094f2 |
#endif
|
|
Rex Dieter |
29094f2 |
|
|
Rex Dieter |
29094f2 |
@@ -284,9 +288,17 @@ bool AutoMoc::run()
|
|
Rex Dieter |
29094f2 |
QRegExp mocIncludeRegExp(QLatin1String("[\n]\\s*#\\s*include\\s+[\"<]((?:[^ \">]+/)?moc_[^ \">/]+\\.cpp|[^ \">]+\\.moc)[\">]"));
|
|
Rex Dieter |
29094f2 |
QRegExp qObjectRegExp(QLatin1String("[\n]\\s*Q_OBJECT\\b"));
|
|
Rex Dieter |
29094f2 |
QStringList headerExtensions;
|
|
Rex Dieter |
29094f2 |
-#if defined(Q_OS_WIN) || defined(Q_OS_MAC)
|
|
Rex Dieter |
29094f2 |
+#if defined(Q_OS_WIN)
|
|
Rex Dieter |
29094f2 |
// not case sensitive
|
|
Rex Dieter |
29094f2 |
headerExtensions << ".h" << ".hpp" << ".hxx";
|
|
Rex Dieter |
29094f2 |
+#elif defined(Q_OS_DARWIN) || defined(Q_OS_MAC)
|
|
Rex Dieter |
29094f2 |
+ headerExtensions << ".h" << ".hpp" << ".hxx";
|
|
Rex Dieter |
29094f2 |
+
|
|
Rex Dieter |
29094f2 |
+ // detect case-sensitive filesystem
|
|
Rex Dieter |
29094f2 |
+ long caseSensitive = pathconf(srcdir.toLocal8Bit(), _PC_CASE_SENSITIVE);
|
|
Rex Dieter |
29094f2 |
+ if (caseSensitive == 1) {
|
|
Rex Dieter |
29094f2 |
+ headerExtensions << ".H";
|
|
Rex Dieter |
29094f2 |
+ }
|
|
Rex Dieter |
29094f2 |
#else
|
|
Rex Dieter |
29094f2 |
headerExtensions << ".h" << ".hpp" << ".hxx" << ".H";
|
|
Rex Dieter |
29094f2 |
#endif
|
|
Rex Dieter |
29094f2 |
--
|
|
Rex Dieter |
29094f2 |
2.4.3
|
|
Rex Dieter |
29094f2 |
|