From 52623d6d9d4a6d768476328d28ef4aa252f92acc Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Wed, 9 Mar 2016 14:59:20 +0100 Subject: qmake: Remove Windows CE support. The platform has been removed in Qt 5.7. Change-Id: Ie768b5ffbe60270c27b4a670dcf580ea361cb361 Reviewed-by: Oswald Buddenhagen --- qmake/Makefile.unix | 8 +- qmake/Makefile.win32 | 3 +- qmake/generators/win32/cesdkhandler.cpp | 368 -------------------------------- qmake/generators/win32/cesdkhandler.h | 89 -------- qmake/generators/win32/msvc_nmake.cpp | 40 +--- qmake/generators/win32/msvc_vcproj.cpp | 65 +----- qmake/qmake.pri | 6 +- 7 files changed, 9 insertions(+), 570 deletions(-) delete mode 100644 qmake/generators/win32/cesdkhandler.cpp delete mode 100644 qmake/generators/win32/cesdkhandler.h (limited to 'qmake') diff --git a/qmake/Makefile.unix b/qmake/Makefile.unix index 405bbf9212..4ce6b7a59e 100644 --- a/qmake/Makefile.unix +++ b/qmake/Makefile.unix @@ -8,8 +8,7 @@ OBJS=project.o option.o property.o main.o ioutils.o proitems.o \ makefile.o unixmake2.o unixmake.o \ mingw_make.o winmakefile.o projectgenerator.o \ meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o \ - msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o \ - cesdkhandler.o + msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o #qt code QOBJS=qtextcodec.o qutfcodec.o qstring.o qstring_compat.o qstringbuilder.o qtextstream.o qiodevice.o \ @@ -36,7 +35,7 @@ DEPEND_SRC = \ $(QMKGENSRC)/mac/pbuilder_pbx.cpp \ $(QMKGENSRC)/win32/winmakefile.cpp \ $(QMKGENSRC)/win32/mingw_make.cpp $(QMKGENSRC)/win32/msvc_nmake.cpp \ - $(QMKGENSRC)/win32/cesdkhandler.cpp $(QMKGENSRC)/mac/xmloutput.cpp \ + $(QMKGENSRC)/mac/xmloutput.cpp \ $(QMKGENSRC)/win32/msvc_vcproj.cpp $(QMKGENSRC)/win32/msvc_vcxproj.cpp \ $(QMKGENSRC)/win32/msvc_objectmodel.cpp $(QMKGENSRC)/win32/msbuild_objectmodel.cpp \ $(SOURCE_PATH)/src/corelib/codecs/qtextcodec.cpp $(SOURCE_PATH)/src/corelib/codecs/qutfcodec.cpp \ @@ -207,9 +206,6 @@ msvc_vcxproj.o: $(QMKSRC)/generators/win32/msvc_vcxproj.cpp msvc_nmake.o: $(QMKSRC)/generators/win32/msvc_nmake.cpp $(CXX) -c -o $@ $(CXXFLAGS) $< -cesdkhandler.o: $(QMKSRC)/generators/win32/cesdkhandler.cpp - $(CXX) -c -o $@ $(CXXFLAGS) $< - pbuilder_pbx.o: $(QMKSRC)/generators/mac/pbuilder_pbx.cpp $(CXX) -c -o $@ $(CXXFLAGS) $< diff --git a/qmake/Makefile.win32 b/qmake/Makefile.win32 index 1d50f872d9..432d6eb5e8 100644 --- a/qmake/Makefile.win32 +++ b/qmake/Makefile.win32 @@ -67,8 +67,7 @@ OBJS = project.obj main.obj ioutils.obj proitems.obj qmakevfs.obj \ option.obj winmakefile.obj projectgenerator.obj property.obj meta.obj \ makefiledeps.obj metamakefile.obj xmloutput.obj \ msvc_nmake.obj msvc_vcproj.obj msvc_vcxproj.obj \ - msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj \ - cesdkhandler.obj + msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj #qt code QTOBJS= \ diff --git a/qmake/generators/win32/cesdkhandler.cpp b/qmake/generators/win32/cesdkhandler.cpp deleted file mode 100644 index f45cbf74a9..0000000000 --- a/qmake/generators/win32/cesdkhandler.cpp +++ /dev/null @@ -1,368 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the tools applications of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#include "cesdkhandler.h" - -#include -#include -#include -#include -#include -#include - -QT_BEGIN_NAMESPACE - -struct PropertyContainer -{ - void clear() { name.clear(); value.clear(); properties.clear(); } - QString name; - QString value; - QMap properties; -}; -Q_DECLARE_TYPEINFO(PropertyContainer, Q_MOVABLE_TYPE); - -CeSdkInfo::CeSdkInfo() : m_major(0) , m_minor(0) -{ -} - -CeSdkHandler::CeSdkHandler() -{ -} - -struct ContainsPathKey -{ - bool operator()(const QString &val) const - { - return !(val.endsWith(QLatin1String("MSBuildToolsPath")) - || val.endsWith(QLatin1String("MSBuildToolsRoot"))); - } -}; - -struct ValueFromKey -{ - explicit ValueFromKey(const QSettings *settings) : settings(settings) {} - QString operator()(const QString &key) const - { - return settings->value(key).toString(); - } - - const QSettings *settings; -}; - -bool CeSdkHandler::parseMsBuildFile(QFile *file, CeSdkInfo *info) -{ - bool result = file->open(QFile::ReadOnly | QFile::Text); - const QString IncludePath = QStringLiteral("IncludePath"); - const QString LibraryPath = QStringLiteral("LibraryPath"); - const QString PreprocessorDefinitions = QStringLiteral("PreprocessorDefinitions"); - const QString SdkRootPathString = QStringLiteral("SdkRootPath"); - const QString ExecutablePath = QStringLiteral("ExecutablePath"); - enum ParserState{Not, Include, Lib, Define, BinDir, SdkRootPath}; - QString includePath; - QString libraryPath; - QString defines; - QString binDirs; - QString sdkRootPath; - ParserState state = Not; - if (result) { - QXmlStreamReader xml(file); - while (!xml.atEnd()) { - if (xml.isStartElement()) { - if (xml.name() == IncludePath) - state = Include; - else if (xml.name() == LibraryPath) - state = Lib; - else if (xml.name() == PreprocessorDefinitions) - state = Define; - else if (xml.name() == SdkRootPathString) - state = SdkRootPath; - else if (xml.name() == ExecutablePath) - state = BinDir; - else - state = Not; - } else if (xml.isEndElement()) { - state = Not; - } else if (xml.isCharacters()) { - switch (state) { - case Include: - includePath += xml.text(); - break; - case Lib: - libraryPath += xml.text(); - break; - case Define: - defines += xml.text(); - break; - case SdkRootPath: - sdkRootPath = xml.text().toString(); - break; - case BinDir: - binDirs += xml.text(); - case(Not): - break; - } - } - xml.readNext(); - } - } - file->close(); - const bool success = result && !includePath.isEmpty() && !libraryPath.isEmpty() && - !defines.isEmpty() && !sdkRootPath.isEmpty(); - if (success) { - const QString startPattern = QStringLiteral("$(Registry:"); - const int startIndex = sdkRootPath.indexOf(startPattern); - const int endIndex = sdkRootPath.lastIndexOf(QLatin1Char(')')); - const QString regString = sdkRootPath.mid(startIndex + startPattern.size(), - endIndex - startIndex - startPattern.size()); - QSettings sdkRootPathRegistry(regString, QSettings::NativeFormat); - const QString erg = sdkRootPathRegistry.value(QStringLiteral(".")).toString(); - const QString fullSdkRootPath = erg + sdkRootPath.mid(endIndex + 1); - const QLatin1String rootString("$(SdkRootPath)"); - - includePath = includePath.replace(rootString, fullSdkRootPath); - libraryPath = libraryPath.replace(rootString, fullSdkRootPath); - binDirs = binDirs.replace(rootString, fullSdkRootPath); - info->m_include = includePath + ";$(INCLUDE)"; - info->m_lib = libraryPath; - info->m_bin = binDirs; - } - return success; -} - -QStringList CeSdkHandler::getMsBuildToolPaths() const -{ - QSettings msbuildEntries("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\MSBuild\\ToolsVersions", - QSettings::NativeFormat); - const QStringList allKeys = msbuildEntries.allKeys(); - QStringList toolVersionKeys; - toolVersionKeys.push_back(QStringLiteral("c:\\Program Files\\MSBuild\\")); - std::remove_copy_if(allKeys.cbegin(), allKeys.cend(), - std::back_inserter(toolVersionKeys), ContainsPathKey()); - QStringList toolVersionValues; - std::transform(toolVersionKeys.constBegin(), toolVersionKeys.constEnd(), - std::back_inserter(toolVersionValues), - ValueFromKey(&msbuildEntries)); - return toolVersionValues; -} - -QStringList CeSdkHandler::filterMsBuildToolPaths(const QStringList &paths) const -{ - QStringList result; - for (const QString &path : paths) { - QDir dirVC110(path); - if (path.endsWith(QLatin1String("bin"))) - dirVC110.cdUp(); - QDir dirVC120 = dirVC110; - if (dirVC110.cd(QStringLiteral("Microsoft.Cpp\\v4.0\\V110\\Platforms"))) - result << dirVC110.absolutePath(); - if (dirVC120.cd(QStringLiteral("Microsoft.Cpp\\v4.0\\V120\\Platforms"))) - result << dirVC120.absolutePath(); - } - return result; -} - -bool CeSdkHandler::retrieveEnvironment(const QStringList &relativePaths, - const QStringList &toolPaths, - CeSdkInfo *info) -{ - bool result = false; - for (const QString &path : toolPaths) { - const QDir dir(path); - for (const QString &filePath : relativePaths) { - QFile file(dir.absoluteFilePath(filePath)); - if (file.exists()) - result = parseMsBuildFile(&file, info) || result; - } - } - - return result; -} - -void CeSdkHandler::retrieveWEC2013SDKs() -{ - const QStringList toolPaths = getMsBuildToolPaths(); - const QStringList filteredToolPaths = filterMsBuildToolPaths(toolPaths); - QSettings settings("HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows CE Tools\\SDKs", QSettings::NativeFormat); - const QStringList keys = settings.allKeys(); - for (const QString &key : keys) { - if (key.contains(QLatin1String("SDKInformation")) || key.contains(QLatin1Char('.'))) { - QFile sdkPropertyFile(settings.value(key).toString()); - if (!sdkPropertyFile.exists()) - continue; - QFileInfo info(sdkPropertyFile); - if (info.isDir()) { - const QDir dir = info.absoluteFilePath(); - QFileInfo fInfo(dir.filePath(QLatin1String("Properties.xml"))); - if (fInfo.exists()) - sdkPropertyFile.setFileName(fInfo.absoluteFilePath()); - } - if (!sdkPropertyFile.open(QFile::ReadOnly)) - continue; - QXmlStreamReader xml(&sdkPropertyFile); - QString currentElement; - QString curName; - PropertyContainer currentProperty; - QVector propStack; - propStack.push_back(currentProperty); - while (!xml.atEnd()) { - xml.readNext(); - if (xml.isStartElement()) { - currentElement = xml.name().toString(); - if (currentElement == QLatin1String("Property")) { - QXmlStreamAttributes attributes = xml.attributes(); - if (attributes.hasAttribute(QLatin1String("NAME"))) - curName = attributes.value(QLatin1String("NAME")).toString(); - Q_ASSERT(!curName.isEmpty()); - currentProperty.clear(); - currentProperty.name = curName; - propStack.push_back(currentProperty); - } else if (currentElement == QLatin1String("PropertyBag")) { - QXmlStreamAttributes attributes = xml.attributes(); - if (attributes.hasAttribute(QLatin1String("NAME"))) - curName = attributes.value(QLatin1String("NAME")).toString(); - Q_ASSERT(!curName.isEmpty()); - currentProperty.clear(); - currentProperty.name = curName; - propStack.push_back(currentProperty); - } - } else if (xml.isEndElement()) { - currentElement = xml.name().toString(); - PropertyContainer self = propStack.takeLast(); - if (currentElement != QLatin1String("Root")) { - PropertyContainer &last = propStack.last(); - last.properties[self.name] = self; - } else { - currentProperty = self; - } - } else if (xml.isCharacters()) { - PropertyContainer &self = propStack.last(); - self.value = xml.text().toString(); - } - } - - if (xml.error() && xml.error() != QXmlStreamReader::PrematureEndOfDocumentError) { - qWarning() << "XML ERROR:" << xml.lineNumber() << ": " << xml.errorString(); - return; - } - CeSdkInfo currentSdk; - const PropertyContainer &cpuInfo = currentProperty.properties.value(QLatin1String("CPU info")); - if (cpuInfo.properties.isEmpty()) - continue; - const PropertyContainer &cpuInfoVal = cpuInfo.properties.first().properties.value(QLatin1String("CpuName")); - if (cpuInfoVal.name != QLatin1String("CpuName")) - continue; - const QString SDKName = QStringLiteral("SDK name"); - currentSdk.m_name = currentProperty.properties.value(SDKName).value+ - QStringLiteral(" (") + cpuInfoVal.value + ")"; - currentSdk.m_major = currentProperty.properties.value(QLatin1String("OSMajor")).value.toInt(); - currentSdk.m_minor = currentProperty.properties.value(QLatin1String("OSMinor")).value.toInt(); - retrieveEnvironment(currentProperty.properties.value(QLatin1String("MSBuild Files110")).value.split(';'), - filteredToolPaths, ¤tSdk); - retrieveEnvironment(currentProperty.properties.value(QLatin1String("MSBuild Files120")).value.split(';'), - filteredToolPaths, ¤tSdk); - if (!currentSdk.m_include.isEmpty()) - m_list.append(currentSdk); - } - } -} - -void CeSdkHandler::retrieveWEC6n7SDKs() -{ - // look at the file at %VCInstallDir%/vcpackages/WCE.VCPlatform.config - // and scan through all installed sdks... - m_vcInstallDir = QString::fromLatin1(qgetenv("VCInstallDir")); - if (m_vcInstallDir.isEmpty()) - return; - - QDir vStudioDir(m_vcInstallDir); - if (!vStudioDir.cd(QLatin1String("vcpackages"))) - return; - - QFile configFile(vStudioDir.absoluteFilePath(QLatin1String("WCE.VCPlatform.config"))); - if (!configFile.open(QIODevice::ReadOnly)) - return; - - QString currentElement; - CeSdkInfo currentItem; - QXmlStreamReader xml(&configFile); - while (!xml.atEnd()) { - xml.readNext(); - if (xml.isStartElement()) { - currentElement = xml.name().toString(); - if (currentElement == QLatin1String("Platform")) { - currentItem = CeSdkInfo(); - } else if (currentElement == QLatin1String("Directories")) { - QXmlStreamAttributes attr = xml.attributes(); - currentItem.m_include = fixPaths(attr.value(QLatin1String("Include")).toString()); - currentItem.m_lib = fixPaths(attr.value(QLatin1String("Library")).toString()); - currentItem.m_bin = fixPaths(attr.value(QLatin1String("Path")).toString()); - } - } else if (xml.isEndElement()) { - if (xml.name().toString() == QLatin1String("Platform")) - m_list.append(currentItem); - } else if (xml.isCharacters() && !xml.isWhitespace()) { - if (currentElement == QLatin1String("PlatformName")) - currentItem.m_name = xml.text().toString(); - else if (currentElement == QLatin1String("OSMajorVersion")) - currentItem.m_major = xml.text().toString().toInt(); - else if (currentElement == QLatin1String("OSMinorVersion")) - currentItem.m_minor = xml.text().toString().toInt(); - } - } - - if (xml.error() && xml.error() != QXmlStreamReader::PrematureEndOfDocumentError) { - qWarning() << "XML ERROR:" << xml.lineNumber() << ": " << xml.errorString(); - return; - } -} - -bool CeSdkHandler::retrieveAvailableSDKs() -{ - m_list.clear(); - retrieveWEC2013SDKs(); - retrieveWEC6n7SDKs(); - return !m_list.empty(); -} - -QString CeSdkHandler::fixPaths(const QString &path) const -{ - QRegExp searchStr(QLatin1String("(\\$\\(\\w+\\))")); - QString fixedString = path; - for (int index = fixedString.indexOf(searchStr, 0); - index >= 0; - index = fixedString.indexOf(searchStr, index)) { - const QString capture = searchStr.cap(0); - fixedString.replace(index, capture.length(), capture.toUpper()); - index += capture.length(); // don't count the zero terminator - fixedString.insert(index, '\\'); // the configuration file lacks a directory separator for env vars - ++index; - } - return fixedString; -} - -QT_END_NAMESPACE diff --git a/qmake/generators/win32/cesdkhandler.h b/qmake/generators/win32/cesdkhandler.h deleted file mode 100644 index 3bb8d2adcb..0000000000 --- a/qmake/generators/win32/cesdkhandler.h +++ /dev/null @@ -1,89 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the tools applications of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -#ifndef CE_SDK_HANDLER_INCL -#define CE_SDK_HANDLER_INCL - -#include -#include - -QT_BEGIN_NAMESPACE - -class CeSdkInfo -{ -public: - CeSdkInfo(); - inline QString name() const { return m_name; } - inline QString binPath() const { return m_bin; } - inline QString includePath() const { return m_include; } - inline QString libPath() const { return m_lib; } - inline bool isValid() const; - inline int majorVersion() const { return m_major; } - inline int minorVersion() const { return m_minor; } - inline bool isSupported() const { return m_major >= 5; } -private: - friend class CeSdkHandler; - QString m_name; - QString m_bin; - QString m_include; - QString m_lib; - int m_major; - int m_minor; -}; - -bool CeSdkInfo::isValid() const -{ - return !m_name.isEmpty() && - !m_bin.isEmpty() && - !m_include.isEmpty() && - !m_lib.isEmpty(); -} - -class CeSdkHandler -{ -public: - CeSdkHandler(); - bool retrieveAvailableSDKs(); - inline QList listAll() const { return m_list; } -private: - void retrieveWEC6n7SDKs(); - void retrieveWEC2013SDKs(); - inline QString fixPaths(const QString &path) const; - QStringList getMsBuildToolPaths() const; - QStringList filterMsBuildToolPaths(const QStringList &paths) const; - bool parseMsBuildFile(QFile *file, CeSdkInfo *info); - bool retrieveEnvironment(const QStringList &relativePaths, - const QStringList &toolPaths, - CeSdkInfo *info); - QList m_list; - QString m_vcInstallDir; -}; - -QT_END_NAMESPACE - -#endif diff --git a/qmake/generators/win32/msvc_nmake.cpp b/qmake/generators/win32/msvc_nmake.cpp index 25a2765a01..6f58a9887a 100644 --- a/qmake/generators/win32/msvc_nmake.cpp +++ b/qmake/generators/win32/msvc_nmake.cpp @@ -28,7 +28,6 @@ #include "msvc_nmake.h" #include "option.h" -#include "cesdkhandler.h" #include #include @@ -72,38 +71,7 @@ NmakeMakefileGenerator::writeMakefile(QTextStream &t) return MakefileGenerator::writeStubMakefile(t); #endif if (!project->isHostBuild()) { - const ProValueMap &variables = project->variables(); - if (project->isActiveConfig("wince")) { - CeSdkHandler sdkhandler; - sdkhandler.retrieveAvailableSDKs(); - const QString sdkName = variables["CE_SDK"].join(' ') - + " (" + variables["CE_ARCH"].join(' ') + ")"; - const QList sdkList = sdkhandler.listAll(); - CeSdkInfo sdk; - for (const CeSdkInfo &info : sdkList) { - if (info.name().compare(sdkName, Qt::CaseInsensitive ) == 0) { - sdk = info; - break; - } - } - if (sdk.isValid()) { - t << "\nINCLUDE = " << sdk.includePath(); - t << "\nLIB = " << sdk.libPath(); - t << "\nPATH = " << sdk.binPath() << "\n"; - } else { - QStringList sdkStringList; - sdkStringList.reserve(sdkList.size()); - for (const CeSdkInfo &info : sdkList) - sdkStringList << info.name(); - - fprintf(stderr, "Failed to find Windows CE SDK matching %s, found: %s\n" - "SDK needs to be specified in mkspec (using: %s/qmake.conf)\n" - "SDK name needs to match the following format: CE_SDK (CE_ARCH)\n", - qPrintable(sdkName), qPrintable(sdkStringList.join(", ")), - qPrintable(variables["QMAKESPEC"].first().toQString())); - return false; - } - } else if (project->isActiveConfig(QStringLiteral("winrt"))) { + if (project->isActiveConfig(QStringLiteral("winrt"))) { QString arch = project->first("VCPROJ_ARCH").toQString().toLower(); QString compiler; QString compilerArch; @@ -617,12 +585,6 @@ void NmakeMakefileGenerator::writeBuildRulesPart(QTextStream &t) writeLinkCommand(t); } } - QString signature = !project->isEmpty("SIGNATURE_FILE") ? var("SIGNATURE_FILE") : var("DEFAULT_SIGNATURE"); - bool useSignature = !signature.isEmpty() && !project->isActiveConfig("staticlib") && - !project->isEmpty("CE_SDK") && !project->isEmpty("CE_ARCH"); - if(useSignature) { - t << "\n\tsigntool sign /F " << escapeFilePath(signature) << " $(DESTDIR_TARGET)"; - } if(!project->isEmpty("QMAKE_POST_LINK")) { t << "\n\t" << var("QMAKE_POST_LINK"); } diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp index 1b3b328243..9a3cac86e3 100644 --- a/qmake/generators/win32/msvc_vcproj.cpp +++ b/qmake/generators/win32/msvc_vcproj.cpp @@ -698,9 +698,6 @@ void VcprojGenerator::writeSubDirs(QTextStream &t) QString slnConf = _slnSolutionConf; if (!project->isEmpty("VCPROJ_ARCH")) { slnConf.replace(QLatin1String("|Win32"), "|" + project->first("VCPROJ_ARCH")); - } else if (!project->isEmpty("CE_SDK") && !project->isEmpty("CE_ARCH")) { - QString slnPlatform = QString("|") + project->values("CE_SDK").join(' ') + " (" + project->first("CE_ARCH") + ")"; - slnConf.replace(QLatin1String("|Win32"), slnPlatform); } else if (is64Bit) { slnConf.replace(QLatin1String("|Win32"), QLatin1String("|x64")); } @@ -715,8 +712,6 @@ void VcprojGenerator::writeSubDirs(QTextStream &t) QString xplatform = platform; if (!project->isEmpty("VCPROJ_ARCH")) { xplatform = project->first("VCPROJ_ARCH").toQString(); - } else if (!project->isEmpty("CE_SDK") && !project->isEmpty("CE_ARCH")) { - xplatform = project->values("CE_SDK").join(' ') + " (" + project->first("CE_ARCH") + ")"; } if (!project->isHostBuild()) platform = xplatform; @@ -970,10 +965,8 @@ void VcprojGenerator::initProject() vcProject.Keyword = project->first("VCPROJ_KEYWORD").toQString(); if (!project->isEmpty("VCPROJ_ARCH")) { vcProject.PlatformName = project->first("VCPROJ_ARCH").toQString(); - } else if (project->isHostBuild() || project->isEmpty("CE_SDK") || project->isEmpty("CE_ARCH")) { + } else if (project->isHostBuild()) { vcProject.PlatformName = (is64Bit ? "x64" : "Win32"); - } else { - vcProject.PlatformName = project->values("CE_SDK").join(' ') + " (" + project->first("CE_ARCH") + ")"; } vcProject.SdkVersion = project->first("WINSDK_VER").toQString(); // These are not used by Qt, but may be used by customers @@ -1054,10 +1047,8 @@ void VcprojGenerator::initConfiguration() conf.ConfigurationName = conf.Name; if (!project->isEmpty("VCPROJ_ARCH")) { conf.Name += "|" + project->first("VCPROJ_ARCH"); - } else if (project->isHostBuild() || project->isEmpty("CE_SDK") || project->isEmpty("CE_ARCH")) { + } else if (project->isHostBuild()) { conf.Name += (is64Bit ? "|x64" : "|Win32"); - } else { - conf.Name += "|" + project->values("CE_SDK").join(' ') + " (" + project->first("CE_ARCH") + ")"; } conf.ATLMinimizesCRunTimeLibraryUsage = (project->first("ATLMinimizesCRunTimeLibraryUsage").isEmpty() ? _False : _True); conf.BuildBrowserInformation = triState(temp.isEmpty() ? (short)unset : temp.toShort()); @@ -1080,8 +1071,7 @@ void VcprojGenerator::initConfiguration() initPreBuildEventTools(); initPostBuildEventTools(); // Only deploy for CE and WinRT projects - if ((!project->isHostBuild() && !project->isEmpty("CE_SDK") && !project->isEmpty("CE_ARCH")) - || conf.WinRT) + if (!project->isHostBuild() || conf.WinRT) initDeploymentTool(); initWinDeployQtTool(); initPreLinkEventTools(); @@ -1229,16 +1219,6 @@ void VcprojGenerator::initPostBuildEventTools() conf.postBuild.Description = cmdline.join(QLatin1String("\r\n")); conf.postBuild.ExcludedFromBuild = _False; } - - QString signature = !project->isEmpty("SIGNATURE_FILE") ? var("SIGNATURE_FILE") : var("DEFAULT_SIGNATURE"); - bool useSignature = !signature.isEmpty() && !project->isActiveConfig("staticlib") && - !project->isHostBuild() && !project->isEmpty("CE_SDK") && !project->isEmpty("CE_ARCH"); - if (useSignature) { - conf.postBuild.CommandLine.prepend( - QLatin1String("signtool sign /F ") + escapeFilePath(signature) + QLatin1String(" \"$(TargetPath)\"")); - conf.postBuild.ExcludedFromBuild = _False; - } - if (!project->values("MSVCPROJ_COPY_DLL").isEmpty()) { conf.postBuild.Description += var("MSVCPROJ_COPY_DLL_DESC"); conf.postBuild.CommandLine += var("MSVCPROJ_COPY_DLL"); @@ -1304,45 +1284,6 @@ void VcprojGenerator::initDeploymentTool() } } - if (!conf.WinRT) { - // C-runtime deployment - QString runtime = project->values("QT_CE_C_RUNTIME").join(QLatin1Char(' ')); - if (!runtime.isEmpty() && (runtime != QLatin1String("no"))) { - QString runtimeVersion = QLatin1String("msvcr"); - ProString mkspec = project->first("QMAKESPEC"); - - if (!mkspec.isEmpty()) { - if (mkspec.endsWith("2008")) - runtimeVersion.append("90"); - else - runtimeVersion.append("80"); - if (project->isActiveConfig("debug")) - runtimeVersion.append("d"); - runtimeVersion.append(".dll"); - - if (runtime == "yes") { - // Auto-find C-runtime - QString vcInstallDir = qgetenv("VCINSTALLDIR"); - if (!vcInstallDir.isEmpty()) { - vcInstallDir += "\\ce\\dll\\"; - vcInstallDir += project->values("CE_ARCH").join(QLatin1Char(' ')); - if (!QFileInfo::exists(vcInstallDir + QDir::separator() + runtimeVersion)) - runtime.clear(); - else - runtime = vcInstallDir; - } - } - } - - if (!runtime.isEmpty() && runtime != QLatin1String("yes")) { - conf.deployment.AdditionalFiles += runtimeVersion - + "|" + QDir::toNativeSeparators(runtime) - + "|" + targetPath - + "|0;"; - } - } - } - for (const ProString &item : project->values("INSTALLS")) { // get item.path QString devicePath = project->first(ProKey(item + ".path")).toQString(); diff --git a/qmake/qmake.pri b/qmake/qmake.pri index 782151d763..7f49bb9adb 100644 --- a/qmake/qmake.pri +++ b/qmake/qmake.pri @@ -11,8 +11,7 @@ SOURCES += project.cpp property.cpp main.cpp \ generators/win32/msvc_nmake.cpp generators/projectgenerator.cpp \ generators/win32/msvc_vcproj.cpp \ generators/win32/msvc_vcxproj.cpp \ - generators/win32/msvc_objectmodel.cpp generators/win32/msbuild_objectmodel.cpp \ - generators/win32/cesdkhandler.cpp + generators/win32/msvc_objectmodel.cpp generators/win32/msbuild_objectmodel.cpp HEADERS += project.h property.h \ library/qmake_global.h library/ioutils.h library/proitems.h library/qmakevfs.h library/qmakeglobals.h \ @@ -24,8 +23,7 @@ HEADERS += project.h property.h \ generators/xmloutput.h generators/win32/msvc_nmake.h \ generators/win32/msvc_vcproj.h \ generators/win32/msvc_vcxproj.h \ - generators/win32/msvc_objectmodel.h generators/win32/msbuild_objectmodel.h \ - generators/win32/cesdkhandler.h + generators/win32/msvc_objectmodel.h generators/win32/msbuild_objectmodel.h bootstrap { #Qt code SOURCES+= \ -- cgit v1.2.3