Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,147 @@
|
||||
DESCRIPTION = "Userspace libraries for PowerVR Rogue GPU on TI SoCs"
|
||||
HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
|
||||
LICENSE = "TI-TFL"
|
||||
LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
|
||||
|
||||
inherit bin_package
|
||||
|
||||
INHIBIT_DEFAULT_DEPS = ""
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|am62xx|am62pxx|j722s"
|
||||
|
||||
PR = "r3"
|
||||
|
||||
BRANCH = "linuxws/kirkstone/k6.1/${PV}"
|
||||
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
|
||||
SRCREV = "0b9e64254269be2fa95c4f3e1dd925d6e4d58199"
|
||||
S = "${WORKDIR}/git/targetfs/${TARGET_PRODUCT}/${PVR_WS}/${PVR_BUILD}"
|
||||
|
||||
TARGET_PRODUCT:j721e = "j721e_linux"
|
||||
TARGET_PRODUCT:j721s2 = "j721s2_linux"
|
||||
TARGET_PRODUCT:j784s4 = "j784s4_linux"
|
||||
TARGET_PRODUCT:am62xx = "am62_linux"
|
||||
TARGET_PRODUCT:am62pxx = "am62p_linux"
|
||||
TARGET_PRODUCT:j722s = "j722s_linux"
|
||||
PVR_BUILD = "release"
|
||||
PVR_WS = "lws-generic"
|
||||
|
||||
RDEPENDS:${PN} = " \
|
||||
libdrm \
|
||||
ti-img-rogue-driver \
|
||||
${PN}-firmware \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ?= " \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'vulkan wayland', 'vulkan', '', d)} \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'opengl opencl', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[opengl] = ",,,,${GLES_PACKAGES}"
|
||||
PACKAGECONFIG[vulkan] = ",,,,${VULKAN_PACKAGES}"
|
||||
PACKAGECONFIG[opencl] = ",,,,${OPENCL_PACKAGES}"
|
||||
|
||||
def get_file_list(package_list_var, d):
|
||||
file_list = []
|
||||
package_list = d.getVar(package_list_var)
|
||||
prefix = f"{d.getVar('D')}/"
|
||||
if package_list:
|
||||
for package in package_list.split():
|
||||
package_file_string = d.getVar(f"FILES:{package}")
|
||||
if package_file_string:
|
||||
for package_file in package_file_string.split():
|
||||
file_list.append(f"{prefix}{package_file}")
|
||||
return " ".join(file_list)
|
||||
|
||||
do_install:append() {
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('GLES_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'vulkan', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('VULKAN_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('OPENCL_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
|
||||
if [ -e ${D}/lib/firmware ]; then
|
||||
mv ${D}/lib/firmware ${D}${nonarch_base_libdir}
|
||||
fi
|
||||
fi
|
||||
|
||||
# clean up any empty directories
|
||||
find "${D}" -empty -type d -delete
|
||||
}
|
||||
|
||||
GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
|
||||
VULKAN_PACKAGES = "libvk-rogue"
|
||||
OPENCL_PACKAGES = "libopencl-rogue libopencl-rogue-tools"
|
||||
|
||||
PACKAGES = " \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'opengl', d.getVar('GLES_PACKAGES'), '', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'vulkan', d.getVar('VULKAN_PACKAGES'), '', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'opencl', d.getVar('OPENCL_PACKAGES'), '', d)} \
|
||||
${PN}-tools \
|
||||
${PN}-firmware \
|
||||
${PN} \
|
||||
"
|
||||
|
||||
# Inject variables so that packages don't get Debian-renamed (which would
|
||||
# remove the -rogue suffix), but don't RPROVIDEs/RCONFLICTs on the generic
|
||||
# libgl name to prevent colliding with swrast libs
|
||||
python __anonymous() {
|
||||
suffix = ""
|
||||
if "-native" in d.getVar("PN"):
|
||||
suffix = "-native"
|
||||
for p in (("vulkan", "libvk",),
|
||||
("gles", "libgles1", "libglesv1-cm1"),
|
||||
("gles", "libgles2", "libglesv2-2"),
|
||||
("gles", "libgles3",),
|
||||
("opencl", "libopencl",)):
|
||||
mlprefix = d.getVar("MLPREFIX")
|
||||
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.setVar("INSANE_SKIP:" + fullp, "dev-so ldflags")
|
||||
d.appendVar("RRECOMMENDS:" + fullp, " ${MLPREFIX}ti-img-rogue-umlibs" + suffix)
|
||||
}
|
||||
|
||||
# gles specific shared objects
|
||||
FILES:libgles1-rogue = "${libdir}/libGLESv1*.so*"
|
||||
FILES:libgles2-rogue = "${libdir}/libGLESv2*.so*"
|
||||
RDEPENDS:libgles1-rogue += "mesa-megadriver"
|
||||
RDEPENDS:libgles2-rogue += "mesa-megadriver"
|
||||
|
||||
# vulkan specific shared objects and configs
|
||||
FILES:libvk-rogue = "${libdir}/libVK_IMG.so* ${datadir}/vulkan"
|
||||
RDEPENDS:libvk-rogue += "vulkan-loader wayland libdrm"
|
||||
|
||||
# opencl specific shared objects and configs
|
||||
FILES:libopencl-rogue = "${libdir}/libPVROCL.so* ${sysconfdir}/OpenCL"
|
||||
RDEPENDS:libopencl-rogue += "opencl-icd-loader"
|
||||
RRECOMMENDS:libopencl-rogue += "libopencl-rogue-tools"
|
||||
FILES:libopencl-rogue-tools += "${bindir}/ocl*"
|
||||
DEBIAN_NOAUTONAME:libopencl-rogue-tools = "1"
|
||||
INSANE_SKIP:libopencl-rogue-tools = "ldflags"
|
||||
|
||||
# optional tools and tests
|
||||
FILES:${PN}-tools = "${bindir}/"
|
||||
RDEPENDS:${PN}-tools = "python3-core ${PN}"
|
||||
INSANE_SKIP:${PN}-tools = "ldflags"
|
||||
|
||||
# required firmware
|
||||
FILES:${PN}-firmware = "${base_libdir}/firmware/*"
|
||||
INSANE_SKIP:${PN}-firmware += "arch"
|
||||
|
||||
RRECOMMENDS:${PN} += " \
|
||||
${PN}-tools \
|
||||
"
|
||||
|
||||
INSANE_SKIP:${PN} += "already-stripped dev-so ldflags"
|
||||
@@ -0,0 +1,155 @@
|
||||
DESCRIPTION = "Userspace libraries for PowerVR Rogue GPU on TI SoCs"
|
||||
HOMEPAGE = "http://git.ti.com/graphics/ti-img-rogue-umlibs"
|
||||
LICENSE = "TI-TFL"
|
||||
LIC_FILES_CHKSUM = "file://${WORKDIR}/git/LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
COMPATIBLE_MACHINE = "j721e|j721s2|j784s4|j742s2|am62xx|am62pxx|j722s"
|
||||
|
||||
PR = "r4"
|
||||
|
||||
BRANCH = "linuxws/scarthgap/k6.12/${PV}"
|
||||
SRC_URI = "git://git.ti.com/git/graphics/ti-img-rogue-umlibs.git;protocol=https;branch=${BRANCH}"
|
||||
SRCREV = "1ed9ee185cd876200e6747192854015b8e94a7b0"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
TARGET_PRODUCT:j721e = "j721e_linux"
|
||||
TARGET_PRODUCT:j721s2 = "j721s2_linux"
|
||||
TARGET_PRODUCT:j784s4 = "j784s4_linux"
|
||||
TARGET_PRODUCT:j742s2 = "j784s4_linux"
|
||||
TARGET_PRODUCT:am62xx = "am62_linux"
|
||||
TARGET_PRODUCT:am62pxx = "am62p_linux"
|
||||
TARGET_PRODUCT:j722s = "j722s_linux"
|
||||
PVR_BUILD = "release"
|
||||
PVR_WS = "lws-generic"
|
||||
|
||||
RDEPENDS:${PN} = " \
|
||||
libdrm \
|
||||
ti-img-rogue-driver \
|
||||
${PN}-firmware \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ?= " \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'vulkan wayland', 'vulkan', '', d)} \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'opengl opencl', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG[opengl] = ",,,,${GLES_PACKAGES}"
|
||||
PACKAGECONFIG[vulkan] = ",,,,${VULKAN_PACKAGES}"
|
||||
PACKAGECONFIG[opencl] = ",,,,${OPENCL_PACKAGES}"
|
||||
|
||||
def get_file_list(package_list_var, d):
|
||||
file_list = []
|
||||
package_list = d.getVar(package_list_var)
|
||||
prefix = f"{d.getVar('D')}/"
|
||||
if package_list:
|
||||
for package in package_list.split():
|
||||
package_file_string = d.getVar(f"FILES:{package}")
|
||||
if package_file_string:
|
||||
for package_file in package_file_string.split():
|
||||
file_list.append(f"{prefix}{package_file}")
|
||||
return " ".join(file_list)
|
||||
|
||||
EXTRA_OEMAKE += 'BUILD=${PVR_BUILD} TARGET_PRODUCT=${TARGET_PRODUCT} WINDOW_SYSTEM=${PVR_WS}'
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
do_compile[noexec] = "1"
|
||||
do_install() {
|
||||
oe_runmake 'DESTDIR=${D}' install
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'opengl', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('GLES_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'vulkan', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('VULKAN_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('PACKAGECONFIG', 'opencl', 'false', 'true', d)}; then
|
||||
for file in ${@get_file_list('OPENCL_PACKAGES', d)}; do
|
||||
rm -rf ${file}
|
||||
done
|
||||
fi
|
||||
if ${@bb.utils.contains('DISTRO_FEATURES', 'usrmerge', 'true', 'false', d)}; then
|
||||
if [ -e ${D}/lib/firmware ]; then
|
||||
mv ${D}/lib/firmware ${D}${nonarch_base_libdir}
|
||||
fi
|
||||
fi
|
||||
|
||||
# clean up any empty directories
|
||||
find "${D}" -empty -type d -delete
|
||||
|
||||
# fix permissions
|
||||
chown -R root:root "${D}"
|
||||
}
|
||||
|
||||
GLES_PACKAGES = "libgles1-rogue libgles2-rogue libgles3-rogue"
|
||||
VULKAN_PACKAGES = "libvk-rogue"
|
||||
OPENCL_PACKAGES = "libopencl-rogue libopencl-rogue-tools"
|
||||
|
||||
PACKAGES = " \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'opengl', d.getVar('GLES_PACKAGES'), '', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'vulkan', d.getVar('VULKAN_PACKAGES'), '', d)} \
|
||||
${@bb.utils.contains('PACKAGECONFIG', 'opencl', d.getVar('OPENCL_PACKAGES'), '', d)} \
|
||||
${PN}-tools \
|
||||
${PN}-firmware \
|
||||
${PN} \
|
||||
"
|
||||
|
||||
# Inject variables so that packages don't get Debian-renamed (which would
|
||||
# remove the -rogue suffix), but don't RPROVIDEs/RCONFLICTs on the generic
|
||||
# libgl name to prevent colliding with swrast libs
|
||||
python __anonymous() {
|
||||
suffix = ""
|
||||
if "-native" in d.getVar("PN"):
|
||||
suffix = "-native"
|
||||
for p in (("vulkan", "libvk",),
|
||||
("gles", "libgles1", "libglesv1-cm1"),
|
||||
("gles", "libgles2", "libglesv2-2"),
|
||||
("gles", "libgles3",),
|
||||
("opencl", "libopencl",)):
|
||||
mlprefix = d.getVar("MLPREFIX")
|
||||
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.setVar("INSANE_SKIP:" + fullp, "dev-so ldflags")
|
||||
d.appendVar("RRECOMMENDS:" + fullp, " ${MLPREFIX}ti-img-rogue-umlibs" + suffix)
|
||||
}
|
||||
|
||||
# gles specific shared objects
|
||||
FILES:libgles1-rogue = "${libdir}/libGLESv1*.so*"
|
||||
FILES:libgles2-rogue = "${libdir}/libGLESv2*.so*"
|
||||
RDEPENDS:libgles1-rogue += "mesa-megadriver"
|
||||
RDEPENDS:libgles2-rogue += "mesa-megadriver"
|
||||
|
||||
# vulkan specific shared objects and configs
|
||||
FILES:libvk-rogue = "${libdir}/libVK_IMG.so* ${datadir}/vulkan"
|
||||
RDEPENDS:libvk-rogue += "vulkan-loader wayland libdrm"
|
||||
|
||||
# opencl specific shared objects and configs
|
||||
FILES:libopencl-rogue = "${libdir}/libPVROCL.so* ${sysconfdir}/OpenCL"
|
||||
RDEPENDS:libopencl-rogue += "opencl-icd-loader"
|
||||
RRECOMMENDS:libopencl-rogue += "libopencl-rogue-tools"
|
||||
FILES:libopencl-rogue-tools += "${bindir}/ocl*"
|
||||
DEBIAN_NOAUTONAME:libopencl-rogue-tools = "1"
|
||||
INSANE_SKIP:libopencl-rogue-tools = "ldflags"
|
||||
|
||||
# optional tools and tests
|
||||
FILES:${PN}-tools = "${bindir}/"
|
||||
RDEPENDS:${PN}-tools = "python3-core libdrm ${PN}"
|
||||
INSANE_SKIP:${PN}-tools = "ldflags"
|
||||
|
||||
# required firmware
|
||||
FILES:${PN}-firmware = "${base_libdir}/firmware/*"
|
||||
INSANE_SKIP:${PN}-firmware += "arch"
|
||||
|
||||
# common libraries
|
||||
FILES:${PN} = "${libdir}"
|
||||
|
||||
RRECOMMENDS:${PN} += " \
|
||||
${PN}-tools \
|
||||
"
|
||||
|
||||
INSANE_SKIP:${PN} += "already-stripped dev-so ldflags"
|
||||
@@ -0,0 +1,69 @@
|
||||
DESCRIPTION = "Userspace libraries for PowerVR SGX chipset on TI SoCs"
|
||||
HOMEPAGE = "https://git.ti.com/graphics/omap5-sgx-ddk-um-linux"
|
||||
LICENSE = "TI-TSPA"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=7232b98c1c58f99e3baa03de5207e76f"
|
||||
|
||||
PACKAGE_ARCH = "${MACHINE_ARCH}"
|
||||
COMPATIBLE_MACHINE = "ti33x|ti43x|omap-a15|am65xx"
|
||||
|
||||
PR = "r38"
|
||||
|
||||
BRANCH = "${PV}/mesa/glibc-2.35"
|
||||
|
||||
SRC_URI = " \
|
||||
git://git.ti.com/git/graphics/omap5-sgx-ddk-um-linux.git;protocol=https;branch=${BRANCH} \
|
||||
"
|
||||
SRCREV = "84a396a4fb379f10931421e489ac8a199d6a9f2c"
|
||||
|
||||
INITSCRIPT_NAME = "rc.pvr"
|
||||
INITSCRIPT_PARAMS = "defaults 8"
|
||||
SYSTEMD_SERVICE:${PN} = "pvrsrvctl.service"
|
||||
|
||||
# Prefer udev rules over everything, but we do have init services if necessary
|
||||
PACKAGECONFIG ??= "udev"
|
||||
PACKAGECONFIG[udev] = "UDEV=true,UDEV=false,,udev,,sysvinit systemd"
|
||||
PACKAGECONFIG[systemd] = "SYSTEMD=true,SYSTEMD=false,,,,udev sysvinit"
|
||||
PACKAGECONFIG[sysvinit] = ",,,,,udev systemd"
|
||||
|
||||
def pick_init(d):
|
||||
packageconfig = d.getVar('PACKAGECONFIG').split()
|
||||
if 'udev' not in packageconfig:
|
||||
if d.getVar('VIRTUAL-RUNTIME_init_manager') == 'sysvinit':
|
||||
return "update-rc.d"
|
||||
return "systemd"
|
||||
return ""
|
||||
|
||||
inherit ${@pick_init(d)}
|
||||
|
||||
TARGET_PRODUCT:ti33x = "ti335x_linux"
|
||||
TARGET_PRODUCT:ti43x = "ti437x_linux"
|
||||
TARGET_PRODUCT:omap-a15 = "ti572x_linux"
|
||||
TARGET_PRODUCT:am65xx = "ti654x_linux"
|
||||
|
||||
RDEPENDS:${PN} += "libdrm"
|
||||
|
||||
RRECOMMENDS:${PN} += "ti-sgx-ddk-km"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
EXTRA_OEMAKE += "DESTDIR=${D} TARGET_PRODUCT=${TARGET_PRODUCT} ${PACKAGECONFIG_CONFARGS}"
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
do_compile[noexec] = "1"
|
||||
do_install() {
|
||||
oe_runmake install
|
||||
}
|
||||
|
||||
FILES:${PN} = "${bindir}/*"
|
||||
FILES:${PN} += " ${libdir}/*"
|
||||
FILES:${PN} += "${includedir}/*"
|
||||
FILES:${PN} += "${sysconfdir}/*"
|
||||
FILES:${PN} += "${datadir}/*"
|
||||
FILES:${PN} += "${nonarch_base_libdir}/udev/rules.d"
|
||||
FILES:${PN} += "${nonarch_base_libdir}/systemd/system"
|
||||
|
||||
# No debug or dev packages for this recipe
|
||||
PACKAGES = "${PN}"
|
||||
|
||||
INSANE_SKIP:${PN} += "ldflags"
|
||||
INSANE_SKIP:${PN} += "already-stripped dev-so"
|
||||
Reference in New Issue
Block a user