Use ECMGenerateExportHeader to manage deprecated API better
ClosedPublic

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

Details

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 17442
Build 17460: arc lint + arc unit
kossebau created this revision.Oct 8 2019, 1:28 PM
Restricted Application added a project: Frameworks. · View Herald TranscriptOct 8 2019, 1:28 PM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
kossebau requested review of this revision.Oct 8 2019, 1:28 PM
kossebau updated this revision to Diff 67735.Oct 11 2019, 5:37 PM
  • disable KF group deprecation macros for now
  • set DEPRECATED_BASE_VERSION=0, to not disable any API by default
mlaurent accepted this revision.Oct 18 2019, 6:12 AM
mlaurent added a subscriber: mlaurent.

seems ok for me

This revision is now accepted and ready to land.Oct 18 2019, 6:12 AM
This revision was automatically updated to reflect the committed changes.