Patchwork libsdl: PACKAGECONFIG conversion

login
register
mail settings
Submitter Andre McCurdy
Date April 1, 2014, 7:10 a.m.
Message ID <1396336240-9708-1-git-send-email-armccurdy@gmail.com>
Download mbox | patch
Permalink /patch/69795/
State New
Headers show

Comments

Andre McCurdy - April 1, 2014, 7:10 a.m.
General cleanup + make it easier for distros / machines which
support OpenGL ES only to prevent attempts to build against libgl.

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
 meta/recipes-graphics/libsdl/libsdl_1.2.15.bb | 30 ++++++++++++++++++---------
 1 file changed, 20 insertions(+), 10 deletions(-)
Richard Purdie - April 1, 2014, 10:54 a.m.
On Tue, 2014-04-01 at 00:10 -0700, Andre McCurdy wrote:
> General cleanup + make it easier for distros / machines which
> support OpenGL ES only to prevent attempts to build against libgl.
> 
> Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
> ---
>  meta/recipes-graphics/libsdl/libsdl_1.2.15.bb | 30 ++++++++++++++++++---------
>  1 file changed, 20 insertions(+), 10 deletions(-)
> 
> diff --git a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
> index e19c388..f72f74f 100644
> --- a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
> +++ b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
> @@ -12,10 +12,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
>  
>  PROVIDES = "virtual/libsdl"
>  
> -DEPENDS = "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
> -           ${@base_contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)} \
> -           ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxext libxrandr libxrender', '', d)} \
> -           tslib"
>  DEPENDS_class-nativesdk = "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}"

I have a nasty feeling this will break libsdl-native :(

Cheers,

Richard


>  PR = "r3"
> @@ -38,17 +34,31 @@ EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers
>                  --disable-mintaudio --disable-nasm --disable-video-dga \
>                  --disable-video-fbcon --disable-video-ps2gs --disable-video-ps3 \
>                  --disable-xbios --disable-gem --disable-video-dummy \
> -                --enable-input-events --enable-input-tslib --enable-pthreads \
> -                ${@base_contains('DISTRO_FEATURES', 'directfb', '--enable-video-directfb', '--disable-video-directfb', d)} \
> -                ${@base_contains('DISTRO_FEATURES', 'opengl', '--enable-video-opengl', '--disable-video-opengl', d)} \
> -                ${@base_contains('DISTRO_FEATURES', 'x11', '--enable-video-x11', '--disable-video-x11', d)} \
> -                --disable-video-svga \
> +                --enable-input-events --enable-pthreads --disable-video-svga \
>                  --disable-video-picogui --disable-video-qtopia --enable-sdl-dlopen \
>                  --disable-rpath \
>                  --disable-pulseaudio"
>  
> -PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
> +PACKAGECONFIG_ALSA ?= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
> +PACKAGECONFIG_DIRECTFB ?= "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
> +# Warning: "opengl" in DISTRO_FEATURES implies GL and/or GLES but libsdl supports GL only.
> +PACKAGECONFIG_OPENGL ?= "${@base_contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}"
> +PACKAGECONFIG_TSLIB ?= "tslib"
> +PACKAGECONFIG_X11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
> +
> +PACKAGECONFIG ?= " \
> +    ${PACKAGECONFIG_ALSA} \
> +    ${PACKAGECONFIG_DIRECTFB} \
> +    ${PACKAGECONFIG_OPENGL} \
> +    ${PACKAGECONFIG_TSLIB} \
> +    ${PACKAGECONFIG_X11} \
> +    "
> +
>  PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib,"
> +PACKAGECONFIG[directfb] = "--enable-video-directfb,--disable-video-directfb,directfb"
> +PACKAGECONFIG[opengl] = "--enable-video-opengl,--disable-video-opengl,virtual/libgl libglu"
> +PACKAGECONFIG[tslib] = "--enable-input-tslib,--disable-input-tslib,tslib"
> +PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender"
>  
>  PARALLEL_MAKE = ""
>  
> -- 
> 1.8.1.2
>
Andre McCurdy - April 2, 2014, 1:42 a.m.
On 04/01/2014 03:54 AM, Richard Purdie wrote:
> On Tue, 2014-04-01 at 00:10 -0700, Andre McCurdy wrote:
>> General cleanup + make it easier for distros / machines which
>> support OpenGL ES only to prevent attempts to build against libgl.
>>
>> Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
>> ---
>>   meta/recipes-graphics/libsdl/libsdl_1.2.15.bb | 30 ++++++++++++++++++---------
>>   1 file changed, 20 insertions(+), 10 deletions(-)
>>
>> diff --git a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
>> index e19c388..f72f74f 100644
>> --- a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
>> +++ b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
>> @@ -12,10 +12,6 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
>>
>>   PROVIDES = "virtual/libsdl"
>>
>> -DEPENDS = "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
>> -           ${@base_contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)} \
>> -           ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxext libxrandr libxrender', '', d)} \
>> -           tslib"
>>   DEPENDS_class-nativesdk = "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}"
>
> I have a nasty feeling this will break libsdl-native :(
>

Yes, it does :-(

Attempting a v2, but using PACKAGECONFIG to managed DEPENDS for x11
runs into problems. It seems that the nativesdk package renaming
mis-renames DEPENDS coming from PACKAGECONFIG which have a virtual/
prefix (the nativesdk- gets added twice):

ERROR: Nothing PROVIDES 'virtual/nativesdk-nativesdk-libx11' (but 
virtual:nativesdk:/home/andre/oe-master/openembedded-core/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb 
DEPENDS on or otherwise requires it). Close matches:
   virtual/nativesdk-libx11
   virtual/nativesdk-libc
   virtual/nativesdk-db


>
>>   PR = "r3"
>> @@ -38,17 +34,31 @@ EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers
>>                   --disable-mintaudio --disable-nasm --disable-video-dga \
>>                   --disable-video-fbcon --disable-video-ps2gs --disable-video-ps3 \
>>                   --disable-xbios --disable-gem --disable-video-dummy \
>> -                --enable-input-events --enable-input-tslib --enable-pthreads \
>> -                ${@base_contains('DISTRO_FEATURES', 'directfb', '--enable-video-directfb', '--disable-video-directfb', d)} \
>> -                ${@base_contains('DISTRO_FEATURES', 'opengl', '--enable-video-opengl', '--disable-video-opengl', d)} \
>> -                ${@base_contains('DISTRO_FEATURES', 'x11', '--enable-video-x11', '--disable-video-x11', d)} \
>> -                --disable-video-svga \
>> +                --enable-input-events --enable-pthreads --disable-video-svga \
>>                   --disable-video-picogui --disable-video-qtopia --enable-sdl-dlopen \
>>                   --disable-rpath \
>>                   --disable-pulseaudio"
>>
>> -PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
>> +PACKAGECONFIG_ALSA ?= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
>> +PACKAGECONFIG_DIRECTFB ?= "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
>> +# Warning: "opengl" in DISTRO_FEATURES implies GL and/or GLES but libsdl supports GL only.
>> +PACKAGECONFIG_OPENGL ?= "${@base_contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}"
>> +PACKAGECONFIG_TSLIB ?= "tslib"
>> +PACKAGECONFIG_X11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
>> +
>> +PACKAGECONFIG ?= " \
>> +    ${PACKAGECONFIG_ALSA} \
>> +    ${PACKAGECONFIG_DIRECTFB} \
>> +    ${PACKAGECONFIG_OPENGL} \
>> +    ${PACKAGECONFIG_TSLIB} \
>> +    ${PACKAGECONFIG_X11} \
>> +    "
>> +
>>   PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib,"
>> +PACKAGECONFIG[directfb] = "--enable-video-directfb,--disable-video-directfb,directfb"
>> +PACKAGECONFIG[opengl] = "--enable-video-opengl,--disable-video-opengl,virtual/libgl libglu"
>> +PACKAGECONFIG[tslib] = "--enable-input-tslib,--disable-input-tslib,tslib"
>> +PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender"
>>
>>   PARALLEL_MAKE = ""
>>
>> --
>> 1.8.1.2
>>
>
>

Patch

diff --git a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
index e19c388..f72f74f 100644
--- a/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
+++ b/meta/recipes-graphics/libsdl/libsdl_1.2.15.bb
@@ -12,10 +12,6 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=27818cd7fd83877a8e3ef82b82798ef4"
 
 PROVIDES = "virtual/libsdl"
 
-DEPENDS = "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)} \
-           ${@base_contains('DISTRO_FEATURES', 'opengl', 'virtual/libgl libglu', '', d)} \
-           ${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/libx11 libxext libxrandr libxrender', '', d)} \
-           tslib"
 DEPENDS_class-nativesdk = "${@base_contains('DISTRO_FEATURES', 'x11', 'virtual/nativesdk-libx11 nativesdk-libxrandr nativesdk-libxrender nativesdk-libxext', '', d)}"
 
 PR = "r3"
@@ -38,17 +34,31 @@  EXTRA_OECONF = "--disable-static --enable-cdrom --enable-threads --enable-timers
                 --disable-mintaudio --disable-nasm --disable-video-dga \
                 --disable-video-fbcon --disable-video-ps2gs --disable-video-ps3 \
                 --disable-xbios --disable-gem --disable-video-dummy \
-                --enable-input-events --enable-input-tslib --enable-pthreads \
-                ${@base_contains('DISTRO_FEATURES', 'directfb', '--enable-video-directfb', '--disable-video-directfb', d)} \
-                ${@base_contains('DISTRO_FEATURES', 'opengl', '--enable-video-opengl', '--disable-video-opengl', d)} \
-                ${@base_contains('DISTRO_FEATURES', 'x11', '--enable-video-x11', '--disable-video-x11', d)} \
-                --disable-video-svga \
+                --enable-input-events --enable-pthreads --disable-video-svga \
                 --disable-video-picogui --disable-video-qtopia --enable-sdl-dlopen \
                 --disable-rpath \
                 --disable-pulseaudio"
 
-PACKAGECONFIG ??= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
+PACKAGECONFIG_ALSA ?= "${@base_contains('DISTRO_FEATURES', 'alsa', 'alsa', '', d)}"
+PACKAGECONFIG_DIRECTFB ?= "${@base_contains('DISTRO_FEATURES', 'directfb', 'directfb', '', d)}"
+# Warning: "opengl" in DISTRO_FEATURES implies GL and/or GLES but libsdl supports GL only.
+PACKAGECONFIG_OPENGL ?= "${@base_contains('DISTRO_FEATURES', 'opengl', 'opengl', '', d)}"
+PACKAGECONFIG_TSLIB ?= "tslib"
+PACKAGECONFIG_X11 ?= "${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
+
+PACKAGECONFIG ?= " \
+    ${PACKAGECONFIG_ALSA} \
+    ${PACKAGECONFIG_DIRECTFB} \
+    ${PACKAGECONFIG_OPENGL} \
+    ${PACKAGECONFIG_TSLIB} \
+    ${PACKAGECONFIG_X11} \
+    "
+
 PACKAGECONFIG[alsa] = "--enable-alsa --disable-alsatest,--disable-alsa,alsa-lib,"
+PACKAGECONFIG[directfb] = "--enable-video-directfb,--disable-video-directfb,directfb"
+PACKAGECONFIG[opengl] = "--enable-video-opengl,--disable-video-opengl,virtual/libgl libglu"
+PACKAGECONFIG[tslib] = "--enable-input-tslib,--disable-input-tslib,tslib"
+PACKAGECONFIG[x11] = "--enable-video-x11,--disable-video-x11,virtual/libx11 libxext libxrandr libxrender"
 
 PARALLEL_MAKE = ""