diff options
4 files changed, 171 insertions, 0 deletions
diff --git a/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch b/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch new file mode 100644 index 00000000..bf526370 --- /dev/null +++ b/recipes-graphics/drm/libdrm/0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch | |||
@@ -0,0 +1,56 @@ | |||
1 | From e6bd4205b0b546afe991ae6f72256645f4404ad4 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
3 | Date: Mon, 5 Sep 2016 14:41:37 +0300 | ||
4 | Subject: [PATCH libdrm] configure.ac: Allow explicit enabling of cunit tests | ||
5 | |||
6 | Add --with-cunit to make it easier to do reproducible builds. Default | ||
7 | is still to probe cunit and build opportunistically. | ||
8 | |||
9 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
10 | Upstream-Status: Submitted [mailing list] | ||
11 | --- | ||
12 | configure.ac | 14 ++++++++++++-- | ||
13 | 1 file changed, 12 insertions(+), 2 deletions(-) | ||
14 | |||
15 | diff --git a/configure.ac b/configure.ac | ||
16 | index e3048c7..918d21d 100644 | ||
17 | --- a/configure.ac | ||
18 | +++ b/configure.ac | ||
19 | @@ -137,6 +137,12 @@ AC_ARG_ENABLE(install-test-programs, | ||
20 | [Install test programs (default: no)]), | ||
21 | [INSTALL_TESTS=$enableval], [INSTALL_TESTS=no]) | ||
22 | |||
23 | +AC_ARG_WITH([cunit], | ||
24 | + [AS_HELP_STRING([--with-cunit], | ||
25 | + [Build tests that use cunit (default: auto)])], | ||
26 | + [], | ||
27 | + [with_cunit=auto]) | ||
28 | + | ||
29 | dnl =========================================================================== | ||
30 | dnl check compiler flags | ||
31 | AC_DEFUN([LIBDRM_CC_TRY_FLAG], [ | ||
32 | @@ -372,7 +378,7 @@ if test "x$RADEON" = xyes; then | ||
33 | AC_DEFINE(HAVE_RADEON, 1, [Have radeon support]) | ||
34 | fi | ||
35 | |||
36 | -if test "x$AMDGPU" != xno; then | ||
37 | +if test "x$with_cunit" != xno -a "x$AMDGPU" != xno; then | ||
38 | # Detect cunit library | ||
39 | PKG_CHECK_MODULES([CUNIT], [cunit >= 2.1], [have_cunit=yes], [have_cunit=no]) | ||
40 | # If pkg-config does not find cunit, check it using AC_CHECK_LIB. We | ||
41 | @@ -399,7 +406,11 @@ if test "x$AMDGPU" = xyes; then | ||
42 | AC_DEFINE(HAVE_CUNIT, [test "x$have_cunit" != "xno"], [Enable CUNIT Have amdgpu support]) | ||
43 | |||
44 | if test "x$have_cunit" = "xno"; then | ||
45 | - AC_MSG_WARN([Could not find cunit library. Disabling amdgpu tests]) | ||
46 | + if test "x$with_cunit" = "xyes"; then | ||
47 | + AC_MSG_ERROR([Could not find cunit library but --with-cunit was given]) | ||
48 | + elif test "x$with_cunit" = "xauto"; then | ||
49 | + AC_MSG_WARN([Could not find cunit library. Disabling amdgpu tests]) | ||
50 | + fi | ||
51 | fi | ||
52 | fi | ||
53 | |||
54 | -- | ||
55 | 2.1.4 | ||
56 | |||
diff --git a/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch b/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch new file mode 100644 index 00000000..4708bf1e --- /dev/null +++ b/recipes-graphics/drm/libdrm/fix_O_CLOEXEC_undeclared.patch | |||
@@ -0,0 +1,24 @@ | |||
1 | drmdevice.c: define _GNU_SOURCE | ||
2 | |||
3 | Include config.h to fix this build error with uclibc: | ||
4 | |||
5 | libdrm-2.4.66/tests/drmdevice.c: In function 'main': | ||
6 | libdrm-2.4.66/tests/drmdevice.c:96:60: error: | ||
7 | 'O_CLOEXEC' undeclared (first use in this function) | ||
8 | fd = open(devices[i]->nodes[j],O_RDONLY | O_CLOEXEC, 0); | ||
9 | |||
10 | Upstream-Status: Pending | ||
11 | |||
12 | Signed-off-by: Maxin B. John <maxin.john@intel.com> | ||
13 | --- | ||
14 | diff -Naur libdrm-2.4.66-orig/tests/drmdevice.c libdrm-2.4.66/tests/drmdevice.c | ||
15 | --- libdrm-2.4.66-orig/tests/drmdevice.c 2016-02-23 11:34:02.054904502 +0200 | ||
16 | +++ libdrm-2.4.66/tests/drmdevice.c 2016-02-23 11:35:34.371750383 +0200 | ||
17 | @@ -21,6 +21,7 @@ | ||
18 | * | ||
19 | */ | ||
20 | |||
21 | +#include <config.h> | ||
22 | #include <errno.h> | ||
23 | #include <stdio.h> | ||
24 | #include <stdlib.h> | ||
diff --git a/recipes-graphics/drm/libdrm/installtests.patch b/recipes-graphics/drm/libdrm/installtests.patch new file mode 100644 index 00000000..ec1fb023 --- /dev/null +++ b/recipes-graphics/drm/libdrm/installtests.patch | |||
@@ -0,0 +1,25 @@ | |||
1 | From 5c6eb43c2f6e7f2ee7c25c92e42f4e4403fa0527 Mon Sep 17 00:00:00 2001 | ||
2 | From: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
3 | Date: Tue, 21 Feb 2017 14:37:52 +0200 | ||
4 | Subject: [PATCH] tests: also install test apps | ||
5 | |||
6 | Upstream-Status: Inappropriate [configuration] | ||
7 | |||
8 | Signed-off-by: Yu Ke <ke.yu@intel.com> | ||
9 | Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> | ||
10 | --- | ||
11 | tests/Makefile.am | 1 + | ||
12 | 1 file changed, 1 insertion(+) | ||
13 | |||
14 | diff --git a/tests/Makefile.am b/tests/Makefile.am | ||
15 | index 0355a92..b4882cd 100644 | ||
16 | --- a/tests/Makefile.am | ||
17 | +++ b/tests/Makefile.am | ||
18 | @@ -45,3 +45,4 @@ TESTS = \ | ||
19 | check_PROGRAMS = \ | ||
20 | $(TESTS) \ | ||
21 | drmdevice | ||
22 | +bin_PROGRAMS = $(check_PROGRAMS) | ||
23 | -- | ||
24 | 2.1.4 | ||
25 | |||
diff --git a/recipes-graphics/drm/libdrm_2.4.84.imx.bb b/recipes-graphics/drm/libdrm_2.4.84.imx.bb new file mode 100644 index 00000000..53de62b5 --- /dev/null +++ b/recipes-graphics/drm/libdrm_2.4.84.imx.bb | |||
@@ -0,0 +1,66 @@ | |||
1 | SUMMARY = "Userspace interface to the kernel DRM services" | ||
2 | DESCRIPTION = "The runtime library for accessing the kernel DRM services. DRM \ | ||
3 | stands for \"Direct Rendering Manager\", which is the kernel portion of the \ | ||
4 | \"Direct Rendering Infrastructure\" (DRI). DRI is required for many hardware \ | ||
5 | accelerated OpenGL drivers." | ||
6 | HOMEPAGE = "http://dri.freedesktop.org" | ||
7 | SECTION = "x11/base" | ||
8 | LICENSE = "MIT" | ||
9 | LIC_FILES_CHKSUM = "file://xf86drm.c;beginline=9;endline=32;md5=c8a3b961af7667c530816761e949dc71" | ||
10 | PROVIDES = "drm" | ||
11 | DEPENDS = "libpthread-stubs libpciaccess" | ||
12 | |||
13 | IMX_LIBDRM_SRC ?= "git://source.codeaurora.org/external/imx/libdrm-imx.git;protocol=https" | ||
14 | IMX_LIBDRM_BRANCH = "libdrm-imx-2.4.84" | ||
15 | SRC_URI = "${IMX_LIBDRM_SRC};branch=${IMX_LIBDRM_BRANCH} \ | ||
16 | file://installtests.patch \ | ||
17 | file://fix_O_CLOEXEC_undeclared.patch \ | ||
18 | file://0001-configure.ac-Allow-explicit-enabling-of-cunit-tests.patch \ | ||
19 | " | ||
20 | SRC_URI_remove_mx8 = "file://drm-update-arm.patch" | ||
21 | SRCREV = "8c8c46d41839035de605291bc1c26902011a74ac" | ||
22 | |||
23 | # IMX: Remove manpages which is added in pyro | ||
24 | #inherit autotools pkgconfig manpages | ||
25 | inherit autotools pkgconfig | ||
26 | |||
27 | EXTRA_OECONF += "--disable-cairo-tests \ | ||
28 | --without-cunit \ | ||
29 | --enable-omap-experimental-api \ | ||
30 | --enable-etnaviv-experimental-api \ | ||
31 | --enable-install-test-programs \ | ||
32 | --disable-valgrind \ | ||
33 | " | ||
34 | # IMX: Remove manpages which is added in pyro | ||
35 | #PACKAGECONFIG[manpages] = "--enable-manpages, --disable-manpages, libxslt-native xmlto-native" | ||
36 | EXTRA_OECONF += "--disable-manpages" | ||
37 | |||
38 | ALLOW_EMPTY_${PN}-drivers = "1" | ||
39 | PACKAGES =+ "${PN}-tests ${PN}-drivers ${PN}-radeon ${PN}-nouveau ${PN}-omap \ | ||
40 | ${PN}-intel ${PN}-exynos ${PN}-kms ${PN}-freedreno ${PN}-amdgpu \ | ||
41 | ${PN}-etnaviv" | ||
42 | |||
43 | RRECOMMENDS_${PN}-drivers = "${PN}-radeon ${PN}-nouveau ${PN}-omap ${PN}-intel \ | ||
44 | ${PN}-exynos ${PN}-freedreno ${PN}-amdgpu \ | ||
45 | ${PN}-etnaviv" | ||
46 | |||
47 | FILES_${PN}-tests = "${bindir}/*" | ||
48 | FILES_${PN}-radeon = "${libdir}/libdrm_radeon.so.*" | ||
49 | FILES_${PN}-nouveau = "${libdir}/libdrm_nouveau.so.*" | ||
50 | FILES_${PN}-omap = "${libdir}/libdrm_omap.so.*" | ||
51 | FILES_${PN}-intel = "${libdir}/libdrm_intel.so.*" | ||
52 | FILES_${PN}-exynos = "${libdir}/libdrm_exynos.so.*" | ||
53 | FILES_${PN}-kms = "${libdir}/libkms*.so.*" | ||
54 | FILES_${PN}-freedreno = "${libdir}/libdrm_freedreno.so.*" | ||
55 | FILES_${PN}-amdgpu = "${libdir}/libdrm_amdgpu.so.*" | ||
56 | FILES_${PN}-etnaviv = "${libdir}/libdrm_etnaviv.so.*" | ||
57 | |||
58 | EXTRA_OECONF_append_imxgpu = " --enable-vivante-experimental-api" | ||
59 | |||
60 | PACKAGES_prepend_imxgpu = "${PN}-vivante " | ||
61 | |||
62 | RRECOMMENDS_${PN}-drivers_append_imxgpu = " ${PN}-vivante" | ||
63 | |||
64 | FILES_${PN}-vivante = "${libdir}/libdrm_vivante.so.*" | ||
65 | |||
66 | S = "${WORKDIR}/git" | ||