On 1/7/26 13:51, Jon Turney wrote:
[snip]
> Thanks for looking into this. And thanks for providing a patch.
>
> Yes, this is all messed up!
>
> This all looks fine.
>
> I think changing the option name is the best approach, as it's just
> completely unclear what it means either way around, and would be
> even more confusing if we suddenly inverted its meaning.
>
> But how do you feel about reverting to the previous name '--without-
> mingw-progs' (this exactly matches what the logic does now, since
> the extra things that '--with(out?)-cross_bootstrap' was omitting
> have been unconditionally removed in the meantime)?
? The option name was previously: mingw_progs (well, it was: mingw-progs).
Yes, the switch in the help message was: --without-mingw-progs
Omitting?
I guess you refer to the mingw-runtime (was: mingw-crt), a dependency that
has been moved to the compiler ...
Of course, "mingw_progs" can be chosen as the option name ...
BUT ... There is a reason why the macro is named AC_ARG_WITH (and why it is
not named AC_ARG_WITHOUT)
- switch --without-FOO results in with_FOO = "no", No matter the word that
is substituted for FOO
- one cannot specify an argument to the --without-FOO switch; it will result
in an error (abort by configure) if one does
- the action-if-not-given must be with_FOO = "yes" i.s.o. "no" if the choice
is for "mingw_progs" as the option name, because "by default" (i.e. if no
switch is specified), the process should hunt for the MinGW Toolchain.
As result, the choice for "mingw_progs" will require not testing for "! yes",
but for "! no"; because the value assigned to with_FOO can be different from
either "yes" or "no" (as result of a typo).
if with_FOO != "no"
then
Hunt for mingw # also in case of a typo
fi
(and that does also apply to AM_CONDITIONAL macro that follows this test)
And personally, I doubt that I have the energy to do the whole process of
fighting against "git" again.
And that is why I prefer "skip_mingw" as the option name ... Sorry.
Note: both winsup/{testsuite,utils}/Makefile.am must be modified as well.
So, go ahead if your choice is for "mingw_progs" :-)
Regards Henri
---
The choice is therefore between:
AC_ARG_WITH([skip_mingw],
[AS_HELP_STRING([--with-skip-mingw],
[do not build programs using the MinGW toolchain])],
[],
[with_skip_mingw=no])
if test "x$with_skip_mingw" != "xyes"; then
Hunt for the MinGW Toolchain
fi
AM_CONDITIONAL(SKIP_MINGW, [test "x$with_skip_mingw" != "xyes"])
and ...
AC_ARG_WITH([mingw_progs],
[AS_HELP_STRING([--without-mingw-progs],
[do not build programs using the MinGW toolchain])],
[],
[with_skip_mingw=yes])
if test "x$with_skip_mingw" != "xno"; then
Hunt for the MinGW Toolchain
fi
AM_CONDITIONAL(SKIP_MINGW, [test "x$with_skip_mingw" != "xno"])
# --with-FOO => with_ := yes Hunt for the MinGW Toolchain.
# --with-FOO=yes => with_ := yes Hunt for the MinGW Toolchain.
# --without-FOO => with_ := no do NOT hunt for the MinGW Toolchain.
# --with-FOO=no => with_ := no do NOT hunt for the MinGW Toolchain.
# --with-FOO=none => with_ := none Hunt for the MinGW Toolchain.
# (none = anything else than yes or no)
=====