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)

=====

Reply via email to