Use ECMGenerateExportHeader to manage deprecated API better
ClosedPublic

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

Details

Summary

Allows

  • projects linking to KCompletion to hide deprecated API up to a given version or silence deprecation warnings after a given version, using
    • -DKCOMPLETION_DISABLE_DEPRECATED_BEFORE_AND_AT
    • -DKCOMPLETION_NO_DEPRECATED
    • -DKCOMPLETION_DEPRECATED_WARNINGS_SINCE
    • -DKCOMPLETION_NO_DEPRECATED_WARNINGS

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

Diff Detail

Repository
R284 KCompletion
Branch
useECMGenerateExportHeader
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 17582
Build 17600: arc lint + arc unit
kossebau created this revision.Oct 8 2019, 1:27 PM
Restricted Application added a project: Frameworks. · View Herald TranscriptOct 8 2019, 1:27 PM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
kossebau requested review of this revision.Oct 8 2019, 1:27 PM
kossebau updated this revision to Diff 67734.Oct 11 2019, 5:35 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 68093.Oct 16 2019, 9:38 PM

add some missed deprecations

mlaurent accepted this revision.Oct 17 2019, 6:08 AM
This revision is now accepted and ready to land.Oct 17 2019, 6:08 AM
This revision was automatically updated to reflect the committed changes.