subtree updates
meta-security: a397a38ed9..53c5cc794f:
Anton Antonov (2):
Fix PACKAGECONFIG check in Parsec OEQA tests
Flush caches after OEQA tests
Armin Kuster (6):
checksecurity: update to 2.0.16
krill: forced to inclued fetch hashes.
suricata: Fixup to work within the recent crate changes.
suricata: Missed on crate depends
parsec-tool: update SRC_URI hash
parsec-service: fix SRC_URI hash
Gowtham Suresh Kumar (2):
meta-parsec: Disable RSA-OAEP OEQA tests for Parsec PKCS11 backend
parsec-service: Update parsec recipes to 1.2.0 and parsec-tool to 0.6.0
Patrick Williams (1):
libwhisker2-perl: adjust perl-version variable
meta-openembedded: 17243e70c8..c5f330bc9a:
Alex Yao (3):
lcov: Fix Perl Path
lcov: Upgrade 1.14 -> 1.16
lcov: Fix homepage
Ari Parkkila (1):
python3-appdirs: add native and nativesdk to BBCLASSEXTEND
Arsalan H. Awan (1):
meta-networking/licenses/netperf: remove unused license
Bartosz Golaszewski (11):
reboot-mode: put the build artifacts in ${B}
libgpiod: enable all features for ptest
libgpiod: drop unneeded S assignment
libgpiod: generalize the local files directories
libgpiod: update to v2.0.1
python3-gpiod: don't hardcode the project version in recipe
python3-gpiod: add missing run-time dependencies
libgpiod: install the libgpiosim header
python3-gpiod: fetch sources from pypi
libgpiod: fold libgpiod-src.inc into libgpiod.inc
libgpiod: remove test executables from ${bindir}
Chen Qi (1):
android-tools: fix systemd service setting
Enrico Scholz (1):
sox: remove ffmpeg dependency
Etienne Cordonnier (4):
uutils-coreutils: Add crates checksum
uutils-coreutils: remove obsolete comment
uutils-coreutils: upgrade 0.0.17 -> 0.0.18
uutils-coreutils: disable musl support
Ever ATILANO (4):
meta-python: python3-path: Add ptest
meta-python: python3-lorem: Add ptest
meta-oe: recipes-support: dc: Add ptest
meta-oe: recipes-extended: bitwise: Add ptest
Gianfranco Costamagna (1):
vbxguestdrivers: upgrade 7.0.4 -> 7.0.8
Jasper Orschulko (1):
python3-gcovr: Add missing runtime dependency
Jayanth Othayoth (1):
etcd-cpp-apiv3: add recipe
Johannes Kirchmair (1):
redirect unwanted error message in nginx install
Johannes Pointner (1):
python3-pyzstd: add new recipe
Kai Kang (16):
xfce4-taskmanager: 1.5.2 -> 1.5.5
xfce4-terminal: 1.0.0 -> 1.0.4
syslog-ng: not deliver syslog-ng-update-virtualenv
xfce4-notifyd: 0.6.3 -> 0.8.2
xfce4-screenshooter: 1.9.10 -> 1.10.3
thunar: 4.18.0 -> 4.18.4
thunar-media-tags-plugin: 0.3.0 -> 0.4.0
libxfce4util: 4.18.0 -> 4.18.1
libxfce4ui: 4.18.0 -> 4.18.3
xfce4-settings: 4.18.0 -> 4.18.2
xfce4-session: 4.18.0 -> 4.18.2
xfce4-panel: 4.18.0 -> 4.18.3
thunar-archive-plugin: 0.5.0 -> 0.5.1
xfce4-power-manager: 4.18.0 -> 4.18.1
garcon: 4.18.0 -> 4.18.1
xfce4-screensaver: 4.16.0 -> 4.18.1
Khem Raj (36):
krb5: Fix build with autoconf 2.72
cyrus-sasl: Fix autoconf patch to work with new autoconf 2.72
gmime: Update to 3.2.13
imagemagick: Update to 7.1.1
mpv: Upgrade to 0.35.1
fwknop: Use pkg-config instead of gpgme-config
fwknop: Fix AS_IF configure syntax
libstemmer: Update to 2.2.0
libidn: Update largefile m4 macros
emacs: Fix build with autconf 2.72+
ptest-packagelists-meta-oe: Remove minicoredumper from PTESTS_FAST_META_OE on musl
poco: Remove pushd/popd from run-ptest
surf: Fix build with gtkwebkit 2.40
libio-pty-perl: Fix build with musl/clang
meta-gnome: Update patch status for several recipes
libnet-ssleay-perl: Fix patch upstream status
meta-xfce: Fix missing upstream status in patches
meta-multimedia: Fix missing upstream status in several patches
meta-webserver: Fix missing upstream status on patches
babl: Drop clang10 workaround for mips/rv64
babl: Package /usr/lib/babl-0.1/ directory
libtinyxml2: Add ptest support
ptest-packagelists-meta-oe: Add libtinyxml2
minifi-cpp: Always use stat on 64bit linux
libdnet: Upgrade to 1.16.3
python3-pyruvate: regenerate with updated bbclass
monkey,webmin: Fix upstream patch status
python3-pyruvate: Upgrade to 1.2.1
onig: Ignore .debug directories while finding ptests
python3-h5py: Fix TMPDIR references in dbg files
python3-pandas: Fix TMPDIR references in dbg files
fwupd: Do not emit build time paths into generated headers
libcereal: Fix TMPDIR leaking into debug_str section
xmlrpc-c: Upgrade to 1.59.01
grilo: Fix buildpaths in generated header file
python3-click: Fix ptest failure
Leon Anavi (2):
libpcsc-perl: Add recipe
pcsc-tools: Add runtime dependencies
Linus Jacobson (1):
khronos-cts: Replace wayland feature dependancy with vulkan
Markus Volk (40):
nv-codec-headers: add clean target to Makefile
flatpak: update 1.15.3 -> 1.15.4
libcamera: re-introduce fix for gcc-13
polkit-gnome: add recipe
eog: update 43.2 -> 44.0
evince: update 43.1 -> 44.0
gdm: update 43.0 -> 44.0
gnome-calculator: update 43.0.1 -> 44.0
gnome-calendar: update 43.1 -> 44.0
gnome-desktop: update 43 -> 44.0
gnome-disk-utility: update 43.0 -> 44.0
gnome-font-viewer: update 43.0 -> 44.0
gnome-online-accounts: update 3.46.0 -> 3.48.0
gnome-photos: update 43.0 -> 44.0
gnome-session: update 43.0 -> 44.0
gnome-settings-daemon: update 43.0 -> 44.0
gnome-shell-extensions: update 43.1 -> 44.0
gnome-software: update 43.4 -> 44.0
gnome-terminal: update 3.46.7 -> 3.48.0
gnome-text-editor: update 43.1 -> 44.0
tracker-miners: update 3.4.2 -> 3.5.0
zenity: update 3.43.0 -> 3.44.0
xdg-desktop-portal-gnome: update 43.1 -> 44.0
gedit: update 43.2 -> 44.2
evolution-data-server: build oauth with gtk+3
file-roller: set cpio path manually
libdecor: update 1.1.0 -> 1.1.99
freerdp: set PROXY_PLUGINDIR
libnfs: add recipe
pipewire: update 0.3.67 -> 0.3.68
iwd: update 2.3 -> 2.4
mozjs: update 102.5.0 -> 102.9.0
glibmm: fix reproducibility issues
adw-gtk3: add recipe
xdg-desktop-portal-wlr: update
pipewire: remove 'inherit gsettings'
polkit: update SRC_URI
webp-pixbuf-loader: update 0.2.0 -> 0.2.4
udisks2: add PACKAGECONFIGs for btrfs,lvm2 and lsm
pipewire: update 0.3.68 -> 0.3.70
Martin Jansa (7):
zsh: fix installed-vs-shipped with multilib
restinio: fix S variable in multilib builds
mongodb: fix chown user for multilib builds
pahole: respect libdir
lvgl,lv-lib-png,lv-drivers: fix installed-vs-shipped QA issue with multilib
dleyna-{server,renderer}: fix dev-so QA issue with multilib
lirc: fix do_install with multilib
Mingli Yu (2):
mcelog: improve the ptest output
php: Fix GCC 12 -Og
Peter Johennecken (1):
nginx: added packagegroup for webdav module
Peter Kjellerstedt (5):
python3-crc32c: Correct the license information
paho-mqtt-cpp: Improve the license information
autossh: Correct the license information
paho-mqtt-c: Improve the license information
recipes: Remove double protocol= from SRC_URIs
Peter Marko (1):
ntp: whitelist CVE-2019-11331
Petr Gotthard (2):
cockpit: upgrade 276 -> 289
nftables: upgrade 1.0.6 -> 1.0.7
Randolph Sapp (1):
glfw: add packageconfig and wayland dependencies
Steffen Trumtrar (3):
openocd: 0.11->0.12
openocd: fix jimtcl url
openocd: enable jtag-vpi and buspirate
Tim Orling (11):
cli11: do not inherit ptest
span-lite: do not inherit ptest
ptest-packagelists-meta-oe.inc: add ptest recipes
meta-oe-ptest*-image: enable BBCLASSEXTEND parallel execution
ptest-packagelists-meta-python.inc: add ptest recipes
meta-python-ptest*-image: enable BBCLASSEXTEND parallel execution
python3-aspectlib: fix ptest
ptest-packagelists-meta-perl.inc: add ptest recipes
recipes-perl/packagegroups: move to recipes-core/
recipes-perl/images: move to recipes-core
meta-perl-ptest*-image: enable BBCLASSEXTEND parallel execution
Ulrich Ölmann (1):
jwt-cpp: enable usage in an SDK
Valeria Petrov (1):
apache2: upgrade 2.4.56 -> 2.4.57
Virendra Thakur (2):
p7zip: fix for CVE-2018-5996
p7zip: Fix for CVE-2016-9296
Wang Mingyu (117):
abseil-cpp: upgrade 20230125.1 -> 20230125.2
libbytesize: upgrade 2.7 -> 2.8
gegl: upgrade 0.4.42 -> 0.4.44
ctags: upgrade 6.0.20230319.0 -> 6.0.20230402.0
libdeflate: upgrade 1.17 -> 1.18
libldb: upgrade 2.7.1 -> 2.7.2
ndisc6: upgrade 1.0.6 -> 1.0.7
libpfm4: upgrade 4.12.0 -> 4.13.0
libtraceevent: upgrade 1.7.1 -> 1.7.2
nginx: upgrade 1.23.3 -> 1.23.4
links: upgrade 2.28 -> 2.29
python3-pyproj: upgrade 3.4.1 -> 3.5.0
ostree: upgrade 2023.1 -> 2023.2
openvpn: upgrade 2.6.1 -> 2.6.2
python3-aenum: upgrade 3.1.11 -> 3.1.12
python3-argcomplete: upgrade 3.0.0 -> 3.0.5
python3-cassandra-driver: upgrade 3.25.0 -> 3.26.0
python3-astroid: upgrade 2.15.0 -> 2.15.1
python3-cmake: upgrade 3.26.0 -> 3.26.1
python3-dateparser: upgrade 1.1.7 -> 1.1.8
python3-google-api-python-client: upgrade 2.81.0 -> 2.83.0
python3-elementpath: upgrade 4.0.1 -> 4.1.0
python3-googleapis-common-protos: upgrade 1.58.0 -> 1.59.0
python3-httplib2: upgrade 0.21.0 -> 0.22.0
python3-google-auth: upgrade 2.16.2 -> 2.17.1
python3-ipython: upgrade 8.11.0 -> 8.12.0
python3-imageio: upgrade 2.26.0 -> 2.27.0
python3-pychromecast: upgrade 13.0.4 -> 13.0.6
python3-jdatetime: upgrade 4.1.0 -> 4.1.1
python3-luma-oled: upgrade 3.11.0 -> 3.12.0
python3-pydantic: upgrade 1.10.6 -> 1.10.7
python3-pymodbus: upgrade 3.2.1 -> 3.2.2
python3-pymisp: upgrade 2.4.169.2 -> 2.4.169.3
python3-pywbemtools: upgrade 1.1.1 -> 1.2.0
python3-redis: upgrade 4.5.1 -> 4.5.4
python3-regex: upgrade 2022.10.31 -> 2023.3.23
python3-typeguard: upgrade 3.0.1 -> 3.0.2
python3-sentry-sdk: upgrade 1.17.0 -> 1.18.0
python3-rich: upgrade 13.3.2 -> 13.3.3
python3-watchdog: upgrade 2.3.1 -> 3.0.0
feh: upgrade 3.9.1 -> 3.10
c-periphery: upgrade 2.3.1 -> 2.4.0
grilo-plugins: upgrade 0.3.15 -> 0.3.16
hwdata: upgrade 0.368 -> 0.369
hwloc: upgrade 2.9.0 -> 2.9.1
libconfig-tiny-perl: upgrade 2.28 -> 2.29
mg: upgrade 20221112 -> 20230406
python3-pillow: upgrade 9.4.0 -> 9.5.0
python3-websockets: upgrade 10.4 -> 11.0.1
poppler: upgrade 23.03.0 -> 23.04.0
python3-alembic: upgrade 1.10.2 -> 1.10.3
python3-astroid: upgrade 2.15.1 -> 2.15.2
python3-coverage: upgrade 7.2.2 -> 7.2.3
python3-google-api-python-client: upgrade 2.83.0 -> 2.84.0
python3-google-auth: upgrade 2.17.1 -> 2.17.2
python3-imgtool: upgrade 1.9.0 -> 1.10.0
python3-pychromecast: upgrade 13.0.6 -> 13.0.7
python3-simplejson: upgrade 3.18.4 -> 3.19.1
python3-networkx: upgrade 3.0 -> 3.1
tesseract: upgrade 5.3.0 -> 5.3.1
python3-zeroconf: upgrade 0.47.4 -> 0.55.0
python3-web3: upgrade 6.0.0 -> 6.1.0
python3-sqlalchemy: upgrade 2.0.7 -> 2.0.9
python3-sentry-sdk: upgrade 1.18.0 -> 1.19.1
hdf5: Fix install conflict when enable multilib.
capnproto: upgrade 0.10.3 -> 0.10.4
ctags: upgrade 6.0.20230402.0 -> 6.0.20230416.0
mctp: upgrade 1.0 -> 1.1
php: upgrade 8.2.4 -> 8.2.5
openvpn: upgrade 2.6.2 -> 2.6.3
python3-croniter: upgrade 1.3.8 -> 1.3.14
python3-diskcache: upgrade 5.4.0 -> 5.5.1
python3-cmake: upgrade 3.26.1 -> 3.26.3
python3-elementpath: upgrade 4.1.0 -> 4.1.1
python3-google-api-python-client: upgrade 2.84.0 -> 2.85.0
python3-google-auth: upgrade 2.17.2 -> 2.17.3
python3-protobuf: upgrade 4.22.1 -> 4.22.3
python3-web3: upgrade 6.1.0 -> 6.2.0
python3-rich: upgrade 13.3.3 -> 13.3.4
python3-pymisp: upgrade 2.4.169.3 -> 2.4.170
python3-xlsxwriter: upgrade 3.0.9 -> 3.1.0
python3-zeroconf: upgrade 0.55.0 -> 0.56.0
remmina: upgrade 1.4.29 -> 1.4.30
tbb: upgrade 2021.8.0 -> 2021.9.0
sip: upgrade 6.7.7 -> 6.7.8
tcpdump: upgrade 4.99.3 -> 4.99.4
tcsh: upgrade 6.24.07 -> 6.24.10
evolution-data-server: upgrade 3.48.0 -> 3.48.1
babl: upgrade 0.1.102 -> 0.1.104
gensio: upgrade 2.6.2 -> 2.6.4
libopus: upgrade 1.3.1 -> 1.4
network-manager-applet: upgrade 1.30.0 -> 1.32.0
networkmanager: upgrade 1.42.4 -> 1.42.6
opencl-headers: upgrade 2023.02.06 -> 2023.04.17
c-periphery: upgrade 2.4.0 -> 2.4.1
mbw: upgrade 1.5 -> 2.0
libmodule-build-tiny-perl: upgrade 0.039 -> 0.043
python3-periphery: upgrade 2.3.0 -> 2.4.1
python3-astroid: upgrade 2.15.2 -> 2.15.3
python3-diskcache: upgrade 5.5.1 -> 5.6.1
python3-engineio: upgrade 4.4.0 -> 4.4.1
python3-soupsieve: upgrade 2.4 -> 2.4.1
python3-google-api-python-client: upgrade 2.85.0 -> 2.86.0
python3-mock: upgrade 5.0.1 -> 5.0.2
python3-pyalsaaudio: upgrade 0.9.2 -> 0.10.0
python3-icu: upgrade 2.10.2 -> 2.11
python3-pymisp: upgrade 2.4.170 -> 2.4.170.1
python3-python-vlc: upgrade 3.0.18121 -> 3.0.18122
python3-sentry-sdk: upgrade 1.19.1 -> 1.20.0
python3-pyscaffold: upgrade 4.4 -> 4.4.1
python3-websockets: upgrade 11.0.1 -> 11.0.2
python3-tornado: upgrade 6.2 -> 6.3
redis: upgrade 7.0.10 -> 7.0.11
python3-xmlschema: upgrade 2.2.2 -> 2.2.3
samba: upgrade 4.18.1 -> 4.18.2
ser2net: upgrade 4.3.11 -> 4.3.12
sip: upgrade 6.7.8 -> 6.7.9
Wentao Zhang (2):
jemalloc: include the missing shell scripts and source the corresponds shell scripts for some test cases.
nss: fix failed test of nss.
Wolfgang Meyer (2):
qrencode: add PACKAGECONFIG for command line tools
qrencode: enable native build
Yi Zhao (1):
samba: upgrade 4.18.0 -> 4.18.1
Yogita Urade (1):
dlt-daemon: fix CVE-2023-26257
Zoltán Böszörményi (2):
hplip: Fix installation and QA
libgusb: Allow building in native mode
poky: 0907793d5e..cce6db2a59:
Alex Kiernan (2):
cargo_common.bbclass: Support local github repos
rust: Upgrade 1.68.1 -> 1.68.2
Alexander Kanavin (5):
rust: do not run separate build/install steps
rust: install llvm item only once
rust: update 1.67.1 -> 1.68.1
ffmpeg: update 5.1.2 -> 6.0
meta/recipes: ensure all recipes have a SUMMARY
Arslan Ahmad (1):
kernel-fitimage: Fix the default dtb config check
Bartosz Golaszewski (5):
python3-pyproject-hooks: add missing run-time dependencies
python3-packaging: add missing run-time dependencies
python3-manifest: add tomllib
python3-manifest: add ensurepip
python3-build: add missing run-time dependencies
Bruce Ashfield (7):
kernel: improve initramfs bundle processing time
linux-yocto/6.1: update to v6.1.23
linux-yocto/5.15: update to v5.15.106
linux-yocto/6.1: update to v6.1.24
linux-yocto/5.15: update to v5.15.107
linux-yocto/6.1: update to v6.1.25
linux-yocto/5.15: update to v5.15.108
Chen Qi (1):
bitbake: runqueue: fix PSI check calculation
Chris Elledge (1):
busybox: move hwclock init earlier in startup
Denys Dmytriyenko (2):
xz: upgrade 5.4.1 -> 5.4.2
grep: upgrade 3.9 -> 3.10
Dit Kozmaj (2):
wic: use part_name when defined
selftest: wic: Add test for --part-name argument
Dmitry Baryshkov (1):
linux-firmware: upgrade 20230210 -> 20230404
Enrico Jörns (10):
oeqa/selftest/cases/runqemu: update imports
oeqa/targetcontrol: fix misspelled RuntimeError
oeqa/targetcontrol: do not set dump_host_cmds redundantly
oeqa/targetcontrol: remove unused imports
oeqa/utils/commands: fix usage of undefined EPIPE
oeqa/utils/commands: remove unused imports
oeqa/utils/qemurunner: replace hard-coded user 'root' in debug output
oeqa/utils/qemurunner: limit precision of timing debugging output
oeqa/utils/qemurunner: fix undefined TimeoutExpired
oeqa: whitespace and indentation cleanups
Enrico Scholz (2):
bitbake: fetch2/crate: create versioned 'name' entries
bitbake: cooker: do not abort on single ctrl-c
Fabio Estevam (1):
u-boot: Upgrade to 2023.04
Frank WOLFF (1):
logrotate: add ptest support
Frederic Martinsons (6):
cargo_common.bbclass: add support of user in url for patch
devtool: add support for multiple git url inside a cargo based recipe
patch: support of git patches when the source uri contained subpath parameter
meta-selftest: provide a recipe for zvariant
cargo-update-recipe-crates: force name overrides
bitbake: fetch2: Display all missing checksum at once
Geoffrey GIRY (1):
cve-extra-exclusions: ignore inapplicable linux-yocto CVEs
Jan Vermaete (1):
cve-update-nvd2-native: added the missing http import
Kai Kang (2):
libnotify: remove dependency dbus
bitbake: bitbake: ConfHandler: Allow variable flag name with a single character
Khem Raj (16):
e2fsprogs: Define 64bit off_t on rv32
ffmpeg: Disable asm and rvv on riscv32
cargo: Fix build on musl/riscv
musl: Update to latest trunk
systemd: Refresh a musl patch to remove patch-fuzz with 253.3
musl-locales: Add Canadian French (fr_CA) locale support
gawk: Disable known ptest fails on musl
gawk: Remove redundant patch
gawk: Add skipped.txt to emit test to ignore
libxml2: Disable icu tests on musl
apt-util: Fix ptest on musl
lua: Disable locale dependent tests on musl
attr: Disable attr.test on musl
acl: Disable misc.test on musl
fts: Fix typo in summary
m4: Do not munge locale in ptests for musl
Lee Chee Yang (2):
migration-guides: add release-notes for 4.0.9
release-notes-4.2: update RC3 changes
Luca Ceresoli (1):
devicetree.bbclass: fix typo
Marek Vasut (1):
cpio: Fix wrong CRC with ASCII CRC for large files
Mark Asselstine (2):
oeqa/selftest/bblogging: uncomment python stdout checks
python3-psutil: fix-up -tests runtime dependencies
Mark Hatle (1):
sanity.bbclass: Update minimum gcc version to 8.0
Markus Volk (1):
at-spi2-core: update 2.46.0 -> 2.48.0
Marta Rybczynska (1):
cve-update-nvd2-native: new CVE database fetcher
Martin Jansa (8):
selftest: imagefeatures.py: don't mix tabs and spaces for indentation
selftest: runqemu: better check for ROOTFS: in the log
selftest: runqemu: use better error message when asserts fail
runqemu: respect IMAGE_LINK_NAME
python3-cryptography-crates.inc: regenerate with updated bbclass
python3-bcrypt-crates.inc: regenerate with updated bbclass
selftest: efibootpartition.py: fix QEMU_USE_KVM usage
populate_sdk_ext.bbclass: set METADATA_REVISION with an DISTRO override
Michael Opdenacker (20):
manuals: update disk space requirements
manuals: add rm_work disk space data
manuals: add minimum RAM requirements
ref-manual: release-process.rst: update testing section
ref-manual: release-process.rst: major updates
manuals: add "LTS" term
manuals: improve and fix target for supported distros
ref-manual: variables: document VOLATILE_TMP_DIR
migration-guides: update 4.2 migration and release notes
ref-manual: classes.rst: document devicetree.bbclass
ref-manual: remove unused and obsolete file
ref-manual: variables.rst: add wikipedia shortcut for "getty"
overview-manual: update section about source archives
manuals: document SPDX_CUSTOM_ANNOTATION_VARS
overview-manual: development-environment: update text and screenshots
ref-manual: add "Mixin" term
migration-guides: release-notes-4.0.9.rst: add missing SPDX info
migration-guides: fixes and improvements to 4.2 release notes
manuals: expand init manager documentation
ref-manual: variables.rst: document KERNEL_DANGLING_FEATURES_WARN_ONLY
Mikko Rapeli (2):
oeqa ping.py: avoid busylooping failing ping command
oeqa ping.py: fail test if target IP address has not been set
Mingli Yu (3):
report-error: catch Nothing PROVIDES error
bitbake: event: add bb.event.ParseError
report-error: make it catch ParseError error
Ola x Nilsson (2):
patch.py: Use shlex instead of deprecated pipe
package: Use shlex instead of deprecated pipe
Pascal Bach (1):
cmake: add CMAKE_SYSROOT to generated toolchain file
Paul Eggleton (20):
bitbake: bitbake-user-manual: document BB_CACHEDIR
bitbake: bitbake-user-manual: add addpylib and BB_GLOBAL_PYMODULES
bitbake: bitbake-user-manual: add BB_HASH_CODEPARSER_VALS
ref-manual: add new SDK_ZIP_OPTIONS variable
ref-manual: Add new RUST_CHANNEL variable
ref-manual: update for IMAGE_MACHINE_SUFFIX addition
dev/ref-manual: Remove references to INC_PR
ref-manual: add BB_CACHEDIR
migration-guides: Add coverage of addpylib directive
ref-manual: Remove references to package_tar class
ref-manual: add missing QA checks from previous releases
ref-manual: document new patch-status-* QA checks
ref-manual: add FIT_CONF_DEFAULT_DTB
ref-manual: add section link also to buildtools-extended entry
ref-manual: add SDK_ARCHIVE_TYPE
ref-manual: move Initramfs entry from variables to terms
dev/ref-manual: Document INIT_MANAGER
migration-guides: extend migration guide for 4.2
release-notes-4.1: fix some CVE links
release-notes-4.2: add release notes
Pavel Zhukov (2):
scripts/rpm2cpio.sh: Use bzip2 instead of bunzip2
scripts/runqemu: Add possibility to disable network
Pawan Badganchi (1):
tiff: Add fix for CVE-2022-4645
Peter Kjellerstedt (1):
cargo-update-recipe-crates.bbclass: Do not add name= to crate:// URIs
Petr Kubizňák (12):
harfbuzz: depend on glib-2.0-native
json-glib: depend on glib-2.0-native
libgudev: depend on glib-2.0-native
at-spi2-core: depend on glib-2.0-native
avahi: add missing dependencies
graphene: add gobject-types PACKAGECONFIG
python3-pygobject: depend on gobject-introspection
gconf: add missing dependencies
webkitgtk: add missing dependencies
libnotify: depend on glib-2.0-native
vte: depend on glib-2.0-native
gobject-introspection: reduce dependencies
Piotr Łobacz (1):
libarchive: Enable acls, xattr for native as well as target
Qiu Tingting (1):
coreutils: Delete gcc sysroot parameter for ptest on target
Randolph Sapp (1):
wic/bootimg-efi: if fixed-size is set then use that for mkdosfs
Richard Purdie (11):
oeqa/loader: Ensure module names don't contain uppercase characters
zvariant: Exclude from world for now to avoid reproducibility issues
xdg-utils: Add a patch for CVE-2020-27748
cve-extra-exclusions.inc: Exclude some issues not present in linux-yocto
xdg-utils: Fix CVE number
bitbake: bitbake: Bump to version 2.4.0
build-appliance-image: Update to master head revision
poky.conf: Bump version for 4.2 mickledore release
build-appliance-image: Update to master head revision
build-appliance-image: Update to master head revision
cve-exclusions: Document some further linux-yocto CVE statuses
Ross Burton (11):
llvm: remove redundant CMake variables
libgit2: clean up CMake variables
webkitgtk: clean up Python variables
oeqa/runtime: clean up deprecated backslash expansion
classes-recipe/setuptools3-base: clean up FILES assignments
bind: don't package non-existant .la files into -staticdev
gstreamer1.0-plugins: package the internal libraries explicitly
Increase minimum GCC version to 8.0
machine/qemuarm*: don't explicitly set vmalloc
screen: backport fix for CVE-2023-24626
go: backport fix for CVE-2023-24537
Soumya (1):
shadow: Fix can not print full login timeout message
Svend Meyland Nicolaisen (1):
bitbake: npmsw fetcher: Avoid instantiating Fetch class if url list is empty
Thomas De Schampheleire (3):
qemu: make tracetool-generated output reproducible
qemu: retain default trace backend if 'ust' is not enabled
qemu: rename deprecated --enable-trace-backend configure option
Thomas Roos (2):
oeqa/selftest: Use SSTATE_DIR of parent build dir
oeqa/utils/metadata.py: Fix running oe-selftest running with no distro set
Tobias Hagelborn (1):
lib/oe/gpg_sign.py: Avoid race when creating .sig files in detach_sign
Ulrich Ölmann (3):
kernel-dev: fix typos
ref-manual: classes.rst: fix typo
bitbake: bitbake-user-manual: fix BB_RUNFMT's default value
Wang Mingyu (46):
apr: upgrade 1.7.2 -> 1.7.3
bind: upgrade 9.18.12 -> 9.18.13
cracklib: upgrade 2.9.10 -> 2.9.11
libhandy: upgrade 1.8.1 -> 1.8.2
libpcap: upgrade 1.10.3 -> 1.10.4
libsdl2: upgrade 2.26.3 -> 2.26.5
libsoup: upgrade 3.2.2 -> 3.4.0
mpg123: upgrade 1.31.2 -> 1.31.3
acpica: upgrade 20220331 -> 20230331
ccache: upgrade 4.7.4 -> 4.8
libcap: upgrade 2.67 -> 2.68
man-pages: upgrade 6.03 -> 6.04
mtools: upgrade 4.0.42 -> 4.0.43
pango: upgrade 1.50.13 -> 1.50.14
ruby: upgrade 3.2.1 -> 3.2.2
spirv-headers: upgrade 1.3.239.0 -> 1.3.243.0
spirv-tools: upgrade 1.3.239.0 -> 1.3.243.0
sqlite3: upgrade 3.41.0 -> 3.41.2
texinfo: upgrade 7.0.2 -> 7.0.3
wayland: upgrade 1.21.0 -> 1.22.0
wpebackend-fdo: upgrade 1.14.0 -> 1.14.2
xserver-xorg: upgrade 21.1.7 -> 21.1.8
xwayland: upgrade 22.1.8 -> 23.1.1
vala: upgrade 0.56.4 -> 0.56.6
python3-cython: upgrade 0.29.33 -> 0.29.34
python3-hypothesis: upgrade 6.68.2 -> 6.71.0
python3-importlib-metadata: upgrade 6.0.0 -> 6.2.0
python3-installer: upgrade 0.6.0 -> 0.7.0
python3-markdown: upgrade 3.4.1 -> 3.4.3
python3-pathspec: upgrade 0.11.0 -> 0.11.1
python3-pygobject: upgrade 3.42.2 -> 3.44.1
python3-pyopenssl: upgrade 23.0.0 -> 23.1.1
python3-pytz: upgrade 2022.7.1 -> 2023.3
python3-setuptools: upgrade 67.6.0 -> 67.6.1
mesa: upgrade 23.0.0 -> 23.0.2
systemd: upgrade 253.1 -> 253.3
libgit2: upgrade 1.6.3 -> 1.6.4
libsolv: upgrade 0.7.23 -> 0.7.24
libxml2: upgrade 2.10.3 -> 2.10.4
boost: upgrade 1.81.0 -> 1.82.0
ofono: upgrade 2.0 -> 2.1
python3-dtschema: upgrade 2023.1 -> 2023.4
python3-packaging: upgrade 23.0 -> 23.1
python3-pytest: upgrade 7.2.2 -> 7.3.1
stress-ng: upgrade 0.15.06 -> 0.15.07
gdb: Fix conflict of sframe-spec.info
Wentao Zhang (1):
python3: Fix failing sysconfig.py test on x86(64 bit) using lib64 as baselib by updating test_sysconfig for posix_user purelib
Xiangyu Chen (1):
shadow: backport patch to fix CVE-2023-29383
Yoann Congal (4):
cve-extra-exclusions: ignore inapplicable linux-yocto CVEs
cve-exclusions_6.1: ignore patched CVE-2022-38457 & CVE-2022-40133
cve-extra-exclusion: ignore disputed CVE-2023-23005
cve-extra-exclusions: linux-yocto: ignore fixed CVE-2023-1652 & CVE-2023-1829
Zhixiong Chi (1):
libpam: Fix the xtests/tst-pam_motd[1|3] failures
bkylerussell@gmail.com (1):
kernel-devsrc: depend on python3-core instead of python3
meta-raspberrypi: 3afdbbf782..bf948e0aa8:
Jesse Visser (2):
recipe-bsp: Add support for Raspberry Pi Camera Module v3
docs: Update extra build config Raspberry Pi Camera Module section
Rodrigo M. Duarte (1):
python3-adafruit-blinka: Fix the correct python recipes path in dynamic-layer sub-dir
meta-arm: 9b6c8c95e4..c60d7865dd:
Adam Johnston (3):
arm-bsp/optee: Update OP-TEE TA devkit to 3.20 for N1SDP
CI: Remove ts-smm-gateway from N1SDP
arm-bsp/trusted-firmware-a: Update N1SDP to v2.8.0
Denys Dmytriyenko (4):
optee-os-tadevkit: remove old unused patches
optee-client: add 3.20.0 version
optee-test: add 3.20.0 version
optee-examples: add 3.20.0 version
Emekcan Aras (4):
arm-bsp/trusted-firmware-m: apply patches correctly from external repos
arm-bsp/trusted-firmware-m: Switch to TF-M BL1 in Corstone1000
arm-bsp/corstone1000: add OTP config for fvp
arm-bsp/trusted-firmware-m: Increase assets number for corstone1000
Jon Mason (8):
CI: dev kernel allow failure
arm/linux-yocto: remove IP_VS config fragment
CI: update to the latest kas version
CI: track mickledore branch
arm-bsp/tc1: Fix signed u-boot
arm-bsp/tc1: Add FVP support
arm/trusted-firmware-m-scripts: relocate to tfm directory
arm-bsp/tc1: disable signed kernel image
Peter Hoyes (1):
arm/scp-firmware: Add support for components other than SCP, MCP
Ross Burton (8):
arm/scp-firmware: add recipe for 2.11
arm-bsp/scp-firmware: move all machines to SCP 2.11
arm/scp-firmware: remove 2.10 recipe
arm/trusted-firmware-m: add the tf-m-extras repository that some machines need
arm/trusted-firmware-m: clean up environment flags
arm/trusted-firmware-m: package .elf files in PN-dbg
arm-bsp/trusted-firmware-m: enable for Total Compute on RSS
CI: add TF-M to TC build
Rui Miguel Silva (1):
arm-bsp/corstone1000: tf-m set/get fwu, private metadata using gpt
Xueliang Zhong (3):
arm-bsp/n1sdp-board-firmware: update to newer SHA
arm-bsp/optee-os: N1SDP support for optee-os 3.20
arm-bsp/n1sdp: use edk2-firmware 202211 version
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I68eb48f27b781da34c4a7636f9b3bb1507b46416
diff --git a/meta-openembedded/meta-oe/recipes-support/lcov/files/0001-geninfo-Add-intermediate-text-format-support.patch b/meta-openembedded/meta-oe/recipes-support/lcov/files/0001-geninfo-Add-intermediate-text-format-support.patch
deleted file mode 100644
index 9ac0770..0000000
--- a/meta-openembedded/meta-oe/recipes-support/lcov/files/0001-geninfo-Add-intermediate-text-format-support.patch
+++ /dev/null
@@ -1,898 +0,0 @@
-From ec3e1f411c332cbc2f2bc7ab7e2175ebf918b37a Mon Sep 17 00:00:00 2001
-From: Peter Oberparleiter <oberpar@linux.ibm.com>
-Date: Fri, 24 May 2019 16:56:52 +0200
-Subject: [PATCH 1/2] geninfo: Add intermediate text format support
-
-This change adds support for parsing the output of gcov's intermediate
-text file format as implemented by GCC versions 5 to 8. The use of the
-gcov intermediate format should increase processing speed. It also
-provides branch coverage data when using the --initial command line
-option.
-
-Users can control whether geninfo uses the intermediate format via the
-geninfo_intermediate configuration file option. Valid values are:
-
- 0: Use normal text format
- 1: Use intermediate format
- auto: Use intermediate format if available. This is the default.
-
-Signed-off-by: Peter Oberparleiter <oberpar@linux.ibm.com>
----
- bin/geninfo | 567 ++++++++++++++++++++++++++++++++++++++++++++-------
- lcovrc | 3 +
- man/lcovrc.5 | 24 +++
- 3 files changed, 521 insertions(+), 73 deletions(-)
-
-Upstream-Status: Backport
-Download URL: https://github.com/linux-test-project/lcov/commit/ebfeb3e179e450c69c3532f98cd5ea1fbf6ccba7
-
-diff --git a/bin/geninfo b/bin/geninfo
-index f41eaec..0276666 100755
---- a/bin/geninfo
-+++ b/bin/geninfo
-@@ -54,6 +54,8 @@ use warnings;
- use File::Basename;
- use File::Spec::Functions qw /abs2rel catdir file_name_is_absolute splitdir
- splitpath catpath/;
-+use File::Temp qw(tempfile tempdir);
-+use File::Copy qw(copy);
- use Getopt::Long;
- use Digest::MD5 qw(md5_base64);
- use Cwd qw/abs_path/;
-@@ -163,13 +165,13 @@ sub solve_relative_path($$);
- sub read_gcov_header($);
- sub read_gcov_file($);
- sub info(@);
-+sub process_intermediate($$$);
- sub map_llvm_version($);
- sub version_to_str($);
- sub get_gcov_version();
- sub system_no_output($@);
- sub read_config($);
- sub apply_config($);
--sub get_exclusion_data($);
- sub apply_exclusion_data($$);
- sub process_graphfile($$);
- sub filter_fn_name($);
-@@ -264,6 +266,8 @@ our $gcno_split_crc;
- our $func_coverage = 1;
- our $br_coverage = 0;
- our $rc_auto_base = 1;
-+our $rc_intermediate = "auto";
-+our $intermediate;
- our $excl_line = "LCOV_EXCL_LINE";
- our $excl_br_line = "LCOV_EXCL_BR_LINE";
-
-@@ -331,6 +335,7 @@ if ($config || %opt_rc)
- "geninfo_compat" => \$opt_compat,
- "geninfo_adjust_src_path" => \$rc_adjust_src_path,
- "geninfo_auto_base" => \$rc_auto_base,
-+ "geninfo_intermediate" => \$rc_intermediate,
- "lcov_function_coverage" => \$func_coverage,
- "lcov_branch_coverage" => \$br_coverage,
- "lcov_excl_line" => \$excl_line,
-@@ -460,15 +465,38 @@ if (system_no_output(3, $gcov_tool, "--help") == -1)
- }
-
- ($gcov_version, $gcov_version_string) = get_gcov_version();
-+$gcov_caps = get_gcov_capabilities();
-+
-+# Determine intermediate mode
-+if ($rc_intermediate eq "0") {
-+ $intermediate = 0;
-+} elsif ($rc_intermediate eq "1") {
-+ $intermediate = 1;
-+} elsif (lc($rc_intermediate) eq "auto") {
-+ # Use intermediate format if supported by gcov
-+ $intermediate = $gcov_caps->{'intermediate-format'} ? 1 : 0;
-+} else {
-+ die("ERROR: invalid value for geninfo_intermediate: ".
-+ "'$rc_intermediate'\n");
-+}
-+
-+if ($intermediate) {
-+ info("Using intermediate gcov format\n");
-+ if ($opt_derive_func_data) {
-+ warn("WARNING: --derive-func-data is not compatible with ".
-+ "intermediate format - ignoring\n");
-+ $opt_derive_func_data = 0;
-+ }
-+}
-
- # Determine gcov options
--$gcov_caps = get_gcov_capabilities();
- push(@gcov_options, "-b") if ($gcov_caps->{'branch-probabilities'} &&
- ($br_coverage || $func_coverage));
- push(@gcov_options, "-c") if ($gcov_caps->{'branch-counts'} &&
- $br_coverage);
- push(@gcov_options, "-a") if ($gcov_caps->{'all-blocks'} &&
-- $opt_gcov_all_blocks && $br_coverage);
-+ $opt_gcov_all_blocks && $br_coverage &&
-+ !$intermediate);
- if ($gcov_caps->{'hash-filenames'})
- {
- push(@gcov_options, "-x");
-@@ -599,7 +627,7 @@ foreach my $entry (@data_directory) {
- gen_info($entry);
- }
-
--if ($initial && $br_coverage) {
-+if ($initial && $br_coverage && !$intermediate) {
- warn("Note: --initial does not generate branch coverage ".
- "data\n");
- }
-@@ -768,6 +796,7 @@ sub gen_info($)
- my $prefix;
- my $type;
- my $ext;
-+ my $tempdir;
-
- if ($initial) {
- $type = "graph";
-@@ -798,16 +827,22 @@ sub gen_info($)
- $prefix = "";
- }
-
-+ $tempdir = tempdir(CLEANUP => 1);
-+
- # Process all files in list
- foreach $file (@file_list) {
- # Process file
-- if ($initial) {
-+ if ($intermediate) {
-+ process_intermediate($file, $prefix, $tempdir);
-+ } elsif ($initial) {
- process_graphfile($file, $prefix);
- } else {
- process_dafile($file, $prefix);
- }
- }
-
-+ unlink($tempdir);
-+
- # Report whether files were excluded.
- if (%excluded_files) {
- info("Excluded data for %d files due to include/exclude options\n",
-@@ -1058,10 +1093,12 @@ sub process_dafile($$)
-
- # Try to find base directory automatically if requested by user
- if ($rc_auto_base) {
-- $base_dir = find_base_from_graph($base_dir, $instr, $graph);
-+ $base_dir = find_base_from_source($base_dir,
-+ [ keys(%{$instr}), keys(%{$graph}) ]);
- }
-
-- ($instr, $graph) = adjust_graph_filenames($base_dir, $instr, $graph);
-+ adjust_source_filenames($instr, $base_dir);
-+ adjust_source_filenames($graph, $base_dir);
-
- # Set $object_dir to real location of object files. This may differ
- # from $da_dir if the graph file is just a link to the "real" object
-@@ -2017,6 +2054,299 @@ sub read_gcov_file($)
- }
-
-
-+#
-+# read_intermediate_text(gcov_filename, data)
-+#
-+# Read gcov intermediate text format in GCOV_FILENAME and add the resulting
-+# data to DATA in the following format:
-+#
-+# data: source_filename -> file_data
-+# file_data: concatenated lines of intermediate text data
-+#
-+
-+sub read_intermediate_text($$)
-+{
-+ my ($gcov_filename, $data) = @_;
-+ my $fd;
-+ my $filename;
-+
-+ open($fd, "<", $gcov_filename) or
-+ die("ERROR: Could not read $gcov_filename: $!\n");
-+ while (my $line = <$fd>) {
-+ if ($line =~ /^file:(.*)$/) {
-+ $filename = $1;
-+ chomp($filename);
-+ } elsif (defined($filename)) {
-+ $data->{$filename} .= $line;
-+ }
-+ }
-+ close($fd);
-+}
-+
-+
-+#
-+# intermediate_text_to_info(fd, data, srcdata)
-+#
-+# Write DATA in info format to file descriptor FD.
-+#
-+# data: filename -> file_data:
-+# file_data: concatenated lines of intermediate text data
-+#
-+# srcdata: filename -> [ excl, brexcl, checksums ]
-+# excl: lineno -> 1 for all lines for which to exclude all data
-+# brexcl: lineno -> 1 for all lines for which to exclude branch data
-+# checksums: lineno -> source code checksum
-+#
-+# Note: To simplify processing, gcov data is not combined here, that is counts
-+# that appear multiple times for the same lines/branches are not added.
-+# This is done by lcov/genhtml when reading the data files.
-+#
-+
-+sub intermediate_text_to_info($$$)
-+{
-+ my ($fd, $data, $srcdata) = @_;
-+ my $branch_num = 0;
-+ my $c;
-+
-+ return if (!%{$data});
-+
-+ print($fd "TN:$test_name\n");
-+ for my $filename (keys(%{$data})) {
-+ my ($excl, $brexcl, $checksums);
-+
-+ if (defined($srcdata->{$filename})) {
-+ ($excl, $brexcl, $checksums) = @{$srcdata->{$filename}};
-+ }
-+
-+ print($fd "SF:$filename\n");
-+ for my $line (split(/\n/, $data->{$filename})) {
-+ if ($line =~ /^lcount:(\d+),(\d+),?/) {
-+ # lcount:<line>,<count>
-+ # lcount:<line>,<count>,<has_unexecuted_blocks>
-+ if ($checksum && exists($checksums->{$1})) {
-+ $c = ",".$checksums->{$1};
-+ } else {
-+ $c = "";
-+ }
-+ print($fd "DA:$1,$2$c\n") if (!$excl->{$1});
-+
-+ # Intermediate text format does not provide
-+ # branch numbers, and the same branch may appear
-+ # multiple times on the same line (e.g. in
-+ # template instances). Synthesize a branch
-+ # number based on the assumptions:
-+ # a) the order of branches is fixed across
-+ # instances
-+ # b) an instance starts with an lcount line
-+ $branch_num = 0;
-+ } elsif ($line =~ /^function:(\d+),(\d+),([^,]+)$/) {
-+ next if (!$func_coverage || $excl->{$1});
-+
-+ # function:<line>,<count>,<name>
-+ print($fd "FN:$1,$3\n");
-+ print($fd "FNDA:$2,$3\n");
-+ } elsif ($line =~ /^function:(\d+),\d+,(\d+),([^,]+)$/) {
-+ next if (!$func_coverage || $excl->{$1});
-+
-+ # function:<start_line>,<end_line>,<count>,
-+ # <name>
-+ print($fd "FN:$1,$3\n");
-+ print($fd "FNDA:$2,$3\n");
-+ } elsif ($line =~ /^branch:(\d+),(taken|nottaken|notexec)/) {
-+ next if (!$br_coverage || $excl->{$1} ||
-+ $brexcl->{$1});
-+
-+ # branch:<line>,taken|nottaken|notexec
-+ if ($2 eq "taken") {
-+ $c = 1;
-+ } elsif ($2 eq "nottaken") {
-+ $c = 0;
-+ } else {
-+ $c = "-";
-+ }
-+ print($fd "BRDA:$1,0,$branch_num,$c\n");
-+ $branch_num++;
-+ }
-+ }
-+ print($fd "end_of_record\n");
-+ }
-+}
-+
-+
-+sub get_output_fd($$)
-+{
-+ my ($outfile, $file) = @_;
-+ my $fd;
-+
-+ if (!defined($outfile)) {
-+ open($fd, ">", "$file.info") or
-+ die("ERROR: Cannot create file $file.info: $!\n");
-+ } elsif ($outfile eq "-") {
-+ open($fd, ">&STDOUT") or
-+ die("ERROR: Cannot duplicate stdout: $!\n");
-+ } else {
-+ open($fd, ">>", $outfile) or
-+ die("ERROR: Cannot write to file $outfile: $!\n");
-+ }
-+
-+ return $fd;
-+}
-+
-+
-+#
-+# print_gcov_warnings(stderr_file, is_graph, map)
-+#
-+# Print GCOV warnings in file STDERR_FILE to STDERR. If IS_GRAPH is non-zero,
-+# suppress warnings about missing as these are expected. Replace keys found
-+# in MAP with their values.
-+#
-+
-+sub print_gcov_warnings($$$)
-+{
-+ my ($stderr_file, $is_graph, $map) = @_;
-+ my $fd;
-+
-+ if (!open($fd, "<", $stderr_file)) {
-+ warn("WARNING: Could not open GCOV stderr file ".
-+ "$stderr_file: $!\n");
-+ return;
-+ }
-+ while (my $line = <$fd>) {
-+ next if ($is_graph && $line =~ /cannot open data file/);
-+
-+ for my $key (keys(%{$map})) {
-+ $line =~ s/\Q$key\E/$map->{$key}/g;
-+ }
-+
-+ print(STDERR $line);
-+ }
-+ close($fd);
-+}
-+
-+
-+#
-+# process_intermediate(file, dir, tempdir)
-+#
-+# Create output for a single file (either a data file or a graph file) using
-+# gcov's intermediate option.
-+#
-+
-+sub process_intermediate($$$)
-+{
-+ my ($file, $dir, $tempdir) = @_;
-+ my ($fdir, $fbase, $fext);
-+ my $data_file;
-+ my $errmsg;
-+ my %data;
-+ my $fd;
-+ my $base;
-+ my $srcdata;
-+ my $is_graph = 0;
-+ my ($out, $err, $rc);
-+
-+ info("Processing %s\n", abs2rel($file, $dir));
-+
-+ $file = solve_relative_path($cwd, $file);
-+ ($fdir, $fbase, $fext) = split_filename($file);
-+
-+ $is_graph = 1 if (".$fext" eq $graph_file_extension);
-+
-+ if ($is_graph) {
-+ # Process graph file - copy to temp directory to prevent
-+ # accidental processing of associated data file
-+ $data_file = "$tempdir/$fbase$graph_file_extension";
-+ if (!copy($file, $data_file)) {
-+ $errmsg = "ERROR: Could not copy file $file";
-+ goto err;
-+ }
-+ } else {
-+ # Process data file in place
-+ $data_file = $file;
-+ }
-+
-+ # Change directory
-+ if (!chdir($tempdir)) {
-+ $errmsg = "Could not change to directory $tempdir: $!";
-+ goto err;
-+ }
-+
-+ # Run gcov on data file
-+ ($out, $err, $rc) = system_no_output(1 + 2 + 4, $gcov_tool,
-+ $data_file, @gcov_options, "-i");
-+ defined($out) && unlink($out);
-+ if (defined($err)) {
-+ print_gcov_warnings($err, $is_graph, {
-+ $data_file => $file,
-+ });
-+ unlink($err);
-+ }
-+ if ($rc) {
-+ $errmsg = "GCOV failed for $file";
-+ goto err;
-+ }
-+
-+ if ($is_graph) {
-+ # Remove graph file copy
-+ unlink($data_file);
-+ }
-+
-+ # Parse resulting file(s)
-+ for my $gcov_filename (glob("*.gcov")) {
-+ read_intermediate_text($gcov_filename, \%data);
-+ unlink($gcov_filename);
-+ }
-+
-+ if (!%data) {
-+ warn("WARNING: GCOV did not produce any data for $file\n");
-+ return;
-+ }
-+
-+ # Determine base directory
-+ if (defined($base_directory)) {
-+ $base = $base_directory;
-+ } else {
-+ $base = $fdir;
-+
-+ if (is_compat($COMPAT_MODE_LIBTOOL)) {
-+ # Avoid files from .libs dirs
-+ $base =~ s/\.libs$//;
-+ }
-+
-+ # Try to find base directory automatically if requested by user
-+ if ($rc_auto_base) {
-+ $base = find_base_from_source($base, [ keys(%data) ]);
-+ }
-+ }
-+
-+ # Apply base file name to relative source files
-+ adjust_source_filenames(\%data, $base);
-+
-+ # Remove excluded source files
-+ filter_source_files(\%data);
-+
-+ # Get data on exclusion markers and checksums if requested
-+ if (!$no_markers || $checksum) {
-+ $srcdata = get_all_source_data(keys(%data));
-+ }
-+
-+ # Generate output
-+ $fd = get_output_fd($output_filename, $file);
-+ intermediate_text_to_info($fd, \%data, $srcdata);
-+ close($fd);
-+
-+ chdir($cwd);
-+
-+ return;
-+
-+err:
-+ if ($ignore[$ERROR_GCOV]) {
-+ warn("WARNING: $errmsg!\n");
-+ } else {
-+ die("ERROR: $errmsg!\n")
-+ }
-+}
-+
-+
- # Map LLVM versions to the version of GCC gcov which they emulate.
-
- sub map_llvm_version($)
-@@ -2151,8 +2481,12 @@ sub int_handler()
- #
- # MODE & 1: suppress STDOUT
- # MODE & 2: suppress STDERR
-+# MODE & 4: redirect to temporary files instead of suppressing
- #
--# Return 0 on success, non-zero otherwise.
-+# Return (stdout, stderr, rc):
-+# stdout: path to tempfile containing stdout or undef
-+# stderr: path to tempfile containing stderr or undef
-+# 0 on success, non-zero otherwise
- #
-
- sub system_no_output($@)
-@@ -2161,14 +2495,31 @@ sub system_no_output($@)
- my $result;
- local *OLD_STDERR;
- local *OLD_STDOUT;
-+ my $stdout_file;
-+ my $stderr_file;
-+ my $fd;
-
- # Save old stdout and stderr handles
- ($mode & 1) && open(OLD_STDOUT, ">>&", "STDOUT");
- ($mode & 2) && open(OLD_STDERR, ">>&", "STDERR");
-
-- # Redirect to /dev/null
-- ($mode & 1) && open(STDOUT, ">", "/dev/null");
-- ($mode & 2) && open(STDERR, ">", "/dev/null");
-+ if ($mode & 4) {
-+ # Redirect to temporary files
-+ if ($mode & 1) {
-+ ($fd, $stdout_file) = tempfile(UNLINK => 1);
-+ open(STDOUT, ">", $stdout_file) || warn("$!\n");
-+ close($fd);
-+ }
-+ if ($mode & 2) {
-+ ($fd, $stderr_file) = tempfile(UNLINK => 1);
-+ open(STDERR, ">", $stderr_file) || warn("$!\n");
-+ close($fd);
-+ }
-+ } else {
-+ # Redirect to /dev/null
-+ ($mode & 1) && open(STDOUT, ">", "/dev/null");
-+ ($mode & 2) && open(STDERR, ">", "/dev/null");
-+ }
-
- debug("system(".join(' ', @_).")\n");
- system(@_);
-@@ -2181,8 +2532,18 @@ sub system_no_output($@)
- # Restore old handles
- ($mode & 1) && open(STDOUT, ">>&", "OLD_STDOUT");
- ($mode & 2) && open(STDERR, ">>&", "OLD_STDERR");
-+
-+ # Remove empty output files
-+ if (defined($stdout_file) && -z $stdout_file) {
-+ unlink($stdout_file);
-+ $stdout_file = undef;
-+ }
-+ if (defined($stderr_file) && -z $stderr_file) {
-+ unlink($stderr_file);
-+ $stderr_file = undef;
-+ }
-
-- return $result;
-+ return ($stdout_file, $stderr_file, $result);
- }
-
-
-@@ -2260,23 +2621,28 @@ sub apply_config($)
-
-
- #
--# get_exclusion_data(filename)
-+# get_source_data(filename)
- #
--# Scan specified source code file for exclusion markers and return
--# linenumber -> 1
--# for all lines which should be excluded.
-+# Scan specified source code file for exclusion markers and checksums. Return
-+# ( excl, brexcl, checksums ) where
-+# excl: lineno -> 1 for all lines for which to exclude all data
-+# brexcl: lineno -> 1 for all lines for which to exclude branch data
-+# checksums: lineno -> source code checksum
- #
-
--sub get_exclusion_data($)
-+sub get_source_data($)
- {
- my ($filename) = @_;
- my %list;
- my $flag = 0;
-+ my %brdata;
-+ my $brflag = 0;
-+ my %checksums;
- local *HANDLE;
-
- if (!open(HANDLE, "<", $filename)) {
- warn("WARNING: could not open $filename\n");
-- return undef;
-+ return;
- }
- while (<HANDLE>) {
- if (/$EXCL_STOP/) {
-@@ -2287,14 +2653,62 @@ sub get_exclusion_data($)
- if (/$excl_line/ || $flag) {
- $list{$.} = 1;
- }
-+ if (/$EXCL_BR_STOP/) {
-+ $brflag = 0;
-+ } elsif (/$EXCL_BR_START/) {
-+ $brflag = 1;
-+ }
-+ if (/$excl_br_line/ || $brflag) {
-+ $brdata{$.} = 1;
-+ }
-+ if ($checksum) {
-+ chomp();
-+ $checksums{$.} = md5_base64($_);
-+ }
- }
- close(HANDLE);
-
-- if ($flag) {
-+ if ($flag || $brflag) {
- warn("WARNING: unterminated exclusion section in $filename\n");
- }
-
-- return \%list;
-+ return (\%list, \%brdata, \%checksums);
-+}
-+
-+
-+#
-+# get_all_source_data(filenames)
-+#
-+# Scan specified source code files for exclusion markers and return
-+# filename -> [ excl, brexcl, checksums ]
-+# excl: lineno -> 1 for all lines for which to exclude all data
-+# brexcl: lineno -> 1 for all lines for which to exclude branch data
-+# checksums: lineno -> source code checksum
-+#
-+
-+sub get_all_source_data(@)
-+{
-+ my @filenames = @_;
-+ my %data;
-+ my $failed = 0;
-+
-+ for my $filename (@filenames) {
-+ my @d;
-+ next if (exists($data{$filename}));
-+
-+ @d = get_source_data($filename);
-+ if (@d) {
-+ $data{$filename} = [ @d ];
-+ } else {
-+ $failed = 1;
-+ }
-+ }
-+
-+ if ($failed) {
-+ warn("WARNING: some exclusion markers may be ignored\n");
-+ }
-+
-+ return \%data;
- }
-
-
-@@ -2318,35 +2732,17 @@ sub apply_exclusion_data($$)
- {
- my ($instr, $graph) = @_;
- my $filename;
-- my %excl_data;
-- my $excl_read_failed = 0;
-+ my $excl_data;
-
-- # Collect exclusion marker data
-- foreach $filename (sort_uniq_lex(keys(%{$graph}), keys(%{$instr}))) {
-- my $excl = get_exclusion_data($filename);
--
-- # Skip and note if file could not be read
-- if (!defined($excl)) {
-- $excl_read_failed = 1;
-- next;
-- }
--
-- # Add to collection if there are markers
-- $excl_data{$filename} = $excl if (keys(%{$excl}) > 0);
-- }
--
-- # Warn if not all source files could be read
-- if ($excl_read_failed) {
-- warn("WARNING: some exclusion markers may be ignored\n");
-- }
-+ ($excl_data) = get_all_source_data(keys(%{$graph}), keys(%{$instr}));
-
- # Skip if no markers were found
-- return ($instr, $graph) if (keys(%excl_data) == 0);
-+ return ($instr, $graph) if (!%$excl_data);
-
- # Apply exclusion marker data to graph
-- foreach $filename (keys(%excl_data)) {
-+ foreach $filename (keys(%$excl_data)) {
- my $function_data = $graph->{$filename};
-- my $excl = $excl_data{$filename};
-+ my $excl = $excl_data->{$filename}->[0];
- my $function;
-
- next if (!defined($function_data));
-@@ -2384,9 +2780,9 @@ sub apply_exclusion_data($$)
- }
-
- # Apply exclusion marker data to instr
-- foreach $filename (keys(%excl_data)) {
-+ foreach $filename (keys(%$excl_data)) {
- my $line_data = $instr->{$filename};
-- my $excl = $excl_data{$filename};
-+ my $excl = $excl_data->{$filename}->[0];
- my $line;
- my @new_data;
-
-@@ -2468,10 +2864,12 @@ sub process_graphfile($$)
-
- # Try to find base directory automatically if requested by user
- if ($rc_auto_base) {
-- $base_dir = find_base_from_graph($base_dir, $instr, $graph);
-+ $base_dir = find_base_from_source($base_dir,
-+ [ keys(%{$instr}), keys(%{$graph}) ]);
- }
-
-- ($instr, $graph) = adjust_graph_filenames($base_dir, $instr, $graph);
-+ adjust_source_filenames($instr, $base_dir);
-+ adjust_source_filenames($graph, $base_dir);
-
- if (!$no_markers) {
- # Apply exclusion marker data to graph file data
-@@ -2767,11 +3165,11 @@ sub parent_dir($)
- }
-
- #
--# find_base_from_graph(base_dir, instr, graph)
-+# find_base_from_source(base_dir, source_files)
- #
--# Try to determine the base directory of the graph file specified by INSTR
--# and GRAPH. The base directory is the base for all relative filenames in
--# the graph file. It is defined by the current working directory at time
-+# Try to determine the base directory of the object file built from
-+# SOURCE_FILES. The base directory is the base for all relative filenames in
-+# the gcov data. It is defined by the current working directory at time
- # of compiling the source file.
- #
- # This function implements a heuristic which relies on the following
-@@ -2781,16 +3179,16 @@ sub parent_dir($)
- # - files by the same name are not present in multiple parent directories
- #
-
--sub find_base_from_graph($$$)
-+sub find_base_from_source($$)
- {
-- my ($base_dir, $instr, $graph) = @_;
-+ my ($base_dir, $source_files) = @_;
- my $old_base;
- my $best_miss;
- my $best_base;
- my %rel_files;
-
- # Determine list of relative paths
-- foreach my $filename (keys(%{$instr}), keys(%{$graph})) {
-+ foreach my $filename (@$source_files) {
- next if (file_name_is_absolute($filename));
-
- $rel_files{$filename} = 1;
-@@ -2829,17 +3227,17 @@ sub find_base_from_graph($$$)
- }
-
- #
--# adjust_graph_filenames(base_dir, instr, graph)
-+# adjust_source_filenames(hash, base_dir)
- #
--# Make relative paths in INSTR and GRAPH absolute and apply
--# geninfo_adjust_src_path setting to graph file data.
-+# Transform all keys of HASH to absolute form and apply requested
-+# transformations.
- #
-
--sub adjust_graph_filenames($$$)
-+sub adjust_source_filenames($$$)
- {
-- my ($base_dir, $instr, $graph) = @_;
-+ my ($hash, $base_dir) = @_;
-
-- foreach my $filename (keys(%{$instr})) {
-+ foreach my $filename (keys(%{$hash})) {
- my $old_filename = $filename;
-
- # Convert to absolute canonical form
-@@ -2851,28 +3249,50 @@ sub adjust_graph_filenames($$$)
- }
-
- if ($filename ne $old_filename) {
-- $instr->{$filename} = delete($instr->{$old_filename});
-+ $hash->{$filename} = delete($hash->{$old_filename});
- }
- }
-+}
-
-- foreach my $filename (keys(%{$graph})) {
-- my $old_filename = $filename;
-
-- # Make absolute
-- # Convert to absolute canonical form
-- $filename = solve_relative_path($base_dir, $filename);
-+#
-+# filter_source_files(hash)
-+#
-+# Remove unwanted source file data from HASH.
-+#
-
-- # Apply adjustment
-- if (defined($adjust_src_pattern)) {
-- $filename =~ s/$adjust_src_pattern/$adjust_src_replace/g;
-+sub filter_source_files($)
-+{
-+ my ($hash) = @_;
-+
-+ foreach my $filename (keys(%{$hash})) {
-+ # Skip external files if requested
-+ goto del if (!$opt_external && is_external($filename));
-+
-+ # Apply include patterns
-+ if (@include_patterns) {
-+ my $keep;
-+
-+ foreach my $pattern (@include_patterns) {
-+ if ($filename =~ (/^$pattern$/)) {
-+ $keep = 1;
-+ last;
-+ }
-+ }
-+ goto del if (!$keep);
- }
-
-- if ($filename ne $old_filename) {
-- $graph->{$filename} = delete($graph->{$old_filename});
-+ # Apply exclude patterns
-+ foreach my $pattern (@exclude_patterns) {
-+ goto del if ($filename =~ (/^$pattern$/));
- }
-- }
-+ next;
-
-- return ($instr, $graph);
-+del:
-+ # Remove file data
-+ delete($hash->{$filename});
-+ $excluded_files{$filename} = 1;
-+ }
- }
-
- #
-@@ -3784,6 +4204,7 @@ sub get_gcov_capabilities()
- 'c' => 'branch-counts',
- 'f' => 'function-summaries',
- 'h' => 'help',
-+ 'i' => 'intermediate-format',
- 'l' => 'long-file-names',
- 'n' => 'no-output',
- 'o' => 'object-directory',
-diff --git a/lcovrc b/lcovrc
-index 40f364f..bd4bc3b 100644
---- a/lcovrc
-+++ b/lcovrc
-@@ -134,6 +134,9 @@ genhtml_desc_html=0
- # when collecting coverage data.
- geninfo_auto_base = 1
-
-+# Use gcov intermediate format? Valid values are 0, 1, auto
-+geninfo_intermediate = auto
-+
- # Directory containing gcov kernel files
- # lcov_gcov_dir = /proc/gcov
-
-diff --git a/man/lcovrc.5 b/man/lcovrc.5
-index f20d273..bf0ce7a 100644
---- a/man/lcovrc.5
-+++ b/man/lcovrc.5
-@@ -223,6 +223,11 @@ geninfo_compat_libtool = 0
- geninfo_auto_base = 1
- .br
-
-+# Use gcov intermediate format? Valid values are 0, 1, auto
-+.br
-+geninfo_intermediate = auto
-+.br
-+
- # Directory containing gcov kernel files
- .br
- lcov_gcov_dir = /proc/gcov
-@@ -789,6 +794,25 @@ located, and in addition, is different between files of the same project.
- Default is 1.
- .PP
-
-+.BR geninfo_intermediate " ="
-+.IR 0 | 1 | auto
-+.IP
-+Specify whether to use gcov intermediate format
-+.br
-+
-+Use this option to control whether geninfo should use the gcov intermediate
-+format while collecting coverage data. The use of the gcov intermediate format
-+should increase processing speed. It also provides branch coverage data when
-+using the \-\-initial command line option.
-+.br
-+
-+Valid values are 0 for off, 1 for on, and "auto" to let geninfo automatically
-+use immediate format when supported by gcov.
-+.br
-+
-+Default is "auto".
-+.PP
-+
- .BR lcov_gcov_dir " ="
- .I path_to_kernel_coverage_data
- .IP
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/lcov/files/0002-geninfo-Add-intermediate-JSON-format-support.patch b/meta-openembedded/meta-oe/recipes-support/lcov/files/0002-geninfo-Add-intermediate-JSON-format-support.patch
deleted file mode 100644
index 7b18063..0000000
--- a/meta-openembedded/meta-oe/recipes-support/lcov/files/0002-geninfo-Add-intermediate-JSON-format-support.patch
+++ /dev/null
@@ -1,247 +0,0 @@
-From e13b2b6f8443da660cafa0679c3b16240843ce9f Mon Sep 17 00:00:00 2001
-From: Peter Oberparleiter <oberpar@linux.ibm.com>
-Date: Fri, 24 May 2019 17:16:56 +0200
-Subject: [PATCH 2/2] geninfo: Add intermediate JSON format support
-
-This change adds support for parsing the output of gcov's intermediate
-JSON file format as implemented by GCC version 9.
-
-Note: The way that the intermediate file format support is implemented
-in geninfo removes the need to parse .gcno files directly. Since geninfo
-does not include support for parsing GCC 9 .gcno files, using the
-intermediate format is the only option for geninfo to collect coverage
-data generated by GCC version 9.
-
-Signed-off-by: Peter Oberparleiter <oberpar@linux.ibm.com>
----
- bin/geninfo | 162 +++++++++++++++++++++++++++++++++++++++++++++++++++-
- 1 file changed, 160 insertions(+), 2 deletions(-)
-
-Upstream-Status: Backport
-Download URL: https://github.com/linux-test-project/lcov/commit/75fbae1cfc5027f818a0bb865bf6f96fab3202da
-
-diff --git a/bin/geninfo b/bin/geninfo
-index 0276666..cceb782 100755
---- a/bin/geninfo
-+++ b/bin/geninfo
-@@ -59,6 +59,9 @@ use File::Copy qw(copy);
- use Getopt::Long;
- use Digest::MD5 qw(md5_base64);
- use Cwd qw/abs_path/;
-+use PerlIO::gzip;
-+use JSON qw(decode_json);
-+
- if( $^O eq "msys" )
- {
- require File::Spec::Win32;
-@@ -474,7 +477,8 @@ if ($rc_intermediate eq "0") {
- $intermediate = 1;
- } elsif (lc($rc_intermediate) eq "auto") {
- # Use intermediate format if supported by gcov
-- $intermediate = $gcov_caps->{'intermediate-format'} ? 1 : 0;
-+ $intermediate = ($gcov_caps->{'intermediate-format'} ||
-+ $gcov_caps->{'json-format'}) ? 1 : 0;
- } else {
- die("ERROR: invalid value for geninfo_intermediate: ".
- "'$rc_intermediate'\n");
-@@ -2084,6 +2088,48 @@ sub read_intermediate_text($$)
- }
-
-
-+#
-+# read_intermediate_json(gcov_filename, data, basedir_ref)
-+#
-+# Read gcov intermediate JSON format in GCOV_FILENAME and add the resulting
-+# data to DATA in the following format:
-+#
-+# data: source_filename -> file_data
-+# file_data: GCOV JSON data for file
-+#
-+# Also store the value for current_working_directory to BASEDIR_REF.
-+#
-+
-+sub read_intermediate_json($$$)
-+{
-+ my ($gcov_filename, $data, $basedir_ref) = @_;
-+ my $fd;
-+ my $text;
-+ my $json;
-+
-+ open($fd, "<:gzip", $gcov_filename) or
-+ die("ERROR: Could not read $gcov_filename: $!\n");
-+ local $/;
-+ $text = <$fd>;
-+ close($fd);
-+
-+ $json = decode_json($text);
-+ if (!defined($json) || !exists($json->{"files"}) ||
-+ ref($json->{"files"} ne "ARRAY")) {
-+ die("ERROR: Unrecognized JSON output format in ".
-+ "$gcov_filename\n");
-+ }
-+
-+ $$basedir_ref = $json->{"current_working_directory"};
-+
-+ for my $file (@{$json->{"files"}}) {
-+ my $filename = $file->{"file"};
-+
-+ $data->{$filename} = $file;
-+ }
-+}
-+
-+
- #
- # intermediate_text_to_info(fd, data, srcdata)
- #
-@@ -2173,6 +2219,104 @@ sub intermediate_text_to_info($$$)
- }
-
-
-+#
-+# intermediate_json_to_info(fd, data, srcdata)
-+#
-+# Write DATA in info format to file descriptor FD.
-+#
-+# data: filename -> file_data:
-+# file_data: GCOV JSON data for file
-+#
-+# srcdata: filename -> [ excl, brexcl, checksums ]
-+# excl: lineno -> 1 for all lines for which to exclude all data
-+# brexcl: lineno -> 1 for all lines for which to exclude branch data
-+# checksums: lineno -> source code checksum
-+#
-+# Note: To simplify processing, gcov data is not combined here, that is counts
-+# that appear multiple times for the same lines/branches are not added.
-+# This is done by lcov/genhtml when reading the data files.
-+#
-+
-+sub intermediate_json_to_info($$$)
-+{
-+ my ($fd, $data, $srcdata) = @_;
-+ my $branch_num = 0;
-+
-+ return if (!%{$data});
-+
-+ print($fd "TN:$test_name\n");
-+ for my $filename (keys(%{$data})) {
-+ my ($excl, $brexcl, $checksums);
-+ my $file_data = $data->{$filename};
-+
-+ if (defined($srcdata->{$filename})) {
-+ ($excl, $brexcl, $checksums) = @{$srcdata->{$filename}};
-+ }
-+
-+ print($fd "SF:$filename\n");
-+
-+ # Function data
-+ if ($func_coverage) {
-+ for my $d (@{$file_data->{"functions"}}) {
-+ my $line = $d->{"start_line"};
-+ my $count = $d->{"execution_count"};
-+ my $name = $d->{"name"};
-+
-+ next if (!defined($line) || !defined($count) ||
-+ !defined($name) || $excl->{$line});
-+
-+ print($fd "FN:$line,$name\n");
-+ print($fd "FNDA:$count,$name\n");
-+ }
-+ }
-+
-+ # Line data
-+ for my $d (@{$file_data->{"lines"}}) {
-+ my $line = $d->{"line_number"};
-+ my $count = $d->{"count"};
-+ my $c;
-+ my $branches = $d->{"branches"};
-+ my $unexec = $d->{"unexecuted_block"};
-+
-+ next if (!defined($line) || !defined($count) ||
-+ $excl->{$line});
-+
-+ if (defined($unexec) && $unexec && $count == 0) {
-+ $unexec = 1;
-+ } else {
-+ $unexec = 0;
-+ }
-+
-+ if ($checksum && exists($checksums->{$line})) {
-+ $c = ",".$checksums->{$line};
-+ } else {
-+ $c = "";
-+ }
-+ print($fd "DA:$line,$count$c\n");
-+
-+ $branch_num = 0;
-+ # Branch data
-+ if ($br_coverage && !$brexcl->{$line}) {
-+ for my $b (@$branches) {
-+ my $brcount = $b->{"count"};
-+
-+ if (!defined($brcount) || $unexec) {
-+ $brcount = "-";
-+ }
-+ print($fd "BRDA:$line,0,$branch_num,".
-+ "$brcount\n");
-+
-+ $branch_num++;
-+ }
-+ }
-+
-+ }
-+
-+ print($fd "end_of_record\n");
-+ }
-+}
-+
-+
- sub get_output_fd($$)
- {
- my ($outfile, $file) = @_;
-@@ -2243,6 +2387,8 @@ sub process_intermediate($$$)
- my $srcdata;
- my $is_graph = 0;
- my ($out, $err, $rc);
-+ my $json_basedir;
-+ my $json_format;
-
- info("Processing %s\n", abs2rel($file, $dir));
-
-@@ -2296,6 +2442,12 @@ sub process_intermediate($$$)
- unlink($gcov_filename);
- }
-
-+ for my $gcov_filename (glob("*.gcov.json.gz")) {
-+ read_intermediate_json($gcov_filename, \%data, \$json_basedir);
-+ unlink($gcov_filename);
-+ $json_format = 1;
-+ }
-+
- if (!%data) {
- warn("WARNING: GCOV did not produce any data for $file\n");
- return;
-@@ -2304,6 +2456,8 @@ sub process_intermediate($$$)
- # Determine base directory
- if (defined($base_directory)) {
- $base = $base_directory;
-+ } elsif (defined($json_basedir)) {
-+ $base = $json_basedir;
- } else {
- $base = $fdir;
-
-@@ -2331,7 +2485,11 @@ sub process_intermediate($$$)
-
- # Generate output
- $fd = get_output_fd($output_filename, $file);
-- intermediate_text_to_info($fd, \%data, $srcdata);
-+ if ($json_format) {
-+ intermediate_json_to_info($fd, \%data, $srcdata);
-+ } else {
-+ intermediate_text_to_info($fd, \%data, $srcdata);
-+ }
- close($fd);
-
- chdir($cwd);
---
-2.17.1
-
diff --git a/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.14.bb b/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.16.bb
similarity index 76%
rename from meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.14.bb
rename to meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.16.bb
index 47062cc..22d6881 100755
--- a/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.14.bb
+++ b/meta-openembedded/meta-oe/recipes-support/lcov/lcov_1.16.bb
@@ -1,5 +1,5 @@
SUMMARY = "A graphical front-end for gcov"
-HOMEPAGE = "http://ltp.sourceforge.net/coverage/lcov.php"
+HOMEPAGE = "https://github.com/linux-test-project/lcov"
DESCRIPTION = "LCOV is a graphical front-end for GCC's coverage testing \
tool gcov. It collects gcov data for multiple source files and creates \
HTML pages containing the source code annotated with coverage information. \
@@ -9,8 +9,6 @@
LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
RDEPENDS:${PN} += " \
- libjson-perl \
- libperlio-gzip-perl \
perl \
perl-module-filehandle \
perl-module-getopt-std \
@@ -48,18 +46,12 @@
gcov \
gcov-symlinks \
"
-
-SRC_URI = " \
- http://downloads.sourceforge.net/ltp/${BP}.tar.gz \
- file://0001-geninfo-Add-intermediate-text-format-support.patch \
- file://0002-geninfo-Add-intermediate-JSON-format-support.patch \
- "
-
-SRC_URI[md5sum] = "0220d01753469f83921f8f41ae5054c1"
-SRC_URI[sha256sum] = "14995699187440e0ae4da57fe3a64adc0a3c5cf14feab971f8db38fb7d8f071a"
+SRC_URI = "https://github.com/linux-test-project/lcov/releases/download/v${PV}/lcov-${PV}.tar.gz"
+SRC_URI[md5sum] = "bfee0cef50d7b7bd1df03bfadf68dcef"
+SRC_URI[sha256sum] = "987031ad5528c8a746d4b52b380bc1bffe412de1f2b9c2ba5224995668e3240b"
do_install() {
- oe_runmake install PREFIX=${D}${prefix} CFG_DIR=${D}${sysconfdir}
+ oe_runmake install PREFIX=${D}${prefix} CFG_DIR=${D}${sysconfdir} LCOV_PERL_PATH="/usr/bin/env perl"
}
BBCLASSEXTEND = "native nativesdk"