bug#68832: Testing: POSIX yacc and C++ linkage

2024-01-30 Thread Marcel Telka
Hi, I ran tests for automake 1.16.5 on OpenIndiana and following 4 tests failed: FAIL: t/yacc-cxx.sh FAIL: t/yacc-clean-cxx.sh FAIL: t/yacc-d-cxx.sh FAIL: t/yacc-mix-c-cxx.sh The cause for the failure is this: parse1.yy:30:7: error: conflicting declaration of 'void yyerror(const char*)' with

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Zack Weinberg
On Tue, Jan 30, 2024, at 6:32 PM, Karl Berry wrote: > test "$[*]" != "X conftest.ts1 conftest.ts2" || > .. > test "$[]2" = conftest.ts3 && > .. > etc. > > I've never seen anything like that before. Oh! Those square brackets are M4 quotes to prevent M4 from expanding $* and $2 itself. zw

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Karl Berry
(Off-topic for the original bug, but for the sake of public discussion ...) Hi Zack, It is absolutely not *supposed* to be using shell arrays. I guess it's not an array. It's the square bracket syntax that confuses me. A couple of examples from the fn in sanity.m4: test "$[*]" != "X confte

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Peter Johansson
On 30/1/24 22:46, Erik A Johnson wrote: (Why, then, does Apple continue to include 3.81 in the software 18 years later? Beyond me.) Probably because 3.81 was the last version released under GPLv2 or later and IIRC Apple avoids shipping things that are licensed with GPLv3. Cheers, Peter

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Zack Weinberg
On Tue, Jan 30, 2024, at 7:46 AM, Erik A Johnson wrote: > I found the problem! The default GNU make on macOS (even Sonoma) is > 3.81 from 2006! The configure script for GNU make versions <4.0 did > not have the right test for subsecond resolution in the macOS stat() > function, so 3.81 was built

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Erik A Johnson
I'm guessing the Mac (and its sleep command?) do support subsecond mtimes in reality. echo a > 1 && echo b > 2 && echo c > 3 && ls -t [123] consistently gives me the correct order (3 2 1). The macOS version of stat has a mtime_nsec field that is fully populated and the file modification

bug#68808: subsecond mtime discovery code insufficient

2024-01-30 Thread Erik A Johnson
I found the problem! The default GNU make on macOS (even Sonoma) is 3.81 from 2006! The configure script for GNU make versions <4.0 did not have the right test for subsecond resolution in the macOS stat() function, so 3.81 was built with resolution only to the second, not subsecond, thus needi