diff mbox

use --libexecdir instead of ignoring it first and reinventing it later

Message ID 1339017061-7358-1-git-send-email-mjt@msgid.tls.msk.ru
State New
Headers show

Commit Message

Michael Tokarev June 6, 2012, 9:11 p.m. UTC
Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
of bridge helper" put the bridge helper executable into a fixed
${prefix}/libexec/ location, instead of using ${libexecdir} for
this.  At the same time, --libexecdir is being happily ignored
by ./configure.  Even more, the same patch sets unused $libexecdir
variable in the generated config-host.mak, and uses fixed string
(\${prefix}/libexecdir) for the bridge helper binary.

Fix this braindamage by introducing $libexecdir variable, using
it for the bridge helper binary, and recognizing --libexecdir.

This patch is applicable to stable-1.1.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Cc: Corey Bryant <coreyb@linux.vnet.ibm.com>
Cc: Richa Marwaha <rmarwah@linux.vnet.ibm.com>
Cc: qemu-stable@nongnu.org
---
 configure |   10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

Comments

Andreas Färber June 6, 2012, 10:06 p.m. UTC | #1
Am 06.06.2012 23:11, schrieb Michael Tokarev:
> Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
> of bridge helper" put the bridge helper executable into a fixed
> ${prefix}/libexec/ location, instead of using ${libexecdir} for
> this.  At the same time, --libexecdir is being happily ignored
> by ./configure.  Even more, the same patch sets unused $libexecdir
> variable in the generated config-host.mak, and uses fixed string
> (\${prefix}/libexecdir) for the bridge helper binary.
> 
> Fix this braindamage by introducing $libexecdir variable, using
> it for the bridge helper binary, and recognizing --libexecdir.
> 
> This patch is applicable to stable-1.1.
> 
> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
> Cc: Corey Bryant <coreyb@linux.vnet.ibm.com>
> Cc: Richa Marwaha <rmarwah@linux.vnet.ibm.com>
> Cc: qemu-stable@nongnu.org

Reviewed-by: Andreas Färber <afaerber@suse.de>

I noticed the lack of this and just passed libexecdir= to make as a
workaround for our openSUSE package.

Regards,
Andreas
Michael Tokarev June 6, 2012, 10:12 p.m. UTC | #2
On 07.06.2012 02:06, Andreas Färber wrote:
> Am 06.06.2012 23:11, schrieb Michael Tokarev:
[]
> Reviewed-by: Andreas Färber <afaerber@suse.de>
> 
> I noticed the lack of this and just passed libexecdir= to make as a
> workaround for our openSUSE package.

Thank you for your review.  However, passing libexecdir= to make
wont work, due to this:

>> by ./configure.  Even more, the same patch sets unused $libexecdir
>> variable in the generated config-host.mak, and uses fixed string
>> (\${prefix}/libexecdir) for the bridge helper binary.

configure:
echo "CONFIG_QEMU_HELPERDIR=\"$prefix/libexec\"" >> $config_host_mak

You need to pass CONFIG_QEMU_HELPERDIR= not libexecdir= to make.

/mjt
Andreas Färber June 6, 2012, 10:21 p.m. UTC | #3
Am 07.06.2012 00:12, schrieb Michael Tokarev:
> On 07.06.2012 02:06, Andreas Färber wrote:
>> Am 06.06.2012 23:11, schrieb Michael Tokarev:
> []
>> Reviewed-by: Andreas Färber <afaerber@suse.de>
>>
>> I noticed the lack of this and just passed libexecdir= to make as a
>> workaround for our openSUSE package.
> 
> Thank you for your review.  However, passing libexecdir= to make
> wont work,

Trust me, it does. Otherwise our package build would still fail since
our %_libexecdir is /usr/lib.

See Makefile, that one actually uses $(libexecdir):

Makefile:       $(INSTALL_DIR) "$(DESTDIR)$(libexecdir)"
Makefile:       $(INSTALL_PROG) $(STRIP_OPT) $(HELPERS-y)
"$(DESTDIR)$(libexecdir)"

Yes, it is a mess. :)

Andreas
Michael Tokarev June 6, 2012, 10:23 p.m. UTC | #4
On 07.06.2012 02:21, Andreas Färber wrote:
[]
> Trust me, it does. Otherwise our package build would still fail since
> our %_libexecdir is /usr/lib.
> 
> See Makefile, that one actually uses $(libexecdir):

Makefile installs stuff to /usr/lib, but does the resulting
qemu binary look there too?

/mjt
Andreas Färber June 6, 2012, 10:36 p.m. UTC | #5
Am 07.06.2012 00:23, schrieb Michael Tokarev:
> On 07.06.2012 02:21, Andreas Färber wrote:
>> Trust me, it [works]. Otherwise our package build would still fail since
>> our %_libexecdir is /usr/lib.
>>
>> See Makefile, that one actually uses $(libexecdir):
> 
> Makefile installs stuff to /usr/lib, but does the resulting
> qemu binary look there too?

Bo Yang, I believe you tested the new bridge helper recently. Did you
run into any path issues with /usr/libexec vs. /usr/lib?

Bruce seems to use make install libexecdir=%_libexecdir for the kvm
package just like I do for qemu.

Andreas
Michael Tokarev June 6, 2012, 10:50 p.m. UTC | #6
On 07.06.2012 02:36, Andreas Färber wrote:
> Am 07.06.2012 00:23, schrieb Michael Tokarev:
>> On 07.06.2012 02:21, Andreas Färber wrote:
>>> Trust me, it [works]. Otherwise our package build would still fail since
>>> our %_libexecdir is /usr/lib.
>>>
>>> See Makefile, that one actually uses $(libexecdir):
>>
>> Makefile installs stuff to /usr/lib, but does the resulting
>> qemu binary look there too?
> 
> Bo Yang, I believe you tested the new bridge helper recently. Did you
> run into any path issues with /usr/libexec vs. /usr/lib?
> 
> Bruce seems to use make install libexecdir=%_libexecdir for the kvm
> package just like I do for qemu.

$ strings x86_64-softmmu/qemu-system-x86-64 | grep bridge

is a very simple test.  But I wonder if it is actually used
except of the help text?  It appears to be used, and even
enabled by default..  But I haven't looked into the code
this time, -EDEEPNIGHTALREADY :)

/mjt
Bruce Rogers June 6, 2012, 11:20 p.m. UTC | #7
>>> On 6/6/2012 at 04:36 PM, Andreas Färber<afaerber@suse.de> wrote: 
> Am 07.06.2012 00:23, schrieb Michael Tokarev:
>> On 07.06.2012 02:21, Andreas Färber wrote:
>>> Trust me, it [works]. Otherwise our package build would still fail since
>>> our %_libexecdir is /usr/lib.
>>>
>>> See Makefile, that one actually uses $(libexecdir):
>> 
>> Makefile installs stuff to /usr/lib, but does the resulting
>> qemu binary look there too?
> 
> Bo Yang, I believe you tested the new bridge helper recently. Did you
> run into any path issues with /usr/libexec vs. /usr/lib?
> 
> Bruce seems to use make install libexecdir=%_libexecdir for the kvm
> package just like I do for qemu.
> 
> Andreas


I had just copied what you had in your spec file wrt libexecdir ;)

But it does appear we have a problem with the path to the bridge helper in our
v1.1 rc3 based packages.

Bruce
bo.novell@gmail.com June 7, 2012, 4:22 a.m. UTC | #8
> 
> Bo Yang, I believe you tested the new bridge helper recently. Did you
> run into any path issues with /usr/libexec vs. /usr/lib?
> 


I didn't install the package. I only build and test the functions.

From the source code of configure, the CONFIG_QEMU_HELPERDIR is
hardcoded to $prefix/libexec. The patch seems ok to make
CONFIG_QEMU_HELPERDIR configurable.

> Bruce seems to use make install libexecdir=%_libexecdir for the kvm
> package just like I do for qemu.
> 
> Andreas
>
Corey Bryant June 7, 2012, 3:17 p.m. UTC | #9
On 06/06/2012 05:11 PM, Michael Tokarev wrote:
> Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
> of bridge helper" put the bridge helper executable into a fixed
> ${prefix}/libexec/ location, instead of using ${libexecdir} for
> this.  At the same time, --libexecdir is being happily ignored
> by ./configure.  Even more, the same patch sets unused $libexecdir
> variable in the generated config-host.mak, and uses fixed string
> (\${prefix}/libexecdir) for the bridge helper binary.
>
> Fix this braindamage by introducing $libexecdir variable, using
> it for the bridge helper binary, and recognizing --libexecdir.
>

Thanks for the patch and apologies for the trouble.

Reviewed-by: Corey Bryant <coreyb@linux.vnet.ibm.com>
Andreas Färber Aug. 16, 2012, 2:46 p.m. UTC | #10
Am 06.06.2012 23:11, schrieb Michael Tokarev:
> Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
> of bridge helper" put the bridge helper executable into a fixed
> ${prefix}/libexec/ location, instead of using ${libexecdir} for
> this.  At the same time, --libexecdir is being happily ignored
> by ./configure.  Even more, the same patch sets unused $libexecdir
> variable in the generated config-host.mak, and uses fixed string
> (\${prefix}/libexecdir) for the bridge helper binary.
> 
> Fix this braindamage by introducing $libexecdir variable, using
> it for the bridge helper binary, and recognizing --libexecdir.
> 
> This patch is applicable to stable-1.1.
> 
> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
> Cc: Corey Bryant <coreyb@linux.vnet.ibm.com>
> Cc: Richa Marwaha <rmarwah@linux.vnet.ibm.com>
> Cc: qemu-stable@nongnu.org

Ping! This patch still seems missing in master and is needed for v1.1
and v1.2 packaging.

Andreas

> ---
>  configure |   10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/configure b/configure
> index 38dafec..fc86803 100755
> --- a/configure
> +++ b/configure
> @@ -169,6 +169,7 @@ datadir="\${prefix}/share"
>  qemu_docdir="\${prefix}/share/doc/qemu"
>  bindir="\${prefix}/bin"
>  libdir="\${prefix}/lib"
> +libexecdir="\${prefix}/libexec"
>  includedir="\${prefix}/include"
>  sysconfdir="\${prefix}/etc"
>  confsuffix="/qemu"
> @@ -598,6 +599,8 @@ for opt do
>    ;;
>    --libdir=*) libdir="$optarg"
>    ;;
> +  --libexecdir=*) libexecdir="$optarg"
> +  ;;
>    --includedir=*) includedir="$optarg"
>    ;;
>    --datadir=*) datadir="$optarg"
> @@ -608,7 +611,7 @@ for opt do
>    ;;
>    --sysconfdir=*) sysconfdir="$optarg"
>    ;;
> -  --sbindir=*|--libexecdir=*|--sharedstatedir=*|--localstatedir=*|\
> +  --sbindir=*|--sharedstatedir=*|--localstatedir=*|\
>    --oldincludedir=*|--datarootdir=*|--infodir=*|--localedir=*|\
>    --htmldir=*|--dvidir=*|--pdfdir=*|--psdir=*)
>      # These switches are silently ignored, for compatibility with
> @@ -2960,6 +2963,7 @@ echo "Install prefix    $prefix"
>  echo "BIOS directory    `eval echo $qemu_datadir`"
>  echo "binary directory  `eval echo $bindir`"
>  echo "library directory `eval echo $libdir`"
> +echo "libexec directory `eval echo $libexecdir`"
>  echo "include directory `eval echo $includedir`"
>  echo "config directory  `eval echo $sysconfdir`"
>  if test "$mingw32" = "no" ; then
> @@ -3064,14 +3068,14 @@ echo all: >> $config_host_mak
>  echo "prefix=$prefix" >> $config_host_mak
>  echo "bindir=$bindir" >> $config_host_mak
>  echo "libdir=$libdir" >> $config_host_mak
> +echo "libexecdir=$libexecdir" >> $config_host_mak
>  echo "includedir=$includedir" >> $config_host_mak
>  echo "mandir=$mandir" >> $config_host_mak
>  echo "sysconfdir=$sysconfdir" >> $config_host_mak
>  echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
>  echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
>  echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
> -echo "libexecdir=\${prefix}/libexec" >> $config_host_mak
> -echo "CONFIG_QEMU_HELPERDIR=\"$prefix/libexec\"" >> $config_host_mak
> +echo "CONFIG_QEMU_HELPERDIR=\"$libexecdir\"" >> $config_host_mak
>  
>  echo "ARCH=$ARCH" >> $config_host_mak
>  if test "$debug_tcg" = "yes" ; then
>
Andreas Färber Sept. 3, 2012, 3:49 p.m. UTC | #11
Am 16.08.2012 16:46, schrieb Andreas Färber:
> Am 06.06.2012 23:11, schrieb Michael Tokarev:
>> Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
>> of bridge helper" put the bridge helper executable into a fixed
>> ${prefix}/libexec/ location, instead of using ${libexecdir} for
>> this.  At the same time, --libexecdir is being happily ignored
>> by ./configure.  Even more, the same patch sets unused $libexecdir
>> variable in the generated config-host.mak, and uses fixed string
>> (\${prefix}/libexecdir) for the bridge helper binary.
>>
>> Fix this braindamage by introducing $libexecdir variable, using
>> it for the bridge helper binary, and recognizing --libexecdir.
>>
>> This patch is applicable to stable-1.1.
>>
>> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
>> Cc: Corey Bryant <coreyb@linux.vnet.ibm.com>
>> Cc: Richa Marwaha <rmarwah@linux.vnet.ibm.com>
>> Cc: qemu-stable@nongnu.org
> 
> Ping! This patch still seems missing in master and is needed for v1.1
> and v1.2 packaging.

Ping^2! Could someone please apply this before it's too late?
(optionally with less offensive wording...)

Thanks,
Andreas

>> ---
>>  configure |   10 +++++++---
>>  1 file changed, 7 insertions(+), 3 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 38dafec..fc86803 100755
>> --- a/configure
>> +++ b/configure
>> @@ -169,6 +169,7 @@ datadir="\${prefix}/share"
>>  qemu_docdir="\${prefix}/share/doc/qemu"
>>  bindir="\${prefix}/bin"
>>  libdir="\${prefix}/lib"
>> +libexecdir="\${prefix}/libexec"
>>  includedir="\${prefix}/include"
>>  sysconfdir="\${prefix}/etc"
>>  confsuffix="/qemu"
>> @@ -598,6 +599,8 @@ for opt do
>>    ;;
>>    --libdir=*) libdir="$optarg"
>>    ;;
>> +  --libexecdir=*) libexecdir="$optarg"
>> +  ;;
>>    --includedir=*) includedir="$optarg"
>>    ;;
>>    --datadir=*) datadir="$optarg"
>> @@ -608,7 +611,7 @@ for opt do
>>    ;;
>>    --sysconfdir=*) sysconfdir="$optarg"
>>    ;;
>> -  --sbindir=*|--libexecdir=*|--sharedstatedir=*|--localstatedir=*|\
>> +  --sbindir=*|--sharedstatedir=*|--localstatedir=*|\
>>    --oldincludedir=*|--datarootdir=*|--infodir=*|--localedir=*|\
>>    --htmldir=*|--dvidir=*|--pdfdir=*|--psdir=*)
>>      # These switches are silently ignored, for compatibility with
>> @@ -2960,6 +2963,7 @@ echo "Install prefix    $prefix"
>>  echo "BIOS directory    `eval echo $qemu_datadir`"
>>  echo "binary directory  `eval echo $bindir`"
>>  echo "library directory `eval echo $libdir`"
>> +echo "libexec directory `eval echo $libexecdir`"
>>  echo "include directory `eval echo $includedir`"
>>  echo "config directory  `eval echo $sysconfdir`"
>>  if test "$mingw32" = "no" ; then
>> @@ -3064,14 +3068,14 @@ echo all: >> $config_host_mak
>>  echo "prefix=$prefix" >> $config_host_mak
>>  echo "bindir=$bindir" >> $config_host_mak
>>  echo "libdir=$libdir" >> $config_host_mak
>> +echo "libexecdir=$libexecdir" >> $config_host_mak
>>  echo "includedir=$includedir" >> $config_host_mak
>>  echo "mandir=$mandir" >> $config_host_mak
>>  echo "sysconfdir=$sysconfdir" >> $config_host_mak
>>  echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
>>  echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
>>  echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
>> -echo "libexecdir=\${prefix}/libexec" >> $config_host_mak
>> -echo "CONFIG_QEMU_HELPERDIR=\"$prefix/libexec\"" >> $config_host_mak
>> +echo "CONFIG_QEMU_HELPERDIR=\"$libexecdir\"" >> $config_host_mak
>>  
>>  echo "ARCH=$ARCH" >> $config_host_mak
>>  if test "$debug_tcg" = "yes" ; then
>>
> 
>
Anthony Liguori Sept. 10, 2012, 11:01 p.m. UTC | #12
Michael Tokarev <mjt@tls.msk.ru> writes:

> Commit 7b93fadf3a38d1ed65ea5536a52efc2772c6e3b8 "Add basic version
> of bridge helper" put the bridge helper executable into a fixed
> ${prefix}/libexec/ location, instead of using ${libexecdir} for
> this.  At the same time, --libexecdir is being happily ignored
> by ./configure.  Even more, the same patch sets unused $libexecdir
> variable in the generated config-host.mak, and uses fixed string
> (\${prefix}/libexecdir) for the bridge helper binary.
>
> Fix this braindamage by introducing $libexecdir variable, using
> it for the bridge helper binary, and recognizing --libexecdir.
>
> This patch is applicable to stable-1.1.
>
> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
> Cc: Corey Bryant <coreyb@linux.vnet.ibm.com>
> Cc: Richa Marwaha <rmarwah@linux.vnet.ibm.com>
> Cc: qemu-stable@nongnu.org

Applied. Thanks.

Regards,

Anthony Liguori

> ---
>  configure |   10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 38dafec..fc86803 100755
> --- a/configure
> +++ b/configure
> @@ -169,6 +169,7 @@ datadir="\${prefix}/share"
>  qemu_docdir="\${prefix}/share/doc/qemu"
>  bindir="\${prefix}/bin"
>  libdir="\${prefix}/lib"
> +libexecdir="\${prefix}/libexec"
>  includedir="\${prefix}/include"
>  sysconfdir="\${prefix}/etc"
>  confsuffix="/qemu"
> @@ -598,6 +599,8 @@ for opt do
>    ;;
>    --libdir=*) libdir="$optarg"
>    ;;
> +  --libexecdir=*) libexecdir="$optarg"
> +  ;;
>    --includedir=*) includedir="$optarg"
>    ;;
>    --datadir=*) datadir="$optarg"
> @@ -608,7 +611,7 @@ for opt do
>    ;;
>    --sysconfdir=*) sysconfdir="$optarg"
>    ;;
> -  --sbindir=*|--libexecdir=*|--sharedstatedir=*|--localstatedir=*|\
> +  --sbindir=*|--sharedstatedir=*|--localstatedir=*|\
>    --oldincludedir=*|--datarootdir=*|--infodir=*|--localedir=*|\
>    --htmldir=*|--dvidir=*|--pdfdir=*|--psdir=*)
>      # These switches are silently ignored, for compatibility with
> @@ -2960,6 +2963,7 @@ echo "Install prefix    $prefix"
>  echo "BIOS directory    `eval echo $qemu_datadir`"
>  echo "binary directory  `eval echo $bindir`"
>  echo "library directory `eval echo $libdir`"
> +echo "libexec directory `eval echo $libexecdir`"
>  echo "include directory `eval echo $includedir`"
>  echo "config directory  `eval echo $sysconfdir`"
>  if test "$mingw32" = "no" ; then
> @@ -3064,14 +3068,14 @@ echo all: >> $config_host_mak
>  echo "prefix=$prefix" >> $config_host_mak
>  echo "bindir=$bindir" >> $config_host_mak
>  echo "libdir=$libdir" >> $config_host_mak
> +echo "libexecdir=$libexecdir" >> $config_host_mak
>  echo "includedir=$includedir" >> $config_host_mak
>  echo "mandir=$mandir" >> $config_host_mak
>  echo "sysconfdir=$sysconfdir" >> $config_host_mak
>  echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
>  echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
>  echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
> -echo "libexecdir=\${prefix}/libexec" >> $config_host_mak
> -echo "CONFIG_QEMU_HELPERDIR=\"$prefix/libexec\"" >> $config_host_mak
> +echo "CONFIG_QEMU_HELPERDIR=\"$libexecdir\"" >> $config_host_mak
>  
>  echo "ARCH=$ARCH" >> $config_host_mak
>  if test "$debug_tcg" = "yes" ; then
> -- 
> 1.7.10
diff mbox

Patch

diff --git a/configure b/configure
index 38dafec..fc86803 100755
--- a/configure
+++ b/configure
@@ -169,6 +169,7 @@  datadir="\${prefix}/share"
 qemu_docdir="\${prefix}/share/doc/qemu"
 bindir="\${prefix}/bin"
 libdir="\${prefix}/lib"
+libexecdir="\${prefix}/libexec"
 includedir="\${prefix}/include"
 sysconfdir="\${prefix}/etc"
 confsuffix="/qemu"
@@ -598,6 +599,8 @@  for opt do
   ;;
   --libdir=*) libdir="$optarg"
   ;;
+  --libexecdir=*) libexecdir="$optarg"
+  ;;
   --includedir=*) includedir="$optarg"
   ;;
   --datadir=*) datadir="$optarg"
@@ -608,7 +611,7 @@  for opt do
   ;;
   --sysconfdir=*) sysconfdir="$optarg"
   ;;
-  --sbindir=*|--libexecdir=*|--sharedstatedir=*|--localstatedir=*|\
+  --sbindir=*|--sharedstatedir=*|--localstatedir=*|\
   --oldincludedir=*|--datarootdir=*|--infodir=*|--localedir=*|\
   --htmldir=*|--dvidir=*|--pdfdir=*|--psdir=*)
     # These switches are silently ignored, for compatibility with
@@ -2960,6 +2963,7 @@  echo "Install prefix    $prefix"
 echo "BIOS directory    `eval echo $qemu_datadir`"
 echo "binary directory  `eval echo $bindir`"
 echo "library directory `eval echo $libdir`"
+echo "libexec directory `eval echo $libexecdir`"
 echo "include directory `eval echo $includedir`"
 echo "config directory  `eval echo $sysconfdir`"
 if test "$mingw32" = "no" ; then
@@ -3064,14 +3068,14 @@  echo all: >> $config_host_mak
 echo "prefix=$prefix" >> $config_host_mak
 echo "bindir=$bindir" >> $config_host_mak
 echo "libdir=$libdir" >> $config_host_mak
+echo "libexecdir=$libexecdir" >> $config_host_mak
 echo "includedir=$includedir" >> $config_host_mak
 echo "mandir=$mandir" >> $config_host_mak
 echo "sysconfdir=$sysconfdir" >> $config_host_mak
 echo "qemu_confdir=$qemu_confdir" >> $config_host_mak
 echo "qemu_datadir=$qemu_datadir" >> $config_host_mak
 echo "qemu_docdir=$qemu_docdir" >> $config_host_mak
-echo "libexecdir=\${prefix}/libexec" >> $config_host_mak
-echo "CONFIG_QEMU_HELPERDIR=\"$prefix/libexec\"" >> $config_host_mak
+echo "CONFIG_QEMU_HELPERDIR=\"$libexecdir\"" >> $config_host_mak
 
 echo "ARCH=$ARCH" >> $config_host_mak
 if test "$debug_tcg" = "yes" ; then