bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GNU make 4.3.90 release candidate available


From: Paul Smith
Subject: Re: GNU make 4.3.90 release candidate available
Date: Mon, 26 Sep 2022 14:23:40 -0400
User-agent: Evolution 3.44.4 (by Flathub.org)

On Mon, 2022-09-26 at 20:23 +0300, Eli Zaretskii wrote:
> The following tests should be disabled on MS-Windows, because they
> cannot possibly work:

I have access to a VM running Windows 10 with a relatively recent
Visual Studio install, with a recent Perl, and with the Git for Windows
binaries (from MinGW I assume) on my PATH.  No other cygwin or MinGW.

In this environment I can do this (in a Windows cmd.exe shell):

  tar xzf make-4.3.90.tar.gz
  cd make-4.3.90
  .\build_w32.bat
  .\WinRel\gnumake.exe check

This builds with Visual Studio and I get zero test failures.

I assume a big part of this is that make is choosing bash as its shell,
from the Git for Windows install, not cmd.exe.  Plus other POSIX tools
are available.

>  . 1 test in misc/bs-nl that uses single quotes around newlines
>  . 1 test in misc/general3 that uses single quotes around newlines
>  . 1 test in misc/general4 that unsets PATH (this cannot work on
>    Windows because Make will be unable to find the DLLs against which
>    it was linked, so it fails to start without valid PATH)
>  . targets/ONESHELL in its entirety (this feature doesn't work on
>    Windows)

I assume most/all of the above really mean, these tests won't work on
Windows when make uses a Windows shell such as cmd.exe.

Maybe we need to add a new check to the test framework that sets a
variable depending on what kind of shell make is using, then this
variable should be used when deciding which tests to run rather than
using "are we on Windows or not".

>  . targets/POSIX in its entirety

The .POSIX: special target tells make that it should modify its
behavior to conform to the POSIX specification of make, in places where
it might differ by default.  This happens on Windows the same as on
non-Windows.  Some of those behaviors might require a real POSIX system
to test but I'm not sure all of them do.  I might be wrong though.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]