[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#18896: regressions in coreutils 8.23 on Yosemite
From: |
Jack Howarth |
Subject: |
bug#18896: regressions in coreutils 8.23 on Yosemite |
Date: |
Mon, 3 Nov 2014 15:09:45 -0500 |
User-agent: |
Mutt/1.5.18 (2008-05-17) |
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,
Using...
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>
+
#include <stdnoreturn.h>
#include <stdlib.h>
...gets the compilation of gnulib to...
make[4]: Entering directory `/private/tmp/testdir/gltests'
depbase=`echo test-strtoll.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc -DHAVE_CONFIG_H -I. -I.. -DGNULIB_STRICT_CHECKING=1 -DIN_GNULIB_TESTS=1
-I. -I. -I.. -I./.. -I../gllib -I./../gllib -Wall -std=c89 -g -O2 -MT
test-strtoll.o -MD -MP -MF $depbase.Tpo -c -o test-strtoll.o test-strtoll.c &&\
mv -f $depbase.Tpo $depbase.Po
test-strtoll.c:23:18: error: use of undeclared identifier 'strtoll'
SIGNATURE_CHECK (strtoll, long long, (const char *, char **, int));
^
./signature.h:39:21: note: expanded from macro 'SIGNATURE_CHECK'
SIGNATURE_CHECK1 (fn, ret, args, __LINE__)
^
./signature.h:44:21: note: expanded from macro 'SIGNATURE_CHECK1'
SIGNATURE_CHECK2 (fn, ret, args, id) /* macroexpand line */
^
./signature.h:46:58: note: expanded from macro 'SIGNATURE_CHECK2'
static ret (* _GL_UNUSED signature_check ## id) args = fn
^
test-strtoll.c:39:14: warning: implicit declaration of function 'strtoll'
[-Wimplicit-function-declaration]
result = strtoll (input, &ptr, 10);
^
1 warning and 1 error generated.
The /usr/include/stdlib.h header on darwin14 has...
#if !__DARWIN_NO_LONG_LONG
long long
strtoll(const char *, char **, int);
#endif /* !__DARWIN_NO_LONG_LONG */
Jack