qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [PATCH v2 1/2] configure: Default to enable module buil


From: Fam Zheng
Subject: Re: [Qemu-devel] [PATCH v2 1/2] configure: Default to enable module build
Date: Tue, 3 Feb 2015 09:29:57 +0800
User-agent: Mutt/1.5.23 (2014-03-12)

On Mon, 02/02 20:34, Paolo Bonzini wrote:
> 
> 
> On 13/01/2015 09:53, Fam Zheng wrote:
> > We have module build support around for a while, but also had it bitrot
> > several times. It probably makes sense to enable it by default so that
> > people can notice and use it.
> > 
> > Counterpart to --enable-modules, which is turned as default,
> > --disable-modules is added to suppress it. If both are omitted, the
> > support is guesses as usual.
> > 
> > Signed-off-by: Fam Zheng <address@hidden>
> 
> I squashed this to unbreak static compilation, but Peter reported that
> module linking fails on ARM host:
>   LINK  block/curl.so
> /usr/bin/ld: block/curl.o: relocation R_ARM_THM_MOVW_ABS_NC against
> `__stack_chk_guard' can not be used when making a shared object;
> recompile with -fPIC
> block/curl.o: could not read symbols: Bad value
> collect2: error: ld returned 1 exit status

I don't see how -fPIC is missed in ARM host :( Does the below patch fix this?

> 
> diff --git a/configure b/configure
> index a9ae57a..4fae00a 100755
> --- a/configure
> +++ b/configure
> @@ -1536,9 +1536,6 @@ if compile_prog "-Werror -fno-gcse" "" ; then
>  fi
> 
>  if test "$static" = "yes" ; then
> -  if test "$modules" = "yes" ; then
> -    error_exit "static and modules are mutually incompatible"
> -  fi
>    if test "$pie" = "yes" ; then
>      error_exit "static and pie are mutually incompatible"
>    else
> Stage this hunk [y,n,q,a,d,/,j,J,g,e,?]? y
> @@ -2763,6 +2760,14 @@ fi
>  module_try_enable()
>  {
>    force=$1
> +  if test "$static" = "yes"; then
> +    if $force; then
> +      error_exit "static and modules are mutually incompatible"
> +    else
> +      modules="no"
> +      return
> +    fi
> +  fi
>    shacmd_probe="sha1sum sha1 shasum"
>    for c in $shacmd_probe; do
>      if has $c; then
> 
> 
> Is the above ok?

Yes, it looks correct.

Fam



reply via email to

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