[oe] [meta-oe][PATCH 1/2] xf86-video-mga: add new recipe

Huang, Jie (Jackie) Jackie.Huang at windriver.com
Wed May 24 02:11:25 UTC 2017


> 
> 
> From: Jussi Kukkonen [mailto:jussi.kukkonen at intel.com] 
> Sent: Wednesday, May 24, 2017 03:37
> To: Khem Raj
> Cc: Huang, Jie (Jackie); openembeded-devel
> Subject: Re: [oe] [meta-oe][PATCH 1/2] xf86-video-mga: add new recipe
> 
> On 23 May 2017 at 17:54, Khem Raj <raj.khem at gmail.com> wrote:
> On Tue, May 23, 2017 at 12:01 AM,  <jackie.huang at windriver.com> wrote:
> > From: Jackie Huang <jackie.huang at windriver.com>
> >
> > mga is an Xorg driver for Matrox video cards
> >
> > Signed-off-by: Jackie Huang <jackie.huang at windriver.com>
> > ---
> >  .../xorg-driver/xf86-video-mga/checkfile.patch     | 68 ++++++++++++++++++++++
> >  .../xorg-driver/xf86-video-mga_1.6.5.bb            | 21 +++++++
> >  2 files changed, 89 insertions(+)
> >  create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-video-mga/checkfile.patch
> >  create mode 100644 meta-oe/recipes-graphics/xorg-driver/xf86-video-mga_1.6.5.bb
> >
> > diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga/checkfile.patch b/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga/checkfile.patch
> > new file mode 100644
> > index 000000000..ceae6dfba
> > --- /dev/null
> > +++ b/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga/checkfile.patch
> > @@ -0,0 +1,68 @@
> > +Upstream-Status: Submitted [https://bugs.freedesktop.org/show_bug.cgi?id=57606]
> > +Signed-off-by: Ross Burton <ross.burton at intel.com>
> > +
> > +From c9014a8f3c9b691b5aa7b1f3ec66cf7c84b8211b Mon Sep 17 00:00:00 2001
> > +From: Ross Burton <ross.burton at intel.com>
> > +Date: Thu, 29 Nov 2012 11:00:43 +0000
> > +Subject: [PATCH] build: dont use AC_CHECK_FILE when enabling DRI
> > +
> > +Automatically enabling or disabling a feature based on installed files isn't
> > +deterministic, and AC_CHECK_FILE returns an error when cross-compiling.
> > +
> > +Fix this by enabling DRI by default, and removing the explicit file checks as
> > +pkg-config is good enough.
> > +
> > +(#57606)
> > +
> > +Signed-off-by: Ross Burton <ross.burton at intel.com>
> > +---
> > + configure.ac |   25 ++-----------------------
> > + 1 file changed, 2 insertions(+), 23 deletions(-)
> > +
> > +diff --git a/configure.ac b/configure.ac
> > +index fca1a9c..d2aa2ed 100644
> > +--- a/configure.ac
> > ++++ b/configure.ac
> > +@@ -55,9 +55,9 @@ AC_ARG_WITH(xorg-module-dir,
> > +             [moduledir="$libdir/xorg/modules"])
> > +
> > + AC_ARG_ENABLE(dri, AS_HELP_STRING([--disable-dri],
> > +-                                  [Disable DRI support [[default=auto]]]),
> > ++                                  [Disable DRI support [[default=enabled]]]),
> > +               [DRI="$enableval"],
> > +-              [DRI=auto])
> > ++              [DRI=yes])
> > + AC_ARG_ENABLE(exa,
> > +               AS_HELP_STRING([--disable-exa],
> > +                              [Disable EXA support [[default=enabled]]]),
> > +@@ -76,27 +76,6 @@ sdkdir=`$PKG_CONFIG --variable=sdkdir xorg-server`
> > +
> > + # Checks for libraries.
> > +
> > +-if test "x$DRI" != xno; then
> > +-        AC_CHECK_FILE([${sdkdir}/dri.h],
> > +-                      [have_dri_h="yes"], [have_dri_h="no"])
> > +-        AC_CHECK_FILE([${sdkdir}/sarea.h],
> > +-                      [have_sarea_h="yes"], [have_sarea_h="no"])
> > +-        AC_CHECK_FILE([${sdkdir}/dristruct.h],
> > +-                      [have_dristruct_h="yes"], [have_dristruct_h="no"])
> > +-fi
> > +-
> > +-AC_MSG_CHECKING([whether to include DRI support])
> > +-if test "x$DRI" = xauto; then
> > +-        if test "x$have_dri_h" = xyes && \
> > +-           test "x$have_sarea_h" = xyes && \
> > +-           test "x$have_dristruct_h" = xyes; then
> > +-                DRI="yes"
> > +-        else
> > +-                DRI="no"
> > +-        fi
> > +-fi
> > +-AC_MSG_RESULT([$DRI])
> > +-
> > + AM_CONDITIONAL(DRI, test "x$DRI" = xyes)
> > + if test "x$DRI" = xyes; then
> > +         PKG_CHECK_MODULES(DRI, [libdrm >= 2.0 xf86driproto])
> > +--
> > +1.7.10.4
> > +
> > diff --git a/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga_1.6.5.bb b/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga_1.6.5.bb
> > new file mode 100644
> > index 000000000..cd680597c
> > --- /dev/null
> > +++ b/meta-oe/recipes-graphics/xorg-driver/xf86-video-mga_1.6.5.bb
> > @@ -0,0 +1,21 @@
> > +require recipes-graphics/xorg-driver/xorg-driver-video.inc
> > +
> > +SUMMARY = "X.Org X server -- Matrox MGA display driver"
> > +
> > +DESCRIPTION = "mga is an Xorg driver for Matrox video cards"
> > +
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=bc1395d2cd32dfc5d6c57d2d8f83d3fc"
> > +
> > +SRC_URI += "file://checkfile.patch"
> > +
> > +DEPENDS += "virtual/libx11 libpciaccess"
> > +
> > +COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)'
> can this also include musl ? if yes then use linux*

Yes, it includes musl but I don't think linux* is necessary, the
linux-musl can be matched already with the above pattern
and xf86-video-mga builds fine with:

COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)'
HOST_SYS="i586-poky-linux-musl"

And I see that other xorg-drivers are the same:

In oe-core:
$ grep -r COMPATIBLE_HOST *
xf86-input-vmmouse_13.1.0.bb:COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
xf86-video-intel_git.bb:COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
xf86-video-vesa_2.3.4.bb:COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
xf86-video-vmware_13.2.1.bb:COMPATIBLE_HOST = '(i.86.*-linux|x86_64.*-linux)'

In meta-oe:
$ grep -r COMPATIBLE_HOST *
xf86-video-ati_7.8.0.bb:COMPATIBLE_HOST = '(i.86|x86_64).*-linux'
xf86-video-geode_2.11.16.bb:COMPATIBLE_HOST = "i.86.*-linux"
xf86-video-nouveau_1.0.12.bb:COMPATIBLE_HOST = '(i.86|x86_64).*-linux'

> and I think it could be a good thing to check for x11 as required
> distro features may be
> 
> 
> xorg-driver-common.inc (via xorg-driver-video.inc) should already take care of requiring "x11" distro feature.

Yes, that's correct:
$ grep REQUIRED_DISTRO_FEATURES xorg-driver-common.inc
REQUIRED_DISTRO_FEATURES = "x11"

Thanks,
Jackie

> 
>


More information about the Openembedded-devel mailing list