diff --git a/README b/README
deleted file mode 100644
index 80c04e20fe..0000000000
--- a/README
+++ /dev/null
@@ -1,125 +0,0 @@
-Copyright (C) 2001-2022 Free Software Foundation, Inc.
-See the end of the file for license conditions.
-
-
-This directory tree holds version 29.0.50 of GNU Emacs, the extensible,
-customizable, self-documenting real-time display editor.
-
-The file INSTALL in this directory says how to build and install GNU
-Emacs on various systems, once you have unpacked or checked out the
-entire Emacs file tree.
-
-See the file etc/NEWS for information on new features and other
-user-visible changes in recent versions of Emacs.
-
-The file etc/PROBLEMS contains information on many common problems that
-occur in building, installing and running Emacs.
-
-The file CONTRIBUTE contains information on contributing to Emacs as a
-developer.
-
-You may encounter bugs in this release.  If you do, please report
-them; your bug reports are valuable contributions to the FSF, since
-they allow us to notice and fix problems on machines we don't have, or
-in code we don't use often.  Please send bug reports to the mailing
-list bug-gnu-emacs@gnu.org.  If possible, use M-x report-emacs-bug.
-
-See the "Bugs" section of the Emacs manual for more information on how
-to report bugs.  (The file 'BUGS' in this directory explains how you
-can find and read that section using the Info files that come with
-Emacs.)  For a list of mailing lists related to Emacs, see
-<https://savannah.gnu.org/mail/?group=emacs>.  For the complete
-list of GNU mailing lists, see <https://lists.gnu.org/>.
-
-The 'etc' subdirectory contains several other files, named in capital
-letters, which you might consider looking at when installing GNU
-Emacs.
-
-The file 'configure' is a shell script to acclimate Emacs to the
-oddities of your processor and operating system.  It creates the file
-'Makefile' (a script for the 'make' program), which automates the
-process of building and installing Emacs.  See INSTALL for more
-detailed information.
-
-The file 'configure.ac' is the input used by the autoconf program to
-construct the 'configure' script.
-
-The shell script 'autogen.sh' generates 'configure' and other files by
-running Autoconf (which in turn uses GNU m4), and configures files in
-the .git subdirectory if you are using Git.  If you want to use it,
-you will need to install recent versions of these build tools.  This
-should be needed only if you edit files like 'configure.ac' that
-specify Emacs's autobuild procedure.
-
-The file 'Makefile.in' is a template used by 'configure' to create
-'Makefile'.
-
-The file 'make-dist' is a shell script to build a distribution tar
-file from the current Emacs tree, containing only those files
-appropriate for distribution.  If you make extensive changes to Emacs,
-this script will help you distribute your version to others.
-
-There are several subdirectories:
-
-'src'       holds the C code for Emacs (the Emacs Lisp interpreter and
-            its primitives, the redisplay code, and some basic editing
-            functions).
-'lisp'      holds the Emacs Lisp code for Emacs (most everything else).
-'leim'      holds the original source files for the generated files
-            in lisp/leim.  These form the library of Emacs input methods,
-            required to type international characters that can't be
-            directly produced by your keyboard.
-'lib'       holds source code for libraries used by Emacs and its utilities
-'lib-src'   holds the source code for some utility programs for use by or
-            with Emacs, like movemail and etags.
-'lwlib'     holds the sources of the Lucid Widget Library used on X.
-'oldXMenu'  source files from X11R2 XMenu library, used in non-toolkit builds.
-'etc'       holds miscellaneous architecture-independent data files Emacs
-            uses, like the tutorial text and tool bar images.
-            The contents of the 'lisp', 'leim', 'info', and 'doc'
-            subdirectories are architecture-independent too.
-'info'      holds the Info documentation tree for Emacs.
-'doc/emacs' holds the source code for the Emacs Manual.  If you modify the
-            manual sources, you will need the 'makeinfo' program to produce
-            an updated manual.  'makeinfo' is part of the GNU Texinfo
-            package; you need a suitably recent version of Texinfo.
-'doc/lispref'   holds the source code for the Emacs Lisp reference manual.
-'doc/lispintro' holds the source code for the Introduction to Programming
-                in Emacs Lisp manual.
-'msdos'     holds configuration files for compiling Emacs under MS-DOS.
-'nextstep'  holds instructions and some other files for compiling the
-            Nextstep port of Emacs, for GNUstep and macOS Cocoa.
-'nt'        holds code and documentation for building Emacs on MS-Windows.
-'test'      holds tests for various aspects of Emacs's functionality.
-'modules'   holds the modhelp.py helper script.
-'admin'     holds files used by Emacs developers, and Unicode data files.
-'build-aux' holds auxiliary files used during the build.
-'m4'        holds Autoconf macros used for generating the configure script.
-
-   Building Emacs on non-Posix platforms requires tools that aren't part
-of the standard distribution of the OS.  The platform-specific README
-files and installation instructions should list the required tools.
-
-
-NOTE ON COPYRIGHT YEARS
-
-In copyright notices where the copyright holder is the Free Software
-Foundation, then where a range of years appears, this is an inclusive
-range that applies to every year in the range.  For example: 2005-2008
-represents the years 2005, 2006, 2007, and 2008.
-
-
-This file is part of GNU Emacs.
-
-GNU Emacs is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-GNU Emacs is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with GNU Emacs.  If not, see <https://www.gnu.org/licenses/>.
diff --git a/admin/nt/dist-build/build-dep-zips.py b/admin/nt/dist-build/build-dep-zips.py
index a1d9afa517..9b8492ff0e 100755
--- a/admin/nt/dist-build/build-dep-zips.py
+++ b/admin/nt/dist-build/build-dep-zips.py
@@ -20,8 +20,6 @@
 import os
 import shutil
 import re
-import functools
-import operator
 
 from subprocess import check_output
 
@@ -39,6 +37,7 @@
 mingw-w64-x86_64-librsvg
 mingw-w64-x86_64-libtiff
 mingw-w64-x86_64-libxml2
+mingw-w64-x86_64-gmp
 mingw-w64-x86_64-xpm-nox'''.split()
 
 DLL_REQ='''libgif
@@ -51,7 +50,9 @@
 librsvg
 libtiff
 libxml
-libXpm'''.split()
+libgmp
+libXpm
+libXpm-noX4'''.split()
 
 
 ## Options
@@ -103,7 +104,7 @@ def ntldd_munge(out):
 
         ## if it's the former, we want it, if its the later we don't
         splt = dep.split()
-        if len(splt) > 2 and "msys64" in splt[2]:
+        if len(splt) > 2 and "mingw64" in splt[2]:
             print("Adding dep", splt[0])
             rtn.append(splt[0].split(".")[0])
 
@@ -114,7 +115,7 @@ def ntldd_munge(out):
 ## Packages to fiddle with
 ## Source for gcc-libs is part of gcc
 SKIP_SRC_PKGS=["mingw-w64-gcc-libs"]
-SKIP_DEP_PKGS=frozenset(["mingw-w64-x86_64-glib2"])
+SKIP_DEP_PKGS=["mingw-w64-glib2"]
 MUNGE_SRC_PKGS={"mingw-w64-libwinpthread-git":"mingw-w64-winpthreads-git"}
 MUNGE_DEP_PKGS={
     "mingw-w64-x86_64-libwinpthread":"mingw-w64-x86_64-libwinpthread-git",
@@ -126,14 +127,16 @@ def ntldd_munge(out):
 SRC_REPO="https://repo.msys2.org/mingw/sources"
 
 
-def immediate_deps(pkgs):
-    package_info = check_output(["pacman", "-Si"] + pkgs).decode("utf-8").splitlines()
+def immediate_deps(pkg):
+    package_info = check_output(["pacman", "-Si", pkg]).decode("utf-8").split("\n")
 
-    ## Extract the packages listed for "Depends On:" lines.
-    dependencies = [line.split(":")[1].split() for line in package_info
-                    if line.startswith("Depends On")]
-    ## Flatten dependency lists from multiple packages into one list.
-    dependencies = functools.reduce(operator.iconcat, dependencies, [])
+    ## Extract the "Depends On" line
+    depends_on = [x for x in package_info if x.startswith("Depends On")][0]
+    ## Remove "Depends On" prefix
+    dependencies = depends_on.split(":")[1]
+
+    ## Split into dependencies
+    dependencies = dependencies.strip().split(" ")
 
     ## Remove > signs TODO can we get any other punctuation here?
     dependencies = [d.split(">")[0] for d in dependencies if d]
@@ -149,18 +152,16 @@ def extract_deps():
     print( "Extracting deps" )
 
     # Get a list of all dependencies needed for packages mentioned above.
-    pkgs = set(PKG_REQ)
-    newdeps = pkgs
-    print("adding...")
-    while True:
-        subdeps = frozenset(immediate_deps(list(newdeps)))
-        newdeps = subdeps - SKIP_DEP_PKGS - pkgs
-        if not newdeps:
-            break
-        print('\n'.join(newdeps))
-        pkgs |= newdeps
+    pkgs = PKG_REQ[:]
+    n = 0
+    while n < len(pkgs):
+        subdeps = immediate_deps(pkgs[n])
+        for p in subdeps:
+            if not (p in pkgs or p in SKIP_DEP_PKGS):
+                pkgs.append(p)
+        n = n + 1
 
-    return list(pkgs)
+    return sorted(pkgs)
 
 
 def download_source(tarball):
@@ -257,7 +258,7 @@ def clean():
 
 if( args.l ):
     print("List of dependencies")
-    print( deps )
+    print( extract_deps() )
     exit(0)
 
 if args.s:
diff --git a/admin/nt/dist-build/build-zips.sh b/admin/nt/dist-build/build-zips.sh
index 77d20a5a7b..014a39917d 100755
--- a/admin/nt/dist-build/build-zips.sh
+++ b/admin/nt/dist-build/build-zips.sh
@@ -48,12 +48,13 @@
         echo [build] Configuring Emacs
         $REPO_DIR/$BRANCH/configure \
             --without-dbus \
+            --with-native-compilation \
             --without-compress-install \
             $CACHE \
-            CFLAGS="$CFLAGS"
+            CFLAGS="$CFLAGS" 
     fi
 
-    make -j 4 $INSTALL_TARGET \
+    make -j 20 $INSTALL_TARGET ${NATIVE_COMP_EXTRA_MAKE_FLAGS} \
          prefix=$HOME/emacs-build/install/emacs-$VERSION
     cd $HOME/emacs-build/install/emacs-$VERSION
     zip -r -9 emacs-$OF_VERSION-no-deps.zip *
@@ -96,14 +97,15 @@ BUILD=
 BUILD_64=1
 GIT_UP=0
 CONFIG=1
-CFLAGS="-O2 -static"
+CFLAGS="-O2"
+NATIVE_COMP_EXTRA_MAKE_FLAGS= # e.g. "NATIVE_FULL_AOT=1"
 INSTALL_TARGET="install-strip"
 
 ## The location of the git repo
 REPO_DIR=$HOME/emacs-build/git/
 
 
-while getopts "gb:hnsiV:" opt; do
+while getopts "gb:hnsiFV:" opt; do
   case $opt in
     g)
         BUILD_32=0
@@ -120,20 +122,25 @@ REPO_DIR=
         REQUIRED_BRANCH=$OPTARG
         echo "Setting Required branch $REQUIRED_BRANCH"
         ;;
+    F)
+	NATIVE_COMP_EXTRA_MAKE_FLAGS="NATIVE_FULL_AOT=1"
+	;;
     V)
         VERSION=$OPTARG
         ;;
     s)
         SNAPSHOT="-snapshot"
-        CFLAGS="-O2 -static -g3"
+        CFLAGS="-O2 -g3"
         INSTALL_TARGET="install"
         ;;
     h)
         echo "build-zips.sh"
-        echo "  -b args -- build args branch"
+        echo "  -b arg -- build <arg> branch"
+        echo "  -V arg -- build <arg> version"
         echo "  -g git update and worktree only"
         echo "  -i build installer only"
         echo "  -n do not configure"
+        echo "  -F supply NATIVE_FULL_AOT to make"
         echo "  -s snapshot build"
         exit 0
         ;;
@@ -191,7 +198,7 @@ OF_VERSION=
     OF_VERSION="$VERSION-`date +%Y-%m-%d`"
     ## Use snapshot dependencies
     SNAPSHOT=1
-    CFLAGS="-O2 -static -g3"
+    CFLAGS="-O2 -g3"
     INSTALL_TARGET="install"
 fi
 
