aboutsummaryrefslogtreecommitdiffstats
path: root/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc')
-rw-r--r--recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc315
1 files changed, 186 insertions, 129 deletions
diff --git a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
index 14912e1b..e33df444 100644
--- a/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
+++ b/recipes-graphics/imx-gpu-viv/imx-gpu-viv-6.inc
@@ -1,12 +1,12 @@
# Copyright (C) 2012-2016 Freescale Semiconductor
# Copyright (C) 2012-2018 O.S. Systems Software LTDA.
-# Copyright 2017-2021 NXP
+# Copyright 2017-2024 NXP
# Released under the MIT license (see COPYING.MIT for the terms)
DESCRIPTION = "GPU driver and apps for i.MX"
SECTION = "libs"
LICENSE = "Proprietary"
-LIC_FILES_CHKSUM = "file://COPYING;md5=e565271ec9a80ce47abbddc4bffe56fa"
+LIC_FILES_CHKSUM = "file://COPYING;md5=ea25d099982d035af85d193c88a1b479"
DEPENDS += " \
${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', \
@@ -18,47 +18,60 @@ DEPENDS += " \
'', d)} \
"
DEPENDS:append:imxdrm = " libdrm wayland"
-DEPENDS:append:mx8 = " patchelf-native"
+DEPENDS:append:mx8-nxp-bsp = " patchelf-native"
-# imx-gpu-viv does not provide everything it needs to for virtual/libgl
-# on x11 backend or on Wayland backend with XWayland support.
-# We depend on mesa to fill in what is missing.
-DEPENDS += "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'mesa', '', d)}"
+DEPENDS:append:libc-musl = " gcompat"
-EXTRA_PROVIDES = ""
+PROVIDES += " \
+ imx-gpu-viv \
+ libgal-imx \
+ virtual/egl \
+ virtual/libopenvg \
+ ${EXTRA_PROVIDES} \
+"
+EXTRA_PROVIDES = " \
+ ${PROVIDES_OPENCL} \
+ ${PROVIDES_OPENGLES3} \
+ ${PROVIDES_OPENVX} \
+"
EXTRA_PROVIDES:append:imxgpu3d = " \
- virtual/libgl \
virtual/libgles1 \
virtual/libgles2 \
"
-EXTRA_PROVIDES:append:mx8 = " \
+EXTRA_PROVIDES:append:mx8-nxp-bsp = " \
virtual/libgbm \
"
-PROVIDES_OPENVX = ""
-PROVIDES_OPENVX:mx8 = "virtual/libopenvx"
-PROVIDES_OPENVX:mx8mm = ""
-PROVIDES += " \
- imx-gpu-viv \
- libgal-imx \
+
+PROVIDES_OPENCL = " \
opencl-headers \
opencl-clhpp \
opencl-icd-loader \
- virtual/egl \
- virtual/libopenvg \
virtual/opencl-icd \
- ${PROVIDES_OPENVX} \
- ${EXTRA_PROVIDES} \
"
+PROVIDES_OPENCL:mx7-nxp-bsp = ""
+PROVIDES_OPENCL:mx8mm-nxp-bsp = ""
+
+PROVIDES_OPENGLES3 = ""
+PROVIDES_OPENGLES3:mx8-nxp-bsp = "virtual/libgles3"
+
+# Note: OpenVX is fully supported on i.MX 8 QuadMax and 8 QuadPlus.
+# However, only limited support is provided on other i.MX 8 machines
+# as needed for i.MX machine learning packages.
+PROVIDES_OPENVX = ""
+PROVIDES_OPENVX:mx8-nxp-bsp = "virtual/libopenvx"
+PROVIDES_OPENVX:mx8mm-nxp-bsp = ""
RPROVIDES:${PN}:imxgpu3d += "imx-gpu-viv"
PE = "1"
-inherit fsl-eula-unpack features_check
+inherit fsl-eula-unpack
-REQUIRED_DISTRO_FEATURES:mx8 = "wayland"
+FILESEXTRAPATHS:append := "${THISDIR}/imx-gpu-viv:"
+SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}.bin;fsl-eula=true \
+ file://imx_icd.json"
-SRC_URI = "${FSL_MIRROR}/${BPN}-${PV}.bin;fsl-eula=true"
+S = "${WORKDIR}/${BPN}-${PV}-${IMX_SRCREV_ABBREV}"
PACKAGECONFIG ?= ""
@@ -66,36 +79,48 @@ PACKAGECONFIG ?= ""
PACKAGECONFIG[valgrind] = ""
# Note : If you add a package here, to prevent a naming conflict see the python_anonymous() futher below
-IMX_PACKAGES_GBM = ""
-IMX_PACKAGES_GBM:mx8 = "libgbm-imx libgbm-imx-dev"
-PACKAGES =+ "libclc-imx libclc-imx-dev \
- libgl-imx libgl-imx-dev \
+PACKAGES =+ " \
libgles1-imx libgles1-imx-dev \
libgles2-imx libgles2-imx-dev \
libgles3-imx-dev \
libglslc-imx libglslc-imx-dev \
- libopencl-imx libopencl-imx-dev \
+ ${PACKAGES_OPENCL} \
libopenvg-imx libopenvg-imx-dev \
libvdk-imx libvdk-imx-dev \
libegl-imx libegl-imx-dev \
libgal-imx libgal-imx-dev \
- libvivante-dri-imx \
libvsc-imx \
- ${IMX_PACKAGES_GBM} \
+ ${PACKAGES_GBM} \
imx-gpu-viv-tools \
imx-gpu-viv-demos \
- libvulkan-imx libvulkan-imx-dev \
- libopenvx-imx libopenvx-imx-dev \
+ ${PACKAGES_VULKAN} \
+ ${PACKAGES_OPENVX} \
libnn-imx \
+ libspirv-imx \
"
+
+PACKAGES_GBM = ""
+PACKAGES_GBM:mx8-nxp-bsp = "libgbm-imx libgbm-imx-dev"
+
+PACKAGES_OPENCL = "libclc-imx libopencl-imx libopencl-imx-dev"
+PACKAGES_OPENCL:mx7-nxp-bsp = ""
+PACKAGES_OPENCL:mx8mm-nxp-bsp = ""
+
+PACKAGES_OPENVX = \
+ "${@bb.utils.contains("PROVIDES_OPENVX", "virtual/libopenvx", \
+ "libopenvx-imx libopenvx-imx-dev", "", d)}"
+
+PACKAGES_VULKAN = ""
+PACKAGES_VULKAN:imxvulkan = "libvulkan-imx libvulkan-imx-dev"
+PACKAGES_VULKAN:mx8mm-nxp-bsp = "libvulkan-imx libvulkan-imx-dev"
+
python __anonymous () {
has_vivante_kernel_driver_support = (d.getVar('MACHINE_HAS_VIVANTE_KERNEL_DRIVER_SUPPORT') or '0')
if has_vivante_kernel_driver_support != '1':
raise bb.parse.SkipPackage('The kernel of machine needs to have Vivante kernel driver support for this recipe to be used.')
}
-USE_X11 = "${@bb.utils.contains("DISTRO_FEATURES", "x11", "yes", "no", d)}"
-USE_WL = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "yes", "no", d)}"
+BACKEND = "${@bb.utils.contains("DISTRO_FEATURES", "wayland", "wayland", "fb", d)}"
# The packaged binaries have been stripped of debug info, so disable
# operations accordingly.
@@ -117,7 +142,7 @@ python __anonymous() {
# For the packages that make up the OpenGL interfaces, inject variables so that
# they don't get Debian-renamed (which would remove the -imx suffix).
- for p in (("libegl", "libegl1"), ("libgl", "libgl1"),
+ for p in (("libegl", "libegl1"),
("libgles1", "libglesv1-cm1"), ("libgles2", "libglesv2-2"),
("libgles3",), ("libgbm",)):
fullp = p[0] + "-imx"
@@ -137,26 +162,26 @@ python __anonymous() {
}
IS_MX6SL = "0"
-IS_MX6SL:mx6sl = "1"
+IS_MX6SL:mx6sl-nxp-bsp = "1"
IS_MX8 = "0"
-IS_MX8:mx8 = "1"
+IS_MX8:mx8-nxp-bsp = "1"
PACKAGE_FP_TYPE = "hardfp"
HAS_GBM = "false"
-HAS_GBM:mx8 = "true"
+HAS_GBM:mx8-nxp-bsp = "true"
IMX_SOC = "IMX_SOC_NOT_SET"
-IMX_SOC:mx8qm = "mx8qm"
-IMX_SOC:mx8mp = "mx8mp"
-IMX_SOC:mx8mq = "mx8mq"
-IMX_SOC:mx8qxp = "mx8qxp"
-IMX_SOC:mx8mn = "mx8mn"
-IMX_SOC:mx8ulp = "mx8ulp"
+IMX_SOC:mx8qm-nxp-bsp = "mx8qm"
+IMX_SOC:mx8qxp-nxp-bsp = "mx8qxp"
+IMX_SOC:mx8dx-nxp-bsp = "mx8qxp"
+IMX_SOC:mx8mp-nxp-bsp = "mx8mp"
+IMX_SOC:mx8mq-nxp-bsp = "mx8mq"
+IMX_SOC:mx8mn-nxp-bsp = "mx8mn"
+IMX_SOC:mx8ulp-nxp-bsp = "mx8ulp"
-LIBVULKAN_VERSION_MAJOR = "1"
-LIBVULKAN_VERSION = "${LIBVULKAN_VERSION_MAJOR}.1.6"
+LIBVULKAN_API_VERSION = "1.3.239"
do_install () {
install -d ${D}${libdir}
@@ -171,6 +196,7 @@ do_install () {
# Use vulkan header from vulkan-headers recipe to support vkmark
rm -rf ${D}${includedir}/vulkan/
+ # Install SOC-specific drivers
if [ -d ${S}/gpu-core/usr/lib/${IMX_SOC} ]; then
cp -r ${S}/gpu-core/usr/lib/${IMX_SOC}/* ${D}${libdir}
fi
@@ -180,74 +206,84 @@ do_install () {
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gbm.pc ${D}${libdir}/pkgconfig/gbm.pc
fi
- # The preference order, based in DISTRO_FEATURES, is Wayland (with or without X11), X11 and fb
- if [ "${USE_WL}" = "yes" ]; then
-
- backend=wayland
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
+ # Install backend-specific drivers
+ if [ "${BACKEND}" = "wayland" ]; then
+ # Wayland backend
+ if ! ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'true', 'false', d)}; then
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gl.pc ${D}${libdir}/pkgconfig/gl.pc
+ fi
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_wayland.pc ${D}${libdir}/pkgconfig/egl.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
-
- if [ "${USE_X11}" = "yes" ]; then
-
- cp -r ${S}/gpu-core/usr/lib/dri ${D}${libdir}
-
- fi
-
- elif [ "${USE_X11}" = "yes" ]; then
-
- cp -r ${S}/gpu-core/usr/lib/dri ${D}${libdir}
-
- backend=x11
-
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/gl_x11.pc ${D}${libdir}/pkgconfig/gl.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_x11.pc ${D}${libdir}/pkgconfig/egl.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm_x11.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2_x11.pc ${D}${libdir}/pkgconfig/glesv2.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg_x11.pc ${D}${libdir}/pkgconfig/vg.pc
-
- else
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv1_cm.pc ${D}${libdir}/pkgconfig/glesv1_cm.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/glesv2.pc ${D}${libdir}/pkgconfig/glesv2.pc
- install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/vg.pc ${D}${libdir}/pkgconfig/vg.pc
-
- # Regular framebuffer
+ cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir}
+ elif [ "${IS_MX8}" != "1" ]; then
+ # Framebuffer backend for i.MX 6 and 7
install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl_linuxfb.pc ${D}${libdir}/pkgconfig/egl.pc
+ cp -r ${S}/gpu-core/usr/lib/fb/* ${D}${libdir}
+ else
+ # Framebuffer backend for i.MX 8 and beyond
+ install -m 0644 ${S}/gpu-core/usr/lib/pkgconfig/egl.pc ${D}${libdir}/pkgconfig/egl.pc
+ cp -r ${S}/gpu-core/usr/lib/wayland/* ${D}${libdir}
+ set -f
+ for f in ${FILES:libvdk-imx} ${FILES:libvdk-imx-dev}; do
+ set +f
+ rm -rf ${D}/$f
+ done
+ rm -rf \
+ ${D}/opt/viv_samples/es20 \
+ ${D}/opt/viv_samples/tiger \
+ ${D}/opt/viv_samples/vdk
+ fi
+ if [ "${BACKEND}" = "wayland" ] && [ "${IS_MX8}" != "1" ]; then
+ # Special case for libVDK on Wayland backend, deliver fb library as well.
+ cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0
+ fi
- backend=fb
+ if [ -z "${PACKAGES_OPENCL}" ]; then
+ set -f
+ for f in ${FILES:libopencl-imx} ${FILES:libopencl-imx-dev} ${FILES:libclc-imx}; do
+ set +f
+ rm -rf ${D}$f
+ done
+ rm -rf ${D}/opt/viv_samples/cl11
+ else
+ # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader)
+ install -d ${D}${sysconfdir}/OpenCL/vendors/
+ install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd
+ if [ "${OPENCL_VX_INTRINSIC_EXTENSION_PACKAGES}" = "" ]; then
+ rm -f ${D}${includedir}/CL/cl_viv_vx_ext.h
+ fi
fi
- # Install Vendor ICDs for OpenCL's installable client driver loader (ICDs Loader)
- install -d ${D}${sysconfdir}/OpenCL/vendors/
- install -m 0644 ${S}/gpu-core/etc/Vivante.icd ${D}${sysconfdir}/OpenCL/vendors/Vivante.icd
-
- # Handle backend specific drivers
- cp -r ${S}/gpu-core/usr/lib/${backend}/* ${D}${libdir}
- if [ "${USE_WL}" = "yes" ]; then
- # Special case for libVDK on Wayland backend, deliver fb library as well.
- cp ${S}/gpu-core/usr/lib/fb/libVDK.so.1.2.0 ${D}${libdir}/libVDK-fb.so.1.2.0
+ if [ -z "${PACKAGES_OPENVX}" ]; then
+ set -f
+ for f in ${FILES:libopenvx-imx} ${FILES:libopenvx-imx-dev}; do
+ set +f
+ rm -rf ${D}$f
+ done
fi
+
if [ "${IS_MX8}" = "1" ]; then
- # Rename the vulkan implementation library which is wrapped by the vulkan-loader
- # library of the same name
- MAJOR=${LIBVULKAN_VERSION_MAJOR}
- FULL=${LIBVULKAN_VERSION}
- mv ${D}${libdir}/libvulkan.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$FULL
- patchelf --set-soname libvulkan_VSI.so.$MAJOR ${D}${libdir}/libvulkan_VSI.so.$FULL
- rm ${D}${libdir}/libvulkan.so.$MAJOR ${D}${libdir}/libvulkan.so
- ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so.$MAJOR
- ln -s libvulkan_VSI.so.$FULL ${D}${libdir}/libvulkan_VSI.so
+ if [ -z "${PACKAGES_VULKAN}" ]; then
+ set -f
+ for f in ${FILES:libvulkan-imx} ${FILES:libvulkan-imx-dev}; do
+ set +f
+ rm -rf ${D}$f
+ done
+ else
+ install -Dm 0644 ${WORKDIR}/imx_icd.json ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ sed -i "s,%libdir%,${libdir}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ sed -i "s,%api_version%,${LIBVULKAN_API_VERSION}," ${D}${sysconfdir}/vulkan/icd.d/imx_icd.json
+ fi
fi
# FIXME: MX6SL does not have 3D support; hack it for now
if [ "${IS_MX6SL}" = "1" ]; then
rm -rf ${D}${libdir}/libCLC* ${D}${includedir}/CL \
\
- ${D}${libdir}/libGL* ${D}${includedir}/GL* ${D}${libdir}/pkgconfig/gl.pc \
- \
${D}${libdir}/libGLES* ${D}${libdir}/pkgconfig/gles*.pc \
\
${D}${libdir}/libOpenCL* ${D}${includedir}/CL \
@@ -268,18 +304,35 @@ do_install () {
chown -R root:root "${D}"
}
+do_install:append:libc-musl() {
+ # libs
+ for f in `find ${D}${libdir} -name '*.so*' -type f`
+ do
+ patchelf --add-needed libgcompat.so.0 $f
+ done
+ # binaries
+ for f in `find ${D}/opt ${D}${bindir} -name '*' -type f -executable`
+ do
+ # prune scripts
+ if `patchelf --print-interpreter $f 2>&1 > /dev/null`
+ then
+ patchelf --set-interpreter ${root_prefix}`patchelf --print-interpreter $f` $f
+ patchelf --add-needed libgcompat.so.0 $f
+ fi
+ done
+}
+
ALLOW_EMPTY:${PN} = "1"
-FILES:libclc-imx = "${libdir}/libCLC${SOLIBS} ${includedir}/CL/cl_viv_vx_ext.h"
-FILES:libclc-imx-dev = "${includedir}/CL ${libdir}/libCLC${SOLIBSDEV}"
+FILES:libclc-imx = "${libdir}/libCLC${SOLIBS}"
+FILES:libegl-imx = "${libdir}/libEGL${REALSOLIBS} ${libdir}/libEGL${SOLIBS} "
+FILES:libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
# libEGL.so is used by some demo apps from Freescale
INSANE_SKIP:libegl-imx += "dev-so"
-FILES:libegl-imx = "${libdir}/libEGL${REALSOLIBS} ${libdir}/libEGL${SOLIBSDEV} "
-FILES:libegl-imx-dev = "${includedir}/EGL ${includedir}/KHR ${libdir}/pkgconfig/egl.pc"
FILES:libgal-imx = "${libdir}/libGAL${SOLIBS} ${libdir}/libGAL_egl${SOLIBS}"
-FILES:libgal-imx-dev = "${libdir}/libGAL${SOLIBSDEV} ${includedir}/HAL"
+FILES:libgal-imx-dev = "${includedir}/HAL"
RDEPENDS:libgal-imx += "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', 'valgrind', '', d)}"
RPROVIDES:libgal-imx += "libgal-imx"
RRECOMMENDS:libgal-imx += "kernel-module-imx-gpu-viv"
@@ -287,14 +340,20 @@ INSANE_SKIP:libgal-imx += "build-deps"
FILES:libvsc-imx = "${libdir}/libVSC${SOLIBS}"
-FILES:libgbm-imx:mx8 = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBSDEV} ${libdir}/libgbm_viv${SOLIBSDEV}"
-FILES:libgbm-imx-dev:mx8 = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
-RDEPENDS:libgbm-imx:append:mx8 = " libdrm"
+FILES:libgbm-imx = "${libdir}/libgbm*${REALSOLIBS} ${libdir}/libgbm${SOLIBS} ${libdir}/libgbm_viv${SOLIBS}"
+FILES:libgbm-imx-dev = "${libdir}/pkgconfig/gbm.pc ${includedir}/gbm.h"
+RDEPENDS:libgbm-imx:append = " libdrm"
INSANE_SKIP:libgbm-imx += "dev-so"
-FILES:libvulkan-imx = "${libdir}/libvulkan_VSI${REALSOLIBS} ${libdir}/libSPIRV_viv${SOLIBS}"
+FILES:libvulkan-imx = "\
+ ${libdir}/libvulkan_VSI${REALSOLIBS} \
+ ${sysconfdir}/vulkan"
FILES:libvulkan-imx-dev = "${includedir}/vulkan ${libdir}/libvulkan_VSI${SOLIBSDEV}"
+FILES:libspirv-imx = " \
+ ${libdir}/libSPIRV_viv${SOLIBS} \
+"
+
FILES:libopenvx-imx = " \
${libdir}/libOpenVX${REALSOLIBS} \
${libdir}/libOpenVXC${SOLIBS} \
@@ -303,27 +362,24 @@ FILES:libopenvx-imx = " \
${libdir}/libArchModelSw${SOLIBS} \
"
FILES:libopenvx-imx-dev = "${includedir}/VX ${libdir}/libOpenVX${SOLIBSDEV}"
-RDEPENDS:libopenvx-imx = "libnn-imx"
+RDEPENDS:libopenvx-imx = "libnn-imx ${OPENCL_VX_INTRINSIC_EXTENSION_PACKAGES}"
+OPENCL_VX_INTRINSIC_EXTENSION_PACKAGES = ""
+OPENCL_VX_INTRINSIC_EXTENSION_PACKAGES:mx8qm-nxp-bsp = "libclc-imx libopencl-imx-dev"
+OPENCL_VX_INTRINSIC_EXTENSION_PACKAGES:mx8mp-nxp-bsp = "libclc-imx libopencl-imx-dev"
+INSANE_SKIP:libopenvx-imx += "dev-deps"
-# libGL is only targeting X11 backend, and in case if Wayland-only is used -
-# package QA complains on missing RDEPENDS, which are only available for X11.
-# Skip "file-rdeps" QA for this package.
-FILES:libgl-imx = "${libdir}/libGL${REALSOLIBS}"
-FILES:libgl-imx-dev = "${libdir}/libGL${SOLIBSDEV} ${includedir}/GL"
-INSANE_SKIP:libgl-imx += "file-rdeps"
-
-# libEGL needs to open libGLESv1.so
-INSANE_SKIP:libgles1-imx += "dev-so"
FILES:libgles1-imx = "${libdir}/libGLESv1*${REALSOLIBS} ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${REALSOLIBS} ${libdir}/libGLES_*${SOLIBS}"
-FILES:libgles1-imx-dev = "${includedir}/GLES ${libdir}/libGLESv1*${SOLIBS} ${libdir}/libGLES_*${SOLIBSDEV} ${libdir}/pkgconfig/glesv1_cm.pc"
+FILES:libgles1-imx-dev = "${includedir}/GLES ${libdir}/pkgconfig/glesv1_cm.pc"
RPROVIDES:libgles1-imx = "libgles-imx"
RPROVIDES:libgles1-imx-dev = "libgles-imx-dev"
+# libEGL does dlopen of libGLESv1.so
+INSANE_SKIP:libgles1-imx += "dev-so"
-# libEGL needs to open libGLESv2.so
-INSANE_SKIP:libgles2-imx += "dev-so"
FILES:libgles2-imx = "${libdir}/libGLESv2${REALSOLIBS} ${libdir}/libGLESv2${SOLIBS}"
-FILES:libgles2-imx-dev = "${includedir}/GLES2 ${libdir}/libGLESv2${SOLIBSDEV} ${libdir}/pkgconfig/glesv2.pc"
+FILES:libgles2-imx-dev = "${includedir}/GLES2 ${libdir}/pkgconfig/glesv2.pc"
RDEPENDS:libgles2-imx = "libglslc-imx"
+# libEGL does dlopen of libGLESv2.so
+INSANE_SKIP:libgles2-imx += "dev-so"
FILES:libgles3-imx-dev = "${includedir}/GLES3"
# as long as there is no libgles3: ship libgles3-dev along with
@@ -331,7 +387,6 @@ FILES:libgles3-imx-dev = "${includedir}/GLES3"
RDEPENDS:libgles2-imx-dev += "libgles3-imx-dev"
FILES:libglslc-imx = "${libdir}/libGLSLC${SOLIBS}"
-FILES:libglslc-imx-dev = "${includedir}/CL ${libdir}/libGLSLC${SOLIBSDEV}"
FILES:libopencl-imx = "${libdir}/libOpenCL${REALSOLIBS} \
${libdir}/libVivanteOpenCL${SOLIBS} \
@@ -340,15 +395,14 @@ FILES:libopencl-imx = "${libdir}/libOpenCL${REALSOLIBS} \
FILES:libopencl-imx-dev = "${includedir}/CL ${libdir}/libOpenCL${SOLIBSDEV}"
RDEPENDS:libopencl-imx= "libclc-imx"
-FILES:libopenvg-imx = "${libdir}/libOpenVG*${REALSOLIBS}"
-FILES:libopenvg-imx-dev = "${includedir}/VG ${libdir}/libOpenVG*${SOLIBSDEV} ${libdir}/pkgconfig/vg.pc"
+FILES:libopenvg-imx = "${libdir}/libOpenVG*${REALSOLIBS} ${libdir}/libOpenVG*${SOLIBS}"
+FILES:libopenvg-imx-dev = "${includedir}/VG ${libdir}/pkgconfig/vg.pc"
+# libEGL does dlopen of libOpenVG.so
+INSANE_SKIP:libopenvg-imx += "dev-so"
FILES:libvdk-imx = "${libdir}/libVDK*${REALSOLIBS}"
FILES:libvdk-imx-dev = "${includedir}/*vdk*.h ${libdir}/libVDK${SOLIBSDEV}"
-FILES:libvivante-dri-imx = "${libdir}/dri/vivante_dri.so"
-RDEPENDS:libvivante-dri-imx = "libdrm"
-
FILES:imx-gpu-viv-tools = "${bindir}/gmem_info"
FILES:imx-gpu-viv-demos = "/opt"
@@ -356,4 +410,7 @@ INSANE_SKIP:imx-gpu-viv-demos += "rpaths dev-deps"
FILES:libnn-imx = "${libdir}/libNN*${SOLIBS}"
-# COMPATIBLE_MACHINE = "(mx6q|mx6dl|mx6sx|mx6sl|mx8)"
+# It will use gcompat at runtime therefore checking for these at compile time wont be useful as
+# they dont match musl/gcompat but it should run fine
+INSANE_SKIP:append:libc-musl = " file-rdeps"
+