diff options
Diffstat (limited to 'src/tools/qtpaths/qtpaths.cpp')
-rw-r--r-- | src/tools/qtpaths/qtpaths.cpp | 73 |
1 files changed, 17 insertions, 56 deletions
diff --git a/src/tools/qtpaths/qtpaths.cpp b/src/tools/qtpaths/qtpaths.cpp index 667b594b67..71f9fe4349 100644 --- a/src/tools/qtpaths/qtpaths.cpp +++ b/src/tools/qtpaths/qtpaths.cpp @@ -1,52 +1,5 @@ -/**************************************************************************** - * * - ** Copyright (C) 2016 Sune Vuorela <sune@kde.org> - ** Contact: http://www.qt-project.org/ - ** - ** This file is part of the tools applications of the Qt Toolkit. - ** - ** $QT_BEGIN_LICENSE:BSD$ - ** 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. - ** - ** BSD License Usage - ** Alternatively, you may use this file under the terms of the BSD license - ** as follows: - ** - ** "Redistribution and use in source and binary forms, with or without - ** modification, are permitted provided that the following conditions are - ** met: - ** * Redistributions of source code must retain the above copyright - ** notice, this list of conditions and the following disclaimer. - ** * Redistributions in binary form must reproduce the above copyright - ** notice, this list of conditions and the following disclaimer in - ** the documentation and/or other materials provided with the - ** distribution. - ** * Neither the name of The Qt Company Ltd nor the names of its - ** contributors may be used to endorse or promote products derived - ** from this software without specific prior written permission. - ** - ** - ** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - ** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - ** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - ** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - ** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - ** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - ** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - ** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - ** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - ** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - ** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." - ** - ** $QT_END_LICENSE$ - ** - ****************************************************************************/ +// Copyright (C) 2016 Sune Vuorela <sune@kde.org> +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include <QCoreApplication> #include <QCommandLineParser> @@ -108,9 +61,6 @@ static const StringEnum lookupTableData[] = { { "ApplicationsLocation", QStandardPaths::ApplicationsLocation, false }, { "CacheLocation", QStandardPaths::CacheLocation, true }, { "ConfigLocation", QStandardPaths::ConfigLocation, false }, -#if QT_VERSION < QT_VERSION_CHECK(6,0,0) - { "DataLocation", QStandardPaths::DataLocation, true }, -#endif { "DesktopLocation", QStandardPaths::DesktopLocation, false }, { "DocumentsLocation", QStandardPaths::DocumentsLocation, false }, { "DownloadLocation", QStandardPaths::DownloadLocation, false }, @@ -118,11 +68,15 @@ static const StringEnum lookupTableData[] = { { "GenericCacheLocation", QStandardPaths::GenericCacheLocation, false }, { "GenericConfigLocation", QStandardPaths::GenericConfigLocation, false }, { "GenericDataLocation", QStandardPaths::GenericDataLocation, false }, + { "GenericStateLocation", QStandardPaths::GenericStateLocation, false }, { "HomeLocation", QStandardPaths::HomeLocation, false }, { "MoviesLocation", QStandardPaths::MoviesLocation, false }, { "MusicLocation", QStandardPaths::MusicLocation, false }, { "PicturesLocation", QStandardPaths::PicturesLocation, false }, + { "PublicShareLocation", QStandardPaths::PublicShareLocation, false }, { "RuntimeLocation", QStandardPaths::RuntimeLocation, false }, + { "StateLocation", QStandardPaths::StateLocation, true }, + { "TemplatesLocation", QStandardPaths::TemplatesLocation, false }, { "TempLocation", QStandardPaths::TempLocation, false } }; @@ -145,7 +99,7 @@ static QStringList types() static const StringEnum &parseLocationOrError(const QString &locationString) { for (const StringEnum &se : lookupTableData) - if (locationString == QLatin1String(se.stringvalue)) + if (locationString == QLatin1StringView(se.stringvalue)) return se; QString message = QStringLiteral("Unknown location: %1"); @@ -168,6 +122,7 @@ static QString searchStringOrError(QCommandLineParser *parser) int main(int argc, char **argv) { + QString qtconfManualPath; QCoreApplication app(argc, argv); app.setApplicationVersion(QTPATHS_VERSION_STR); @@ -265,13 +220,14 @@ int main(int argc, char **argv) #if QT_CONFIG(settings) if (parser.isSet(qtconf)) { - QLibraryInfoPrivate::qtconfManualPath = parser.value(qtconf); + qtconfManualPath = parser.value(qtconf); + QLibraryInfoPrivate::setQtconfManualPath(&qtconfManualPath); } #endif QStringList results; if (parser.isSet(qtversion)) { - QString qtversionstring = QString::fromLatin1(qVersion()); + QString qtversionstring = QString::fromLatin1(QT_VERSION_STR); results << qtversionstring; } @@ -295,6 +251,10 @@ int main(int argc, char **argv) results << typesList.join('\n'); } + QT_WARNING_PUSH +#if defined(Q_CC_GNU_ONLY) && Q_CC_GNU >= 1300 && Q_CC_GNU < 1500 + QT_WARNING_DISABLE_GCC("-Wdangling-reference") +#endif if (parser.isSet(display)) { const StringEnum &location = parseLocationOrError(parser.value(display)); QString text = QStandardPaths::displayName(location.enumvalue); @@ -346,6 +306,7 @@ int main(int argc, char **argv) QStringList paths = QStandardPaths::locateAll(location.enumvalue, searchitem, QStandardPaths::LocateFile); results << location.mapName(paths.join(pathsep)); } + QT_WARNING_POP #if !QT_CONFIG(settings) if (parser.isSet(query) || parser.isSet(qtconf) || parser.isSet(queryformat)) { @@ -383,7 +344,7 @@ int main(int argc, char **argv) if (results.isEmpty()) { parser.showHelp(); } else if (results.size() == 1) { - const QString &item = results.first(); + const QString &item = results.constFirst(); message(item); if (item.isEmpty()) return EXIT_FAILURE; |