diff --git a/.gitignore b/.gitignore
index c07dfd0e6c75da6205920849da7a00560945a38c..50f372be473abb17a0c1a232eed2e2d01fe407ef 100644
--- a/.gitignore
+++ b/.gitignore
@@ -123,9 +123,6 @@ doc/internals/ltxpng
 # Windows
 !/windows/Makefile
 !/windows/deps/Makefile
-windows/deps/.BUILDINFO
-windows/deps/.MTREE
-windows/deps/.PKGINFO
 windows/deps/lib32/
 windows/deps/lib64/
 windows/deps/lib32-msys2/
diff --git a/windows/deps/Makefile b/windows/deps/Makefile
index 1bc45301cc0908633a6de9c780926a6e40ae5ad6..d59ad0636acd894263899c72aec164d04f67bf50 100644
--- a/windows/deps/Makefile
+++ b/windows/deps/Makefile
@@ -220,26 +220,28 @@ clean-matlab:
 
 msys2: lib32-msys2 lib64-msys2 mingw32 mingw64
 
+MSYS2_EXCLUDES := --exclude .MTREE --exclude .BUILDINFO --exclude .PKGINFO
+
 lib32-msys2: tarballs/mingw-w64-i686-boost-$(MINGW32_BOOST_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-gsl-$(MINGW32_GSL_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-openblas-$(MINGW32_OPENBLAS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-matio-$(MINGW32_MATIO_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-zlib-$(MINGW32_ZLIB_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-hdf5-$(MINGW32_HDF5_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-szip-$(MINGW32_SZIP_VERSION)-any.pkg.tar.xz
 	rm -rf $@
 	mkdir $@
-	for f in $^; do tar xf $$f --directory $@ --strip-components 1; done
+	for f in $^; do tar xf $$f --directory $@ --strip-components 1 $(MSYS2_EXCLUDES); done
 	touch $@
 
 lib64-msys2: tarballs/mingw-w64-x86_64-boost-$(MINGW64_BOOST_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-gsl-$(MINGW64_GSL_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-openblas-$(MINGW64_OPENBLAS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-matio-$(MINGW64_MATIO_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-zlib-$(MINGW64_ZLIB_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-hdf5-$(MINGW64_HDF5_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-szip-$(MINGW64_SZIP_VERSION)-any.pkg.tar.xz
 	rm -rf $@
 	mkdir $@
-	for f in $^; do tar xf $$f --directory $@ --strip-components 1; done
+	for f in $^; do tar xf $$f --directory $@ --strip-components 1 $(MSYS2_EXCLUDES); done
 	touch $@
 
 mingw32: tarballs/mingw-w64-i686-gcc-$(MINGW32_GCC_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-gmp-$(MINGW32_GMP_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-binutils-$(MINGW32_BINUTILS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-headers-git-$(MINGW32_HEADERS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-crt-git-$(MINGW32_CRT_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-winpthreads-git-$(MINGW32_WINPTHREADS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-i686-libwinpthread-git-$(MINGW32_LIBWINPTHREAD_VERSION)-any.pkg.tar.xz
 	rm -rf $@
-	for f in $^; do tar xf $$f; done
+	for f in $^; do tar xf $$f $(MSYS2_EXCLUDES); done
 	touch $@
 
 mingw64: tarballs/mingw-w64-x86_64-gcc-$(MINGW64_GCC_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-gmp-$(MINGW64_GMP_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-binutils-$(MINGW64_BINUTILS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-headers-git-$(MINGW64_HEADERS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-crt-git-$(MINGW64_CRT_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-winpthreads-git-$(MINGW64_WINPTHREADS_VERSION)-any.pkg.tar.xz tarballs/mingw-w64-x86_64-libwinpthread-git-$(MINGW64_LIBWINPTHREAD_VERSION)-any.pkg.tar.xz
 	rm -rf $@
-	for f in $^; do tar xf $$f; done
+	for f in $^; do tar xf $$f $(MSYS2_EXCLUDES); done
 	touch $@
 
 tarballs/mingw-w64-i686-%-any.pkg.tar.xz: