Use ECMGenerateExportHeader to manage deprecated API better
ClosedPublic

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

Details

Summary

Allows

  • projects linking to KConfigWidgets to hide deprecated API up to a given version or silence deprecation warnings after a given version, using
    • -DKCONFIGWIDGETS_DISABLE_DEPRECATED_BEFORE_AND_AT
    • -DKCONFIGWIDGETS_NO_DEPRECATED
    • -DKCONFIGWIDGETS_DEPRECATED_WARNINGS_SINCE
    • -DKCONFIGWIDGETS_NO_DEPRECATED_WARNINGS

      or
    • -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT
    • -DKF_NO_DEPRECATED
    • -DKF_DEPRECATED_WARNINGS_SINCE
    • -DKF_NO_DEPRECATED_WARNINGS
  • to build KConfigWidgets 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.23.0, 5.38.0, 5.39.0, CURRENT.

Diff Detail

Repository
R265 KConfigWidgets
Branch
useECMGenerateExportHeader
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 17734
Build 17752: 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 67736.Oct 11 2019, 5:39 PM
  • disable KF group deprecation macros for now
  • set DEPRECATED_BASE_VERSION=0, to not disable any API by default
kossebau updated this revision to Diff 68010.Oct 16 2019, 3:12 AM

update to latest master with new deprecated method

mlaurent accepted this revision.Oct 16 2019, 5:00 AM
mlaurent added a subscriber: mlaurent.

Seems ok for me

This revision is now accepted and ready to land.Oct 16 2019, 5:00 AM
This revision was automatically updated to reflect the committed changes.