remove cross prefix from pkg-config command

Submitted by Stuart Yoder on Aug. 2, 2011, 8:21 p.m.

Details

Message ID 1312316473-22591-1-git-send-email-stuart.yoder@freescale.com
State New
Headers show

Commit Message

Stuart Yoder Aug. 2, 2011, 8:21 p.m.
From: Stuart Yoder <stuart.yoder@freescale.com>

the host pkg-config tool should be used with the location to
pkg-config *.pc files being specified via the PKG_CONFIG_PATH

Signed-off-by: Stuart Yoder <stuart.yoder@freescale.com>
---

 The Freescale cross build environment is multilib which
 means there are special library paths for different
 cpu types.  pkg-config installed along with the 
 other cross tools does not work...it has no clue how
 to find the right libraries.   So using cross-prefix
 does no good.  Only thing I can get to work is 
 explicitly setting PKG_CONFIG_PATH before running
 configure.

 Not sure how other cross build envionments work, but
 it seems like the above method should be sufficiently
 general.

 configure |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Comments

Stefan Weil Aug. 2, 2011, 9:01 p.m.
Am 02.08.2011 22:21, schrieb Stuart yoder:
> From: Stuart Yoder <stuart.yoder@freescale.com>
>
> the host pkg-config tool should be used with the location to
> pkg-config *.pc files being specified via the PKG_CONFIG_PATH
>
> Signed-off-by: Stuart Yoder <stuart.yoder@freescale.com>
> ---
>
> The Freescale cross build environment is multilib which
> means there are special library paths for different
> cpu types. pkg-config installed along with the
> other cross tools does not work...it has no clue how
> to find the right libraries. So using cross-prefix
> does no good. Only thing I can get to work is
> explicitly setting PKG_CONFIG_PATH before running
> configure.
>
> Not sure how other cross build envionments work, but
> it seems like the above method should be sufficiently
> general.
>
> configure | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)

I run cross builds for arm, mips, powerpc and mingw.
All of them use the cross prefix. When running make,
I neither want to specify a special PATH nor a
PKG_CONFIG_PATH. All I need is something like
"make -C bin/arm" (each cross target has its own
directory with the binaries).

The general idea of your patch is ok, but maybe you
can modify it so the cross prefix is used if there
is no PKG_CONFIG_PATH set?

Regards,
Stefan Weil
Paolo Bonzini Aug. 3, 2011, 6:41 a.m.
On 08/02/2011 11:01 PM, Stefan Weil wrote:
>
> I run cross builds for arm, mips, powerpc and mingw.
> All of them use the cross prefix. When running make,
> I neither want to specify a special PATH nor a
> PKG_CONFIG_PATH. All I need is something like
> "make -C bin/arm" (each cross target has its own
> directory with the binaries).
>
> The general idea of your patch is ok, but maybe you
> can modify it so the cross prefix is used if there
> is no PKG_CONFIG_PATH set?

No, the PKG_CONFIG_PATH can be used by the user to add paths in his home 
directory.

The right fix is to do something like

-pkg_config="${cross_prefix}${PKG_CONFIG-pkg-config}"
+pkg_config=${PKG_CONFIG-"${cross_prefix}pkg-config"}

and likewise for all other tools.  Then Stuart can use 
pkg_config=pkg-config.  Stuart, can you do that?

Paolo
Yoder Stuart-B08248 Aug. 3, 2011, 2:03 p.m.
> -----Original Message-----
> From: Paolo Bonzini [mailto:paolo.bonzini@gmail.com] On Behalf Of Paolo Bonzini
> Sent: Wednesday, August 03, 2011 1:41 AM
> To: Stefan Weil
> Cc: Yoder Stuart-B08248; qemu-devel@nongnu.org
> Subject: Re: [PATCH] remove cross prefix from pkg-config command
> 
> On 08/02/2011 11:01 PM, Stefan Weil wrote:
> >
> > I run cross builds for arm, mips, powerpc and mingw.
> > All of them use the cross prefix. When running make, I neither want to
> > specify a special PATH nor a PKG_CONFIG_PATH. All I need is something
> > like "make -C bin/arm" (each cross target has its own directory with
> > the binaries).
> >
> > The general idea of your patch is ok, but maybe you can modify it so
> > the cross prefix is used if there is no PKG_CONFIG_PATH set?
> 
> No, the PKG_CONFIG_PATH can be used by the user to add paths in his home directory.
> 
> The right fix is to do something like
> 
> -pkg_config="${cross_prefix}${PKG_CONFIG-pkg-config}"
> +pkg_config=${PKG_CONFIG-"${cross_prefix}pkg-config"}
> 
> and likewise for all other tools.  Then Stuart can use pkg_config=pkg-config.  Stuart, can you
> do that?

That works...will re-submit.

Stuart

Patch hide | download patch | download mbox

diff --git a/configure b/configure
index 38e3724..59f6e09 100755
--- a/configure
+++ b/configure
@@ -223,7 +223,7 @@  objcopy="${cross_prefix}${OBJCOPY-objcopy}"
 ld="${cross_prefix}${LD-ld}"
 strip="${cross_prefix}${STRIP-strip}"
 windres="${cross_prefix}${WINDRES-windres}"
-pkg_config="${cross_prefix}${PKG_CONFIG-pkg-config}"
+pkg_config="${PKG_CONFIG-pkg-config}"
 sdl_config="${cross_prefix}${SDL_CONFIG-sdl-config}"
 
 # default flags for all hosts