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 <f...@redhat.com> > > 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