e3b1edacef
Distinct from the KWindowSystem-API gating: these are the Xlib/XCB headers themselves, which a Wayland-only sysroot does not ship, so each is a hard compile failure rather than a lost feature: appmenu/appmenu.h:13: fatal error: xcb/xcb.h: No such file or directory Two of the affected directories are genuinely compiled and would have failed in turn: kcms/kfontinst (gated only on FONTCONFIG_FOUND) and logout-greeter (CMakeLists.txt:428, outside any X11 gate). kcms/cursortheme is already gated upstream by `if(WITH_X11 AND X11_Xcursor_FOUND)` and ksmserver by if(WITH_X11); guarding them too is harmless and keeps the rule uniform rather than maintaining a list of exceptions. Only touches includes at preprocessor depth 0 with respect to HAVE_X11, so anything already guarded is left alone. Verified: preprocessor balance OK across all 59 files carrying guards, and a second run is a no-op (0 files, 0 includes) -- the recipe re-runs this on every build, so idempotency is a correctness requirement, not a nicety.