[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GMP GCC C++ Hurd cross-build failure on core-updates
From: |
Ludovic Courtès |
Subject: |
Re: GMP GCC C++ Hurd cross-build failure on core-updates |
Date: |
Mon, 19 Dec 2022 22:06:00 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hi zamfofex,
And sorry for the late reply…
zamfofex <zamfofex@twdb.moe> skribis:
> hurdauth.c:166:1: error: conflicting types for ‘_S_msg_del_auth’; have
> ‘kern_return_t(mach_port_t, task_t, const int *, mach_msg_type_number_t,
> const int *, mach_msg_type_number_t)’ {aka ‘int(long unsigned int, long
> unsigned int, const int *, unsigned int, const int *, unsigned int)’}
> 166 | _S_msg_del_auth (mach_port_t me,
> | ^~~~~~~~~~~~~~~
> In file included from hurdauth.c:19:
> /tmp/guix-build-glibc-cross-i586-pc-gnu-2.35.drv-0/build/hurd/hurd/msg_server.h:72:15:
> note: previous declaration of ‘_S_msg_del_auth’ with type
> ‘kern_return_t(mach_port_t, mach_port_t, int *, mach_msg_type_number_t,
> int *, mach_msg_type_number_t)’ {aka ‘int(long unsigned int, long unsigned
> int, int *, unsigned int, int *, unsigned int)’}
> 72 | kern_return_t _S_msg_del_auth
> | ^~~~~~~~~~~~~~~
> make[2]: *** [../o-iterator.mk:9:
> /tmp/guix-build-glibc-cross-i586-pc-gnu-2.35.drv-0/build/hurd/hurdauth.o]
> Error 1
Looking at this, glibc now has ‘const’ qualifiers for the ‘uids’ and
‘gids’ parameters:
--8<---------------cut here---------------start------------->8---
kern_return_t
_S_msg_del_auth (mach_port_t me,
task_t task,
const_intarray_t uids, mach_msg_type_number_t nuids,
const_intarray_t gids, mach_msg_type_number_t ngids)
--8<---------------cut here---------------end--------------->8---
This comes from this glibc commit:
commit 0eb230ccceee70c4b5d2a75807d2189aa4ed6e7c
Date: Sun Jan 16 18:28:40 2022 +0000
hurd: Make RPC input array parameters const
This follows mig's cf4bcc3f1435 ("Also add const qualifiers on server
side")
My guess is that you’re running a version of MiG that’s older than
cf4bcc3f1435 (MiG commit), and thus it generates stubs (such as the
‘msg_server.h’ file mentioned in the error message above) that lack
those ‘const’ qualifiers.
If that reasoning is good, updating MiG should fix it.
HTH,
Ludo’.