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

Re: Build system mess in stubdom



On 7/9/24 8:55 AM, Jan Beulich wrote:
On 09.07.2024 15:49, Andrew Cooper wrote:
I'm trying to investigate why stubdom/ is fatally failing now with a
rebuilt ArchLinux container (GCC 14).

It is ultimately:

../../../../../newlib-1.16.0/newlib/libc/reent/signalr.c:61:14: error:
implicit declaration of function ‘kill’; did you mean ‘_kill’?
[-Wimplicit-function-declaration]
    61 |   if ((ret = _kill (pid, sig)) == -1 && errno != 0)
       |              ^~~~~
make[7]: *** [Makefile:483: lib_a-signalr.o] Error 1
which doesn't make sense, but is a consequence of the ifdefary in
newlib/libc/include/_syslist.h
Charles, who is looking after our Xen packages, had run into exactly this.
His workaround patch (added to the list of patches applied on top of
newlib by stubdom/Makefile) is below, but in the given form I didn't expect
it would be upstreamable. The diagnostics by the compiler may be a little
misleading ...

This problem showed up only with gcc14 when it began treating what was previously a warning as an error.

Charles


Jan

--- newlib-1.16.0/newlib/libc/stdlib/wcstoull.c
+++ newlib-1.16.0/newlib/libc/stdlib/wcstoull.c
@@ -127,6 +127,10 @@ PORTABILITY

  #ifndef _REENT_ONLY

+#if __GNUC__ >= 14
+#pragma GCC diagnostic ignored "-Wimplicit-function-declaration"
+#endif
+
  unsigned long long
  _DEFUN (wcstoull, (s, ptr, base),
        _CONST wchar_t *s _AND
--- newlib-1.16.0/newlib/libc/reent/signalr.c
+++ newlib-1.16.0/newlib/libc/reent/signalr.c
@@ -49,6 +49,10 @@ DESCRIPTION
        <<errno>>.
  */

+#if __GNUC__ >= 14
+#pragma GCC diagnostic ignored "-Wimplicit-function-declaration"
+#endif
+
  int
  _DEFUN (_kill_r, (ptr, pid, sig),
       struct _reent *ptr _AND
--- newlib-1.16.0/newlib/doc/makedoc.c
+++ newlib-1.16.0/newlib/doc/makedoc.c
@@ -798,6 +798,7 @@ DEFUN( iscommand,(ptr, idx),
  }


+static unsigned int
  DEFUN(copy_past_newline,(ptr, idx, dst),
        string_type *ptr AND
        unsigned int idx AND





 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.