From: "Johannes Schindelin via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Johannes Schindelin <johannes.schindelin@gmx.de>
Subject: [PATCH v2 00/12] Upstream some more Git for Windows' patches
Date: Wed, 12 Aug 2026 07:52:40 +0000 [thread overview]
Message-ID: <pull.2195.v2.git.1786521173.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.2195.git.1785939999.gitgitgadget@gmail.com>
When rebasing a Git for Windows commit to enable Rust in Windows CI, I
noticed just how many of the preceding commits touching adjacent code
haven't been upstreamed yet. This patch series rectifies that.
Changes since v1:
* Fixed the meson-side handling of the MINGW_PREFIX constant (this was not
noticed in the Git for Windows project because it does not use Meson to
build the project).
Johannes Schindelin (12):
mingw: include the Python parts in the build
mingw: stop hard-coding `CC = gcc`
mingw: drop the -D_USE_32BIT_TIME_T option
mingw: only use -Wl,--large-address-aware for 32-bit builds
mingw: avoid over-specifying `--pic-executable`
mingw: set the prefix and HOST_CPU as per MSYS2's settings
mingw: only enable the MSYS2-specific stuff when compiling in MSYS2
mingw: rely on MSYS2's metadata instead of hard-coding it
windows: skip linking `git-<command>` for built-ins
mingw: always define `ETC_*` for MSYS2 environments
mingw: ensure valid CTYPE
mingw: allow `git.exe` to be used instead of the "Git wrapper"
compat/mingw.c | 68 +++++++++++++++++++++++++++++
config.mak.uname | 61 ++++++++++++--------------
contrib/buildsystems/CMakeLists.txt | 9 +++-
meson.build | 15 ++++++-
meson_options.txt | 4 ++
t/t0060-path-utils.sh | 33 +++++++++++++-
6 files changed, 153 insertions(+), 37 deletions(-)
base-commit: 5b2471720c93ee30e5764a19f3d3b3ae9ec9712a
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-2195%2Fdscho%2Fupstream-some-more-git-for-windows-patches-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-2195/dscho/upstream-some-more-git-for-windows-patches-v2
Pull-Request: https://github.com/gitgitgadget/git/pull/2195
Range-diff vs v1:
1: fd594ffa6c = 1: fd594ffa6c mingw: include the Python parts in the build
2: 47fc974582 = 2: 47fc974582 mingw: stop hard-coding `CC = gcc`
3: 53f1fd5763 = 3: 53f1fd5763 mingw: drop the -D_USE_32BIT_TIME_T option
4: ad96aedda6 = 4: ad96aedda6 mingw: only use -Wl,--large-address-aware for 32-bit builds
5: d67201f9b3 = 5: d67201f9b3 mingw: avoid over-specifying `--pic-executable`
6: b49c42c50d = 6: b49c42c50d mingw: set the prefix and HOST_CPU as per MSYS2's settings
7: b00d242621 = 7: b00d242621 mingw: only enable the MSYS2-specific stuff when compiling in MSYS2
8: 1593d1d1a0 ! 8: 9de4ea7fc1 mingw: rely on MSYS2's metadata instead of hard-coding it
@@ Commit message
as before, but drops it for Meson (because it is unclear how Meson could
do this in a more flexible manner).
+ Helped-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
## config.mak.uname ##
@@ meson.build: elif host_machine.system() == 'windows'
+ if msystem != ''
+ mingw_prefix = get_option('mingw_prefix')
+ if mingw_prefix == ''
-+ mingw_prefix = '/' + msystem.to_lower()
++ mingw_prefix = msystem.to_lower()
++ elif mingw_prefix.startswith('/')
++ mingw_prefix = mingw_prefix.substring(1)
+ endif
+ libgit_c_args += [
+ '-DENSURE_MSYSTEM_IS_SET="' + msystem + '"',
9: c4e97449c1 = 9: 60a2999b75 windows: skip linking `git-<command>` for built-ins
10: 625f01ad29 = 10: 1dd6ac9295 mingw: always define `ETC_*` for MSYS2 environments
11: 39a138a773 = 11: d44d05c897 mingw: ensure valid CTYPE
12: f822133191 = 12: 679d1fdd41 mingw: allow `git.exe` to be used instead of the "Git wrapper"
--
gitgitgadget
next prev parent reply other threads:[~2026-08-12 7:52 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-05 14:26 [PATCH 00/12] Upstream some more Git for Windows' patches Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 01/12] mingw: include the Python parts in the build Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 02/12] mingw: stop hard-coding `CC = gcc` Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 03/12] mingw: drop the -D_USE_32BIT_TIME_T option Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 04/12] mingw: only use -Wl,--large-address-aware for 32-bit builds Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 05/12] mingw: avoid over-specifying `--pic-executable` Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 06/12] mingw: set the prefix and HOST_CPU as per MSYS2's settings Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 07/12] mingw: only enable the MSYS2-specific stuff when compiling in MSYS2 Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 08/12] mingw: rely on MSYS2's metadata instead of hard-coding it Johannes Schindelin via GitGitGadget
2026-08-05 17:29 ` Junio C Hamano
2026-08-06 12:50 ` Johannes Schindelin
2026-08-05 14:26 ` [PATCH 09/12] windows: skip linking `git-<command>` for built-ins Johannes Schindelin via GitGitGadget
2026-08-05 17:12 ` Junio C Hamano
2026-08-05 14:26 ` [PATCH 10/12] mingw: always define `ETC_*` for MSYS2 environments Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 11/12] mingw: ensure valid CTYPE Johannes Schindelin via GitGitGadget
2026-08-05 14:26 ` [PATCH 12/12] mingw: allow `git.exe` to be used instead of the "Git wrapper" Johannes Schindelin via GitGitGadget
2026-08-06 17:26 ` Junio C Hamano
2026-08-12 7:51 ` Johannes Schindelin
2026-08-12 7:52 ` Johannes Schindelin via GitGitGadget [this message]
2026-08-12 7:52 ` [PATCH v2 01/12] mingw: include the Python parts in the build Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 02/12] mingw: stop hard-coding `CC = gcc` Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 03/12] mingw: drop the -D_USE_32BIT_TIME_T option Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 04/12] mingw: only use -Wl,--large-address-aware for 32-bit builds Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 05/12] mingw: avoid over-specifying `--pic-executable` Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 06/12] mingw: set the prefix and HOST_CPU as per MSYS2's settings Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 07/12] mingw: only enable the MSYS2-specific stuff when compiling in MSYS2 Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 08/12] mingw: rely on MSYS2's metadata instead of hard-coding it Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 09/12] windows: skip linking `git-<command>` for built-ins Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 10/12] mingw: always define `ETC_*` for MSYS2 environments Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 11/12] mingw: ensure valid CTYPE Johannes Schindelin via GitGitGadget
2026-08-12 7:52 ` [PATCH v2 12/12] mingw: allow `git.exe` to be used instead of the "Git wrapper" Johannes Schindelin via GitGitGadget
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=pull.2195.v2.git.1786521173.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=git@vger.kernel.org \
--cc=johannes.schindelin@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.