diff mbox

[1/3,v2] package/xserver: commonalise dependency on libdrm

Message ID de75aa7f5d075edcaa2c25e4d021bd5b105e2bb1.1438297123.git.yann.morin.1998@free.fr
State Rejected
Headers show

Commit Message

Yann E. MORIN July 30, 2015, 10:59 p.m. UTC
Currently, we have two locations that may want to enable and.or disable
libdrm, and it's not clear how those two location correlate one to the
other, i.e. they may well want o do one the opposite of the other.

Introduce an intermediate variable that records whether libdrm is
needed, and use that to depend on, and enable, libdrm.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Bernd Kuhls <bernd.kuhls@t-online.de>

---
Note: there might be other libs in the same situation, but that can come
in later patches as the need arises... I just change this one lbdrm,
because it will be needed by a followup patch to fix building with
dri2proto enabled.
---
 .../x11r7/xserver_xorg-server/xserver_xorg-server.mk   | 18 +++++++++++++-----
 1 file changed, 13 insertions(+), 5 deletions(-)

Comments

Thomas Petazzoni July 31, 2015, 5:57 a.m. UTC | #1
Yann,

On Fri, 31 Jul 2015 00:59:05 +0200, Yann E. MORIN wrote:

>  ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> -XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx
> -XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto
> +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> +XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> +XSERVER_XORG_SERVER_NEEDS_LIBDRM = y

Hum, didn't we say that this should be a hidden Config.in boolean?

Thomas
Yann E. MORIN July 31, 2015, 4:59 p.m. UTC | #2
Thomas, All,

On 2015-07-31 07:57 +0200, Thomas Petazzoni spake thusly:
> On Fri, 31 Jul 2015 00:59:05 +0200, Yann E. MORIN wrote:
> >  ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> > -XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx
> > -XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto
> > +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> > +XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> > +XSERVER_XORG_SERVER_NEEDS_LIBDRM = y
> 
> Hum, didn't we say that this should be a hidden Config.in boolean?

Yes, you suggested so; I said yes; I tried; I said no... ;-)
    http://lists.busybox.net/pipermail/buildroot/2015-July/135100.html

Basically, all the conditional code is in the .mk , and there's almost
no conditional in the Config.in.

So, I'd like not to duplicate the decision making in Config.in and keep
all in a single place, the .mk .

That's why I did not move that to a blind kconfig option.

Regards,
Yann E. MORIN.
Yann E. MORIN Aug. 5, 2015, 8:11 p.m. UTC | #3
Thomas, All,

On 2015-07-31 18:59 +0200, Yann E. MORIN spake thusly:
> On 2015-07-31 07:57 +0200, Thomas Petazzoni spake thusly:
> > On Fri, 31 Jul 2015 00:59:05 +0200, Yann E. MORIN wrote:
> > >  ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
> > > -XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx
> > > -XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto
> > > +XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
> > > +XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
> > > +XSERVER_XORG_SERVER_NEEDS_LIBDRM = y
> > 
> > Hum, didn't we say that this should be a hidden Config.in boolean?
> 
> Yes, you suggested so; I said yes; I tried; I said no... ;-)
>     http://lists.busybox.net/pipermail/buildroot/2015-July/135100.html
> 
> Basically, all the conditional code is in the .mk , and there's almost
> no conditional in the Config.in.
> 
> So, I'd like not to duplicate the decision making in Config.in and keep
> all in a single place, the .mk .
> 
> That's why I did not move that to a blind kconfig option.

Did you make up your mind about this?

Now that we've switched to a mdular server by default, this series is
now fixing actual autobuild errors...

If you really prefer that we duplicate all the logic in Config.in , I'll
do it.

Regards,
Yann E. MORIN.
Bernd Kuhls Aug. 8, 2015, 12:04 p.m. UTC | #4
Am Wed, 05 Aug 2015 22:11:05 +0200 schrieb Yann E. MORIN:

> Now that we've switched to a mdular server by default, this series is
> now fixing actual autobuild errors...

Hi Yann,

I posted an alternative solution for the build errors:

http://patchwork.ozlabs.org/patch/505307/
http://patchwork.ozlabs.org/patch/505305/
http://patchwork.ozlabs.org/patch/505306/

Regards, Bernd
diff mbox

Patch

diff --git a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
index 79d663c..374a9c3 100644
--- a/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
+++ b/package/x11r7/xserver_xorg-server/xserver_xorg-server.mk
@@ -122,10 +122,11 @@  XSERVER_XORG_SERVER_CONF_OPTS += --disable-kdrive --disable-xfbdev
 endif
 
 ifeq ($(BR2_PACKAGE_MESA3D_DRI_DRIVER),y)
-XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-libdrm --enable-glx
-XSERVER_XORG_SERVER_DEPENDENCIES += libdrm mesa3d xproto_xf86driproto
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-dri --enable-glx
+XSERVER_XORG_SERVER_DEPENDENCIES += mesa3d xproto_xf86driproto
+XSERVER_XORG_SERVER_NEEDS_LIBDRM = y
 else
-XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-libdrm --disable-glx
+XSERVER_XORG_SERVER_CONF_OPTS += --disable-dri --disable-glx
 endif
 
 ifeq ($(BR2_PACKAGE_XSERVER_XORG_SERVER_AIGLX),y)
@@ -145,8 +146,8 @@  XSERVER_XORG_SERVER_DEPENDENCIES += udev
 XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev
 # udev kms support depends on libdrm
 ifeq ($(BR2_PACKAGE_LIBDRM),y)
-XSERVER_XORG_SERVER_DEPENDENCIES += libdrm
-XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms --enable-libdrm
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-config-udev-kms
+XSERVER_XORG_SERVER_NEEDS_LIBDRM = y
 else
 XSERVER_XORG_SERVER_CONF_OPTS += --disable-config-udev-kms
 endif
@@ -228,4 +229,11 @@  XSERVER_XORG_SERVER_CONF_OPTS += --with-sha1=libsha1
 XSERVER_XORG_SERVER_DEPENDENCIES += libsha1
 endif
 
+ifeq ($(XSERVER_XORG_SERVER_NEEDS_LIBDRM),y)
+XSERVER_XORG_SERVER_DEPENDENCIES += libdrm
+XSERVER_XORG_SERVER_CONF_OPTS += --enable-libdrm
+else
+XSERVER_XORG_SERVER_CONF_OPTS += --disable-libdrm
+endif
+
 $(eval $(autotools-package))