Use ECMGenerateExportHeader to manage deprecated API better
Needs ReviewPublic

Authored by kossebau on Tue, Oct 8, 1:28 PM.

Details

Reviewers
None
Group Reviewers
Frameworks
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.

Diff Detail

Repository
R237 KConfig
Branch
useECMGenerateExportHeader
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 17583
Build 17601: arc lint + arc unit
kossebau created this revision.Tue, Oct 8, 1:28 PM
Restricted Application added a project: Frameworks. · View Herald TranscriptTue, Oct 8, 1:28 PM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
kossebau requested review of this revision.Tue, Oct 8, 1:28 PM
kossebau updated this revision to Diff 67735.Fri, Oct 11, 5:37 PM
  • disable KF group deprecation macros for now
  • set DEPRECATED_BASE_VERSION=0, to not disable any API by default