diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b32f8268f06b913adb302c3226deef2ec5729efd..6d4f28ab1ad41a13aa0f958a7dc209f5460b916c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -503,6 +503,8 @@ validate-x86_64-linux-deb9-debug:
   stage: build
   variables:
     BUILD_FLAVOUR: validate
+    # Override validate flavour default; see #16890.
+    BUILD_SPHINX_PDF: "YES"
     TEST_TYPE: slowtest
     TEST_ENV: "x86_64-linux-deb9-debug"
   artifacts:
diff --git a/mk/flavours/validate.mk b/mk/flavours/validate.mk
index 6395d2d62f187aa623f5a9b4dd7bc2c5a53caf62..eddd22fb822b74e85d71b9d9a648e2be5fd197ff 100644
--- a/mk/flavours/validate.mk
+++ b/mk/flavours/validate.mk
@@ -6,8 +6,8 @@ GhcLibHcOpts       = -O -dcore-lint -dno-debug-output
 BUILD_PROF_LIBS    = NO
 SplitSections      = NO
 HADDOCK_DOCS       = YES
-BUILD_SPHINX_HTML  = YES
-BUILD_SPHINX_PDF   = NO
+BUILD_SPHINX_HTML ?= YES
+BUILD_SPHINX_PDF  ?= NO
 
 ifeq "$(ValidateHpc)" "YES"
 GhcStage2HcOpts   += -fhpc -hpcdir $(TOP)/testsuite/hpc_output/