Conversation
Reason for change: Upgrade RBUS to 2.11.0 which has Coverity Fixes for rtMessage/rbus Test Procedure: Tested and verified Priority: P1 Risks: Medium
Reason for change: The clang compiler is required for the secclient-rs module. This commit integrates the meta-clang recipe, which provides compiler version 1.72.0. Co-authored-by: Anand Kandasamy <37086488+anand-ky@users.noreply.github.com>
Co-authored-by: Anand Kandasamy <37086488+anand-ky@users.noreply.github.com>
…Firmware Updates (#512)
RDK-59919 : [RDKE] Port Ops Support Upload Scripts to Source code
… topic/RDKEMW-10995-dev
There was a problem hiding this comment.
Pull request overview
This PR updates multiple BitBake recipe files as part of a rebase operation, updating git commit references (SRCREV) and package versions across several RDK middleware components. The changes include routine version bumps for five recipes and a major refactoring of the crashupload recipe to support new build configurations.
Changes:
- Updated SRCREV and versions for commonutilities (1.5.0→1.5.1), telemetry (1.7.4→1.8.0), rfc (1.2.1 with PR bump), rbus (2.9.0→2.11.0), and dcmd (2.0.0→2.0.3)
- Major refactoring of crashupload recipe (1.0.7→2.0.0) with new source structure, client-specific builds, and additional dependencies
- Added meta-clang layer support to bblayers.conf.sample
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| recipes-common/utils/commonutilities_git.bb | Updated SRCREV and bumped version from 1.5.0 to 1.5.1 with PR increment |
| recipes-common/telemetry/telemetry_git.bb | Updated SRCREV and bumped version from 1.7.4 to 1.8.0 |
| recipes-common/rfc/rfc_git.bb | Updated SRCREV and incremented PR from r0 to r1 |
| recipes-common/rbus/rbus.bb | Updated SRCREV and bumped version from 2.9.0 to 2.11.0 |
| recipes-common/dcmd/dcmd.bb | Updated SRCREV and bumped version from 2.0.0 to 2.0.3 |
| recipes-common/crashupload/crashupload_git.bb | Major refactoring: version 2.0.0, new source structure, client-specific support, additional dependencies |
| conf/template/bblayers.conf.sample | Added conditional inclusion of meta-clang layer |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| PV = "1.5.0" | ||
| PR = "r0" | ||
| PV = "1.5.1" | ||
| PR = "r1" |
There was a problem hiding this comment.
When PV (package version) is updated, PR (package revision) should typically be reset to "r0". Here PV changed from 1.5.0 to 1.5.1, but PR was incremented to "r1" instead of being reset to "r0". This is inconsistent with the pattern used in other files in this PR (telemetry, rbus, dcmd, crashupload) where PR is reset to "r0" when PV changes.
| PR = "r1" | |
| PR = "r0" |
RDKEMW-13838: Dobby 3.16.1 Release Integration
Co-authored-by: Anand Kandasamy <37086488+anand-ky@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| CFLAGS:append = " \ | ||
| -I=${libdir}/glib-2.0/include \ | ||
| -I=${includedir}/glib-2.0 \ | ||
| -DRFC_API_ENABLED \ | ||
| -DT2_EVENT_ENABLED \ | ||
| -DRDK_LOGGER \ | ||
| -DUSE_EXTENDED_LOGGER_INIT \ | ||
| " | ||
|
|
||
| export GLIBS = "-lglib-2.0 -lz" | ||
| export USE_DBUS = "y" | ||
|
|
||
| LDFLAGS += "-Wl,-O1" | ||
| LDFLAGS:append = " -Wl,-O1" | ||
|
|
||
| inherit autotools systemd coverity pkgconfig | ||
|
|
||
| inherit coverity | ||
| inherit systemd | ||
| DEPENDS:append:client = " \ | ||
| openssl \ | ||
| libarchive \ | ||
| rdk-logger \ | ||
| commonutilities \ | ||
| rfc \ | ||
| telemetry \ | ||
| " |
There was a problem hiding this comment.
CFLAGS:append unconditionally enables RFC/T2/RDK logger related defines, but the build-time dependencies for those features are only added under DEPENDS:append:client. If this recipe is built under other overrides (e.g. :broadband), the build may fail or rely on undeclared/transitive deps. Either make the feature flags conditional (match the override) or move the required deps to the base DEPENDS/relevant override.
| do_install() { | ||
| install -d ${D}${base_libdir}/rdk | ||
| install -d ${D}${sysconfdir} ${D}${sysconfdir}/rfcdefaults | ||
| install -m 0755 ${S}/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/runDumpUpload.sh ${D}${base_libdir}/rdk | ||
| } | ||
|
|
||
| do_install:append:client() { | ||
| install -d ${D}${bindir} | ||
| install -m 0755 ${B}/src/crashupload ${D}${bindir}/crashupload | ||
| } | ||
|
|
||
| do_install:append:broadband() { | ||
| use_sysv="${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'false', 'true', d)}" | ||
| $use_sysv || install -d ${D}${systemd_unitdir}/system | ||
| $use_sysv || install -m 0644 ${S}/coredump-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/coredump-upload.path ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/minidump-on-bootup-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/minidump-on-bootup-upload.timer ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/coredump-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/coredump-upload.path ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/minidump-on-bootup-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/minidump-on-bootup-upload.timer ${D}${systemd_unitdir}/system/ | ||
| install -d ${D}${sysconfdir} | ||
| install -m 0755 ${S}/uploadDumpsUtils.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumpsUtils.sh ${D}${base_libdir}/rdk |
There was a problem hiding this comment.
The install steps reference source files via ${WORKDIR}/git/... even though S is set to a subdirectory. This hard-codes the unpack layout and can break developer workflows that enable externalsrc (see conf/distro/include/rdk-external-src.inc) or any future changes to S. Prefer deriving the repo-root path from ${S} (or keep S at repo root and point autotools at the subdir) so installs don’t depend on ${WORKDIR}/git.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 10 changed files in this pull request and generated 8 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| do_install:append:client() { | ||
| install -d ${D}${bindir} | ||
| install -m 0755 ${B}/src/crashupload ${D}${bindir}/crashupload | ||
| } |
There was a problem hiding this comment.
A new do_install:append:client() function has been added that installs a binary crashupload from ${B}/src/crashupload. However, there's no corresponding DEPENDS, CFLAGS, or build instructions visible for compiling this binary in the client configuration. Please verify that the autotools build system properly builds this binary for client configurations, or add the necessary build instructions.
| install -d ${D}${sysconfdir} ${D}${sysconfdir}/rfcdefaults | ||
| install -m 0755 ${S}/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/runDumpUpload.sh ${D}${base_libdir}/rdk |
There was a problem hiding this comment.
A new script runDumpUpload.sh is being installed, but it was not present in the original recipe. Please verify that this script exists in the repository at the expected location (${WORKDIR}/git/runDumpUpload.sh) and that it's necessary for the crashupload functionality.
| SRCREV = "8e7e22d2cb988ea58b9ba9d85b8b0812c6dc77d2" | ||
| SRC_URI = "${CMF_GITHUB_ROOT}/crashupload;${CMF_GITHUB_SRC_URI_SUFFIX};module=." | ||
| S = "${WORKDIR}/git" | ||
| SRC_URI = "${CMF_GITHUB_ROOT}/${BPN}.git;nobranch=1;protocol=${CMF_GIT_PROTOCOL}" |
There was a problem hiding this comment.
The SRC_URI has been significantly changed from using module-based Git fetching to using the repository name with a .git suffix and nobranch=1. This is a breaking change that removes the CRASHUPLOAD_SRC_URI override capability. Please ensure that any downstream configurations that relied on the CRASHUPLOAD_SRC_URI variable are updated accordingly.
| SRC_URI = "${CMF_GITHUB_ROOT}/${BPN}.git;nobranch=1;protocol=${CMF_GIT_PROTOCOL}" | |
| CRASHUPLOAD_SRC_URI ?= "${CMF_GITHUB_ROOT}/${BPN}.git;nobranch=1;protocol=${CMF_GIT_PROTOCOL}" | |
| SRC_URI = "${CRASHUPLOAD_SRC_URI}" |
| FILES:${PN}:append:client = " ${bindir}/crashupload" | ||
| FILES:${PN}:append = " ${base_libdir}/rdk/uploadDumps.sh" | ||
| FILES:${PN}:append = " ${base_libdir}/rdk/runDumpUpload.sh" | ||
| FILES:${PN}:append:broadband = " ${base_libdir}/rdk/uploadDumpsUtils.sh" |
There was a problem hiding this comment.
The FILES:${PN}:append syntax deviates from the codebase convention. Other recipes in this codebase use FILES:${PN} += for adding files to packages. Consider changing these to use += instead of :append for consistency with other recipes like telemetry_git.bb and dcmd.bb.
| FILES:${PN}:append:client = " ${bindir}/crashupload" | |
| FILES:${PN}:append = " ${base_libdir}/rdk/uploadDumps.sh" | |
| FILES:${PN}:append = " ${base_libdir}/rdk/runDumpUpload.sh" | |
| FILES:${PN}:append:broadband = " ${base_libdir}/rdk/uploadDumpsUtils.sh" | |
| FILES:${PN}:client += " ${bindir}/crashupload" | |
| FILES:${PN} += " ${base_libdir}/rdk/uploadDumps.sh" | |
| FILES:${PN} += " ${base_libdir}/rdk/runDumpUpload.sh" | |
| FILES:${PN}:broadband += " ${base_libdir}/rdk/uploadDumpsUtils.sh" |
| LDFLAGS += "-Wl,-O1" | ||
| LDFLAGS:append = " -Wl,-O1" | ||
|
|
||
| inherit autotools systemd coverity pkgconfig |
There was a problem hiding this comment.
The inherit statement now includes autotools and pkgconfig, which were not present before. This is a significant change that introduces autotools-based build system support. Please ensure that the crashupload project repository now contains the necessary autotools files (configure.ac, Makefile.am, etc.) and that the build has been tested with this new build system.
| inherit autotools systemd coverity pkgconfig | |
| inherit systemd coverity |
| RDEPENDS:${PN} += "busybox" | ||
| " | ||
|
|
||
| RDEPENDS:${PN} += "busybox commonutilities" |
There was a problem hiding this comment.
The RDEPENDS has been updated to add "commonutilities" as a dependency. Please verify that this new dependency is appropriate for all configurations and doesn't create circular dependencies or missing dependency issues in build configurations where commonutilities might not be available.
| RDEPENDS:${PN} += "busybox commonutilities" | |
| RDEPENDS:${PN} += "busybox" | |
| RDEPENDS:${PN}:append:client = " commonutilities" |
| SUMMARY = "Crash Upload Utility for RDK Platforms" | ||
| SECTION = "console/utils" | ||
|
|
||
| LICENSE = "Apache-2.0" | ||
| LIC_FILES_CHKSUM = "file://LICENSE;md5=175792518e4ac015ab6696d16c4f607e" | ||
| LIC_FILES_CHKSUM = "file://../LICENSE;md5=175792518e4ac015ab6696d16c4f607e" | ||
|
|
||
| PV = "1.0.7" | ||
| PV = "2.0.1" | ||
| PR = "r0" | ||
| PACKAGE_ARCH = "${MIDDLEWARE_ARCH}" | ||
|
|
||
| # To have a possibility to override SRC_URI later, we are introducing the following workaround: | ||
| CRASHUPLOAD_SRC_URI ?= "${RDK_GENERIC_ROOT_GIT}/crashupload/generic;module=.;protocol=${RDK_GIT_PROTOCOL};branch=${RDK_GIT_BRANCH}" | ||
| SRCREV = "8e7e22d2cb988ea58b9ba9d85b8b0812c6dc77d2" | ||
| SRC_URI = "${CMF_GITHUB_ROOT}/crashupload;${CMF_GITHUB_SRC_URI_SUFFIX};module=." | ||
| S = "${WORKDIR}/git" | ||
| SRC_URI = "${CMF_GITHUB_ROOT}/${BPN}.git;nobranch=1;protocol=${CMF_GIT_PROTOCOL}" | ||
| SRCREV = "820884c9942ac5a0b7baaafcfea73733e6c517f1" | ||
|
|
||
| S = "${WORKDIR}/git/c_sourcecode" | ||
|
|
||
| DEPENDS = "glib-2.0 libsyswrapper" | ||
|
|
||
| export LINK = "${LD}" | ||
|
|
||
| CFLAGS += " \ | ||
| -I=${libdir}/glib-2.0/include \ | ||
| -I=${includedir}/glib-2.0 \ | ||
| " | ||
| CFLAGS:append = " \ | ||
| -I=${libdir}/glib-2.0/include \ | ||
| -I=${includedir}/glib-2.0 \ | ||
| -DRFC_API_ENABLED \ | ||
| -DT2_EVENT_ENABLED \ | ||
| -DRDK_LOGGER \ | ||
| -DUSE_EXTENDED_LOGGER_INIT \ | ||
| -DRBUS_API_ENABLED \ | ||
| " | ||
|
|
||
| export GLIBS = "-lglib-2.0 -lz" | ||
| export USE_DBUS = "y" | ||
|
|
||
| LDFLAGS += "-Wl,-O1" | ||
| LDFLAGS:append = " -Wl,-O1" | ||
|
|
||
| inherit autotools systemd coverity pkgconfig | ||
|
|
||
| inherit coverity | ||
| inherit systemd | ||
| DEPENDS:append:client = " \ | ||
| openssl \ | ||
| libarchive \ | ||
| rdk-logger \ | ||
| commonutilities \ | ||
| rfc \ | ||
| telemetry \ | ||
| " | ||
|
|
||
| do_install() { | ||
| install -d ${D}${base_libdir}/rdk | ||
| install -d ${D}${sysconfdir} ${D}${sysconfdir}/rfcdefaults | ||
| install -m 0755 ${S}/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/runDumpUpload.sh ${D}${base_libdir}/rdk | ||
| } | ||
|
|
||
| do_install:append:client() { | ||
| install -d ${D}${bindir} | ||
| install -m 0755 ${B}/src/crashupload ${D}${bindir}/crashupload | ||
| } | ||
|
|
||
| do_install:append:broadband() { | ||
| use_sysv="${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'false', 'true', d)}" | ||
| $use_sysv || install -d ${D}${systemd_unitdir}/system | ||
| $use_sysv || install -m 0644 ${S}/coredump-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/coredump-upload.path ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/minidump-on-bootup-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${S}/minidump-on-bootup-upload.timer ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/coredump-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/coredump-upload.path ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/minidump-on-bootup-upload.service ${D}${systemd_unitdir}/system/ | ||
| $use_sysv || install -m 0644 ${WORKDIR}/git/minidump-on-bootup-upload.timer ${D}${systemd_unitdir}/system/ | ||
| install -d ${D}${sysconfdir} | ||
| install -m 0755 ${S}/uploadDumpsUtils.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumpsUtils.sh ${D}${base_libdir}/rdk | ||
| } | ||
|
|
||
| SYSTEMD_SERVICE:${PN}:append:broadband = " coredump-upload.service \ | ||
| coredump-upload.path \ | ||
| minidump-on-bootup-upload.service \ | ||
| minidump-on-bootup-upload.timer \ | ||
| " | ||
| RDEPENDS:${PN} += "busybox" | ||
| " | ||
|
|
||
| RDEPENDS:${PN} += "busybox commonutilities" | ||
|
|
||
| PACKAGE_BEFORE_PN += "${PN}-conf" | ||
|
|
||
| FILES:${PN} += "${base_libdir}/rdk/uploadDumps.sh" | ||
| FILES:${PN}:append:client = " ${bindir}/crashupload" | ||
| FILES:${PN}:append = " ${base_libdir}/rdk/uploadDumps.sh" | ||
| FILES:${PN}:append = " ${base_libdir}/rdk/runDumpUpload.sh" | ||
| FILES:${PN}:append:broadband = " ${base_libdir}/rdk/uploadDumpsUtils.sh" |
There was a problem hiding this comment.
The PR title "rebase" does not accurately describe the changes made. While version bumps are included, there is a major refactoring of crashupload_git.bb that includes: changing the build system to autotools, modifying the source directory structure, adding new build flags, adding client-specific build instructions, and changing variable assignment methods. This is more than a simple rebase and should be documented appropriately in the PR description.
|
|
||
| LICENSE = "Apache-2.0" | ||
| LIC_FILES_CHKSUM = "file://LICENSE;md5=175792518e4ac015ab6696d16c4f607e" | ||
| LIC_FILES_CHKSUM = "file://../LICENSE;md5=175792518e4ac015ab6696d16c4f607e" |
There was a problem hiding this comment.
The LICENSE file path has changed from "file://LICENSE" to "file://../LICENSE". This suggests the LICENSE file is now in a parent directory. Please verify that this path is correct and that the LICENSE file exists at this new location relative to the source directory defined by S variable (which is now "${WORKDIR}/git/c_sourcecode").
| LIC_FILES_CHKSUM = "file://../LICENSE;md5=175792518e4ac015ab6696d16c4f607e" | |
| LIC_FILES_CHKSUM = "file://git/LICENSE;md5=175792518e4ac015ab6696d16c4f607e" |
* RDKEMW-4941 : bcm bb/bbappend analysis for bluetooth-mgr. Reason for change: Included new distro feature btr_bcm_pcm_sink for Broadcom specific PCM sink support Priority: P1 Test Procedure: Follow the steps provided in description. Risks: High Signed-off-by:Natraj Muthusamy <Natraj_Muthusamy@comcast.com> * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb * Update bluetooth-mgr_git.bb --------- Co-authored-by: nmuthu523 <Natraj_Muthusamy@comcast.com> Co-authored-by: DamianoBaroneSky <144350372+DamianoBaroneSky@users.noreply.github.com>
) RDKEMW-14300 : Update RDKLogger to fetch the latest features of v3.1.0 Reason for change: 1. Removed Log split & truncation 2. Configured default buffer size to be 0 as same as Previous Releases 3. Added new log formats as TID & TS_TIDs 4. Added testApp to measure CPU 5. Updated default logging to console instead of recently changes syslog 6. Added unit test cases to verify the new formats 7. Added unified log function to handle all the log formats 8. Moved the log4c init to rdklogger init
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 12 out of 12 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
|
||
| RDEPENDS:${PN} += "busybox commonutilities" | ||
|
|
||
| PACKAGE_BEFORE_PN += "${PN}-conf" |
There was a problem hiding this comment.
PACKAGE_BEFORE_PN += "${PN}-conf" declares a crashupload-conf subpackage, but the recipe never assigns any files to ${PN}-conf (no FILES:${PN}-conf), and it also doesn’t set ALLOW_EMPTY:${PN}-conf. Since packagegroup-rdk-media-common RDEPENDS on crashupload-conf, this can result in the dependency being unsatisfied or the -conf package being empty. Define which config/unit/script files should live in crashupload-conf and add an explicit FILES:${PN}-conf (or drop the subpackage + packagegroup dependency if it’s no longer needed).
| PACKAGE_BEFORE_PN += "${PN}-conf" | |
| PACKAGE_BEFORE_PN += "${PN}-conf" | |
| ALLOW_EMPTY:${PN}-conf = "1" |
| do_install() { | ||
| install -d ${D}${base_libdir}/rdk | ||
| install -d ${D}${sysconfdir} ${D}${sysconfdir}/rfcdefaults | ||
| install -m 0755 ${S}/uploadDumps.sh ${D}${base_libdir}/rdk | ||
| install -m 0755 ${WORKDIR}/git/uploadDumps.sh ${D}${base_libdir}/rdk |
There was a problem hiding this comment.
do_install() creates ${sysconfdir}/rfcdefaults (and ${sysconfdir}) but the recipe doesn’t install any files into those directories, and they’re not captured by any FILES: entry. Empty directories typically won’t be packaged, so this install step is ineffective. Either install the intended default/config files into these directories (and package them, likely in ${PN}-conf), or remove the unused directory creation.
RDKEMW-14025: Back-merge Release Branch to 'develop' for MW 8.5.2.0 Monthly Release
No description provided.