kossebau created this revision. kossebau added reviewers: Frameworks, KWin, dfaure, zzag. Herald added a project: Frameworks. Herald added a subscriber: kde-frameworks-devel. kossebau requested review of this revision.
REVISION SUMMARY Allows - projects linking to KWindowSystem to hide deprecated API up to a given version or silence deprecation warnings after a given version, using - -DKWINDOWSYSTEM_DISABLE_DEPRECATED_BEFORE_AND_AT - -DKWINDOWSYSTEM_NO_DEPRECATED - -DKWINDOWSYSTEM_DEPRECATED_WARNINGS_SINCE - -DKWINDOWSYSTEM_NO_DEPRECATED_WARNINGS or - -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT - -DKF_NO_DEPRECATED - -DKF_DEPRECATED_WARNINGS_SINCE - -DKF_NO_DEPRECATED_WARNINGS - to build KWindowSystem optionally with deprecated API excluded from the build, using "EXCLUDE_DEPRECATED_BEFORE_AND_AT" cmake argument. Setting KWINDOWSYSTEM_NO_WIDGETS ensures EXCLUDE_DEPRECATED_BEFORE_AND_AT is at least at the version where QWidgets API was deprecated. TEST PLAN Builds with EXCLUDE_DEPRECATED_BEFORE_AND_AT set to 0, 5.0.0, 5.18.0, 5.38.0, 5.62.0, CURRENT as well as KWINDOWSYSTEM_NO_WIDGETS ON/OFF REPOSITORY R278 KWindowSystem BRANCH useECMGenerateExportHeader REVISION DETAIL https://phabricator.kde.org/D24465 AFFECTED FILES CMakeLists.txt autotests/kstartupinfo_unittest.cpp autotests/kwindowinfox11test.cpp autotests/kwindowsystemx11test.cpp autotests/kxmessages_unittest.cpp autotests/netwininfotestclient.cpp src/CMakeLists.txt src/kstartupinfo.cpp src/kstartupinfo.h src/kwindoweffects.cpp src/kwindoweffects.h src/kwindowsystem.cpp src/kwindowsystem.h src/kwindowsystem_dummy_p.h src/kwindowsystem_p.h src/netwm_def.h src/platforms/osx/kwindowsystem.cpp src/platforms/wayland/kwindowsystem.cpp src/platforms/wayland/kwindowsystem_p_wayland.h src/platforms/windows/kwindowsystem.cpp src/platforms/xcb/kkeyserver.cpp src/platforms/xcb/kkeyserver_x11.h src/platforms/xcb/kwindowsystem.cpp src/platforms/xcb/kwindowsystem_p_x11.h src/platforms/xcb/kxmessages.cpp src/platforms/xcb/kxmessages.h src/platforms/xcb/netwm.cpp src/platforms/xcb/netwm.h To: kossebau, #frameworks, #kwin, dfaure, zzag Cc: kde-frameworks-devel, LeGast00n, GB_2, michaelh, ngraham, bruns