Patchwork qemu: Enabled SDL when compiling for target architecture

login
register
mail settings
Submitter Mihai Prica
Date Feb. 6, 2013, 12:12 p.m.
Message ID <1360152734-15731-1-git-send-email-mihai.prica@intel.com>
Download mbox | patch
Permalink /patch/44195/
State New
Headers show

Comments

Mihai Prica - Feb. 6, 2013, 12:12 p.m.
- enables qemu to run images with video output without the need for vncviewer.
- SDLPACKAGECONFIG is used because there is no need for the native-libsdl
package when building the qemu-native package.

Signed-off-by: Mihai Prica <mihai.prica@intel.com>
---
 meta/recipes-devtools/qemu/qemu.inc |   19 +++++++++++--------
 1 file changed, 11 insertions(+), 8 deletions(-)
Saul Wold - Feb. 6, 2013, 5:41 p.m.
On 02/06/2013 04:12 AM, Mihai Prica wrote:
> - enables qemu to run images with video output without the need for vncviewer.
> - SDLPACKAGECONFIG is used because there is no need for the native-libsdl
> package when building the qemu-native package.
>
> Signed-off-by: Mihai Prica <mihai.prica@intel.com>
> ---
>   meta/recipes-devtools/qemu/qemu.inc |   19 +++++++++++--------
>   1 file changed, 11 insertions(+), 8 deletions(-)
>
> diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
> index 2b60347..4633f47 100644
> --- a/meta/recipes-devtools/qemu/qemu.inc
> +++ b/meta/recipes-devtools/qemu/qemu.inc
> @@ -3,8 +3,7 @@ HOMEPAGE = "http://qemu.org"
>   LICENSE = "GPLv2 & LGPLv2.1"
>   DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman"
>   DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native"
> -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman"
> -RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl"
> +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-glib-2.0 nativesdk-pixman"
>
>   require qemu-targets.inc
>   inherit autotools
> @@ -13,10 +12,6 @@ BBCLASSEXTEND = "native nativesdk"
>   # QEMU_TARGETS is overridable variable
>   QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
>
> -SDL ?= "--disable-sdl"
> -SDL_class-native ?= ""
> -SDL_class-nativesdk ?= ""
> -
>   SRC_URI = "\
>       file://powerpc_rom.bin \
>       file://no-strip.patch \
> @@ -32,7 +27,7 @@ SRC_URI_append_class-nativesdk = "\
>       file://relocatable_sdk.patch \
>       "
>
> -EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 ${SDL} --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
> +EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
>
>   EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls \
>   				--disable-curl \
> @@ -83,7 +78,15 @@ do_install_append() {
>   }
>   # END of qemu-mips workaround
>
> -PACKAGECONFIG ??= ""
Seems to be left over from a previous patch?

> +PACKAGECONFIG ??= "sdl"
> +PACKAGECONFIG_class-native ??= "sdl"
Is this right?  If you only want it for target, why set it for native.

> +PACKAGECONFIG_class-nativesdk ??= "sdl"
> +
> +PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"
> +
If it's disabled, you should not need the SDLPACKAGECONFIG in the 
"false" case for DEPENDS.

> +SDLPACKAGECONFIG = "libsdl"
> +SDLPACKAGECONFIG_class-native = ""
> +SDLPACKAGECONFIG_class-nativesdk = "nativesdk-libsdl"
>
It might be clearer to have these lines above the PACKAGECONFIG[sdl] 
where they are used.



>   # Qemu target will not build in world build for ARM or Mips
>   BROKEN_qemuarm = "1"
>
Mihai Prica - Feb. 6, 2013, 10:58 p.m.
> -----Original Message-----
> From: Saul Wold [mailto:sgw@linux.intel.com]
> Sent: Wednesday, February 06, 2013 7:41 PM
> To: Prica, Mihai
> Cc: openembedded-core@lists.openembedded.org
> Subject: Re: [OE-core] [PATCH] qemu: Enabled SDL when compiling for target
> architecture
> 
> On 02/06/2013 04:12 AM, Mihai Prica wrote:
> > - enables qemu to run images with video output without the need for
> vncviewer.
> > - SDLPACKAGECONFIG is used because there is no need for the
> > native-libsdl package when building the qemu-native package.
> >
> > Signed-off-by: Mihai Prica <mihai.prica@intel.com>
> > ---
> >   meta/recipes-devtools/qemu/qemu.inc |   19 +++++++++++--------
> >   1 file changed, 11 insertions(+), 8 deletions(-)
> >
> > diff --git a/meta/recipes-devtools/qemu/qemu.inc
> > b/meta/recipes-devtools/qemu/qemu.inc
> > index 2b60347..4633f47 100644
> > --- a/meta/recipes-devtools/qemu/qemu.inc
> > +++ b/meta/recipes-devtools/qemu/qemu.inc
> > @@ -3,8 +3,7 @@ HOMEPAGE = "http://qemu.org"
> >   LICENSE = "GPLv2 & LGPLv2.1"
> >   DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman"
> >   DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-
> native"
> > -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0
> nativesdk-pixman"
> > -RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl"
> > +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-glib-2.0 nativesdk-
> pixman"
> >
> >   require qemu-targets.inc
> >   inherit autotools
> > @@ -13,10 +12,6 @@ BBCLASSEXTEND = "native nativesdk"
> >   # QEMU_TARGETS is overridable variable
> >   QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
> >
> > -SDL ?= "--disable-sdl"
> > -SDL_class-native ?= ""
> > -SDL_class-nativesdk ?= ""
> > -
> >   SRC_URI = "\
> >       file://powerpc_rom.bin \
> >       file://no-strip.patch \
> > @@ -32,7 +27,7 @@ SRC_URI_append_class-nativesdk = "\
> >       file://relocatable_sdk.patch \
> >       "
> >
> > -EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-
> werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370
> ${SDL} --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
> > +EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-
> werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 --
> disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
> >
> >   EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)}
> --disable-werror --disable-vnc-tls \
> >   				--disable-curl \
> > @@ -83,7 +78,15 @@ do_install_append() {
> >   }
> >   # END of qemu-mips workaround
> >
> > -PACKAGECONFIG ??= ""
> Seems to be left over from a previous patch?

Yes, this was already here.

> 
> > +PACKAGECONFIG ??= "sdl"
> > +PACKAGECONFIG_class-native ??= "sdl"
> Is this right?  If you only want it for target, why set it for native.

SDL was already enabled for native and nativesdk. I just enabled it 
when building for the target arch.

> 
> > +PACKAGECONFIG_class-nativesdk ??= "sdl"
> > +
> > +PACKAGECONFIG[sdl] = "--enable-sdl,--disable-
> sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"
> > +
> If it's disabled, you should not need the SDLPACKAGECONFIG in the "false" case
> for DEPENDS.

I'm not sure if I understand your question. The second SDLPACKAGECONFIG is for 
RDEPENDS when sdl is set in PACKAGECONFIG.

> 
> > +SDLPACKAGECONFIG = "libsdl"
> > +SDLPACKAGECONFIG_class-native = ""
> > +SDLPACKAGECONFIG_class-nativesdk = "nativesdk-libsdl"
> >
> It might be clearer to have these lines above the PACKAGECONFIG[sdl] where
> they are used.

I'll put the lines above the PACKAGECONFIG and resend the patch.

> 
> 
> 
> >   # Qemu target will not build in world build for ARM or Mips
> >   BROKEN_qemuarm = "1"
> >
Saul Wold - Feb. 8, 2013, 8:53 a.m.
On 02/06/2013 02:58 PM, Prica, Mihai wrote:
>> -----Original Message-----
>> From: Saul Wold [mailto:sgw@linux.intel.com]
>> Sent: Wednesday, February 06, 2013 7:41 PM
>> To: Prica, Mihai
>> Cc: openembedded-core@lists.openembedded.org
>> Subject: Re: [OE-core] [PATCH] qemu: Enabled SDL when compiling for target
>> architecture
>>
>> On 02/06/2013 04:12 AM, Mihai Prica wrote:
>>> - enables qemu to run images with video output without the need for
>> vncviewer.
>>> - SDLPACKAGECONFIG is used because there is no need for the
>>> native-libsdl package when building the qemu-native package.
>>>
>>> Signed-off-by: Mihai Prica <mihai.prica@intel.com>
>>> ---
>>>    meta/recipes-devtools/qemu/qemu.inc |   19 +++++++++++--------
>>>    1 file changed, 11 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/meta/recipes-devtools/qemu/qemu.inc
>>> b/meta/recipes-devtools/qemu/qemu.inc
>>> index 2b60347..4633f47 100644
>>> --- a/meta/recipes-devtools/qemu/qemu.inc
>>> +++ b/meta/recipes-devtools/qemu/qemu.inc
>>> @@ -3,8 +3,7 @@ HOMEPAGE = "http://qemu.org"
>>>    LICENSE = "GPLv2 & LGPLv2.1"
>>>    DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman"
>>>    DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-
>> native"
>>> -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0
>> nativesdk-pixman"
>>> -RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl"
>>> +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-glib-2.0 nativesdk-
>> pixman"
>>>
>>>    require qemu-targets.inc
>>>    inherit autotools
>>> @@ -13,10 +12,6 @@ BBCLASSEXTEND = "native nativesdk"
>>>    # QEMU_TARGETS is overridable variable
>>>    QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
>>>
>>> -SDL ?= "--disable-sdl"
>>> -SDL_class-native ?= ""
>>> -SDL_class-nativesdk ?= ""
>>> -
>>>    SRC_URI = "\
>>>        file://powerpc_rom.bin \
>>>        file://no-strip.patch \
>>> @@ -32,7 +27,7 @@ SRC_URI_append_class-nativesdk = "\
>>>        file://relocatable_sdk.patch \
>>>        "
>>>
>>> -EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-
>> werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370
>> ${SDL} --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
>>> +EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-
>> werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 --
>> disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
>>>
>>>    EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)}
>> --disable-werror --disable-vnc-tls \
>>>    				--disable-curl \
>>> @@ -83,7 +78,15 @@ do_install_append() {
>>>    }
>>>    # END of qemu-mips workaround
>>>
>>> -PACKAGECONFIG ??= ""
>> Seems to be left over from a previous patch?
>
> Yes, this was already here.
>
>>
>>> +PACKAGECONFIG ??= "sdl"
>>> +PACKAGECONFIG_class-native ??= "sdl"
>> Is this right?  If you only want it for target, why set it for native.
>
> SDL was already enabled for native and nativesdk. I just enabled it
> when building for the target arch.
>
Was it really?  I just did a build on my laptop and failed, I reverted 
this patch and it worked, I think this needs some more thought and testing.

I am running Fedora 18 with only SDL on my laptop, I get the following 
error:
> | ERROR
> | ERROR: User requested feature sdl
> | ERROR: configure was not able to find it

I think the above lines should be PACKAGECONFIG_class-native = "" and
PACKAGECONFIG_class-nativesdk = "sdl"



>>
>>> +PACKAGECONFIG_class-nativesdk ??= "sdl"
>>> +
>>> +PACKAGECONFIG[sdl] = "--enable-sdl,--disable-
>> sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"
>>> +
>> If it's disabled, you should not need the SDLPACKAGECONFIG in the "false" case
>> for DEPENDS.
>
> I'm not sure if I understand your question. The second SDLPACKAGECONFIG is for
> RDEPENDS when sdl is set in PACKAGECONFIG.
>
I think the issue is that you bring in the RDEPENDS for both the true 
and false causes above, I think that's wrong upon further review.

Sau!


>>
>>> +SDLPACKAGECONFIG = "libsdl"
>>> +SDLPACKAGECONFIG_class-native = ""
>>> +SDLPACKAGECONFIG_class-nativesdk = "nativesdk-libsdl"
>>>
>> It might be clearer to have these lines above the PACKAGECONFIG[sdl] where
>> they are used.
>
> I'll put the lines above the PACKAGECONFIG and resend the patch.
>
>>
>>
>>
>>>    # Qemu target will not build in world build for ARM or Mips
>>>    BROKEN_qemuarm = "1"
>>>
>
>
Mihai Prica - Feb. 8, 2013, 3:19 p.m.
> -----Original Message-----
> From: Saul Wold [mailto:sgw@linux.intel.com]
> 
> On 02/06/2013 02:58 PM, Prica, Mihai wrote:
> >> -----Original Message-----
> >> From: Saul Wold [mailto:sgw@linux.intel.com]
> >> Sent: Wednesday, February 06, 2013 7:41 PM
> >> To: Prica, Mihai
> >> Cc: openembedded-core@lists.openembedded.org
> >> Subject: Re: [OE-core] [PATCH] qemu: Enabled SDL when compiling for
> >> target architecture
> >>
> >> On 02/06/2013 04:12 AM, Mihai Prica wrote:
> >>> - enables qemu to run images with video output without the need for
> >> vncviewer.
> >>> - SDLPACKAGECONFIG is used because there is no need for the
> >>> native-libsdl package when building the qemu-native package.
> >>>
> >>> Signed-off-by: Mihai Prica <mihai.prica@intel.com>
> >>> ---
> >>>    meta/recipes-devtools/qemu/qemu.inc |   19 +++++++++++--------
> >>>    1 file changed, 11 insertions(+), 8 deletions(-)
> >>>
> >>> diff --git a/meta/recipes-devtools/qemu/qemu.inc
> >>> b/meta/recipes-devtools/qemu/qemu.inc
> >>> index 2b60347..4633f47 100644
> >>> --- a/meta/recipes-devtools/qemu/qemu.inc
> >>> +++ b/meta/recipes-devtools/qemu/qemu.inc
> >>> @@ -3,8 +3,7 @@ HOMEPAGE = "http://qemu.org"
> >>>    LICENSE = "GPLv2 & LGPLv2.1"
> >>>    DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman"
> >>>    DEPENDS_class-native = "zlib-native alsa-lib-native
> >>> glib-2.0-native pixman-
> >> native"
> >>> -DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl
> >>> nativesdk-glib-2.0
> >> nativesdk-pixman"
> >>> -RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl"
> >>> +DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-glib-2.0
> >>> +nativesdk-
> >> pixman"
> >>>
> >>>    require qemu-targets.inc
> >>>    inherit autotools
> >>> @@ -13,10 +12,6 @@ BBCLASSEXTEND = "native nativesdk"
> >>>    # QEMU_TARGETS is overridable variable
> >>>    QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
> >>>
> >>> -SDL ?= "--disable-sdl"
> >>> -SDL_class-native ?= ""
> >>> -SDL_class-nativesdk ?= ""
> >>> -
> >>>    SRC_URI = "\
> >>>        file://powerpc_rom.bin \
> >>>        file://no-strip.patch \
> >>> @@ -32,7 +27,7 @@ SRC_URI_append_class-nativesdk = "\
> >>>        file://relocatable_sdk.patch \
> >>>        "
> >>>
> >>> -EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)}
> >>> --disable-
> >> werror --disable-vnc-tls --audio-drv-list=oss,alsa
> >> --audio-card-list=ac97,es1370 ${SDL} --disable-curl --disable-vnc-jpeg --
> disable-bluez --with-system-pixman"
> >>> +EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)}
> >>> +--disable-
> >> werror --disable-vnc-tls --audio-drv-list=oss,alsa
> >> --audio-card-list=ac97,es1370 -- disable-curl --disable-vnc-jpeg --disable-bluez
> --with-system-pixman"
> >>>
> >>>    EXTRA_OECONF_class-nativesdk =
> >>> "--target-list=${@get_qemu_target_list(d)}
> >> --disable-werror --disable-vnc-tls \
> >>>    				--disable-curl \
> >>> @@ -83,7 +78,15 @@ do_install_append() {
> >>>    }
> >>>    # END of qemu-mips workaround
> >>>
> >>> -PACKAGECONFIG ??= ""
> >> Seems to be left over from a previous patch?
> >
> > Yes, this was already here.
> >
> >>
> >>> +PACKAGECONFIG ??= "sdl"
> >>> +PACKAGECONFIG_class-native ??= "sdl"
> >> Is this right?  If you only want it for target, why set it for native.
> >
> > SDL was already enabled for native and nativesdk. I just enabled it
> > when building for the target arch.
> >
> Was it really?  I just did a build on my laptop and failed, I reverted this patch and it
> worked, I think this needs some more thought and testing.
> 
> I am running Fedora 18 with only SDL on my laptop, I get the following
> error:
> > | ERROR
> > | ERROR: User requested feature sdl
> > | ERROR: configure was not able to find it
> 
> I think the above lines should be PACKAGECONFIG_class-native = "" and
> PACKAGECONFIG_class-nativesdk = "sdl"

Yes, you are right. The PACKAGECONFIG line should be like:

PACKAGECONFIG[sdl] = ",--disable-sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"

This way, it will install sdl for qemu-native only if it detects libsdl on the host. This was how 
it was configured before my changes. I'll do some tests and send the V2.

> 
> 
> 
> >>
> >>> +PACKAGECONFIG_class-nativesdk ??= "sdl"
> >>> +
> >>> +PACKAGECONFIG[sdl] = "--enable-sdl,--disable-
> >> sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"
> >>> +
> >> If it's disabled, you should not need the SDLPACKAGECONFIG in the
> >> "false" case for DEPENDS.
> >
> > I'm not sure if I understand your question. The second
> > SDLPACKAGECONFIG is for RDEPENDS when sdl is set in PACKAGECONFIG.
> >
> I think the issue is that you bring in the RDEPENDS for both the true and false
> causes above, I think that's wrong upon further review.

The DPENDS and RDEPENDS get set only if the PACKAGECNFIG contains sdl.
I tested using bitbake -e and when PACKAGECONFIG is not set(""), nothing is added to RDEPENDS.

Thanks,
Mihai

> 
> Sau!
> 
> 
> >>
> >>> +SDLPACKAGECONFIG = "libsdl"
> >>> +SDLPACKAGECONFIG_class-native = ""
> >>> +SDLPACKAGECONFIG_class-nativesdk = "nativesdk-libsdl"
> >>>
> >> It might be clearer to have these lines above the PACKAGECONFIG[sdl]
> >> where they are used.
> >
> > I'll put the lines above the PACKAGECONFIG and resend the patch.
> >
> >>
> >>
> >>
> >>>    # Qemu target will not build in world build for ARM or Mips
> >>>    BROKEN_qemuarm = "1"
> >>>
> >
> >

Patch

diff --git a/meta/recipes-devtools/qemu/qemu.inc b/meta/recipes-devtools/qemu/qemu.inc
index 2b60347..4633f47 100644
--- a/meta/recipes-devtools/qemu/qemu.inc
+++ b/meta/recipes-devtools/qemu/qemu.inc
@@ -3,8 +3,7 @@  HOMEPAGE = "http://qemu.org"
 LICENSE = "GPLv2 & LGPLv2.1"
 DEPENDS = "glib-2.0 zlib alsa-lib virtual/libx11 pixman"
 DEPENDS_class-native = "zlib-native alsa-lib-native glib-2.0-native pixman-native"
-DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-libsdl nativesdk-glib-2.0 nativesdk-pixman"
-RDEPENDS_${PN}_class-nativesdk = "nativesdk-libsdl"
+DEPENDS_class-nativesdk = "nativesdk-zlib nativesdk-glib-2.0 nativesdk-pixman"
 
 require qemu-targets.inc
 inherit autotools
@@ -13,10 +12,6 @@  BBCLASSEXTEND = "native nativesdk"
 # QEMU_TARGETS is overridable variable
 QEMU_TARGETS ?= "arm i386 mips mipsel mips64 mips64el ppc sh4 x86_64"
 
-SDL ?= "--disable-sdl"
-SDL_class-native ?= ""
-SDL_class-nativesdk ?= ""
-
 SRC_URI = "\
     file://powerpc_rom.bin \
     file://no-strip.patch \
@@ -32,7 +27,7 @@  SRC_URI_append_class-nativesdk = "\
     file://relocatable_sdk.patch \
     "
 
-EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 ${SDL} --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
+EXTRA_OECONF += "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls --audio-drv-list=oss,alsa --audio-card-list=ac97,es1370 --disable-curl --disable-vnc-jpeg --disable-bluez --with-system-pixman"
 
 EXTRA_OECONF_class-nativesdk = "--target-list=${@get_qemu_target_list(d)} --disable-werror --disable-vnc-tls \
 				--disable-curl \
@@ -83,7 +78,15 @@  do_install_append() {
 }
 # END of qemu-mips workaround
 
-PACKAGECONFIG ??= ""
+PACKAGECONFIG ??= "sdl"
+PACKAGECONFIG_class-native ??= "sdl"
+PACKAGECONFIG_class-nativesdk ??= "sdl"
+
+PACKAGECONFIG[sdl] = "--enable-sdl,--disable-sdl,${SDLPACKAGECONFIG},${SDLPACKAGECONFIG}"
+
+SDLPACKAGECONFIG = "libsdl"
+SDLPACKAGECONFIG_class-native = ""
+SDLPACKAGECONFIG_class-nativesdk = "nativesdk-libsdl"
 
 # Qemu target will not build in world build for ARM or Mips
 BROKEN_qemuarm = "1"