Utilities/Release: Fix 'git archive' invocation

Tell it not to consider the current work tree location.
cmake-mode.el: Avoid using beginning-of-buffer

This should not be used from lisp programs.  Use the replacement
suggested by the doc: (goto-char (point-min))
cmake-mode.el: Don't assign to free variable save-point

Drop use of the free variable from unscreamify-cmake-buffer.

The proper way to do this would be defvar or let, but it is more
sensible to drop the feature completely: replace-match will shift the
point and the saved-point will be invalid. More careful coding could
avoid this, but seems overkill.
cmake-mode.el: Replace 'setq' with 'let' or inlining
Merge topic 'emacs-mode-byte-compile' into next

9b3876bf cmake-mode.el: Replace 'setq' with 'let' or inlining
d3db7126 cmake-mode.el: Don't assign to free variable save-point
fbc3a6f3 cmake-mode.el: Avoid using beginning-of-buffer
ExternalProject: Add option GIT_SUBMODULES

This option allows to filter the submodules that are checked out.
Add a simple testcase for GIT_SUBMODULES option passing an empty list.
Merge topic 'ExternalProject-git-submodules' into next

819015ef ExternalProject: Add option GIT_SUBMODULES
Merge topic 'doc-release-tarball' into next

9b7cd099 Utilities/Release: Use in-PATH sphinx-build on dash2win64
460b0f5d Utilities/Release: Fix 'git archive' invocation
Utilities/Release: Use in-PATH sphinx-build on dash2win64
Merge branch 'release'
Merge branch 'master' into next
Utilities/Release: Fix newlines on dash2win64 cygwin

Tell Git not to perform newline conversion by configuring
'core.autocrlf' to 'false'.  Cygwin wants newlines like UNIX.
Merge topic 'doc-release-tarball' into next

13957063 Utilities/Release: Fix newlines on dash2win64 cygwin
Qt4: Create IMPORTED executable targets for all Qt executables.

Qt 5 already has similar IMPORTED targets.  The versioned namespace will
allow de-conflicting the variable names between Qt 4 and Qt 5.
Qt4: Use IMPORTED executable names with custom commands.

Finding Qt 5 can overwrite the QT_MOC_EXECUTABLE variable with the
moc from Qt 5. Use the IMPORTED target with the explicit version in
the name to avoid that.
QtAutogen: Use Qt 4 IMPORTED targets to find executable locations.

Avoid using the moc from Qt 5 with Qt 4 based targets. Moc generates
a version check to ensure that such generated code does not compile.

The Qt4And5Automoc unit test should have been testing this, but it
was not because the test was broken. In that unit test, moc was run
on trivial files which have no significant content, and in particular
no Q_OBJECT macro.  Therefore moc was generating empty files which
do not even contain the version check.  Fix this by generating files
for input to moc at cmake time.
QtAutogen: Remove read of SKIP_AUTOUIC target property.

Skipping AUTOUIC for a target is achieved by setting the AUTOUIC
target property go OFF.
QtAutogen: Remove unused variables.
QtAutogen: Fix autouic target options in the presence of a config.

Read the correct variable.  Add scopes to prevent escape of variables.
QtAutogen: Make some methods appropriately file-static.