qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Fix cross compilation
@ 2010-03-28  9:44 Stefan Weil
  2010-04-09 19:44 ` Aurelien Jarno
  0 siblings, 1 reply; 10+ messages in thread
From: Stefan Weil @ 2010-03-28  9:44 UTC (permalink / raw)
  To: QEMU Developers

This patch enhances the algorithm which finds the correct settings for SDL.
For cross compilations (when cross_prefix is set), it looks for sdl-config
with cross prefix. Here is the complete search order:

${cross_prefix}sdl_config              (new, only used for cross compilation)
$(cross_prefix}pkg-config              (old)
pkg-config                             (old, needs PATH)
sdl-config                             (old, needs PATH)

Cross SDL packages (or the user) now can simply set a link (for example
/usr/bin/i586-mingw32msvc-sdl-config -> /usr/i586-mingw32msvc/bin/sdl-config)
which allows cross compilations without PATH modifications.

Without the patch, configure and make (which calls configure) typically
need a non-standard PATH. Failing to set this special PATH results in
broken builds.

Signed-off-by: Stefan Weil <weil@mail.berlios.de>
---
 configure |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/configure b/configure
index 664c920..eb2d759 100755
--- a/configure
+++ b/configure
@@ -1047,7 +1047,10 @@ fi
 ##########################################
 # SDL probe
 
-if $pkgconfig sdl --modversion >/dev/null 2>&1; then
+if test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then
+  sdlconfig="${cross_prefix}sdl-config"
+  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
+elif $pkgconfig sdl --modversion >/dev/null 2>&1; then
   sdlconfig="$pkgconfig sdl"
   _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
 elif has sdl-config; then
-- 
1.7.0

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-03-28  9:44 [Qemu-devel] [PATCH] Fix cross compilation Stefan Weil
@ 2010-04-09 19:44 ` Aurelien Jarno
  2010-04-10  7:34   ` Stefan Weil
  2010-04-11 16:44   ` Stefan Weil
  0 siblings, 2 replies; 10+ messages in thread
From: Aurelien Jarno @ 2010-04-09 19:44 UTC (permalink / raw)
  To: Stefan Weil; +Cc: QEMU Developers

On Sun, Mar 28, 2010 at 11:44:05AM +0200, Stefan Weil wrote:
> This patch enhances the algorithm which finds the correct settings for SDL.
> For cross compilations (when cross_prefix is set), it looks for sdl-config
> with cross prefix. Here is the complete search order:
> 
> ${cross_prefix}sdl_config              (new, only used for cross compilation)
> $(cross_prefix}pkg-config              (old)
> pkg-config                             (old, needs PATH)
> sdl-config                             (old, needs PATH)

Why a different order for cross-compilation than for native
compilation? I would expect the same order in both case, that is
pkg-config first, and then sdl_config. The general rule, not specific to
QEMU, is to prefer pkg-config over *config programs.

> Cross SDL packages (or the user) now can simply set a link (for example
> /usr/bin/i586-mingw32msvc-sdl-config -> /usr/i586-mingw32msvc/bin/sdl-config)
> which allows cross compilations without PATH modifications.
> 
> Without the patch, configure and make (which calls configure) typically
> need a non-standard PATH. Failing to set this special PATH results in
> broken builds.
> 
> Signed-off-by: Stefan Weil <weil@mail.berlios.de>
> ---
>  configure |    5 ++++-
>  1 files changed, 4 insertions(+), 1 deletions(-)
> 
> diff --git a/configure b/configure
> index 664c920..eb2d759 100755
> --- a/configure
> +++ b/configure
> @@ -1047,7 +1047,10 @@ fi
>  ##########################################
>  # SDL probe
>  
> -if $pkgconfig sdl --modversion >/dev/null 2>&1; then
> +if test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then
> +  sdlconfig="${cross_prefix}sdl-config"
> +  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
> +elif $pkgconfig sdl --modversion >/dev/null 2>&1; then
>    sdlconfig="$pkgconfig sdl"
>    _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>  elif has sdl-config; then
> -- 
> 1.7.0
> 
> 
> 
> 

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-04-09 19:44 ` Aurelien Jarno
@ 2010-04-10  7:34   ` Stefan Weil
  2010-04-10 15:06     ` Aurelien Jarno
  2010-04-11 16:44   ` Stefan Weil
  1 sibling, 1 reply; 10+ messages in thread
From: Stefan Weil @ 2010-04-10  7:34 UTC (permalink / raw)
  To: Aurelien Jarno; +Cc: QEMU Developers

Aurelien Jarno schrieb:
> On Sun, Mar 28, 2010 at 11:44:05AM +0200, Stefan Weil wrote:
>> This patch enhances the algorithm which finds the correct settings
>> for SDL.
>> For cross compilations (when cross_prefix is set), it looks for
>> sdl-config
>> with cross prefix. Here is the complete search order:
>>
>> ${cross_prefix}sdl_config (new, only used for cross compilation)
>> $(cross_prefix}pkg-config (old)
>> pkg-config (old, needs PATH)
>> sdl-config (old, needs PATH)
>
> Why a different order for cross-compilation than for native
> compilation? I would expect the same order in both case, that is
> pkg-config first, and then sdl_config. The general rule, not specific to
> QEMU, is to prefer pkg-config over *config programs.
>

Maybe the correct solution should be

$(cross_prefix}pkg-config (old)
${cross_prefix}sdl_config (new, only used for cross compilation)

Fallback to native *-config and "hope for the best"
is no good solution for cross compilations.

If nobody disagrees, I'll send a patch without this fallback.

Stefan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-04-10  7:34   ` Stefan Weil
@ 2010-04-10 15:06     ` Aurelien Jarno
  2010-04-10 15:15       ` Stefan Weil
  0 siblings, 1 reply; 10+ messages in thread
From: Aurelien Jarno @ 2010-04-10 15:06 UTC (permalink / raw)
  To: Stefan Weil; +Cc: QEMU Developers

On Sat, Apr 10, 2010 at 09:34:31AM +0200, Stefan Weil wrote:
> Aurelien Jarno schrieb:
> > On Sun, Mar 28, 2010 at 11:44:05AM +0200, Stefan Weil wrote:
> >> This patch enhances the algorithm which finds the correct settings
> >> for SDL.
> >> For cross compilations (when cross_prefix is set), it looks for
> >> sdl-config
> >> with cross prefix. Here is the complete search order:
> >>
> >> ${cross_prefix}sdl_config (new, only used for cross compilation)
> >> $(cross_prefix}pkg-config (old)
> >> pkg-config (old, needs PATH)
> >> sdl-config (old, needs PATH)
> >
> > Why a different order for cross-compilation than for native
> > compilation? I would expect the same order in both case, that is
> > pkg-config first, and then sdl_config. The general rule, not specific to
> > QEMU, is to prefer pkg-config over *config programs.
> >
> 
> Maybe the correct solution should be
> 
> $(cross_prefix}pkg-config (old)
> ${cross_prefix}sdl_config (new, only used for cross compilation)

Why sdl_config only for cross compilation? If $(cross_prefix} is not set
for native compilation, always looking for:

- first to $(cross_prefix}pkg-config
- and then to ${cross_prefix}sdl-config

looks the way to go.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-04-10 15:06     ` Aurelien Jarno
@ 2010-04-10 15:15       ` Stefan Weil
  0 siblings, 0 replies; 10+ messages in thread
From: Stefan Weil @ 2010-04-10 15:15 UTC (permalink / raw)
  To: Aurelien Jarno; +Cc: QEMU Developers

Aurelien Jarno schrieb:
> On Sat, Apr 10, 2010 at 09:34:31AM +0200, Stefan Weil wrote:
>> Aurelien Jarno schrieb:
>>> On Sun, Mar 28, 2010 at 11:44:05AM +0200, Stefan Weil wrote:
>>>> This patch enhances the algorithm which finds the correct settings
>>>> for SDL.
>>>> For cross compilations (when cross_prefix is set), it looks for
>>>> sdl-config
>>>> with cross prefix. Here is the complete search order:
>>>>
>>>> ${cross_prefix}sdl_config (new, only used for cross compilation)
>>>> $(cross_prefix}pkg-config (old)
>>>> pkg-config (old, needs PATH)
>>>> sdl-config (old, needs PATH)
>>> Why a different order for cross-compilation than for native
>>> compilation? I would expect the same order in both case, that is
>>> pkg-config first, and then sdl_config. The general rule, not specific to
>>> QEMU, is to prefer pkg-config over *config programs.
>>>
>> Maybe the correct solution should be
>>
>> $(cross_prefix}pkg-config (old)
>> ${cross_prefix}sdl_config (new, only used for cross compilation)
>
> Why sdl_config only for cross compilation? If $(cross_prefix} is not set
> for native compilation, always looking for:
>
> - first to $(cross_prefix}pkg-config
> - and then to ${cross_prefix}sdl-config
>
> looks the way to go.

D'accord. That's what I wanted to say.
The "only used for cross compilation" was too much copy + paste.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [Qemu-devel] [PATCH] Fix cross compilation
  2010-04-09 19:44 ` Aurelien Jarno
  2010-04-10  7:34   ` Stefan Weil
@ 2010-04-11 16:44   ` Stefan Weil
  2010-05-08 14:29     ` [Qemu-devel] " Stefan Weil
  2010-05-18 17:43     ` [Qemu-devel] " Aurelien Jarno
  1 sibling, 2 replies; 10+ messages in thread
From: Stefan Weil @ 2010-04-11 16:44 UTC (permalink / raw)
  To: QEMU Developers; +Cc: Aurelien Jarno

This patch enhances the algorithm which finds the correct settings for SDL.
For cross compilations (when cross_prefix is set), it looks for sdl-config
with cross prefix. Here is the complete search order:

$(cross_prefix}pkg-config              (old, only used for cross compilation)
${cross_prefix}sdl_config              (new, only used for cross compilation)
pkg-config                             (old, needs PATH)
sdl-config                             (old, needs PATH)

Cross SDL packages (or the user) now can simply set a link (for example
/usr/bin/i586-mingw32msvc-sdl-config -> /usr/i586-mingw32msvc/bin/sdl-config)
which allows cross compilations without PATH modifications.

Without the patch, configure and make (which calls configure) typically
need a non-standard PATH. Failing to set this special PATH results in
broken builds.

v2:
* Favour pkg-config over sdl-config for cross compilations
  (suggested by Aurelien Jarno) and add comment for this.

Cc: Aurelien Jarno <aurelien@aurel32.net>
Signed-off-by: Stefan Weil <weil@mail.berlios.de>
---
 configure |   12 +++++++++++-
 1 files changed, 11 insertions(+), 1 deletions(-)

diff --git a/configure b/configure
index 966cd7d..47fca4f 100755
--- a/configure
+++ b/configure
@@ -1064,7 +1064,17 @@ fi
 ##########################################
 # SDL probe
 
-if $pkgconfig sdl --modversion >/dev/null 2>&1; then
+# Look for sdl configuration program (pkg-config or sdl-config).
+# Prefer variant with cross prefix if cross compiling,
+# and favour pkg-config with sdl over sdl-config.
+if test -n "$cross_prefix" -a $pkgconfig != pkg-config && \
+     $pkgconfig sdl --modversion >/dev/null 2>&1; then
+  sdlconfig="$pkgconfig sdl"
+  _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
+elif test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then
+  sdlconfig="${cross_prefix}sdl-config"
+  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
+elif $pkgconfig sdl --modversion >/dev/null 2>&1; then
   sdlconfig="$pkgconfig sdl"
   _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
 elif has sdl-config; then
-- 
1.7.0

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [Qemu-devel] Re: [PATCH] Fix cross compilation
  2010-04-11 16:44   ` Stefan Weil
@ 2010-05-08 14:29     ` Stefan Weil
  2010-05-18 17:43     ` [Qemu-devel] " Aurelien Jarno
  1 sibling, 0 replies; 10+ messages in thread
From: Stefan Weil @ 2010-05-08 14:29 UTC (permalink / raw)
  To: Aurelien Jarno; +Cc: QEMU Developers

Am 11.04.2010 18:44, schrieb Stefan Weil:
> This patch enhances the algorithm which finds the correct settings for SDL.
> For cross compilations (when cross_prefix is set), it looks for sdl-config
> with cross prefix. Here is the complete search order:
>
> $(cross_prefix}pkg-config              (old, only used for cross compilation)
> ${cross_prefix}sdl_config              (new, only used for cross compilation)
> pkg-config                             (old, needs PATH)
> sdl-config                             (old, needs PATH)
>
> Cross SDL packages (or the user) now can simply set a link (for example
> /usr/bin/i586-mingw32msvc-sdl-config ->  /usr/i586-mingw32msvc/bin/sdl-config)
> which allows cross compilations without PATH modifications.
>
> Without the patch, configure and make (which calls configure) typically
> need a non-standard PATH. Failing to set this special PATH results in
> broken builds.
>
> v2:
> * Favour pkg-config over sdl-config for cross compilations
>    (suggested by Aurelien Jarno) and add comment for this.
>
> Cc: Aurelien Jarno<aurelien@aurel32.net>
> Signed-off-by: Stefan Weil<weil@mail.berlios.de>
> ---
>   configure |   12 +++++++++++-
>   1 files changed, 11 insertions(+), 1 deletions(-)
>
> diff --git a/configure b/configure
> index 966cd7d..47fca4f 100755
> --- a/configure
> +++ b/configure
> @@ -1064,7 +1064,17 @@ fi
>   ##########################################
>   # SDL probe
>
> -if $pkgconfig sdl --modversion>/dev/null 2>&1; then
> +# Look for sdl configuration program (pkg-config or sdl-config).
> +# Prefer variant with cross prefix if cross compiling,
> +# and favour pkg-config with sdl over sdl-config.
> +if test -n "$cross_prefix" -a $pkgconfig != pkg-config&&  \
> +     $pkgconfig sdl --modversion>/dev/null 2>&1; then
> +  sdlconfig="$pkgconfig sdl"
> +  _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
> +elif test -n "$cross_prefix"&&  has ${cross_prefix}sdl-config; then
> +  sdlconfig="${cross_prefix}sdl-config"
> +  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
> +elif $pkgconfig sdl --modversion>/dev/null 2>&1; then
>     sdlconfig="$pkgconfig sdl"
>     _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>   elif has sdl-config; then
>    

No comments? So this patch can be applied to qemu master?

Thanks, Stefan

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-04-11 16:44   ` Stefan Weil
  2010-05-08 14:29     ` [Qemu-devel] " Stefan Weil
@ 2010-05-18 17:43     ` Aurelien Jarno
  2010-05-18 20:12       ` Stefan Weil
  1 sibling, 1 reply; 10+ messages in thread
From: Aurelien Jarno @ 2010-05-18 17:43 UTC (permalink / raw)
  To: Stefan Weil; +Cc: QEMU Developers

On Sun, Apr 11, 2010 at 06:44:18PM +0200, Stefan Weil wrote:
> This patch enhances the algorithm which finds the correct settings for SDL.
> For cross compilations (when cross_prefix is set), it looks for sdl-config
> with cross prefix. Here is the complete search order:
> 
> $(cross_prefix}pkg-config              (old, only used for cross compilation)
> ${cross_prefix}sdl_config              (new, only used for cross compilation)
> pkg-config                             (old, needs PATH)
> sdl-config                             (old, needs PATH)
> 
> Cross SDL packages (or the user) now can simply set a link (for example
> /usr/bin/i586-mingw32msvc-sdl-config -> /usr/i586-mingw32msvc/bin/sdl-config)
> which allows cross compilations without PATH modifications.
> 
> Without the patch, configure and make (which calls configure) typically
> need a non-standard PATH. Failing to set this special PATH results in
> broken builds.
> 
> v2:
> * Favour pkg-config over sdl-config for cross compilations
>   (suggested by Aurelien Jarno) and add comment for this.
> 
> Cc: Aurelien Jarno <aurelien@aurel32.net>
> Signed-off-by: Stefan Weil <weil@mail.berlios.de>
> ---
>  configure |   12 +++++++++++-
>  1 files changed, 11 insertions(+), 1 deletions(-)
> 
> diff --git a/configure b/configure
> index 966cd7d..47fca4f 100755
> --- a/configure
> +++ b/configure
> @@ -1064,7 +1064,17 @@ fi
>  ##########################################
>  # SDL probe
>  
> -if $pkgconfig sdl --modversion >/dev/null 2>&1; then
> +# Look for sdl configuration program (pkg-config or sdl-config).
> +# Prefer variant with cross prefix if cross compiling,
> +# and favour pkg-config with sdl over sdl-config.
> +if test -n "$cross_prefix" -a $pkgconfig != pkg-config && \
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^
			       Why this test ?

> +     $pkgconfig sdl --modversion >/dev/null 2>&1; then
> +  sdlconfig="$pkgconfig sdl"

It should probably be sdlconfig="${cross_prefix}$pkgconfig sdl" so that
the cross version of pkg-config is called later in this file.

> +  _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
> +elif test -n "$cross_prefix" && has ${cross_prefix}sdl-config; then
> +  sdlconfig="${cross_prefix}sdl-config"
> +  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
> +elif $pkgconfig sdl --modversion >/dev/null 2>&1; then
>    sdlconfig="$pkgconfig sdl"
>    _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>  elif has sdl-config; then
> -- 
> 1.7.0
> 
> 
> 
> 

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-05-18 17:43     ` [Qemu-devel] " Aurelien Jarno
@ 2010-05-18 20:12       ` Stefan Weil
  2010-05-19  6:06         ` Aurelien Jarno
  0 siblings, 1 reply; 10+ messages in thread
From: Stefan Weil @ 2010-05-18 20:12 UTC (permalink / raw)
  To: Aurelien Jarno; +Cc: QEMU Developers

Am 18.05.2010 19:43, schrieb Aurelien Jarno:
> On Sun, Apr 11, 2010 at 06:44:18PM +0200, Stefan Weil wrote:
>    
>> This patch enhances the algorithm which finds the correct settings for SDL.
>> For cross compilations (when cross_prefix is set), it looks for sdl-config
>> with cross prefix. Here is the complete search order:
>>
>> $(cross_prefix}pkg-config              (old, only used for cross compilation)
>> ${cross_prefix}sdl_config              (new, only used for cross compilation)
>> pkg-config                             (old, needs PATH)
>> sdl-config                             (old, needs PATH)
>>
>> Cross SDL packages (or the user) now can simply set a link (for example
>> /usr/bin/i586-mingw32msvc-sdl-config ->  /usr/i586-mingw32msvc/bin/sdl-config)
>> which allows cross compilations without PATH modifications.
>>
>> Without the patch, configure and make (which calls configure) typically
>> need a non-standard PATH. Failing to set this special PATH results in
>> broken builds.
>>
>> v2:
>> * Favour pkg-config over sdl-config for cross compilations
>>    (suggested by Aurelien Jarno) and add comment for this.
>>
>> Cc: Aurelien Jarno<aurelien@aurel32.net>
>> Signed-off-by: Stefan Weil<weil@mail.berlios.de>
>> ---
>>   configure |   12 +++++++++++-
>>   1 files changed, 11 insertions(+), 1 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 966cd7d..47fca4f 100755
>> --- a/configure
>> +++ b/configure
>> @@ -1064,7 +1064,17 @@ fi
>>   ##########################################
>>   # SDL probe
>>
>> -if $pkgconfig sdl --modversion>/dev/null 2>&1; then
>> +# Look for sdl configuration program (pkg-config or sdl-config).
>> +# Prefer variant with cross prefix if cross compiling,
>> +# and favour pkg-config with sdl over sdl-config.
>> +if test -n "$cross_prefix" -a $pkgconfig != pkg-config&&  \
>>      
>                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^
> 			       Why this test ?
>
>    

This tests for cross compilation with a working cross pkg-config
(and not the fallback solution "hope for the best" which is used
in the third case).

>> +     $pkgconfig sdl --modversion>/dev/null 2>&1; then
>> +  sdlconfig="$pkgconfig sdl"
>>      
> It should probably be sdlconfig="${cross_prefix}$pkgconfig sdl" so that
> the cross version of pkg-config is called later in this file.
>    

pkgconfig="${cross_prefix}pkg-config" (was set earlier),
so it is the cross version.


>    
>> +  _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>> +elif test -n "$cross_prefix"&&  has ${cross_prefix}sdl-config; then
>> +  sdlconfig="${cross_prefix}sdl-config"
>> +  _sdlversion=`$sdlconfig --version | sed 's/[^0-9]//g'`
>> +elif $pkgconfig sdl --modversion>/dev/null 2>&1; then
>>     sdlconfig="$pkgconfig sdl"
>>     _sdlversion=`$sdlconfig --modversion 2>/dev/null | sed 's/[^0-9]//g'`
>>   elif has sdl-config; then
>> -- 
>> 1.7.0
>>
>>
>>
>>
>>      
>    

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [Qemu-devel] [PATCH] Fix cross compilation
  2010-05-18 20:12       ` Stefan Weil
@ 2010-05-19  6:06         ` Aurelien Jarno
  0 siblings, 0 replies; 10+ messages in thread
From: Aurelien Jarno @ 2010-05-19  6:06 UTC (permalink / raw)
  To: Stefan Weil; +Cc: QEMU Developers

On Tue, May 18, 2010 at 10:12:54PM +0200, Stefan Weil wrote:
> Am 18.05.2010 19:43, schrieb Aurelien Jarno:
> >On Sun, Apr 11, 2010 at 06:44:18PM +0200, Stefan Weil wrote:
> >>This patch enhances the algorithm which finds the correct settings for SDL.
> >>For cross compilations (when cross_prefix is set), it looks for sdl-config
> >>with cross prefix. Here is the complete search order:
> >>
> >>$(cross_prefix}pkg-config              (old, only used for cross compilation)
> >>${cross_prefix}sdl_config              (new, only used for cross compilation)
> >>pkg-config                             (old, needs PATH)
> >>sdl-config                             (old, needs PATH)
> >>
> >>Cross SDL packages (or the user) now can simply set a link (for example
> >>/usr/bin/i586-mingw32msvc-sdl-config ->  /usr/i586-mingw32msvc/bin/sdl-config)
> >>which allows cross compilations without PATH modifications.
> >>
> >>Without the patch, configure and make (which calls configure) typically
> >>need a non-standard PATH. Failing to set this special PATH results in
> >>broken builds.
> >>
> >>v2:
> >>* Favour pkg-config over sdl-config for cross compilations
> >>   (suggested by Aurelien Jarno) and add comment for this.
> >>
> >>Cc: Aurelien Jarno<aurelien@aurel32.net>
> >>Signed-off-by: Stefan Weil<weil@mail.berlios.de>
> >>---
> >>  configure |   12 +++++++++++-
> >>  1 files changed, 11 insertions(+), 1 deletions(-)
> >>
> >>diff --git a/configure b/configure
> >>index 966cd7d..47fca4f 100755
> >>--- a/configure
> >>+++ b/configure
> >>@@ -1064,7 +1064,17 @@ fi
> >>  ##########################################
> >>  # SDL probe
> >>
> >>-if $pkgconfig sdl --modversion>/dev/null 2>&1; then
> >>+# Look for sdl configuration program (pkg-config or sdl-config).
> >>+# Prefer variant with cross prefix if cross compiling,
> >>+# and favour pkg-config with sdl over sdl-config.
> >>+if test -n "$cross_prefix" -a $pkgconfig != pkg-config&&  \
> >                                ^^^^^^^^^^^^^^^^^^^^^^^^^^
> >			       Why this test ?
> >
> 
> This tests for cross compilation with a working cross pkg-config
> (and not the fallback solution "hope for the best" which is used
> in the third case).
> 
> >>+     $pkgconfig sdl --modversion>/dev/null 2>&1; then
> >>+  sdlconfig="$pkgconfig sdl"
> >It should probably be sdlconfig="${cross_prefix}$pkgconfig sdl" so that
> >the cross version of pkg-config is called later in this file.
> 
> pkgconfig="${cross_prefix}pkg-config" (was set earlier),
> so it is the cross version.
> 

Ok, it makes sense now, applied.

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2010-05-19 17:37 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-28  9:44 [Qemu-devel] [PATCH] Fix cross compilation Stefan Weil
2010-04-09 19:44 ` Aurelien Jarno
2010-04-10  7:34   ` Stefan Weil
2010-04-10 15:06     ` Aurelien Jarno
2010-04-10 15:15       ` Stefan Weil
2010-04-11 16:44   ` Stefan Weil
2010-05-08 14:29     ` [Qemu-devel] " Stefan Weil
2010-05-18 17:43     ` [Qemu-devel] " Aurelien Jarno
2010-05-18 20:12       ` Stefan Weil
2010-05-19  6:06         ` Aurelien Jarno

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).