[bug #63016] Recursive variable references itself (eventually) when exporting to $(shell)

2022-09-08 Thread Paul D. Smith
Update of bug #63016 (project make):

  Status:None => Fixed  
 Assigned to:None => psmith 
 Open/Closed:Open => Closed 
   Fixed Release:None => SCM
   Triage Status:None => Small Effort   

___

Follow-up Comment #1:

I pushed a fix.  I think it might be possible to do better: one can imagine a
situation where you wouldn't treat the expansion of a variable to put into the
environment as a recursive expansion of a variable used in a recipe.  But to
do that would require more work and I couldn't convince myself (or find an
example makefile) where it would make a real difference.

In this change, variables that are recursively expanded into the environment
of a shell function will be set as the empty string rather than throwing an
error.


___

Reply to this item at:

  

___
Message sent via Savannah
https://savannah.gnu.org/




Re: New release of GNU make

2022-09-08 Thread Paul Smith
On Mon, 2022-09-05 at 03:47 +0100, Sam James wrote:
> I started testing master recently and hit
> https://savannah.gnu.org/bugs/?63016
> which prevented doing any more testing.

Hopefully this is fixed.  It works for the examples given anyway.

I also downgraded the required version of autoconf to 2.69 (and tested
that this works, for now at least).



[bug #13862] .WAIT target for parallel builds

2022-09-08 Thread Paul D. Smith
Follow-up Comment #6, bug #13862 (project make):

The next release of the POSIX standard will require .WAIT prerequisites for
make.

I think the final text looks something like what is shown here:
https://austingroupbugs.net/view.php?id=1437#c5489 but I'm not sure.


___

Reply to this item at:

  

___
Message sent via Savannah
https://savannah.gnu.org/




Re: New release of GNU make

2022-09-08 Thread Sam James


> On 8 Sep 2022, at 08:12, Paul Smith  wrote:
> 
> On Mon, 2022-09-05 at 03:47 +0100, Sam James wrote:
>> I started testing master recently and hit
>> https://savannah.gnu.org/bugs/?63016
>> which prevented doing any more testing.
> 
Hi Paul,

> Hopefully this is fixed.  It works for the examples given anyway.
> 
> I also downgraded the required version of autoconf to 2.69 (and tested
> that this works, for now at least).
> 

Thanks for the quick fix. We're resumed testing in Gentoo and I will
let you know in a few days if anything has or hasn't popped up.

I think provided you're planning on a release candidate/alpha
release before the real final release, you should feel free
to go ahead with the process to get some wider testing.

Many thanks!

Best,
sam


signature.asc
Description: Message signed with OpenPGP


[bug #63037] make check: 3 failures and error from "check-regression"

2022-09-08 Thread Bjarni Ingi Gislason
URL:
  

 Summary: make check: 3 failures and error from
"check-regression"
 Project: make
   Submitter: bjarniig
   Submitted: Fri 09 Sep 2022 12:15:14 AM UTC
Severity: 3 - Normal
  Item Group: None
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
 Discussion Lock: Any
   Component Version: SCM
Operating System: POSIX-Based
   Fixed Release: None
   Triage Status: None


___

Follow-up Comments:


---
Date: Fri 09 Sep 2022 12:15:14 AM UTC By: Bjarni Ingi Gislason 
Subject: make check: 3 failures and error from "check-regression"

Debian testing with Linux 5.18.16-1 x86_64 GNU/Linux

make git HEAD (4.3.90) with latest GNULIB,

3 Tests in 2 Categories Failed (See .diff* files in work dir for details) :-(

features/load ... FAILED (3/5 passed)

features/temp_stdin . FAILED (5/6 passed)

make[2]: *** [Makefile:1533: check-regression] Error 1
make[2]: Leaving directory '/home/bg/git/make'
make[1]: *** [Makefile:1268: check-am] Error 2
make[1]: Leaving directory '/home/bg/git/make'
make: *** [Makefile:970: check-recursive] Error 1

  The report (make.check.bug) and "config-flags.pm" are in the attachments.







___
File Attachments:


---
Date: Fri 09 Sep 2022 12:15:14 AM UTC  Name: make.check.bug  Size: 5KiB   By:
bjarniig


---
Date: Fri 09 Sep 2022 12:15:14 AM UTC  Name: config-flags.pm  Size: 1KiB   By:
bjarniig



___

Reply to this item at:

  

___
Message sent via Savannah
https://savannah.gnu.org/




[bug #63039] implicit rule recursion is forbidden

2022-09-08 Thread Brami
URL:
  

 Summary: implicit rule recursion is forbidden
 Project: make
   Submitter: et7f3
   Submitted: ven. 09 sept. 2022 02:02:53 UTC
Severity: 3 - Normal
  Item Group: Bug
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
 Discussion Lock: Any
   Component Version: 4.3
Operating System: POSIX-Based
   Fixed Release: None
   Triage Status: None


___

Follow-up Comments:


---
Date: ven. 09 sept. 2022 02:02:53 UTC By: Brami 
Hello,

I know `mkdir -p` but wanted to take advantage of make to concurrently produce
folder.

I builded this snippet:

```mak
build/:
mkdir "$@"

.SECONDARY: build/DEV/a/b/c/d/e/f/g/h/k/ build/DEV/a/b/c/d/e/f/g/h/
build/DEV/a/b/c/d/e/f/g/

.SECONDEXPANSION:
build/%/: | $$(dir build/%)
mkdir "$@"
```

(I didn't listed all in .SECONDARY but it shouldn't matter for the issue.)

I tried to build `build/DEV/a/b/c/d/e/f/g/h/k/l/`
here the implicit rule will try to build `build/DEV/a/b/c/d/e/f/g/h/k/` but it
didn't find any rule to this target because they are explicitly disabled.

src/implicit.c
```C
  if (rule->in_use)
{
  DBS (DB_IMPLICIT, (_("Avoiding implicit rule recursion.\n")));
  continue;
}
```

The workaround is to myself enumerate different level so it is considered as
another rule.

I tried to blame this but it appear in "Initial revision" implicit.c of
b9c983dee3c6aff460532d9b4fd7aaea079c672b

What is added only to prevent `%: %` ? or maybe weird loop: `a%: b%` and `b%:
aa%`. I think my case is fine because length only reduce so it will always
finish.







___

Reply to this item at:

  

___
Message posté via Savannah
https://savannah.gnu.org/




Re: New release of GNU make

2022-09-08 Thread Sam James


> On 8 Sep 2022, at 22:41, Sam James  wrote:
> 
> 
> 
>> On 8 Sep 2022, at 08:12, Paul Smith  wrote:
>> 
>> On Mon, 2022-09-05 at 03:47 +0100, Sam James wrote:
>>> I started testing master recently and hit
>>> https://savannah.gnu.org/bugs/?63016
>>> which prevented doing any more testing.
>> 
> Hi Paul,

Very preliminary results (only mild testing done so far)
but the only failure I've hit thus far is autoconf-2.71:
https://bugs.gentoo.org/869257.

I'll continue testing.

Best,
sam


signature.asc
Description: Message signed with OpenPGP