GNU bug report logs - #18896
regressions in coreutils 8.23 on Yosemite

Previous Next

Package: coreutils;

Reported by: Jack Howarth <howarth <at> bromo.med.uc.edu>

Date: Wed, 29 Oct 2014 23:14:01 UTC

Severity: normal

Done: Pádraig Brady <P <at> draigBrady.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Pádraig Brady <P <at> draigBrady.com>
To: Jack Howarth <howarth <at> bromo.med.uc.edu>
Cc: 18896 <at> debbugs.gnu.org
Subject: bug#18896: regressions in coreutils 8.23 on Yosemite
Date: Tue, 04 Nov 2014 01:29:39 +0100
On 11/03/2014 10:58 PM, Jack Howarth wrote:
> On Mon, Nov 03, 2014 at 03:16:58PM +0100, Pádraig Brady wrote:
>> On 10/31/2014 05:03 PM, Pádraig Brady wrote:
>>> On 10/31/2014 03:41 PM, Jack Howarth wrote:
>>>> On Fri, Oct 31, 2014 at 03:56:06AM +0000, Pádraig Brady wrote:
>>>>> On 10/31/2014 03:30 AM, Jack Howarth wrote:
>>>>>> On Fri, Oct 31, 2014 at 02:29:05AM +0000, Pádraig Brady wrote:
>>>>>>>
>>>>>>> So linkat() is now available but doesn't support hardlinks to symlinks
>>>>>>> contrary to the POSIX spec. So it would be best we consider linkat()
>>>>>>> unavailable, which can be done manually like:
>>>>>>>
>>>>>>>   ac_cv_func_linkat=no ./configure
>>>>>>>
>>>>>>> We'll have to augment the gnulib linkat check to actually check
>>>>>>> that linkat() works, rather than just being available.
>>>>>>
>>>>>> Passing ac_cv_func_linkat=no to configure and using your attached patch
>>>>>> results in a large number of failures on x86_64-apple-darwin14.
>>>>>
>>>>> Good that's better. coreutils tests have passed, and you're getting
>>>>> to gnulib issues below.
>>
>> I pushed the following slightly different more general patch
>> to gnulib to address this issue:
>> http://git.sv.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=c8e57ce5
>>
>> thanks,
>> Pádraig.
> 
> Pádraig,
>      I puzzled out the problem with the strtoll test compilation. I have 
> been using...
> 
> ./configure CPPFLAGS="-Wall -std=c89"
> 
> but it appears it needs to be...
> 
> ./configure CPPFLAGS="-Wall -std=c99"
> 
> on darwin14. The current gnulib git at your commit and the changes...
> 
> diff --git a/lib/symlinkat.c b/lib/symlinkat.c
> index 9797f46..5df605f 100644
> --- a/lib/symlinkat.c
> +++ b/lib/symlinkat.c
> @@ -20,6 +20,8 @@
>  
>  #include <unistd.h>
>  #include <errno.h>
> +#include <string.h>
> +#include <sys/stat.h>
>  
>  #if HAVE_SYMLINKAT
>  # undef symlinkat
> diff --git a/tests/test-stdnoreturn.c b/tests/test-stdnoreturn.c
> index a8aead8..04107bc 100644
> --- a/tests/test-stdnoreturn.c
> +++ b/tests/test-stdnoreturn.c
> @@ -18,6 +18,8 @@
>  
>  #include <config.h>
>  
> +#include <unistd.h>
> +

Thanks for tracking these missing includes down.
We should add those to gnulib.

> passes 'make' but the 'make check' produces 9 failures...

> ../build-aux/test-driver: line 107:  3918 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-getlogin_r
> ../build-aux/test-driver: line 107:  3925 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-getopt
> ../build-aux/test-driver: line 107:  4246 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-linkat
> ../build-aux/test-driver: line 107:  5143 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-readlinkat
> ../build-aux/test-driver: line 107:  5498 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-snprintf-posix
> ../build-aux/test-driver: line 107:  5522 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-sprintf-posix
> ../build-aux/test-driver: line 107:  6031 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-unlinkat
> ../build-aux/test-driver: line 107:  6225 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-vsnprintf-posix
> ../build-aux/test-driver: line 107:  6238 Abort trap: 6           "$@" > $log_file 2>&1
> FAIL: test-vsprintf-posix
> 
> which debug as...
> 
> $ sudo lldb ./test-linkat
> Password:
> (lldb) target create "./test-linkat"
> Current executable set to './test-linkat' (x86_64).
> (lldb) r
> Process 6515 launched: './test-linkat' (x86_64)
> ./test-link.h:166: assertion 'func (BASE "b", BASE "link/") == -1' failed

Note as mentioned before I'm going by the assertion message
as the debugger line seems to be incorrect.
Anyway it seems we'll need to augment the LINKAT_TRAILING_SLASH_BUG
test in m4/linkat.m4 as per above.

> $ sudo lldb ./test-readlinkat
> (lldb) target create "./test-readlinkat"
> Current executable set to './test-readlinkat' (x86_64).
> (lldb) r
> Process 6538 launched: './test-readlinkat' (x86_64)
> ./test-readlink.h:71: assertion 'func (BASE "link2/", buf, sizeof buf) == -1' failed

Seems like we'll have to add much the same trailing "/" test
to m4/readlinkat.m4 like we've already done for m4/readlink.m4

I'm travelling at present so patches will be tardy.

thanks for the testing so far,
Pádraig.




This bug report was last modified 10 years and 72 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.