Autogen: Add detection of UI file changes to the pre-build VS case

This is achieved by adding a rule file which carries the UI files as dependencies but performs no meaningful command. Its output path points to a timestamp file which is instead touched by the pre-build command that runs autogen. The rule file therefore triggers the build if any of the files have been changed more recently than the last autogen run.

Fixes: #17959
Fixes: #18741
36 jobs for !5999 with vs-autouic-on-ui-file-change in 76 minutes and 26 seconds (queued for 2 seconds)
detached
Status Job ID Name Coverage
  Build
passed #5692912
linux docker build cmake manual
build:centos6-x86_64

00:03:39

passed #5692909
linux docker build cmake
build:debian10-iwyu

00:02:16

passed #5692913
linux-3.17 linux docker build cmake manual
build:fedora33-ninja

00:02:21

passed #5692911
linux-3.17 linux docker build cmake
build:fedora33-sphinx

00:05:09

passed #5692910
linux-3.17 linux docker build cmake
build:fedora33-tidy

00:19:10

manual #5692915
nonconcurrent xcode-12.4 shell macos cmake manual
build:macos-x86_64-makefiles
manual #5692914
nonconcurrent xcode-12.4 shell macos cmake manual
build:macos-x86_64-ninja
passed #5692916
nonconcurrent msvc-19.28-16.9 vs2019 shell windows cmake manual
build:windows-vs2019-x64-ninja

00:09:26

 
  Test
passed #5692917
x11 linux-3.17 linux docker cmake
test:fedora33-ninja

00:04:31

created #5692919
nonconcurrent xcode-12.4 shell macos cmake
test:macos-x86_64-makefiles
created #5692918
nonconcurrent xcode-12.4 shell macos cmake
test:macos-x86_64-ninja
passed #5692920
nonconcurrent msvc-19.28-16.9 vs2019 shell windows cmake
test:windows-vs2019-x64-ninja

00:13:33

 
  Test Ext
passed #5692923
linux docker cuda-rt cmake
test:cuda10.2-nvidia

00:01:50

passed #5692921
linux-3.17 linux docker build cmake
test:debian10-ninja

00:03:17

passed #5692922
linux-3.17 linux docker build cmake
test:fedora33-makefiles

00:09:02

passed #5692924
linux-3.17 linux docker build cmake
test:fedora33-ninja-multi

00:02:55

created #5692925
concurrent xcode-12.4 shell macos cmake
test:macos-x86_64-xcode
passed #5692926
concurrent msvc-19.28-16.9 vs2019 shell windows cmake
test:windows-vs2019-x64

00:26:57

 
  External
passed cdash

passed ghostflow-check-master

passed ghostflow-stager

passed cdash

passed cdash

passed cdash

passed cdash

passed cdash

passed cdash

passed cdash

passed cdash

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager

passed ghostflow-stager