From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58198) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YISJe-0000LN-Gb for qemu-devel@nongnu.org; Mon, 02 Feb 2015 20:30:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YISJY-0007um-SC for qemu-devel@nongnu.org; Mon, 02 Feb 2015 20:30:10 -0500 Received: from mx1.redhat.com ([209.132.183.28]:60265) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YISJY-0007sw-Ll for qemu-devel@nongnu.org; Mon, 02 Feb 2015 20:30:04 -0500 Date: Tue, 3 Feb 2015 09:29:57 +0800 From: Fam Zheng Message-ID: <20150203012957.GA21449@ad.nay.redhat.com> References: <1421139239-13968-1-git-send-email-famz@redhat.com> <1421139239-13968-2-git-send-email-famz@redhat.com> <54CFD146.6040602@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54CFD146.6040602@redhat.com> Subject: Re: [Qemu-devel] [PATCH v2 1/2] configure: Default to enable module build List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini , Peter Maydell Cc: Brian Jackson , Michael Tokarev , qemu-devel@nongnu.org, Stefan Hajnoczi , Bharata B Rao , Andreas =?iso-8859-1?Q?F=E4rber?= , Richard Henderson 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 > > 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