aboutsummaryrefslogtreecommitdiff
path: root/src/core/kcoreconfigskeleton.cpp
diff options
context:
space:
mode:
authorFriedrich W. H. Kossebau <kossebau@kde.org>2019-10-08 15:22:49 +0200
committerFriedrich W. H. Kossebau <kossebau@kde.org>2019-10-18 21:23:32 +0200
commitfb37084b3e7c396cd10bf4d3253fee730320988a (patch)
tree3c58974a533b9ec963d315481d38671ba8f10613 /src/core/kcoreconfigskeleton.cpp
parent3f68be12f87e83b67f9270eb139d894bf65ebef1 (diff)
downloadkconfig-fb37084b3e7c396cd10bf4d3253fee730320988a.tar.gz
kconfig-fb37084b3e7c396cd10bf4d3253fee730320988a.tar.bz2
Use ECMGenerateExportHeader to manage deprecated API better
Summary: Allows * projects linking to KConfigCore/Gui to hide deprecated API up to a given version or silence deprecation warnings after a given version, using * -DKCONFIGCORE_DISABLE_DEPRECATED_BEFORE_AND_AT * -DKCONFIGCORE_NO_DEPRECATED * -DKCONFIGCORE_DEPRECATED_WARNINGS_SINCE * -DKCONFIGCORE_NO_DEPRECATED_WARNINGS * -DKCONFIGGUI_DISABLE_DEPRECATED_BEFORE_AND_AT * -DKCONFIGGUI_NO_DEPRECATED * -DKCONFIGGUI_DEPRECATED_WARNINGS_SINCE * -DKCONFIGGUI_NO_DEPRECATED_WARNINGS or * -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT * -DKF_NO_DEPRECATED * -DKF_DEPRECATED_WARNINGS_SINCE * -DKF_NO_DEPRECATED_WARNINGS * to build KConfigCore/Gui optionally with deprecated API excluded from the build, using "EXCLUDE_DEPRECATED_BEFORE_AND_AT" cmake argument. Test Plan: Builds with EXCLUDE_DEPRECATED_BEFORE_AND_AT set to 0, 4.0.0, 5.0.0, 5.11.0, 5.24.0, 5.39.0, 5.42.0, CURRENT. Reviewers: #frameworks, mlaurent Reviewed By: mlaurent Subscribers: mlaurent, kde-frameworks-devel Tags: #frameworks Differential Revision: https://phabricator.kde.org/D24496
Diffstat (limited to 'src/core/kcoreconfigskeleton.cpp')
-rw-r--r--src/core/kcoreconfigskeleton.cpp28
1 files changed, 12 insertions, 16 deletions
diff --git a/src/core/kcoreconfigskeleton.cpp b/src/core/kcoreconfigskeleton.cpp
index 34c58ff6..b9c9f2ac 100644
--- a/src/core/kcoreconfigskeleton.cpp
+++ b/src/core/kcoreconfigskeleton.cpp
@@ -1162,38 +1162,34 @@ void KCoreConfigSkeleton::usrSetDefaults()
{
}
-#ifdef Q_CC_GNU
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
-#endif
void KCoreConfigSkeleton::usrRead()
{
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
usrReadConfig();
-}
-#ifdef Q_CC_GNU
-#pragma GCC diagnostic pop
#endif
+}
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
void KCoreConfigSkeleton::usrReadConfig()
{
}
-
-#ifdef Q_CC_GNU
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
#endif
+
bool KCoreConfigSkeleton::usrSave()
{
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
return usrWriteConfig();
-}
-#ifdef Q_CC_GNU
-#pragma GCC diagnostic pop
+#else
+ return true;
#endif
+}
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
bool KCoreConfigSkeleton::usrWriteConfig()
{
return true;
}
+#endif
void KCoreConfigSkeleton::addItem(KConfigSkeletonItem *item, const QString &name)
{
@@ -1315,7 +1311,7 @@ KCoreConfigSkeleton::ItemLongLong *KCoreConfigSkeleton::addItemLongLong(const QS
return item;
}
-#ifndef KDE_NO_DEPRECATED
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
KCoreConfigSkeleton::ItemLongLong *KCoreConfigSkeleton::addItemInt64(
const QString &name,
qint64 &reference,
@@ -1336,7 +1332,7 @@ KCoreConfigSkeleton::ItemULongLong *KCoreConfigSkeleton::addItemULongLong(const
return item;
}
-#ifndef KDE_NO_DEPRECATED
+#if KCONFIGCORE_BUILD_DEPRECATED_SINCE(5, 0)
KCoreConfigSkeleton::ItemULongLong *KCoreConfigSkeleton::addItemUInt64(
const QString &name,
quint64 &reference,