From 8e28e0603a900e1b18ebfd14c4f87b16dabf4cf6 Mon Sep 17 00:00:00 2001 From: Christian Ehrlicher Date: Fri, 19 Sep 2008 17:41:26 +0200 Subject: [PATCH 06/13] Fix configure.exe to do an out-of-source build on windows qt-bugs@ issue : N227213 Trolltech task ID : none yet --- bin/syncqt | 6 +++++- projects.pro | 3 +++ src/tools/moc/main.cpp | 6 ++++++ 3 files changed, 14 insertions(+), 1 deletions(-) diff --git a/bin/syncqt b/bin/syncqt index 7a9f1d3..b5a8e1c 100755 --- a/bin/syncqt +++ b/bin/syncqt @@ -365,9 +365,13 @@ sub fixPaths { $match_dir = $tmp; $i = $slash; } + my $cnt_ofs = 0; + if($match_dir =~ /^[a-zA-Z]:$/) { + $cnt_ofs = 1; + } if($match_dir) { my $after = substr($dir, length($match_dir)); - my $count = ($after =~ tr,/,,); + my $count = ($after =~ tr,/,,) - $cnt_ofs; my $dots = ""; for(my $i = 0; $i < $count; $i++) { $dots .= "../"; diff --git a/projects.pro b/projects.pro index 2596c0a..3ba0688 100644 --- a/projects.pro +++ b/projects.pro @@ -127,6 +127,9 @@ unix { DEFAULT_QMAKESPEC ~= s,^.*mkspecs/,,g mkspecs.commands += $(DEL_FILE) $(INSTALL_ROOT)$$mkspecs.path/default; $(SYMLINK) $$DEFAULT_QMAKESPEC $(INSTALL_ROOT)$$mkspecs.path/default } +win32 { + mkspecs.files += $$QT_BUILD_TREE/mkspecs/default +} INSTALLS += mkspecs false:macx { #mac install location diff --git a/src/tools/moc/main.cpp b/src/tools/moc/main.cpp index d519b09..7979836 100644 --- a/src/tools/moc/main.cpp +++ b/src/tools/moc/main.cpp @@ -94,7 +94,13 @@ static QByteArray combinePath(const char *infile, const char *outfile) inSplitted.prepend(QLatin1String("..")); } inSplitted.append(inFileInfo.fileName()); +#ifdef Q_WS_WIN + const QString rel = inSplitted.join(QLatin1String("/")); + const QString abs = inFileInfo.absoluteFilePath(); + return QFile::encodeName(rel.length() < abs.length() ? rel : abs); +#else return QFile::encodeName(inSplitted.join(QLatin1String("/"))); +#endif } -- 1.6.5.1