qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v6 1/8] make.rule: fix $(obj) to a real relative


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH v6 1/8] make.rule: fix $(obj) to a real relative path
Date: Thu, 12 Sep 2013 10:22:53 +0800
User-agent: Mutt/1.5.21 (2010-09-15)

On Wed, 09/11 15:59, Daniel P. Berrange wrote:
> On Wed, Sep 11, 2013 at 09:34:01PM +0800, Fam Zheng wrote:
> > Makefile.target includes rule.mak and unnested common-obj-y, then prefix
> > them with '../', this will ignore object specific QEMU_CFLAGS in subdir
> > Makefile.objs:
> > 
> >     $(obj)/curl.o: QEMU_CFLAGS += $(CURL_CFLAGS)
> > 
> > Because $(obj) here is './block', instead of '../block'. This doesn't
> > hurt compiling because we basically build all .o from top Makefile,
> > before entering Makefile.target, but it will affact arriving per-object
> > libs support.
> > 
> > The starting point of $(obj) is passed in as argument of unnest-vars, as
> > well as nested variables, so that different Makefiles can pass in a
> > right value.
> > 
> > Signed-off-by: Fam Zheng <address@hidden>
> > ---
> >  Makefile        | 16 +++++++++++++++-
> >  Makefile.objs   | 16 +---------------
> >  Makefile.target | 17 +++++++++++++----
> >  configure       |  1 +
> >  rules.mak       | 16 +++++++++++-----
> >  5 files changed, 41 insertions(+), 25 deletions(-)
> 
> This change appears to break the build of libcacard.so when I tried
> the following sequence with current git master
> 
>  $ git clean -f -x -d
>  $ ./configure --prefix=$HOME/usr/qemu-git --target-list=x86_64-softmmu
>  $ make -j 20
>    ....
>   lt LINK vscclient
>   ./.libs/libcacard.so: undefined reference to `monitor_fdset_get_fd'
>   ./.libs/libcacard.so: undefined reference to `monitor_fdset_dup_fd_add'
>   ./.libs/libcacard.so: undefined reference to `monitor_fdset_dup_fd_remove'
>   ./.libs/libcacard.so: undefined reference to `monitor_fdset_dup_fd_find'
>   collect2: error: ld returned 1 exit status
> 
> I'm also seeing make report circular deps
> 
>   make: Circular stubs/ <- stubs/ dependency dropped.
>   make: Circular trace/ <- stubs/ dependency dropped.
>   make: Circular trace/ <- trace/ dependency dropped.
> 
> 

I fixed it, the order of including libcacard/Makefile and unnest-vars in top
Makefile is reversed. A Good catch, thanks.

Thanks.




reply via email to

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