mirror of
https://git.yoctoproject.org/meta-ti
synced 2026-07-16 14:27:48 +00:00
ti-img-rogue-umlibs: bump version and explicitly package
Bump the version and explicitly package all Khronos APIs separately. This should be nice for those folks that want a headless opencl system for tinkering and such. This version includes experimental GEM support (for applications like Chromium that like to poke at the render node) and a new Vulkan ICD loader interface for better support with the Vulkan ICD loaders present in Yocto. This lifts a method from mesa used to force a common naming convention for Vulkan, OpenCL, and OpenGLES libs to make things a little easier to follow. Without it the target package names get scrambled based on the shared object name. Signed-off-by: Randolph Sapp <rs@ti.com> Signed-off-by: Ryan Eatmon <reatmon@ti.com>
This commit is contained in:
committed by
Ryan Eatmon
parent
8cf55cdfeb
commit
1899f5ead3
@@ -22,7 +22,7 @@ SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-driver.git;protocol=https;
|
|||||||
|
|
||||||
S = "${WORKDIR}/git"
|
S = "${WORKDIR}/git"
|
||||||
|
|
||||||
SRCREV = "93c66ec66136654849809132b86d3b880ee96ed6"
|
SRCREV = "ebddb087ef140ca83e4c30d66580b0bb33b003fd"
|
||||||
|
|
||||||
TARGET_PRODUCT:j721e = "j721e_linux"
|
TARGET_PRODUCT:j721e = "j721e_linux"
|
||||||
TARGET_PRODUCT:j721s2 = "j721s2_linux"
|
TARGET_PRODUCT:j721s2 = "j721s2_linux"
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ PR = "r2"
|
|||||||
|
|
||||||
BRANCH = "linuxws/kirkstone/k6.1/${PV}"
|
BRANCH = "linuxws/kirkstone/k6.1/${PV}"
|
||||||
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
|
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
|
||||||
SRCREV = "452b0f50d2984171c81d5a0d3b22198177d919ad"
|
SRCREV = "bfacba50b004d0e93ee1f8b42d2217131453f5fd"
|
||||||
S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
|
S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
|
||||||
|
|
||||||
TARGET_PRODUCT:j721e = "j721e_linux"
|
TARGET_PRODUCT:j721e = "j721e_linux"
|
||||||
@@ -22,52 +22,90 @@ TARGET_PRODUCT:am62xx = "am62_linux"
|
|||||||
PVR_BUILD = "release"
|
PVR_BUILD = "release"
|
||||||
PVR_WS = "lws-generic"
|
PVR_WS = "lws-generic"
|
||||||
|
|
||||||
RDEPENDS:${PN} += "mesa-megadriver libdrm ti-img-rogue-driver"
|
RDEPENDS:${PN} = " \
|
||||||
|
libdrm \
|
||||||
|
ti-img-rogue-driver \
|
||||||
|
${PN}-firmware \
|
||||||
|
"
|
||||||
|
|
||||||
do_install:append() {
|
do_install:append() {
|
||||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
|
if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
|
||||||
mv ${D}/lib/firmware ${D}${nonarch_base_libdir}
|
mv ${D}/lib/firmware ${D}${nonarch_base_libdir}
|
||||||
rmdir ${D}/lib
|
rmdir ${D}/lib
|
||||||
fi
|
fi
|
||||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'false', 'true', d)}; then
|
|
||||||
rm -rf ${D}${libdir}/libVK_IMG.so*
|
|
||||||
fi
|
|
||||||
rm -rf "${D}/etc/init.d"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PACKAGES = " \
|
PACKAGES = " \
|
||||||
${@bb.utils.contains("DISTRO_FEATURES", "x11", "${PN}-vulkan", "", d)} \
|
libgles1-rogue libgles1-rogue-dev \
|
||||||
|
libgles2-rogue libgles2-rogue-dev \
|
||||||
|
libgles3-rogue libgles3-rogue-dev \
|
||||||
|
libvk-rogue libvk-rogue-dev \
|
||||||
|
libopencl-rogue libopencl-rogue-dev \
|
||||||
|
libopencl-rogue-tools \
|
||||||
${PN}-tools \
|
${PN}-tools \
|
||||||
${PN}-firmware \
|
${PN}-firmware \
|
||||||
${PN} \
|
${PN} \
|
||||||
"
|
"
|
||||||
|
|
||||||
FILES:${PN}-vulkan = " \
|
# Inject variables so that packages don't get Debian-renamed (which would
|
||||||
${datadir}/vulkan \
|
# remove the -rogue suffix), but don't RPROVIDEs/RCONFLICTs on the generic
|
||||||
${libdir}/libVK_IMG.so* \
|
# libgl name to prevent colliding with swrast libs
|
||||||
"
|
python __anonymous() {
|
||||||
RDEPENDS:${PN}-vulkan += " \
|
suffix = ""
|
||||||
mesa-vulkan-drivers \
|
if "-native" in d.getVar("PN"):
|
||||||
libdrm \
|
suffix = "-native"
|
||||||
ti-img-rogue-driver \
|
for p in (("vulkan", "libvk",),
|
||||||
libx11-xcb \
|
("gles", "libgles1", "libglesv1-cm1"),
|
||||||
wayland \
|
("gles", "libgles2", "libglesv2-2"),
|
||||||
"
|
("gles", "libgles3",),
|
||||||
INSANE_SKIP:${PN}-vulkan += " \
|
("opencl", "libopencl",)):
|
||||||
already-stripped \
|
mlprefix = d.getVar("MLPREFIX")
|
||||||
dev-so \
|
fullp = mlprefix + p[1] + "-rogue" + suffix
|
||||||
"
|
mlprefix = d.getVar("MLPREFIX")
|
||||||
|
pkgs = " " + " ".join(mlprefix + x + suffix for x in p[1:])
|
||||||
|
d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
|
||||||
|
d.appendVar("RRECOMMENDS:" + fullp, " ${MLPREFIX}ti-img-rogue-umlibs" + suffix)
|
||||||
|
|
||||||
|
# For -dev, the first element is both the Debian and original name
|
||||||
|
fullp = mlprefix + p[1] + "-rogue-dev" + suffix
|
||||||
|
pkgs = " " + mlprefix + p[1] + "-dev" + suffix
|
||||||
|
d.setVar("DEBIAN_NOAUTONAME:" + fullp, "1")
|
||||||
|
}
|
||||||
|
|
||||||
|
# gles specific shared objects
|
||||||
|
FILES:libgles1-rogue = "${libdir}/libGLESv1*.so.*"
|
||||||
|
FILES:libgles1-rogue-dev = "${libdir}/libGLESv1*.so"
|
||||||
|
FILES:libgles2-rogue = "${libdir}/libGLESv2*.so.*"
|
||||||
|
FILES:libgles2-rogue-dev = "${libdir}/libGLESv2*.so"
|
||||||
|
RDEPENDS:libgles1-rogue += "mesa-megadriver"
|
||||||
|
RDEPENDS:libgles2-rogue += "mesa-megadriver"
|
||||||
|
RDEPENDS:libgles3-rogue-dev += "libgles2-rogue-dev"
|
||||||
|
|
||||||
|
# vulkan specific shared objects and configs
|
||||||
|
FILES:libvk-rogue = "${libdir}/libVK_IMG.so.* ${datadir}/vulkan"
|
||||||
|
FILES:libvk-rogue-dev = "${libdir}/libVK_IMG.so"
|
||||||
|
RDEPENDS:libvk-rogue += "vulkan-loader libx11-xcb wayland libdrm"
|
||||||
|
|
||||||
|
# opencl specific shared objects and configs
|
||||||
|
FILES:libopencl-rogue = "${libdir}/libPVROCL.so.* ${sysconfdir}/OpenCL"
|
||||||
|
FILES:libopencl-rogue-dev = "${libdir}/libPVROCL.so"
|
||||||
|
RDEPENDS:libopencl-rogue += "opencl-icd-loader"
|
||||||
|
RRECOMMENDS:libopencl-rogue += "libopencl-rogue-tools"
|
||||||
|
FILES:libopencl-rogue-tools += "${bindir}/ocl*"
|
||||||
|
|
||||||
|
# optional tools and tests
|
||||||
FILES:${PN}-tools = "${bindir}/"
|
FILES:${PN}-tools = "${bindir}/"
|
||||||
RDEPENDS:${PN}-tools = "python3-core"
|
RDEPENDS:${PN}-tools = "python3-core ${PN}"
|
||||||
|
|
||||||
|
# required firmware
|
||||||
FILES:${PN}-firmware = "${base_libdir}/firmware/*"
|
FILES:${PN}-firmware = "${base_libdir}/firmware/*"
|
||||||
INSANE_SKIP:${PN}-firmware += "arch"
|
INSANE_SKIP:${PN}-firmware += "arch"
|
||||||
|
|
||||||
RRECOMMENDS:${PN} += " \
|
RRECOMMENDS:${PN} += " \
|
||||||
${@bb.utils.contains("DISTRO_FEATURES", "x11", "${PN}-vulkan", "", d)} \
|
${@bb.utils.contains("DISTRO_FEATURES", "opengl", "libgles1-rogue libgles2-rogue", "", d)} \
|
||||||
|
${@bb.utils.contains("DISTRO_FEATURES", "vulkan x11 wayland", "libvk-rogue", "", d)} \
|
||||||
|
${@bb.utils.contains("DISTRO_FEATURES", "opencl", "libopencl-rogue", "", d)} \
|
||||||
${PN}-tools \
|
${PN}-tools \
|
||||||
"
|
"
|
||||||
RDEPENDS:${PN} += " ${PN}-firmware"
|
|
||||||
|
|
||||||
INSANE_SKIP:${PN} += "already-stripped dev-so"
|
INSANE_SKIP:${PN} += "already-stripped dev-so"
|
||||||
|
|||||||
Reference in New Issue
Block a user