Use ECMGenerateExportHeader to manage deprecated API better
ClosedPublic

Authored by kossebau on Oct 7 2019, 1:27 PM.

Details

Summary

Allows

  • projects linking to KParts to hide deprecated API up to a given version or silence deprecation warnings after a given version, using
    • -DKPARTS_DISABLE_DEPRECATED_BEFORE_AND_AT
    • -DKPARTS_NO_DEPRECATED
    • -DKPARTS_DEPRECATED_WARNINGS_SINCE
    • -DKPARTS_NO_DEPRECATED_WARNINGS

      or
    • -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT
    • -DKF_NO_DEPRECATED
    • -DKF_DEPRECATED_WARNINGS_SINCE
    • -DKF_NO_DEPRECATED_WARNINGS
  • to build KParts 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, 5.0.0, CURRENT.

Diff Detail

Repository
R306 KParts
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
kossebau created this revision.Oct 7 2019, 1:27 PM
Restricted Application added a project: Frameworks. · View Herald TranscriptOct 7 2019, 1:27 PM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
kossebau requested review of this revision.Oct 7 2019, 1:27 PM

If no-one objects, would be pushing on Monday evening, Oct. 14th.

kossebau updated this revision to Diff 67732.Oct 11 2019, 5:28 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 12 2019, 6:58 AM
This revision is now accepted and ready to land.Oct 12 2019, 6:58 AM
dfaure accepted this revision.Oct 12 2019, 7:41 PM
This revision was automatically updated to reflect the committed changes.