Genex: Add policy to handle empty list items in $<IN_LIST:...>

The old behavior of $<IN_LIST:...> is inconsistent with that of
if(IN_LIST), in that it does not find an empty search item even if
the list contains empty items. This change adds a new policy to
correctly handle empty items and make the behavior more consistent
with if(IN_LIST).

Fixes: #18556
31 jobs for genex-in_list-empty-args
Status Job ID Name Coverage
  External
passed cdash

passed cmake-dash3win7-windows-release-ninja

failed cmake-hythloth-linux-debug-makefiles+sphinx

passed cmake-moonshade-osx-debug-ninja

passed cmake-moonshade-osx-release-makefiles

passed cmake-terfin-windows-release-vs2017

passed ghostflow-check-master

passed ghostflow-stager

passed cmake-dash3win7-windows-release-ninja

00:29:12

running cmake-hythloth-linux-debug-makefiles+sphinx

6664:58:48

failed cmake-hythloth-linux-debug-makefiles+sphinx

failed cmake-hythloth-linux-debug-makefiles+sphinx

00:22:13

failed cmake-hythloth-linux-debug-makefiles+sphinx

failed cmake-moonshade-osx-debug-ninja

00:07:11

failed cmake-moonshade-osx-debug-ninja

passed cmake-moonshade-osx-debug-ninja

00:21:03

passed cmake-moonshade-osx-release-makefiles

00:26:16

failed cmake-terfin-windows-release-vs2017

passed cmake-terfin-windows-release-vs2017

01:21:23

failed cmake-terfin-windows-release-vs2017

00:07:45

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager