From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49298) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkCO1-00058F-PU for qemu-devel@nongnu.org; Tue, 13 May 2014 09:04:54 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1WkCNx-0001tU-3s for qemu-devel@nongnu.org; Tue, 13 May 2014 09:04:49 -0400 Received: from mx-v6.kamp.de ([2a02:248:0:51::16]:38527 helo=mx01.kamp.de) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1WkCNw-0001tC-Pr for qemu-devel@nongnu.org; Tue, 13 May 2014 09:04:45 -0400 Message-ID: <53721867.5080404@kamp.de> Date: Tue, 13 May 2014 15:04:39 +0200 From: Peter Lieven MIME-Version: 1.0 References: <1399813620-26668-1-git-send-email-mjt@msgid.tls.msk.ru> In-Reply-To: <1399813620-26668-1-git-send-email-mjt@msgid.tls.msk.ru> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH] block/nfs: use per-object vars and make it modular List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Michael Tokarev , qemu-devel@nongnu.org Cc: Fam Zheng On 11.05.2014 15:07, Michael Tokarev wrote: > nfs block module uses libnfs and uses pkg-config to determine > its build information. Somehow it used only --libs, not --cflags, > and added those libs into global $LIBS, instead of using per-object > variable. the missing cflags stuff was due to a bug in the libnfs.pc file. https://github.com/sahlberg/libnfs/commit/d47c989d886e5398143d43d3b6d25fdf7210cb11 as there where no special flags I dropped it. this was before we realized that we had to depend on a newer libnfs version anyway. thanks for spotting this. > > Use both --libs and --cflags, use them as per-object variable, > and finally make block/nfs.o to be modular. can you explain the modular stuff? Thanks, Peter > > Signed-off-by: Michael Tokarev > --- > block/Makefile.objs | 2 ++ > configure | 6 ++++-- > 2 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/block/Makefile.objs b/block/Makefile.objs > index fd88c03..38ddc0e 100644 > --- a/block/Makefile.objs > +++ b/block/Makefile.objs > @@ -35,5 +35,7 @@ gluster.o-cflags := $(GLUSTERFS_CFLAGS) > gluster.o-libs := $(GLUSTERFS_LIBS) > ssh.o-cflags := $(LIBSSH2_CFLAGS) > ssh.o-libs := $(LIBSSH2_LIBS) > +nfs.o-cflags := $(LIBNFS_CFLAGS) > +nfs.o-libs := $(LIBNFS_LIBS) > qcow.o-libs := -lz > linux-aio.o-libs := -laio > diff --git a/configure b/configure > index ac2fa15..3bc91f6 100755 > --- a/configure > +++ b/configure > @@ -3928,7 +3928,7 @@ if test "$libnfs" != "no" ; then > if $pkg_config --atleast-version=1.9.3 libnfs; then > libnfs="yes" > libnfs_libs=$($pkg_config --libs libnfs) > - LIBS="$LIBS $libnfs_libs" > + libnfs_cflags=$($pkg_config --cflags libnfs) > else > if test "$libnfs" = "yes" ; then > feature_not_found "libnfs" > @@ -4534,7 +4534,9 @@ if test "$libiscsi" = "yes" ; then > fi > > if test "$libnfs" = "yes" ; then > - echo "CONFIG_LIBNFS=y" >> $config_host_mak > + echo "CONFIG_LIBNFS=m" >> $config_host_mak > + echo "LIBNFS_CFLAGS=$libnfs_cflags" >> $config_host_mak > + echo "LIBNFS_LIBS=$libnfs_libs" >> $config_host_mak > fi > > if test "$seccomp" = "yes"; then