From mboxrd@z Thu Jan 1 00:00:00 1970 From: ludo@gnu.org (Ludovic =?utf-8?Q?Court=C3=A8s?=) Subject: Re: Glibc/hurd work till now Date: Tue, 18 Mar 2014 14:32:02 +0100 Message-ID: <87y5078wfh.fsf@gnu.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:60387) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPu7s-0004nL-85 for Guix-devel@gnu.org; Tue, 18 Mar 2014 09:32:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WPu7g-0007r7-OG for Guix-devel@gnu.org; Tue, 18 Mar 2014 09:32:16 -0400 Received: from hera.aquilenet.fr ([2a01:474::1]:39339) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WPu7g-0007qo-Gt for Guix-devel@gnu.org; Tue, 18 Mar 2014 09:32:04 -0400 In-Reply-To: (Manolis Ragkousis's message of "Tue, 18 Mar 2014 10:02:34 +0000") List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Manolis Ragkousis Cc: Guix-devel@gnu.org Manolis Ragkousis skribis: > All the changes till now, work in progress, this is not a final patch. > > > Try building the cross-libc for hurd with > ./pre-inst-env guix build -e '((@@ (gnu packages cross-base) > cross-libc/hurd) "i686-pc-gnu")' > > > The building process is getting stuck at xhurd-headers recipe. I think the issue is that xhurd-headers must have --host=3Di686-pc-gnu in its configure flags. You say that in that case ./configure fails with =E2=80=9Cgcc cannot produce executables=E2=80=9D. Could you send xhurd-headers=E2=80=99 config.log for= that case? Some additional comments: > +(define-public glibc/hurd=20 > + (package (inherit glibc) This definition basically copies all of the =E2=80=98glibc=E2=80=99 definit= ion. This is fine for now, but eventually this will need to be factorized. Also, ideally, we=E2=80=99d like to hide the fact that there are two differ= ent glibcs. So I imagine that we would: 1. Rename =E2=80=98glibc=E2=80=99 to =E2=80=98glibc/linux=E2=80=99. 2. Have =E2=80=98glibc/hurd=E2=80=99 inherit from it, just replacing =E2= =80=98source=E2=80=99, =E2=80=98propagated-inputs=E2=80=99, =E2=80=98inputs=E2=80=99, and add= ing the pre-configure phase that unpacks libpthread. 3. Define =E2=80=98glibc=E2=80=99 as a magic macro that chooses between = =E2=80=98glibc/linux=E2=80=99 and =E2=80=98glibc/hurd=E2=80=99 depending on the current system/targe= t (see =E2=80=98pkg-config=E2=80=99 for an example.) In parallel, we=E2=80=99ll have to lobby so our Hurd friends publish tarbal= ls of glibc and libpthread. > +(define* (cross-gcc/hurd target > + #:optional (xbinutils (cross-binutils target)) libc) Likewise, we shouldn=E2=80=99t need a Hurd-specific variant here. HTH, Ludo=E2=80=99.