summaryrefslogtreecommitdiffstats
path: root/recipes-graphics/mali/mali-imx.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-graphics/mali/mali-imx.inc')
-rw-r--r--recipes-graphics/mali/mali-imx.inc107
1 files changed, 107 insertions, 0 deletions
diff --git a/recipes-graphics/mali/mali-imx.inc b/recipes-graphics/mali/mali-imx.inc
new file mode 100644
index 000000000..e4fafeb0b
--- /dev/null
+++ b/recipes-graphics/mali/mali-imx.inc
@@ -0,0 +1,107 @@
1SUMMARY = "Graphics libraries and driver for i.MX Mali GPU"
2SECTION = "libs"
3DEPENDS = " \
4 libdrm \
5 vulkan-loader \
6 wayland \
7 wayland-protocols"
8PROVIDES = " \
9 virtual/egl \
10 virtual/libgbm \
11 virtual/libgles1 \
12 virtual/libgles2 \
13 virtual/libgles3"
14
15# The packaged binaries have been stripped of debug info, so disable
16# operations accordingly.
17INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
18INHIBIT_PACKAGE_STRIP = "1"
19INHIBIT_SYSROOT_STRIP = "1"
20
21PACKAGES =+ " \
22 ${PN}-libegl ${PN}-libegl-dev \
23 ${PN}-libgbm ${PN}-libgbm-dev \
24 ${PN}-libgles1 ${PN}-libgles1-dev \
25 ${PN}-libgles2 ${PN}-libgles2-dev \
26 ${PN}-libgles3 ${PN}-libgles3-dev \
27 ${PN}-libvulkan \
28 ${PN}-opencl-icd ${PN}-opencl-icd-dev"
29
30# Since libmali.so is loaded by dlopen, include it in the main package
31FILES:${PN} += " \
32 ${libdir}/libmali.so \
33 ${nonarch_base_libdir}/firmware"
34FILES_SOLIBSDEV = ""
35INSANE_SKIP:${PN} = "dev-so"
36FILES:${PN}-libegl = " \
37 ${libdir}/libEGL${SOLIBS}"
38FILES:${PN}-libgbm = " \
39 ${libdir}/libgbm${SOLIBS}"
40FILES:${PN}-libgles1 = " \
41 ${libdir}/libGLESv1_CM${SOLIBS}"
42FILES:${PN}-libgles2 = " \
43 ${libdir}/libGLESv2${SOLIBS}"
44FILES:${PN}-opencl-icd = " \
45 ${sysconfdir}/OpenCL"
46FILES:${PN}-libvulkan = " \
47 ${sysconfdir}/vulkan"
48
49FILES:${PN}-dev = " \
50 ${bindir}/malisc"
51FILES:${PN}-libegl-dev = " \
52 ${includedir}/EGL \
53 ${includedir}/KHR \
54 ${libdir}/libEGL${SOLIBSDEV} \
55 ${libdir}/pkgconfig/egl.pc"
56FILES:${PN}-libgbm-dev = " \
57 ${includedir}/gbm.h \
58 ${libdir}/libgbm${SOLIBSDEV} \
59 ${libdir}/pkgconfig/gbm.pc"
60
61# Consolidate GLES dev packages
62PACKAGES =+ "${PN}-libgles-dev"
63FILES:${PN}-libgles-dev = " \
64 ${includedir}/GLES* \
65 ${libdir}/libGLES*${SOLIBSDEV} \
66 ${libdir}/pkgconfig/gles*.pc"
67DEBIAN_NOAUTONAME:${PN}-libgles-dev = "1"
68RREPLACES:${PN}-libgles-dev = "libgles-dev"
69RPROVIDES:${PN}-libgles-dev = "libgles-dev"
70RCONFLICTS:${PN}-libgles-dev = "libgles-dev"
71ALLOW_EMPTY:${PN}-libgles1-dev = "1"
72ALLOW_EMPTY:${PN}-libgles2-dev = "1"
73ALLOW_EMPTY:${PN}-libgles3-dev = "1"
74RDEPENDS:${PN}-libgles1-dev = "${PN}-libgles-dev"
75RDEPENDS:${PN}-libgles2-dev = "${PN}-libgles-dev"
76RDEPENDS:${PN}-libgles3-dev = "${PN}-libgles-dev"
77
78FILES:${PN}-opencl-icd-dev = " \
79 ${bindir}/mali_clcc"
80
81python __anonymous() {
82
83 # Avoid Debian-renaming
84 for p in (("libegl", "libegl1" ),
85 ("libgbm", "libgbm1" ),
86 ("libgles1", "libglesv1-cm1"),
87 ("libgles2", "libglesv2-2" ),
88 ("libgles3", )):
89 fullp = "${PN}-" + p[0]
90 pkgs = "".join(' %s' % i for i in p)
91 d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
92 d.appendVar("RREPLACES:" + fullp, pkgs)
93 d.appendVar("RPROVIDES:" + fullp, pkgs)
94 d.appendVar("RCONFLICTS:" + fullp, pkgs)
95 # libmali.so is loaded with dlopen, so an explicit runtime dependency is necessary
96 d.appendVar("RDEPENDS:" + fullp, "${PN}")
97
98 # For -dev, the first element is both the Debian and original name
99 fullp += "-dev"
100 pkgs = p[0] + "-dev"
101 d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
102 d.appendVar("RREPLACES:" + fullp, pkgs)
103 d.appendVar("RPROVIDES:" + fullp, pkgs)
104 d.appendVar("RCONFLICTS:" + fullp, pkgs)
105}
106
107COMPATIBLE_MACHINE = "(mx95-nxp-bsp)"