The kernel is behaving correctly. The zsh configure script runs a program
that does tcsetpgrp on fd 0 (stdin), which is broken in multiple ways.
If the input were redirected then the test would give a false negative.
Since the input is your terminal and the job is in the background, it rightly
gets SIGTTOU for trying to perform tcsetpgrp. The only way a test of this
nature can be safe is if it's done on a specially created pty, e.g. in the child
of a forkpty call, but using ptys is not fully portable so zsh is kind of stuck
here.
If you would like to see this addressed, file a bug against zsh.