[Top][All Lists]

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

Re: GNU Mach: MIG stubs not generated

From: Thomas Schwinge
Subject: Re: GNU Mach: MIG stubs not generated
Date: Wed, 26 May 2010 19:34:05 +0200
User-agent: Mutt/1.5.20 (2009-06-14)


First, I didn't read all your Nix / Hydra emails in detail yet, but it's
great that you're working on this!

On Wed, May 26, 2010 at 02:07:09PM +0200, Ludovic Courtès wrote:
> GNU Mach currently fails to build for me:
> --8<---------------cut here---------------start------------->8---
> i586-pc-gnu-gcc -DHAVE_CONFIG_H -I.  -nostdinc -imacros config.h -Ii386 -I. 
> -I./i386 -I./i386/include/mach/sa -I./include  -Wall -fno-strict-aliasing 
> -fno-stack-protector -g -O2 -c -o vm/memory_object.o vm/memory_object.c
> vm/memory_object.c:51:40: fatal error: vm/memory_object_user.user.h: No such 
> file or directory
> --8<---------------cut here---------------end--------------->8---
> (From <http://hydra.nixos.org/build/424416>.)

I broke this down to --disable-dependency-tracking (which you are using)
according to some raw log file I looked at.  (Where can I see the list of
commands you're actually invoking?)

I never put any energy on supporting building without dependency
tracking, so there.

Also, I see --build=i586-pc-gnu --build=x86_64-linux on your configure
command line.  The latter one wins, I guess.

> >From a quick glance, the reason seems to be that MIG-generated stubs are
> listed in ‘nodist_libkernel_a_SOURCES’, whereas they should really be
> ‘BUILT_SOURCES’, so that they get built before the libkernel.a sources
> are compiled.
> I noticed that ‘configure.ac’ reads this:
> --8<---------------cut here---------------start------------->8---
> # See <http://lists.gnu.org/archive/html/automake/2006-05/msg00038.html>.
> #
> # We don't use `BUILT_SOURCES' (as it was suggested in the follow-up message),
> # as we also want things like `make SPECIFIC_TARGET' to work.
> --8<---------------cut here---------------end--------------->8---
> However I don’t see any reason why ‘BUILT_SOURCES’ wouldn’t work here.
> What am I missing?

As I remember, when designing that build system, the following would not
work when the auto-generated stuff was listed in BUILT_SOURCES:
``configure && make gnumach.gz'' (the BUILT_SOURCES files would not be
considered (generated) in such a case), whereas it would work with my
system.  Also, it had / has something to do with having dependency
tracking for the #include lines in .defs files.

If you say that using BUILT_SOURCES together with ``make
SPECIFIC_TARGET'' works these days (including dependency tracking in
#included files), then we can (and should) use that instead, of course.


Attachment: signature.asc
Description: Digital signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]