From 1e34c2d0324cbcebab11799af2abb18f6639a535 Mon Sep 17 00:00:00 2001 From: Andrew Geissler Date: Fri, 29 May 2020 16:02:59 -0500 Subject: poky: subtree update:f468a73523..a35bf0e5d3 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Adrian Bunk (3): apt: Remove workarounds for host gcc < 5 apt: The C.UTF-8 locale is not portable gcc: Remove mudflap remnants Alexander Kanavin (5): devtool: do not write md5sums into upgraded recipes testresults.json: add duration of the tests as well bitbake.conf: propagate 'opengl' DISTRO_FEATURE to native/nativesdk from target libsdl2: enable opengl option for native/nativesdk, subject to 'opengl' in DISTRO_FEATURES qemu: enable virglrenderer and glx options subject to 'opengl' DISTRO_FEATURE Anuj Mittal (3): mtools: upgrade 4.0.23 -> 4.0.24 gsettings-desktop-schemas: upgrade 3.36.0 -> 3.36.1 libsoup-2.4: upgrade 2.68.4 -> 2.70.0 Aníbal Limón (3): recipes-kernel/linux-firmware: Add wlanmdsp.mbn to qcom-modem package recipes-kernel/linux-firmware: Add adreno-a630 firmware package linux-firmware: Update to 20200122 -> 20200421 Bruce Ashfield (3): linux-yocto/5.4: update to v5.4.38 linux-yocto/5.4: update to v5.4.40 kernel/reproducibility: kernel modules need SOURCE_DATE_EPOCH export Daniel Díaz (1): ltp: Add net-tools as rdependency Denys Dmytriyenko (1): xz: upgrade 5.2.4 -> 5.2.5 Diego (2): image_types: declare support for wic.zst bmap-tools: update development snapshot revision Gregor Zatko (1): sanity.bbclass: Detect and fail if 'inherit' is used in conf file Jacob Kroon (2): squashfs-tools: Backport fix for compiling with gcc 10 bitbake: doc: Clarify how task dependencies relate to RDEPENDS Jan-Simon Moeller (1): file: add bzip2-replacement-native to DEPENDS to fix sstate issue Joe Slater (2): acpica: Upgrade 20200214 -> 20200430 for gcc-10 fixes terminal.py: do not stop searching for auto Joshua Watt (7): pycryptodome: Import from meta-python pyelftools: Import from meta-python python3-pycryptodome(x): Upgrade 3.9.4 -> 3.9.7 python3-pyelftools: Upgrade 0.25 -> 0.26 diffoscope: upgrade 143 -> 144 python3-magic: upgrade 0.4.15 -> 0.4.18 checklayer: Skip layers without a collection Kai Kang (3): gcr: depends on gnupg-native libsecret: add meson option introspection Revert "webkitgtk, pinentry: require gobject-introspection-data in DISTRO_FEATURES when libsecret PACKAGECONFIG is enabled" Khem Raj (20): tune-cortexa55.inc: crc and crypto extentions are default on cortex-a55 tune-cortexa57.inc: Add new tune file gcc: Do not set -march for arm64 for libatomic aarch64: Adjust big.LITTLE tune files to use -mcpu armv8/tunes: Define TUNE_PKGARCH valgrind: Do not use outline-atomics on aarch64 gcc: Drop reverting __getauxval patch qemuarm64.conf: Use cortext-a57 as default tune glibc: Unify wordsize.h for arm and aarch64 glibc: Do not synthesize wordsize.h for arm multilibs multilib_header_wrapper.h: Remove pragma once multilib_header: Fall back to worsize form libc for bpf target multilib_header_wrapper: Drop using __MHWORDSIZE syslinux: Fix build with gcc10 valgrind: Backport upstream patch to fix __getauxval needs re2c: Upgrade to 1.3 libxcrypt: Upgrade to 4.4.16 ltp: Fix format security warnings with gcc10 musl: Update to tip of master cve-check: Run it after do_fetch Konrad Weihmann (1): lib/oe/recipeutils.py: passthrough of FETCHCMD Lee Chee Yang (1): qemu: fix CVE-2020-11869 Li Wang (1): linux-modules.tgz: fix file permissions to root Marek Vasut (1): libubootenv: Depend on zlib Martin Jansa (2): libsecret: inherit features_check webkitgtk, pinentry: require gobject-introspection-data in DISTRO_FEATURES when libsecret PACKAGECONFIG is enabled Michael Ho (6): package_rpm.bbclass: respect package overrides for the main package package.bbclass: add PACKAGE_ADD_METADATA to sstate variables package_ipk.bbclass: add PACKAGE_ADD_METADATA_IPK to sstate variables package_deb.bbclass: add PACKAGE_ADD_METADATA_DEB to sstate variables package_rpm.bbclass: add PACKAGE_ADD_METADATA_RPM to sstate variables ref-manual: add PACKAGE_ADD_METADATA documentation Ming Liu (1): at-spi2-atk: dont inherit features_check Mingli Yu (2): bison: fix the parallel build python3-setuptools: add the missing rdepends Naveen Saini (2): libva: upgrade 2.6.1 -> 2.7.1 libva-utils: upgrade 2.6.0 -> 2.7.1 Otavio Salvador (4): go-mod.bbclass: Add class for `go mod` support glide: Avoid use of 'go mod' support go-dep: Avoid use of 'go mod' support go.bbclass: Add `-trimpath` to default build flags Ovidiu Panait (4): lttng-modules: upgrade to 2.12.0 lttng-ust: upgrade to 2.12.0 lttng-modules: Fix "LTTng: vmalloc_sync_all symbol lookup failed" warnings lttng-tools: upgrade to 2.12.0 Paul Barker (2): archiver.bbclass: Make do_deploy_archives a recursive dependency avahi: Don't advertise example services by default Petr Vorel (1): ltp: Update to 20200515 Quentin Schulz (2): base/insane: Check pkgs lics are subset of recipe lics only once ref-manual: document new unlisted-pkg-lics insane-skip qa check Ricardo Ribalda (1): classes/image_types_wic: Reorder do_flush_pseudodb Richard Purdie (10): ghostscript: Remove leftover file layer.conf: Move to gatesgarth naming meta-poky/meta-yocto-bsp layer.conf: Move to depend on gatesgarth release codename ltp: Add missing dependencies on coreutils, bc, e2fsprogs and gdb resulttool/report: Remove leftover debugging resulttool/log: Add ability to dump ltp logs as well as ptest ltp: Exclude the memcg_stress tests due to timeout problems bitbake: event/ast: Add RecipePostKeyExpansion event multilib/recipes: Use new RecipePostKeyExpansion event poky.conf: Add Fedora 32, remove Ubuntu 19.04 and poky-2.7 Robert P. J. Day (3): common-licenses: add "Unlicense" license file ref-manual: delete long-unused comments in variable glossary bitbake: user manual: properly tag content as Robert Yang (1): archiver.bbclass: Fix duplicated SRC_URIs for do_ar_original Steve Sakoman (2): oeqa/concurrencytest: don't delete build directory for failed tests poky: Add Ubuntu 20.04 as a supported distro Vyacheslav Yurkov (1): bitbake: fetch2/cvs: Fix CVS fetcher clean method Wang Mingyu (6): freetype: upgrade 2.10.1 -> 2.10.2 watchdog: upgrade 5.15 -> 5.16 gnu-efi: upgrade 3.0.11 -> 3.0.12 boost: upgrade 1.72.0 -> 1.73.0 iso-codes: upgrade 4.4 -> 4.5.0 iproute2: upgrade 5.5.0 -> 5.6.0 zhengruoqin (3): make-mod-scripts: Fix dependence error. ruby: upgrade 2.7.0 -> 2.7.1 sysstat: upgrade 12.2.1 -> 12.2.2 Change-Id: I47d6a587b6f57ffd2da338f45cee51dfba471365 Signed-off-by: Andrew Geissler --- .../bitbake-user-manual-execution.xml | 4 +- .../bitbake-user-manual-metadata.xml | 3 + poky/bitbake/lib/bb/event.py | 4 + poky/bitbake/lib/bb/fetch2/cvs.py | 20 +- poky/bitbake/lib/bb/parse/ast.py | 3 + .../dev-manual/dev-manual-common-tasks.xml | 58 ++ poky/documentation/ref-manual/ref-classes.xml | 6 + poky/documentation/ref-manual/ref-qa-checks.xml | 25 + poky/documentation/ref-manual/ref-variables.xml | 605 +------------ poky/meta-poky/conf/distro/poky.conf | 4 +- poky/meta-poky/conf/layer.conf | 2 +- poky/meta-selftest/conf/layer.conf | 2 +- .../devtool-upgrade-test1_1.5.3.bb.upgraded | 1 - poky/meta-skeleton/conf/layer.conf | 2 +- poky/meta-yocto-bsp/conf/layer.conf | 2 +- poky/meta/classes/archiver.bbclass | 12 +- poky/meta/classes/base.bbclass | 16 +- poky/meta/classes/cve-check.bbclass | 2 +- poky/meta/classes/fontcache.bbclass | 2 +- poky/meta/classes/go-mod.bbclass | 20 + poky/meta/classes/go.bbclass | 2 +- poky/meta/classes/image_types.bbclass | 2 +- poky/meta/classes/image_types_wic.bbclass | 2 +- poky/meta/classes/insane.bbclass | 21 +- poky/meta/classes/kernel.bbclass | 16 + poky/meta/classes/multilib.bbclass | 28 +- poky/meta/classes/package.bbclass | 4 +- poky/meta/classes/package_deb.bbclass | 5 +- poky/meta/classes/package_ipk.bbclass | 2 +- poky/meta/classes/package_rpm.bbclass | 26 +- poky/meta/classes/sanity.bbclass | 6 + poky/meta/conf/bitbake.conf | 4 +- poky/meta/conf/distro/include/maintainers.inc | 5 +- poky/meta/conf/layer.conf | 4 +- poky/meta/conf/machine/include/tune-cortexa53.inc | 4 + poky/meta/conf/machine/include/tune-cortexa55.inc | 11 +- .../machine/include/tune-cortexa57-cortexa53.inc | 10 +- poky/meta/conf/machine/include/tune-cortexa57.inc | 19 + .../machine/include/tune-cortexa72-cortexa53.inc | 13 +- poky/meta/conf/machine/include/tune-cortexa72.inc | 1 + .../machine/include/tune-cortexa73-cortexa53.inc | 13 +- poky/meta/conf/machine/qemuarm64.conf | 2 +- poky/meta/files/common-licenses/Unlicense | 24 + poky/meta/lib/oe/classextend.py | 35 +- poky/meta/lib/oe/recipeutils.py | 12 + poky/meta/lib/oe/terminal.py | 5 +- poky/meta/lib/oeqa/core/runner.py | 6 +- poky/meta/lib/oeqa/core/utils/concurrencytest.py | 10 +- poky/meta/lib/oeqa/selftest/cases/imagefeatures.py | 2 +- poky/meta/lib/oeqa/selftest/cases/runtime_test.py | 18 +- poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb | 71 -- poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb | 71 ++ poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb | 2 +- poky/meta/recipes-connectivity/avahi/avahi_0.8.bb | 5 + .../iproute2/iproute2_5.5.0.bb | 12 - .../iproute2/iproute2_5.6.0.bb | 12 + poky/meta/recipes-core/glibc/glibc-package.inc | 4 +- ...-Unify-the-header-between-arm-and-aarch64.patch | 67 ++ poky/meta/recipes-core/glibc/glibc_2.31.bb | 1 + .../libxcrypt/libxcrypt-compat_4.4.15.bb | 18 - .../libxcrypt/libxcrypt-compat_4.4.16.bb | 18 + poky/meta/recipes-core/libxcrypt/libxcrypt.inc | 2 +- .../recipes-core/libxcrypt/libxcrypt_4.4.15.bb | 2 - .../recipes-core/libxcrypt/libxcrypt_4.4.16.bb | 2 + poky/meta/recipes-core/musl/musl_git.bb | 2 +- .../packagegroups/packagegroup-base.bb | 8 +- poky/meta/recipes-core/psplash/psplash_git.bb | 5 +- .../meta/recipes-devtools/apt/apt-native_1.2.31.bb | 4 +- poky/meta/recipes-devtools/apt/apt.inc | 1 + ...-locale-is-not-portable-use-std-locale-cl.patch | 27 + ...d-changing-the-global-LC_TIME-for-Release.patch | 80 -- ...de-localed-std-put_time-instead-rolling-o.patch | 46 - ...kg-contrib-strutl.cc-Include-array-header.patch | 33 - .../bison/0001-bison-fix-the-parallel-build.patch | 63 ++ poky/meta/recipes-devtools/bison/bison_3.5.4.bb | 1 + poky/meta/recipes-devtools/file/file_5.38.bb | 2 +- poky/meta/recipes-devtools/gcc/gcc-10.1.inc | 4 +- ...h64-Use-__getauxval-instead-of-getauxval-.patch | 47 -- ...libatomic-Do-not-enforce-march-on-aarch64.patch | 42 + poky/meta/recipes-devtools/gcc/gcc-runtime.inc | 19 - poky/meta/recipes-devtools/glide/glide_0.13.3.bb | 4 + poky/meta/recipes-devtools/go/go-dep_0.5.4.bb | 4 + .../mtools/mtools/disable-hardcoded-configs.patch | 6 +- poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb | 51 -- poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb | 51 ++ poky/meta/recipes-devtools/perl/perl_5.30.2.bb | 2 +- .../python/python-pycryptodome.inc | 26 + .../recipes-devtools/python/python-setuptools.inc | 2 + .../python/python3-magic_0.4.15.bb | 19 - .../python/python3-magic_0.4.18.bb | 19 + .../python/python3-pycryptodome_3.9.7.bb | 5 + .../python/python3-pycryptodomex_3.9.7.bb | 9 + .../python/python3-pyelftools_0.26.bb | 14 + poky/meta/recipes-devtools/python/python3_3.8.2.bb | 14 +- .../qemu/qemu-system-native_4.2.0.bb | 4 +- poky/meta/recipes-devtools/qemu/qemu.inc | 1 + .../qemu/qemu/CVE-2020-11869.patch | 97 +++ poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb | 5 +- poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb | 92 -- poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb | 92 ++ ...fs-tools-fix-build-failure-against-gcc-10.patch | 45 + .../squashfs-tools/squashfs-tools_git.bb | 1 + ...ound-multiple-definition-of-symbol-errors.patch | 97 +++ .../syslinux/syslinux_6.04-pre2.bb | 1 + ...-build-needs-__getauxval-for-linking-with.patch | 144 ++++ .../recipes-devtools/valgrind/valgrind_3.15.0.bb | 1 + .../recipes-extended/acpica/acpica_20200214.bb | 49 -- .../recipes-extended/acpica/acpica_20200430.bb | 49 ++ .../recipes-extended/ghostscript/ghostscript/i686 | 1 - .../ltp/ltp/0001-Add-more-musl-exclusions.patch | 28 +- ...-Add-option-to-select-libc-implementation.patch | 47 +- .../0001-ptrace01-Fix-missing-format-string.patch | 33 + ...eck-for-time64-unsafe-syscalls-before-usi.patch | 122 --- ...__GLIBC_PREREQ-is-defined-before-using-it.patch | 55 -- .../ltp/0004-guard-mallocopt-with-__GLIBC__.patch | 4 +- ...etwork-nfsv4-acl-acl1.c-Security-fix-on-s.patch | 42 - poky/meta/recipes-extended/ltp/ltp_20200120.bb | 114 --- poky/meta/recipes-extended/ltp/ltp_20200515.bb | 121 +++ .../packagegroup-core-full-cmdline.bb | 10 +- .../recipes-extended/sysstat/sysstat_12.2.1.bb | 8 - .../recipes-extended/sysstat/sysstat_12.2.2.bb | 8 + ...inux-param.h-for-EXEC_PAGESIZE-definition.patch | 32 - .../recipes-extended/watchdog/watchdog_5.15.bb | 72 -- .../recipes-extended/watchdog/watchdog_5.16.bb | 71 ++ poky/meta/recipes-extended/xz/xz_5.2.4.bb | 43 - poky/meta/recipes-extended/xz/xz_5.2.5.bb | 43 + poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb | 2 +- .../gsettings-desktop-schemas_3.36.0.bb | 18 - .../gsettings-desktop-schemas_3.36.1.bb | 18 + poky/meta/recipes-gnome/gtk+/gtk+3.inc | 2 + .../0001-meson-add-option-introspection.patch | 137 +++ .../recipes-gnome/libsecret/libsecret_0.20.3.bb | 6 +- poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb | 2 + .../recipes-graphics/freetype/freetype_2.10.1.bb | 47 -- .../recipes-graphics/freetype/freetype_2.10.2.bb | 47 ++ .../recipes-graphics/libepoxy/libepoxy_1.5.4.bb | 2 - .../recipes-graphics/libsdl2/libsdl2_2.0.12.bb | 4 +- .../recipes-graphics/libva/libva-initial_2.6.1.bb | 9 - .../recipes-graphics/libva/libva-initial_2.7.1.bb | 8 + .../recipes-graphics/libva/libva-utils_2.6.0.bb | 32 - .../recipes-graphics/libva/libva-utils_2.7.1.bb | 32 + poky/meta/recipes-graphics/libva/libva_2.6.1.bb | 24 - poky/meta/recipes-graphics/libva/libva_2.7.1.bb | 23 + poky/meta/recipes-graphics/mesa/mesa.inc | 10 +- .../virglrenderer/virglrenderer_0.8.2.bb | 2 - .../linux-firmware/linux-firmware_20200122.bb | 936 -------------------- .../linux-firmware/linux-firmware_20200421.bb | 938 +++++++++++++++++++++ .../recipes-kernel/linux/linux-yocto-rt_5.4.bb | 6 +- .../recipes-kernel/linux/linux-yocto-tiny_5.4.bb | 8 +- poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb | 22 +- ...kernel-5.7-use-vmalloc_sync_mappings-on-k.patch | 853 +++++++++++++++++++ ...-wrapper-rename-to-wrapper_vmalloc_sync_m.patch | 32 + ...alloc_sync_mappings-on-kernel-5.6-as-well.patch | 88 ++ ...-vmalloc_sync_mappings-for-stable-kernels.patch | 67 ++ .../recipes-kernel/lttng/lttng-modules_2.11.2.bb | 43 - .../recipes-kernel/lttng/lttng-modules_2.12.0.bb | 47 ++ ...st-events-ns-tp.h-Fix-build-with-musl-lib.patch | 43 + .../recipes-kernel/lttng/lttng-tools/x32.patch | 36 - .../recipes-kernel/lttng/lttng-tools_2.11.2.bb | 166 ---- .../recipes-kernel/lttng/lttng-tools_2.12.0.bb | 166 ++++ poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb | 51 -- poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb | 51 ++ .../make-mod-scripts/make-mod-scripts_1.0.bb | 2 + .../recipes-multimedia/alsa/alsa-plugins_1.2.1.bb | 6 +- poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb | 4 +- .../meta/recipes-support/atk/at-spi2-atk_2.34.2.bb | 2 +- .../recipes-support/bmap-tools/bmap-tools_3.5.bb | 2 +- poky/meta/recipes-support/boost/boost.inc | 10 +- .../recipes-support/diffoscope/diffoscope_143.bb | 18 - .../recipes-support/diffoscope/diffoscope_144.bb | 18 + .../recipes-support/iso-codes/iso-codes_4.4.bb | 19 - .../recipes-support/iso-codes/iso-codes_4.5.0.bb | 19 + .../recipes-support/libsoup/libsoup-2.4_2.68.4.bb | 43 - .../recipes-support/libsoup/libsoup-2.4_2.70.0.bb | 43 + .../recipes-support/pinentry/pinentry_1.1.0.bb | 1 - poky/meta/recipes-support/re2c/re2c_1.0.1.bb | 15 - poky/meta/recipes-support/re2c/re2c_1.3.bb | 14 + poky/scripts/lib/checklayer/__init__.py | 3 + poky/scripts/lib/devtool/upgrade.py | 4 +- poky/scripts/lib/resulttool/log.py | 21 +- poky/scripts/lib/resulttool/report.py | 1 - poky/scripts/lib/resulttool/resultutils.py | 22 +- poky/scripts/multilib_header_wrapper.h | 21 +- 183 files changed, 4456 insertions(+), 3344 deletions(-) create mode 100644 poky/meta/classes/go-mod.bbclass create mode 100644 poky/meta/conf/machine/include/tune-cortexa57.inc create mode 100644 poky/meta/files/common-licenses/Unlicense delete mode 100644 poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb create mode 100644 poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb delete mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb create mode 100644 poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb create mode 100644 poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch delete mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb create mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb delete mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb create mode 100644 poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb create mode 100644 poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch delete mode 100644 poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch create mode 100644 poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch delete mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch create mode 100644 poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch delete mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb create mode 100644 poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb create mode 100644 poky/meta/recipes-devtools/python/python-pycryptodome.inc delete mode 100644 poky/meta/recipes-devtools/python/python3-magic_0.4.15.bb create mode 100644 poky/meta/recipes-devtools/python/python3-magic_0.4.18.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pycryptodome_3.9.7.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pycryptodomex_3.9.7.bb create mode 100644 poky/meta/recipes-devtools/python/python3-pyelftools_0.26.bb create mode 100644 poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch delete mode 100644 poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb create mode 100644 poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb create mode 100644 poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch create mode 100644 poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch create mode 100644 poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch delete mode 100644 poky/meta/recipes-extended/acpica/acpica_20200214.bb create mode 100644 poky/meta/recipes-extended/acpica/acpica_20200430.bb delete mode 120000 poky/meta/recipes-extended/ghostscript/ghostscript/i686 create mode 100644 poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch delete mode 100644 poky/meta/recipes-extended/ltp/ltp_20200120.bb create mode 100644 poky/meta/recipes-extended/ltp/ltp_20200515.bb delete mode 100644 poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb create mode 100644 poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb delete mode 100644 poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch delete mode 100644 poky/meta/recipes-extended/watchdog/watchdog_5.15.bb create mode 100644 poky/meta/recipes-extended/watchdog/watchdog_5.16.bb delete mode 100644 poky/meta/recipes-extended/xz/xz_5.2.4.bb create mode 100644 poky/meta/recipes-extended/xz/xz_5.2.5.bb delete mode 100644 poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb create mode 100644 poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb create mode 100644 poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch delete mode 100644 poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb create mode 100644 poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb create mode 100644 poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb delete mode 100644 poky/meta/recipes-graphics/libva/libva_2.6.1.bb create mode 100644 poky/meta/recipes-graphics/libva/libva_2.7.1.bb delete mode 100644 poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb create mode 100644 poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb delete mode 100644 poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb create mode 100644 poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb delete mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_143.bb create mode 100644 poky/meta/recipes-support/diffoscope/diffoscope_144.bb delete mode 100644 poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb create mode 100644 poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb delete mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb create mode 100644 poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb delete mode 100644 poky/meta/recipes-support/re2c/re2c_1.0.1.bb create mode 100644 poky/meta/recipes-support/re2c/re2c_1.3.bb (limited to 'poky') diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml index 6c5234ed9..e4251dff5 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-execution.xml @@ -618,12 +618,12 @@ Tasks can be either a shell task or a Python task. For shell tasks, BitBake writes a shell script to - ${T}/run.do_taskname.pid + ${T}/run.do_taskname.pid and then executes the script. The generated shell script contains all the exported variables, and the shell functions with all variables expanded. Output from the shell script goes to the file - ${T}/log.do_taskname.pid. + ${T}/log.do_taskname.pid. Looking at the expanded shell functions in the run file and the output in the log files is a useful debugging technique. diff --git a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml index 10b588352..95a8b95b1 100644 --- a/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml +++ b/poky/bitbake/doc/bitbake-user-manual/bitbake-user-manual-metadata.xml @@ -2526,6 +2526,9 @@ In the previous example, the do_packagedata task of each item in RDEPENDS must have completed before do_package_qa can execute. + Although RDEPENDS contains entries from the + runtime dependency namespace, BitBake knows how to map them back + to the build-time dependency namespace, in which the tasks are defined. diff --git a/poky/bitbake/lib/bb/event.py b/poky/bitbake/lib/bb/event.py index d1359f010..0e6d9b296 100644 --- a/poky/bitbake/lib/bb/event.py +++ b/poky/bitbake/lib/bb/event.py @@ -389,6 +389,10 @@ class RecipeEvent(Event): class RecipePreFinalise(RecipeEvent): """ Recipe Parsing Complete but not yet finalised""" +class RecipePostKeyExpansion(RecipeEvent): + """ Recipe Parsing Complete but not yet finalised""" + + class RecipeTaskPreProcess(RecipeEvent): """ Recipe Tasks about to be finalised diff --git a/poky/bitbake/lib/bb/fetch2/cvs.py b/poky/bitbake/lib/bb/fetch2/cvs.py index 29123a483..22abdef79 100644 --- a/poky/bitbake/lib/bb/fetch2/cvs.py +++ b/poky/bitbake/lib/bb/fetch2/cvs.py @@ -51,6 +51,10 @@ class Cvs(FetchMethod): ud.localfile = d.expand('%s_%s_%s_%s%s%s.tar.gz' % (ud.module.replace('/', '.'), ud.host, ud.tag, ud.date, norecurse, fullpath)) + pkg = d.getVar('PN') + cvsdir = d.getVar("CVSDIR") or (d.getVar("DL_DIR") + "/cvs") + ud.pkgdir = os.path.join(cvsdir, pkg) + def need_update(self, ud, d): if (ud.date == "now"): return True @@ -106,10 +110,7 @@ class Cvs(FetchMethod): # create module directory logger.debug(2, "Fetch: checking for module directory") - pkg = d.getVar('PN') - cvsdir = d.getVar("CVSDIR") or (d.getVar("DL_DIR") + "/cvs") - pkgdir = os.path.join(cvsdir, pkg) - moddir = os.path.join(pkgdir, localdir) + moddir = os.path.join(ud.pkgdir, localdir) workdir = None if os.access(os.path.join(moddir, 'CVS'), os.R_OK): logger.info("Update " + ud.url) @@ -120,8 +121,8 @@ class Cvs(FetchMethod): else: logger.info("Fetch " + ud.url) # check out sources there - bb.utils.mkdirhier(pkgdir) - workdir = pkgdir + bb.utils.mkdirhier(ud.pkgdir) + workdir = ud.pkgdir logger.debug(1, "Running %s", cvscmd) bb.fetch2.check_network_access(d, cvscmd, ud.url) cmd = cvscmd @@ -140,7 +141,7 @@ class Cvs(FetchMethod): # tar them up to a defined filename workdir = None if 'fullpath' in ud.parm: - workdir = pkgdir + workdir = ud.pkgdir cmd = "tar %s -czf %s %s" % (tar_flags, ud.localpath, localdir) else: workdir = os.path.dirname(os.path.realpath(moddir)) @@ -151,9 +152,6 @@ class Cvs(FetchMethod): def clean(self, ud, d): """ Clean CVS Files and tarballs """ - pkg = d.getVar('PN') - pkgdir = os.path.join(d.getVar("CVSDIR"), pkg) - - bb.utils.remove(pkgdir, True) + bb.utils.remove(ud.pkgdir, True) bb.utils.remove(ud.localpath) diff --git a/poky/bitbake/lib/bb/parse/ast.py b/poky/bitbake/lib/bb/parse/ast.py index eb8cfa21b..785aa974e 100644 --- a/poky/bitbake/lib/bb/parse/ast.py +++ b/poky/bitbake/lib/bb/parse/ast.py @@ -338,6 +338,9 @@ def finalize(fn, d, variant = None): bb.event.fire(bb.event.RecipePreFinalise(fn), d) bb.data.expandKeys(d) + + bb.event.fire(bb.event.RecipePostKeyExpansion(fn), d) + runAnonFuncs(d) tasklist = d.getVar('__BBTASKS', False) or [] diff --git a/poky/documentation/dev-manual/dev-manual-common-tasks.xml b/poky/documentation/dev-manual/dev-manual-common-tasks.xml index e9ce182a5..605d1ad7e 100644 --- a/poky/documentation/dev-manual/dev-manual-common-tasks.xml +++ b/poky/documentation/dev-manual/dev-manual-common-tasks.xml @@ -9057,6 +9057,9 @@ Creating node package manager (NPM) packages + + Adding custom metadata to packages + @@ -10761,6 +10764,61 @@ + +
+ Adding custom metadata to packages + + + The variable PACKAGE_ADD_METADATA + can be used to add additional metadata to packages. This is + reflected in the package control/spec file. To take the ipk + format for example, the CONTROL file stored inside would + contain the additional metadata as additional lines. + + + + The variable can be used in multiple ways, including using + suffixes to set it for a specific package type and/or package. + Note that the order of precedence is the same as this list: + + + PACKAGE_ADD_METADATA_<PKGTYPE>_<PN> + + + PACKAGE_ADD_METADATA_<PKGTYPE> + + + PACKAGE_ADD_METADATA_<PN> + + + PACKAGE_ADD_METADATA + + + <PKGTYPE> is a parameter and expected to be a + distinct name of specific package type: + + IPK for .ipk packages + DEB for .deb packages + RPM for .rpm packages + + <PN> is a parameter and expected to be a package name. + + + + The variable can contain multiple [one-line] metadata fields + separated by the literal sequence '\n'. The separator can be + redefined using the variable flag separator. + + + + The following is an example that adds two custom fields for + ipk packages: + + PACKAGE_ADD_METADATA_IPK = "Vendor: CustomIpk\nGroup: Applications/Spreadsheets" + + +
+
diff --git a/poky/documentation/ref-manual/ref-classes.xml b/poky/documentation/ref-manual/ref-classes.xml index f9bbddd72..f8920d8c1 100644 --- a/poky/documentation/ref-manual/ref-classes.xml +++ b/poky/documentation/ref-manual/ref-classes.xml @@ -1742,6 +1742,12 @@ This check was removed for YP 2.3 release --> + unlisted-pkg-lics: + Checks that all declared licenses applying for a package are also + declared on the recipe level (i.e. any license in + LICENSE_* should appear in + LICENSE). + useless-rpaths: Checks for dynamic library load paths (rpaths) in the binaries that by default on a standard system are searched by the linker (e.g. diff --git a/poky/documentation/ref-manual/ref-qa-checks.xml b/poky/documentation/ref-manual/ref-qa-checks.xml index 515106ae6..424a19c59 100644 --- a/poky/documentation/ref-manual/ref-qa-checks.xml +++ b/poky/documentation/ref-manual/ref-qa-checks.xml @@ -1170,6 +1170,31 @@ can be found then it should be implemented. I can't find one at the moment. + + + + + + + LICENSE_<packagename> includes licenses (<licenses>) that are not listed in LICENSE [unlisted-pkg-lics] + + + + + The LICENSE + of the recipe should be a superset of all the licenses of + all packages produced by this recipe. + In other words, any license in LICENSE_* + should also appear in + LICENSE. + + + +   + + + +
diff --git a/poky/documentation/ref-manual/ref-variables.xml b/poky/documentation/ref-manual/ref-variables.xml index 9ebe72cbd..657f6cf3d 100644 --- a/poky/documentation/ref-manual/ref-variables.xml +++ b/poky/documentation/ref-manual/ref-variables.xml @@ -52,7 +52,6 @@ - Extension to the Application Binary Interface (ABI) field of the GNU canonical architecture name (e.g. "eabi"). @@ -76,7 +75,6 @@ - Specifies whether to produce an output package even if it is empty. By default, BitBake does not produce empty packages. @@ -103,7 +101,6 @@ - Lists commands in a package that need an alternative binary naming scheme. Sometimes the same command is provided in multiple packages. @@ -134,7 +131,6 @@ - Used by the alternatives system to map duplicated commands to actual locations. For example, if the bracket command @@ -174,7 +170,6 @@ - Used by the alternatives system to create default priorities for duplicated commands. You can use the variable to create a single default @@ -203,7 +198,6 @@ - Used by the alternatives system to create default link locations for duplicated commands. You can use the variable to create a single default @@ -258,7 +252,6 @@ - An override list of append strings for each target specified with LABELS. @@ -278,7 +271,6 @@ - The minimal command and arguments used to run ar. @@ -291,7 +283,6 @@ - When used with the archiver class, determines the type of information used to create @@ -334,7 +325,6 @@ - Minimal command and arguments needed to run the assembler. @@ -347,7 +337,6 @@ - Lists recipe names (PN values) BitBake does not attempt to build. @@ -371,7 +360,6 @@ - Provides additional shlibs provider mapping information, which adds to or overwrites the information provided automatically by the system. @@ -406,7 +394,6 @@ - The email address used to contact the original author or authors in order to send patches and forward bugs. @@ -419,7 +406,6 @@ - When the debian class is inherited, which is the default behavior, @@ -442,7 +428,6 @@ - Enables creating an automatic menu for the syslinux bootloader. You must set this variable in your recipe. @@ -459,7 +444,6 @@ - When SRCREV is set to the value of this variable, it specifies to use @@ -501,7 +485,6 @@ - List of licenses found in the directories specified by COMMON_LICENSE_DIR @@ -525,7 +508,6 @@ - The list of defined CPU and Application Binary Interface (ABI) tunings (i.e. "tunes") available for use by the OpenEmbedded build system. @@ -560,7 +542,6 @@ - The directory within the Build Directory in which the OpenEmbedded build system places generated @@ -590,7 +571,6 @@ - Lists "recommended-only" packages to not install. Recommended-only packages are packages installed only through the @@ -645,7 +625,6 @@ - The library directory name for the CPU or Application Binary Interface (ABI) tune. The BASE_LIB applies only in the @@ -671,7 +650,6 @@ - Points to the base of the work directory for all recipes. The default value is "${TMPDIR}/work". @@ -751,7 +729,6 @@ - Defines how BitBake handles situations where an append file (.bbappend) has no corresponding recipe file (.bb). @@ -789,7 +766,6 @@ - Monitors disk space and available inodes during the build and allows you to control the build based on these parameters. @@ -887,7 +863,6 @@ - Defines the disk space and free inode warning intervals. To set these intervals, define the variable in your conf/local.conf file in the @@ -959,7 +934,6 @@ - Causes tarballs of the source control repositories (e.g. Git repositories), including metadata, to be placed in the @@ -994,7 +968,6 @@ - The maximum number of tasks BitBake should run in parallel at any one time. The OpenEmbedded build system automatically configures @@ -1030,7 +1003,6 @@ - Specifies the time (in seconds) after which to unload the BitBake server due to inactivity. Set BB_SERVER_TIMEOUT to determine how @@ -1056,7 +1028,6 @@ - Allows you to extend a recipe so that it builds variants of the software. Common variants for recipes exist such as "natives" like quilt-native, which is a copy of Quilt built to run on the build system; @@ -1107,7 +1078,6 @@ - Lists the names of configured layers. These names are used to find the other BBFILE_* variables. @@ -1123,7 +1093,6 @@ - Variable that expands to match files from BBFILES in a particular layer. @@ -1140,7 +1109,6 @@ - Assigns the priority for recipe files in each layer. @@ -1183,7 +1151,6 @@ - A space-separated list of recipe files BitBake uses to build software. @@ -1205,7 +1172,6 @@ - Activates content when identified layers are present. You identify the layers by the collections that the layers define. @@ -1252,7 +1218,6 @@ - Variable that controls how BitBake displays logs on build failure. @@ -1264,7 +1229,6 @@ - If BBINCLUDELOGS is set, specifies the maximum number of lines from the @@ -1281,7 +1245,6 @@ - Lists the layers to enable during the build. This variable is defined in the bblayers.conf configuration file in the @@ -1310,7 +1273,6 @@ - Prevents BitBake from processing recipes and recipe append files. @@ -1372,7 +1334,6 @@ - Specifies each additional separate configuration when you are building targets with multiple configurations. Use this variable in your @@ -1408,7 +1369,6 @@ - Used by BitBake to locate .bbclass and configuration files. This variable is analogous to the @@ -1437,7 +1397,6 @@ - If defined in the BitBake environment, BBSERVER points to the BitBake remote server. @@ -1466,7 +1425,6 @@ - When inheriting the binconfig-disabled class, this variable specifies binary configuration @@ -1494,7 +1452,6 @@ - When inheriting the binconfig class, this variable specifies a wildcard for @@ -1533,7 +1490,6 @@ - The base recipe name and version but without any special recipe name suffix (i.e. -native, lib64-, and so forth). @@ -1551,7 +1507,6 @@ - This variable is a version of the PN variable with common prefixes and suffixes @@ -1576,7 +1531,6 @@ - Specifies a URL for an upstream bug tracking website for a recipe. The OpenEmbedded build system does not use this variable. @@ -1592,7 +1546,6 @@ - Specifies the architecture of the build host (e.g. i686). The OpenEmbedded build system sets the value of @@ -1608,7 +1561,6 @@ - Specifies the architecture-specific assembler flags for the build host. By default, the value of BUILD_AS_ARCH is empty. @@ -1622,7 +1574,6 @@ - Specifies the architecture-specific C compiler flags for the build host. By default, the value of BUILD_CC_ARCH is empty. @@ -1636,7 +1587,6 @@ - Specifies the linker command to be used for the build host when the C compiler is being used as the linker. By default, BUILD_CCLD points to GCC and passes as @@ -1653,7 +1603,6 @@ - Specifies the flags to pass to the C compiler when building for the build host. When building in the -native context, @@ -1669,7 +1618,6 @@ - Specifies the flags to pass to the C preprocessor (i.e. to both the C and the C++ compilers) when building for the build host. @@ -1686,7 +1634,6 @@ - Specifies the flags to pass to the C++ compiler when building for the build host. When building in the -native context, @@ -1702,7 +1649,6 @@ - Specifies the Fortran compiler command for the build host. By default, BUILD_FC points to Gfortran and passes as arguments the value of @@ -1718,7 +1664,6 @@ - Specifies the linker command for the build host. By default, BUILD_LD points to the GNU linker (ld) and passes as arguments the value of @@ -1734,7 +1679,6 @@ - Specifies architecture-specific linker flags for the build host. By default, the value of BUILD_LD_ARCH is empty. @@ -1748,7 +1692,6 @@ - Specifies the flags to pass to the linker when building for the build host. When building in the -native context, @@ -1764,7 +1707,6 @@ - Specifies the optimization flags passed to the C compiler when building for the build host or the SDK. The flags are passed through the @@ -1788,7 +1730,6 @@ - Specifies the operating system in use on the build host (e.g. "linux"). The OpenEmbedded build system sets the value of @@ -1805,7 +1746,6 @@ - The toolchain binary prefix used for native recipes. The OpenEmbedded build system uses the BUILD_PREFIX value to set the @@ -1821,7 +1761,6 @@ - Specifies the command to be used to strip debugging symbols from binaries produced for the build host. By default, BUILD_STRIP points to @@ -1836,7 +1775,6 @@ - Specifies the system, including the architecture and the operating system, to use when building for the build host (i.e. when building native @@ -1862,7 +1800,6 @@ - Specifies the vendor name to use when building for the build host. The default value is an empty string (""). @@ -1876,7 +1813,6 @@ - Points to the location of the Build Directory. You can define this directory indirectly through the @@ -1896,7 +1832,6 @@ - When inheriting the buildhistory class, this variable specifies whether or not to commit the @@ -1928,7 +1863,6 @@ - When inheriting the buildhistory class, this variable specifies the author to use for each @@ -1963,7 +1897,6 @@ - When inheriting the buildhistory class, this variable specifies the directory in which @@ -1988,7 +1921,6 @@ - When inheriting the buildhistory class, this variable specifies the build history features @@ -2041,7 +1973,6 @@ - When inheriting the buildhistory class, this variable specifies a list of paths to files @@ -2074,7 +2005,6 @@ - When inheriting the buildhistory class, this variable optionally specifies a remote @@ -2109,7 +2039,6 @@ - Specifies the flags to pass to the C compiler when building for the SDK. When building in the nativesdk- @@ -2126,7 +2055,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers) when building for the SDK. @@ -2144,7 +2072,6 @@ - Specifies the flags to pass to the C++ compiler when building for the SDK. When building in the nativesdk- @@ -2161,7 +2088,6 @@ - Specifies the flags to pass to the linker when building for the SDK. When building in the nativesdk- @@ -2178,7 +2104,6 @@ - Points to the location of the directory that holds build statistics when you use and enable the buildstats @@ -2196,7 +2121,6 @@ - For the BusyBox recipe, specifies whether to split the output executable file into two parts: one for features that require setuid root, and one for @@ -2224,7 +2148,6 @@ - Specifies the directory BitBake uses to store a cache of the Metadata @@ -2240,7 +2163,6 @@ - The minimal command and arguments used to run the C compiler. @@ -2253,7 +2175,6 @@ - Specifies the flags to pass to the C compiler. This variable is exported to an environment variable and thus made visible to the software being @@ -2289,7 +2210,6 @@ - An internal variable specifying the special class override that should currently apply (e.g. "class-target", "class-native", and so forth). @@ -2333,7 +2253,6 @@ - If set to "1" within a recipe, CLEANBROKEN specifies that the make clean command does @@ -2352,7 +2271,6 @@ - Provides a list of hardware features that are enabled in both MACHINE_FEATURES @@ -2375,7 +2293,6 @@ - Points to meta/files/common-licenses in the Source Directory, @@ -2390,7 +2307,6 @@ - A regular expression that resolves to one or more hosts (when the recipe is native) or one or more targets (when the recipe is non-native) with which a recipe is compatible. @@ -2413,7 +2329,6 @@ - A regular expression that resolves to one or more target machines with which a recipe is compatible. The regular expression is matched against @@ -2434,7 +2349,6 @@ - Defines wildcards to match when installing a list of complementary packages for all the packages explicitly (or implicitly) installed in an image. @@ -2473,7 +2387,6 @@ - Stores sysroot components for each recipe. The OpenEmbedded build system uses COMPONENTS_DIR when constructing @@ -2494,7 +2407,6 @@ - Tracks the version of the local configuration file (i.e. local.conf). The value for CONF_VERSION @@ -2510,7 +2422,6 @@ - Identifies editable or configurable files that are part of a package. If the Package Management System (PMS) is being used to update packages on the target system, it is possible that @@ -2564,7 +2475,6 @@ - Identifies the initial RAM filesystem (initramfs) source files. The OpenEmbedded build system receives and uses @@ -2607,7 +2517,6 @@ - A list of files that contains autoconf test results relevant to the current build. This variable is used by the Autotools utilities when running @@ -2622,7 +2531,6 @@ - The minimal arguments for GNU configure. @@ -2634,7 +2542,6 @@ - When inheriting the distro_features_check class, this @@ -2657,7 +2564,6 @@ - A space-separated list of licenses to exclude from the source archived by the archiver @@ -2689,7 +2595,6 @@ - A space-separated list of licenses to include in the source archived by the archiver @@ -2717,7 +2622,6 @@ - A list of recipes to exclude in the source archived by the archiver @@ -2749,7 +2653,6 @@ - A list of recipes to include in the source archived by the archiver @@ -2781,7 +2684,6 @@ - A space-separated list of recipe types to include in the source archived by the archiver @@ -2811,7 +2713,6 @@ - If set to "1" along with the COPY_LIC_MANIFEST variable, the OpenEmbedded build system copies @@ -2843,7 +2744,6 @@ - If set to "1", the OpenEmbedded build system copies the license manifest for the image to /usr/share/common-licenses/license.manifest @@ -2871,7 +2771,6 @@ - Specifies the list of packages to be added to the image. You should only set this variable in the local.conf configuration file found @@ -2891,7 +2790,6 @@ - Specifies the parent directory of the OpenEmbedded-Core Metadata layer (i.e. meta). @@ -2917,7 +2815,6 @@ - Lists files from the COREBASE directory that should be copied other than the layers @@ -2946,7 +2843,6 @@ - The minimal command and arguments used to run the C preprocessor. @@ -2959,7 +2855,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers). This variable is exported to an environment @@ -2996,7 +2891,6 @@ - The toolchain binary prefix for the target tools. The CROSS_COMPILE variable is the same as the @@ -3018,7 +2912,6 @@ - The directory in which files checked out under the CVS system are stored. @@ -3031,7 +2924,6 @@ - The minimal command and arguments used to run the C++ compiler. @@ -3044,7 +2936,6 @@ - Specifies the flags to pass to the C++ compiler. This variable is exported to an environment variable and thus made visible to the software being @@ -3084,7 +2975,6 @@ - The destination directory. The location in the Build Directory @@ -3110,7 +3000,6 @@ - The date the build was started. Dates appear using the year, month, and day (YMD) format (e.g. "20150209" for February 9th, 2015). @@ -3124,7 +3013,6 @@ - The date and time on which the current build started. The format is suitable for timestamps. @@ -3137,7 +3025,6 @@ - When the debian class is inherited, which is the default behavior, @@ -3161,7 +3048,6 @@ - When the debian class is inherited, which is the default behavior, @@ -3185,7 +3071,6 @@ - Specifies to build packages with debugging information. This influences the value of the SELECTED_OPTIMIZATION @@ -3200,7 +3085,6 @@ - The options to pass in TARGET_CFLAGS and CFLAGS when compiling @@ -3216,7 +3100,6 @@ - Specifies a weak bias for recipe selection priority. @@ -3246,7 +3129,6 @@ - The default CPU and Application Binary Interface (ABI) tunings (i.e. the "tune") used by the OpenEmbedded build system. @@ -3271,7 +3153,6 @@ - Lists a recipe's build-time dependencies. These are dependencies on other recipes whose contents (e.g. headers and shared libraries) are needed @@ -3394,7 +3275,6 @@ - Points to the general area that the OpenEmbedded build system uses to place images, packages, SDKs, and other output files that are ready to be used outside of the build system. @@ -3426,7 +3306,6 @@ - Points to the area that the OpenEmbedded build system uses to place Debian packages that are ready to be used outside of the build system. @@ -3466,7 +3345,6 @@ - Points to the area that the OpenEmbedded build system uses to place images and other associated output files that are ready to be deployed onto the target machine. @@ -3499,7 +3377,6 @@ - Points to the area that the OpenEmbedded build system uses to place IPK packages that are ready to be used outside of the build system. @@ -3538,7 +3415,6 @@ - Points to the area that the OpenEmbedded build system uses to place RPM packages that are ready to be used outside of the build system. @@ -3577,7 +3453,6 @@ - Points to the area that the OpenEmbedded build system uses to place tarballs that are ready to be used outside of the build system. @@ -3616,7 +3491,6 @@ - When inheriting the deploy class, the DEPLOYDIR points to a @@ -3644,7 +3518,6 @@ - The package description used by package managers. If not set, DESCRIPTION takes the value of the @@ -3660,7 +3533,6 @@ - The short name of the distribution. For information on the long name of the distribution, see the @@ -3713,7 +3585,6 @@ - Specifies a codename for the distribution being built. @@ -3725,7 +3596,6 @@ - Specifies a list of distro-specific packages to add to all images. This variable takes affect through packagegroup-base so the @@ -3745,7 +3615,6 @@ - Specifies a list of distro-specific packages to add to all images if the packages exist. The packages might not exist or be empty (e.g. kernel modules). @@ -3761,7 +3630,6 @@ - The software support you want in your distribution for various features. You define your distribution features in the distribution @@ -3798,7 +3666,6 @@ - Features to be added to DISTRO_FEATURES if not also present in @@ -3822,7 +3689,6 @@ - Features from DISTRO_FEATURES_BACKFILL that should not be backfilled (i.e. added to @@ -3840,7 +3706,6 @@ - A convenience variable that gives you the default list of distro features with the exception of any features specific to the C library @@ -3868,7 +3733,6 @@ - Specifies a list of features that if present in the target DISTRO_FEATURES @@ -3889,7 +3753,6 @@ - Specifies a list of features that if present in the target DISTRO_FEATURES value should be included in @@ -3910,7 +3773,6 @@ - A convenience variable that specifies the list of distro features that are specific to the C library (libc). @@ -3928,7 +3790,6 @@ - Specifies a list of features that should be included in DISTRO_FEATURES when building native recipes. @@ -3946,7 +3807,6 @@ - Specifies a list of features that should be included in DISTRO_FEATURES when building nativesdk recipes. @@ -3964,7 +3824,6 @@ - The long name of the distribution. For information on the short name of the distribution, see the @@ -4016,7 +3875,6 @@ - The version of the distribution. @@ -4028,7 +3886,6 @@ - A colon-separated list of overrides specific to the current distribution. By default, this list includes the value of @@ -4056,7 +3913,6 @@ - The central download directory used by the build process to store downloads. By default, DL_DIR gets files @@ -4119,7 +3975,6 @@ - When inheriting the compress_doc class, this variable sets the compression policy used when @@ -4147,7 +4002,6 @@ - When building bootable images (i.e. where hddimg, iso, or wic.vmdk is in @@ -4174,7 +4028,6 @@ - Variable that controls which locales for glibc are generated during the build (useful if the target device has 64Mbytes @@ -4189,7 +4042,6 @@ - When used with the report-error class, specifies the path used for storing the debug files @@ -4218,7 +4070,6 @@ - Specifies the quality assurance checks whose failures are reported as errors by the OpenEmbedded build system. You set this variable in your distribution configuration @@ -4237,7 +4088,6 @@ - Triggers the OpenEmbedded build system's shared libraries resolver to exclude an entire package when scanning for shared libraries. @@ -4276,7 +4126,6 @@ - Directs BitBake to exclude a recipe from world builds (i.e. bitbake world). During world builds, BitBake locates, parses and builds all @@ -4306,7 +4155,6 @@ - Used with file and pathnames to create a prefix for a recipe's version based on the recipe's PE value. @@ -4328,7 +4176,6 @@ - The full package version specification as it appears on the final packages produced by a recipe. The variable's value is normally used to fix a runtime @@ -4353,7 +4200,6 @@ - When set, the EXTERNAL_KERNEL_TOOLS variable indicates that these tools are not in the source tree. @@ -4379,7 +4225,6 @@ - When inheriting the externalsrc class, this variable points to the source tree, which is @@ -4409,7 +4254,6 @@ - When inheriting the externalsrc class, this variable points to the directory in which the @@ -4440,7 +4284,6 @@ - For recipes inheriting the autotools class, you can use EXTRA_AUTORECONF to @@ -4463,7 +4306,6 @@ - A list of additional features to include in an image. When listing more than one feature, separate them with a space. @@ -4544,7 +4386,6 @@ - Specifies additional options for the image creation command that has been specified in IMAGE_CMD. @@ -4564,7 +4405,6 @@ - A list of recipes to build that do not provide packages for installing into the root filesystem. @@ -4592,7 +4432,6 @@ - A list of subdirectories of ${STAGING_BINDIR_NATIVE} added to the beginning of the environment variable @@ -4613,7 +4452,6 @@ - Additional CMake options. @@ -4630,7 +4468,6 @@ - Additional configure script options. See PACKAGECONFIG_CONFARGS @@ -4646,7 +4483,6 @@ - Additional GNU make options. @@ -4673,7 +4509,6 @@ - When inheriting the scons class, this variable specifies additional configuration @@ -4689,7 +4524,6 @@ - When inheriting the extrausers class, this variable provides image level user and group @@ -4731,7 +4565,6 @@ - Defines one or more packages to include in an image when a specific item is included in IMAGE_FEATURES. @@ -4766,7 +4599,6 @@ - Points to the base URL of the server and location within the document-root that provides the metadata and packages required by OPKG to support runtime package @@ -4797,7 +4629,6 @@ - The list of files and directories that are placed in a package. The @@ -4868,7 +4699,6 @@ - Defines the file specification to match SOLIBSDEV. In other words, FILES_SOLIBSDEV @@ -4892,7 +4722,6 @@ - Extends the search path the OpenEmbedded build system uses when looking for files and patches as it processes recipes and append files. @@ -4989,7 +4818,6 @@ - A subset of OVERRIDES used by the OpenEmbedded build system for creating FILESPATH. @@ -5029,7 +4857,6 @@ - The default set of directories the OpenEmbedded build system uses when searching for patches and files. @@ -5130,7 +4957,6 @@ - Allows you to define your own file permissions settings table as part of your configuration for the packaging process. For example, suppose you need a consistent set of custom permissions for @@ -5170,7 +4996,6 @@ - When inheriting the fontcache class, this variable specifies the runtime dependencies @@ -5187,7 +5012,6 @@ - When inheriting the fontcache class, this variable identifies packages containing font @@ -5207,7 +5031,6 @@ - Forces the removal of the packages listed in ROOTFS_RO_UNNEEDED during the generation of the root filesystem. @@ -5226,7 +5049,6 @@ - The options to pass in TARGET_CFLAGS and CFLAGS @@ -5246,7 +5068,6 @@ - Enables Position Independent Executables (PIE) within the GNU C Compiler (GCC). Enabling PIE in the GCC makes Return Oriented Programming @@ -5270,7 +5091,6 @@ - Specifies the default version of the GNU C Compiler (GCC) used for compilation. By default, GCCVERSION is set to @@ -5292,7 +5112,6 @@ - The minimal command and arguments to run the GNU Debugger. @@ -5304,7 +5123,6 @@ - The directory in which a local copy of a Git repository is stored when it is cloned. @@ -5317,7 +5135,6 @@ - Specifies the list of GLIBC locales to generate should you not wish to generate all LIBC locals, which can be time consuming. @@ -5346,7 +5163,6 @@ - When inheriting the useradd class, this variable @@ -5375,7 +5191,6 @@ - When inheriting the useradd class, this variable @@ -5399,7 +5214,6 @@ - Configures the GNU GRand Unified Bootloader (GRUB) to have graphics and serial in the boot menu. Set this variable to "1" in your @@ -5422,7 +5236,6 @@ - Additional options to add to the GNU GRand Unified Bootloader (GRUB) configuration. Use a semi-colon character (;) to @@ -5444,7 +5257,6 @@ - Specifies the timeout before executing the default LABEL in the GNU GRand Unified Bootloader (GRUB). @@ -5465,7 +5277,6 @@ - When inheriting the gtk-immodules-cache class, this variable specifies the packages that contain the @@ -5485,7 +5296,6 @@ - Website where more information about the software the recipe is building can be found. @@ -5499,7 +5309,6 @@ - The name of the target architecture, which is normally the same as TARGET_ARCH. @@ -5527,7 +5336,6 @@ - Specifies architecture-specific compiler flags that are passed to the C compiler. @@ -5561,7 +5369,6 @@ - Specifies the name of the target operating system, which is normally the same as the TARGET_OS. @@ -5579,7 +5386,6 @@ - Specifies the prefix for the cross-compile toolchain. HOST_PREFIX is normally the same as TARGET_PREFIX. @@ -5593,7 +5399,6 @@ - Specifies the system, including the architecture and the operating system, for which the build is occurring in the context of the current recipe. @@ -5634,7 +5439,6 @@ - A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks. Using this filter helps reduce the possibility of host @@ -5658,7 +5462,6 @@ - A space-separated list (filter) of tools on the build host that should be allowed to be called from within build tasks. Using this filter helps reduce the possibility of host @@ -5681,7 +5484,6 @@ - Specifies the name of the vendor. HOST_VENDOR is normally the same as TARGET_VENDOR. @@ -5699,7 +5501,6 @@ - Disables or enables the icecc (Icecream) function. For more information on this function and best practices @@ -5728,7 +5529,6 @@ - Points to the icecc-create-env script that you provide. This variable is used by the @@ -5754,7 +5554,6 @@ - Extra options passed to the make command during the do_compile @@ -5800,7 +5599,6 @@ - The location of the icecc binary. You can set this variable in your local.conf file. @@ -5819,7 +5617,6 @@ - Identifies user classes that you do not want the Icecream distributed compile support to consider. This variable is used by the @@ -5845,7 +5642,6 @@ - Identifies user recipes that you do not want the Icecream distributed compile support to consider. This variable is used by the @@ -5871,7 +5667,6 @@ - Identifies user recipes that use an empty PARALLEL_MAKE variable that you want to force remote distributed @@ -5892,7 +5687,6 @@ - The base name of image output files. This variable defaults to the recipe name (${PN}). @@ -5906,7 +5700,6 @@ - A space-separated list of files installed into the boot partition when preparing an image using the Wic tool with the bootimg-partition source @@ -5963,7 +5756,6 @@ - A list of classes that all images should inherit. You typically use this variable to specify the list of classes that register the different types of images @@ -5992,7 +5784,6 @@ - Specifies the command to create the image file for a specific image type, which corresponds to the value set set in @@ -6026,7 +5817,6 @@ - Specifies one or more files that contain custom device tables that are passed to the makedevs command as part of creating @@ -6050,7 +5840,6 @@ - The primary list of features to include in an image. Typically, you configure this variable in an image recipe. Although you can use this variable from your @@ -6086,7 +5875,6 @@ - Specifies the formats the OpenEmbedded build system uses during the build when creating the root filesystem. For example, setting IMAGE_FSTYPES @@ -6134,7 +5922,6 @@ - Used by recipes to specify the packages to install into an image through the image @@ -6220,7 +6007,6 @@ - Specifies the list of locales to install into the image during the root filesystem construction process. The OpenEmbedded build system automatically splits locale @@ -6262,7 +6048,6 @@ - The manifest file for the image. This file lists all the installed packages that make up the image. @@ -6299,7 +6084,6 @@ - The name of the output image files minus the extension. This variable is derived using the IMAGE_BASENAME, @@ -6320,7 +6104,6 @@ - Defines a multiplier that the build system applies to the initial image size for cases when the multiplier times the returned disk usage value for the image is greater than the sum of @@ -6366,7 +6149,6 @@ - Defines the package type (i.e. DEB, RPM, IPK, or TAR) used by the OpenEmbedded build system. The variable is defined appropriately by the @@ -6418,7 +6200,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system creates the final image output files. @@ -6446,7 +6227,6 @@ - Specifies a list of functions to call before the OpenEmbedded build system creates the final image output files. @@ -6474,7 +6254,6 @@ - The location of the root filesystem while it is under construction (i.e. during the do_rootfs @@ -6491,7 +6270,6 @@ - Specifies the alignment for the output image file in Kbytes. If the size of the image is not a multiple of @@ -6511,7 +6289,6 @@ - Defines additional free disk space created in the image in Kbytes. By default, this variable is set to "0". This free disk space is added to the image after the build system determines @@ -6546,7 +6323,6 @@ - Defines the size in Kbytes for the generated image. The OpenEmbedded build system determines the final size for the generated image using an algorithm that takes into account the initial disk space used @@ -6596,7 +6372,6 @@ - Specifies a dependency from one image type on another. Here is an example from the image-live @@ -6626,7 +6401,6 @@ - Specifies the complete list of supported image types by default: @@ -6686,7 +6460,6 @@ - Helps define the recipe revision for recipes that share a common include file. You can think of this variable as part of the recipe revision @@ -6752,7 +6525,6 @@ - Specifies a space-separated list of license names (as they would appear in LICENSE) @@ -6802,7 +6574,6 @@ - Causes the named class or classes to be inherited globally. Anonymous functions in the class or classes are not executed for the @@ -6826,7 +6597,6 @@ - Lists classes that will be inherited at the distribution level. It is unlikely that you want to edit this variable. @@ -6849,7 +6619,6 @@ - Prevents the default dependencies, namely the C compiler and standard C library (libc), from being added to DEPENDS. @@ -6870,7 +6639,6 @@ - Prevents the OpenEmbedded build system from splitting out debug information during packaging. By default, the build system splits out debugging @@ -6901,7 +6669,6 @@ - If set to "1", causes the build to not strip binaries in resulting packages and prevents the -dbg package from containing the @@ -6925,7 +6692,6 @@ - If set to "1", causes the build to not strip binaries in the resulting sysroot. @@ -6963,7 +6729,6 @@ - Defines the format for the output image of an initial RAM filesystem (initramfs), which is used during boot. Supported formats are the same as those supported by the @@ -6992,7 +6757,6 @@ - Specifies the PROVIDES name of an image recipe that is used to build an initial @@ -7060,7 +6824,6 @@ - Controls whether or not the image recipe specified by INITRAMFS_IMAGE is run through an extra pass @@ -7126,7 +6889,6 @@ - The link name of the initial RAM filesystem image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7156,7 +6918,6 @@ - The base name of the initial RAM filesystem image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7181,7 +6942,6 @@ - Indicates list of filesystem images to concatenate and use as an initial RAM disk (initrd). @@ -7201,7 +6961,6 @@ - When building a "live" bootable image (i.e. when IMAGE_FSTYPES contains "live"), INITRD_IMAGE @@ -7224,7 +6983,6 @@ - The filename of the initialization script as installed to ${sysconfdir}/init.d. @@ -7242,7 +7000,6 @@ - A list of the packages that contain initscripts. If multiple packages are specified, you need to append the package name to the other INITSCRIPT_* as an override. @@ -7262,7 +7019,6 @@ - Specifies the options to pass to update-rc.d. Here is an example: @@ -7300,7 +7056,6 @@ - Specifies the QA checks to skip for a specific package within a recipe. For example, to skip the check for symbolic link @@ -7327,7 +7082,6 @@ - By default, the tzdata recipe packages an /etc/timezone file. Set the INSTALL_TIMEZONE_FILE @@ -7343,7 +7097,6 @@ - When the IPK backend is in use and package management is enabled on the target, you can use this variable to set up opkg in the target image @@ -7403,7 +7156,6 @@ - Defines the kernel architecture used when assembling the configuration. Architectures supported for this release are: @@ -7430,7 +7182,6 @@ - A regular expression used by the build process to explicitly identify the kernel branch that is validated, patched, and configured during a build. @@ -7485,7 +7236,6 @@ - When used with the kernel-yocto class, specifies an "in-tree" kernel configuration file @@ -7541,7 +7291,6 @@ - Specifies an alternate kernel image type for creation in addition to the kernel image type specified using the KERNEL_IMAGETYPE @@ -7556,7 +7305,6 @@ - Specifies the name of all of the build artifacts. You can change the name of the artifacts by changing the KERNEL_ARTIFACT_NAME variable. @@ -7595,7 +7343,6 @@ - A list of classes defining kernel image types that the kernel class should inherit. @@ -7616,7 +7363,6 @@ - Specifies the name of the generated Linux kernel device tree (i.e. the .dtb) file. @@ -7638,7 +7384,6 @@ - The link name of the kernel device tree binary (DTB). This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7668,7 +7413,6 @@ - The base name of the kernel device tree binary (DTB). This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7693,7 +7437,6 @@ - Specifies additional make command-line arguments the OpenEmbedded build system passes on when compiling the kernel. @@ -7707,7 +7450,6 @@ - Includes additional kernel metadata. In the OpenEmbedded build system, the default Board Support Packages (BSPs) @@ -7756,7 +7498,6 @@ - The link name of the kernel flattened image tree (FIT) image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7786,7 +7527,6 @@ - The base name of the kernel flattened image tree (FIT) image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7811,7 +7551,6 @@ - The link name for the kernel image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7841,7 +7580,6 @@ - Specifies the maximum size of the kernel image file in kilobytes. If KERNEL_IMAGE_MAXSIZE is set, @@ -7872,7 +7610,6 @@ - The base name of the kernel image. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -7897,7 +7634,6 @@ - The type of kernel to build for a device, usually set by the machine configuration files and defaults to "zImage". This variable is used @@ -7919,7 +7655,6 @@ - Lists kernel modules that need to be auto-loaded during boot. @@ -7973,7 +7708,6 @@ - Provides a list of modules for which the OpenEmbedded build system expects to find module_conf_modname @@ -7992,7 +7726,6 @@ - The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR @@ -8024,7 +7757,6 @@ - The location of the kernel sources. This variable is set to the value of the STAGING_KERNEL_DIR @@ -8056,7 +7788,6 @@ - Specifies the version of the kernel as extracted from version.h or utsrelease.h within the kernel sources. @@ -8074,7 +7805,6 @@ - Specifies whether the data referenced through PKGDATA_DIR is needed or not. @@ -8096,7 +7826,6 @@ - Provides a short description of a configuration fragment. You use this variable in the .scc file that describes a configuration fragment file. @@ -8116,7 +7845,6 @@ - The machine as known by the kernel. Sometimes the machine name used by the kernel does not match the machine name used by the OpenEmbedded build @@ -8163,7 +7891,6 @@ - Defines the kernel type to be used in assembling the configuration. The linux-yocto recipes define "standard", "tiny", @@ -8193,7 +7920,6 @@ - Provides a list of targets for automatic configuration. @@ -8211,7 +7937,6 @@ - Lists the layers, separated by spaces, on which this recipe depends. Optionally, you can specify a specific layer version for a @@ -8242,7 +7967,6 @@ - When used inside the layer.conf configuration file, this variable provides the path of the current layer. This variable is not available outside of layer.conf @@ -8257,7 +7981,6 @@ - Lists the layers, separated by spaces, recommended for use with this layer. @@ -8290,7 +8013,6 @@ - Lists the versions of the OpenEmbedded-Core for which a layer is compatible. @@ -8337,7 +8059,6 @@ - Optionally specifies the version of a layer as a single number. You can use this within LAYERDEPENDS @@ -8356,7 +8077,6 @@ - The minimal command and arguments used to run the linker. @@ -8369,7 +8089,6 @@ - Specifies the flags to pass to the linker. This variable is exported to an environment variable and thus made visible to the software being @@ -8405,7 +8124,6 @@ - Specifies the lead (or primary) compiled library file (i.e. .so) that the debian @@ -8426,7 +8144,6 @@ - Checksums of the license text in the recipe source code. @@ -8455,7 +8172,6 @@ - The list of source licenses for the recipe. Follow these rules: @@ -8520,7 +8236,6 @@ - Setting LICENSE_CREATE_PACKAGE to "1" causes the OpenEmbedded build system to create an extra package (i.e. @@ -8563,7 +8278,6 @@ - Specifies additional flags for a recipe you must whitelist through LICENSE_FLAGS_WHITELIST @@ -8591,7 +8305,6 @@ - Lists license flags that when specified in LICENSE_FLAGS within a recipe should not prevent that recipe from being @@ -8611,7 +8324,6 @@ - Path to additional licenses used during the build. By default, the OpenEmbedded build system uses COMMON_LICENSE_DIR to define the directory that holds common license text used during the build. @@ -8630,7 +8342,6 @@ - Defines the kernel type to be used in assembling the configuration. The linux-yocto recipes define "standard", "tiny", and @@ -8663,7 +8374,6 @@ - The Linux version from kernel.org on which the Linux kernel image being built using the OpenEmbedded build system is based. @@ -8694,7 +8404,6 @@ - A string extension compiled into the version string of the Linux kernel built with the OpenEmbedded build system. @@ -8727,7 +8436,6 @@ - Specifies the directory to which the OpenEmbedded build system writes overall log files. The default directory is ${TMPDIR}/log. @@ -8751,7 +8459,6 @@ - Specifies the target device for which the image is built. You define MACHINE in the local.conf file found in the @@ -8806,7 +8513,6 @@ - Specifies the name of the machine-specific architecture. This variable is set automatically from MACHINE @@ -8824,7 +8530,6 @@ - A list of required machine-specific packages to install as part of the image being built. The build process depends on these packages being present. @@ -8861,7 +8566,6 @@ - A list of recommended machine-specific packages to install as part of the image being built. The build process does not depend on these packages being present. @@ -8925,7 +8629,6 @@ - A list of machine-specific packages to install as part of the image being built that are not essential for the machine to boot. However, the build process for more fully-featured images @@ -8971,7 +8674,6 @@ - A list of machine-specific packages to install as part of the image being built that are not essential for booting the machine. The image being built has no build dependency on this list of packages. @@ -9016,7 +8718,6 @@ - Specifies the list of hardware features the MACHINE is capable of supporting. @@ -9043,7 +8744,6 @@ - Features to be added to MACHINE_FEATURES if not also present in @@ -9067,7 +8767,6 @@ - Features from MACHINE_FEATURES_BACKFILL that should not be backfilled (i.e. added to @@ -9085,7 +8784,6 @@ - A colon-separated list of overrides that apply to the current machine. By default, this list includes the value of @@ -9126,7 +8824,6 @@ - The email address of the distribution maintainer. @@ -9138,7 +8835,6 @@ - Specifies additional paths from which the OpenEmbedded build system gets source code. When the build system searches for source code, it first @@ -9167,7 +8863,6 @@ - Specifies a prefix has been added to PN to create a special version of a recipe or package (i.e. a Multilib version). @@ -9219,7 +8914,6 @@ - This variable has been replaced by the KERNEL_MODULE_AUTOLOAD variable. You should replace all occurrences of @@ -9248,7 +8942,6 @@ - Specifies modprobe.d syntax lines for inclusion in the @@ -9309,7 +9002,6 @@ - Controls creation of the modules-*.tgz file. Set this variable to "0" to disable creation of this @@ -9325,7 +9017,6 @@ - The link name of the kernel module tarball. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -9355,7 +9046,6 @@ - The base name of the kernel module tarball. This variable is set in the meta/classes/kernel-artifact-names.bbclass @@ -9382,7 +9072,6 @@ --> - Uniquely identifies the type of the target system for which packages are being built. This variable allows output for different types of target @@ -9448,7 +9136,6 @@ - A string identifying the host distribution. Strings consist of the host distributor ID followed by the release, as reported by the @@ -9478,7 +9165,6 @@ - The minimal command and arguments to run nm. @@ -9491,7 +9177,6 @@ - Avoids QA errors when you use a non-common, non-CLOSED license in a recipe. Packages exist, such as the linux-firmware package, with @@ -9525,7 +9210,6 @@ - Prevents installation of all "recommended-only" packages. Recommended-only packages are packages installed only through the @@ -9586,7 +9270,6 @@ - Disables auto package from splitting .debug files. If a recipe requires FILES_${PN}-dbg to be set manually, @@ -9612,7 +9295,6 @@ - The minimal command and arguments to run objcopy. @@ -9625,7 +9307,6 @@ - The minimal command and arguments to run objdump. @@ -9638,7 +9319,6 @@ - When inheriting the binconfig class, this variable @@ -9672,7 +9352,6 @@ - An internal variable used to tell the OpenEmbedded build system what Python modules to import for every Python function run by the system. @@ -9691,7 +9370,6 @@ - The name of the build environment setup script for the purposes of setting up the environment within the extensible SDK. @@ -9713,7 +9391,6 @@ - Controls how the OpenEmbedded build system spawns interactive terminals on the host development system (e.g. using the BitBake command with the @@ -9745,7 +9422,6 @@ - The directory from which the top-level build environment setup script is sourced. The Yocto Project provides a top-level build environment @@ -9769,7 +9445,6 @@ - Declares the oldest version of the Linux kernel that the produced binaries must support. This variable is passed into the build of the Embedded @@ -9792,7 +9467,6 @@ - A colon-separated list of overrides that currently apply. Overrides are a BitBake mechanism that allows variables to be selectively overridden at the end of parsing. @@ -9856,7 +9530,6 @@ - The recipe name and version. P is comprised of the following: @@ -9866,13 +9539,46 @@ + PACKAGE_ADD_METADATA + + PACKAGE_ADD_METADATA[doc] = "This variable defines additional metadata to add to packages." + + + + + This variable defines additional metdata to add to packages. + + + + You may find you need to inject additional metadata into + packages. This variable allows you to do that by setting + the injected data as the value. Multiple fields can be + added by splitting the content with the literal separator + "\n". + + + + The suffixes '_IPK', '_DEB', or '_RPM' can be applied to + the variable to do package type specific settings. It can + also be made package specific by using the package name as + a suffix. + + + + You can find out more about applying this variable in + the + "Adding custom metadata to packages" + section in the Yocto Project Development Tasks Manual. + + + + PACKAGE_ARCH PACKAGE_ARCH[doc] = "The architecture of the resulting package or packages." - The architecture of the resulting package or packages. @@ -9908,7 +9614,6 @@ - Specifies a list of architectures compatible with the target machine. This variable is set automatically and should not @@ -9928,7 +9633,6 @@ - Enables easily adding packages to PACKAGES before ${PN} @@ -9944,7 +9648,6 @@ - This variable, which is set in the local.conf configuration file found in the conf folder of the @@ -9994,7 +9697,6 @@ - Determines how to split up the binary and debug information when creating *-dbg packages to be used with the GNU Project Debugger (GDB). @@ -10059,7 +9761,6 @@ - Prevents specific packages from being installed when you are installing complementary packages. @@ -10085,7 +9786,6 @@ - Lists packages that should not be installed into an image. For example: @@ -10137,7 +9837,6 @@ - Specifies the list of architectures compatible with the device CPU. This variable is useful when you build for several different devices that use miscellaneous processors such as XScale and ARM926-EJS. @@ -10151,7 +9850,6 @@ - Optionally specifies the package architectures used as part of the package feed URIs during the build. When used, the PACKAGE_FEED_ARCHS @@ -10206,7 +9904,6 @@ - Specifies the base path used when constructing package feed URIs. The PACKAGE_FEED_BASE_PATHS variable @@ -10253,7 +9950,6 @@ - Specifies the front portion of the package feed URI used by the OpenEmbedded build system. Each final package feed URI is comprised of @@ -10298,7 +9994,6 @@ - The final list of packages passed to the package manager for installation into the image. @@ -10333,7 +10028,6 @@ - Specifies a list of packages the OpenEmbedded build system attempts to install when creating an image. If a listed package fails to install, the build system @@ -10349,7 +10043,6 @@ - Specifies a list of functions run to pre-process the PKGD directory prior to splitting the files out to individual @@ -10364,7 +10057,6 @@ - Specifies a list of dependencies for post-installation and pre-installation scripts on native/cross tools. If your post-installation or pre-installation script can @@ -10389,7 +10081,6 @@ - This variable provides a means of enabling or disabling features of a recipe on a per-recipe basis. PACKAGECONFIG blocks are defined @@ -10528,7 +10219,6 @@ - A space-separated list of configuration options generated from the PACKAGECONFIG @@ -10559,7 +10249,6 @@ - For recipes inheriting the packagegroup class, setting @@ -10580,7 +10269,6 @@ - The list of packages the recipe creates. The default value is the following: @@ -10621,7 +10309,6 @@ - A promise that your recipe satisfies runtime dependencies for optional modules that are found in other recipes. PACKAGES_DYNAMIC @@ -10664,7 +10351,6 @@ - Specifies a list of functions run to perform additional splitting of files into individual packages. Recipes can either prepend to this variable or prepend @@ -10686,7 +10372,6 @@ - Extra options passed to the make command during the do_compile @@ -10743,7 +10428,6 @@ - Extra options passed to the make install command during the do_install @@ -10780,7 +10464,6 @@ - Determines the action to take when a patch fails. You can set this variable to one of two values: "noop" and "user". @@ -10808,7 +10491,6 @@ - Specifies the utility used to apply patches for a recipe during the do_patch @@ -10839,7 +10521,6 @@ - The epoch of the recipe. By default, this variable is unset. The variable is used to make upgrades possible when the @@ -10861,7 +10542,6 @@ - Specifies the recipe or package name and includes all version and revision numbers (i.e. glibc-2.13-r20+svnr15508/ and bash-4.2-r1/). @@ -10879,7 +10559,6 @@ - When inheriting the pixbufcache class, this variable identifies packages that contain @@ -10900,7 +10579,6 @@ - The name of the resulting package created by the OpenEmbedded build system. @@ -10924,7 +10602,6 @@ - The path to pkg-config files for the current build context. pkg-config reads this variable @@ -10939,7 +10616,6 @@ - Points to the destination directory for files to be packaged before they are split into individual packages. This directory defaults to the following: @@ -10960,7 +10636,6 @@ - Points to a shared, global-state directory that holds data generated during the packaging process. During the packaging process, the @@ -10991,7 +10666,6 @@ - Points to the parent directory for files to be packaged after they have been split into individual packages. This directory defaults to the following: @@ -11015,7 +10689,6 @@ - Points to a temporary work area where the do_package task saves package metadata. @@ -11044,7 +10717,6 @@ - The epoch of the package(s) built by the recipe. By default, PKGE is set to PE. @@ -11058,7 +10730,6 @@ - The revision of the package(s) built by the recipe. By default, PKGR is set to PR. @@ -11072,7 +10743,6 @@ - The version of the package(s) built by the recipe. By default, PKGV is set to @@ -11087,7 +10757,6 @@ - This variable can have two separate functions depending on the context: a recipe name or a resulting package name. @@ -11124,7 +10793,6 @@ - Lists recipes you do not want the OpenEmbedded build system to build. This variable works in conjunction with the @@ -11151,7 +10819,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the host part of the SDK. @@ -11180,7 +10847,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the target part of the SDK. @@ -11209,7 +10875,6 @@ - The revision of the recipe. The default value for this variable is "r0". Subsequent revisions of the recipe conventionally have the @@ -11265,7 +10930,6 @@ - If multiple recipes provide the same item, this variable determines which recipe is preferred and thus provides the item (i.e. the preferred provider). @@ -11315,7 +10979,6 @@ - If multiple versions of recipes exist, this variable determines which version is given preference. You must always suffix the variable with the @@ -11407,7 +11070,6 @@ - Specifies additional paths from which the OpenEmbedded build system gets source code. When the build system searches for source code, it first @@ -11456,7 +11118,6 @@ - Indicates the importance of a package. @@ -11482,7 +11143,6 @@ - Specifies libraries installed within a recipe that should be ignored by the OpenEmbedded build system's shared library resolver. @@ -11524,7 +11184,6 @@ - A list of aliases by which a particular recipe can be known. By default, a recipe's own @@ -11613,7 +11272,6 @@ - The network based PR service host and port. @@ -11643,7 +11301,6 @@ - Specifies whether or not Package Test (ptest) functionality is enabled when building a recipe. @@ -11662,7 +11319,6 @@ - The version of the recipe. The version is normally extracted from the recipe filename. For example, if the recipe is named @@ -11688,7 +11344,6 @@ - When used by recipes that inherit the distutils3, setuptools3, @@ -11724,7 +11379,6 @@ - When used by recipes that inherit the distutils3, setuptools3, @@ -11760,7 +11414,6 @@ - The minimal command and arguments to run ranlib. @@ -11773,7 +11426,6 @@ - The list of packages that conflict with packages. Note that packages will not be installed if conflicting packages are not first removed. @@ -11822,7 +11474,6 @@ - Lists runtime dependencies of a package. These dependencies are other packages that must be installed in order for the package to function correctly. @@ -11985,7 +11636,6 @@ - When inheriting the distro_features_check class, this @@ -12008,7 +11658,6 @@ - With rm_work enabled, this variable specifies a list of recipes whose work directories should not be removed. @@ -12024,7 +11673,6 @@ - Defines the root home directory. By default, this directory is set as follows in the BitBake configuration file: @@ -12061,7 +11709,6 @@ - Indicates a filesystem image to include as the root filesystem. @@ -12081,7 +11728,6 @@ - Specifies a list of functions to call after the OpenEmbedded build system has installed packages. You can specify functions separated by semicolons: @@ -12108,7 +11754,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system has created the root filesystem. You can specify functions separated by semicolons: @@ -12135,7 +11780,6 @@ - Specifies a list of functions to call after the OpenEmbedded build system has removed unnecessary packages. @@ -12168,7 +11812,6 @@ - Specifies a list of functions to call before the OpenEmbedded build system has created the root filesystem. You can specify functions separated by semicolons: @@ -12195,7 +11838,6 @@ - A list of package name aliases that a package also provides. These aliases are useful for satisfying runtime dependencies of other packages both during the build and on the target @@ -12224,7 +11866,6 @@ - A list of packages that extends the usability of a package being built. The package being built does not depend on this list of @@ -12317,7 +11958,6 @@ - A list of packages replaced by a package. The package manager uses this variable to determine which package should be installed to replace other package(s) @@ -12373,7 +12013,6 @@ - A list of additional packages that you can suggest for installation by the package manager at the time a package is installed. @@ -12402,7 +12041,6 @@ - The location in the Build Directory where unpacked recipe source code resides. @@ -12455,7 +12093,6 @@ - Specifies a list of command-line utilities that should be checked for during the initial sanity checking process when running BitBake. @@ -12471,7 +12108,6 @@ - A list of the host distribution identifiers that the build system has been tested against. Identifiers consist of the host distributor ID @@ -12496,7 +12132,6 @@ - The target architecture for the SDK. Typically, you do not directly set this variable. Instead, use @@ -12511,7 +12146,6 @@ - The directory set up and used by the populate_sdk_base class to which the SDK is deployed. @@ -12530,7 +12164,6 @@ - The parent directory used by the OpenEmbedded build system when creating SDK output. The @@ -12556,7 +12189,6 @@ - Controls whether or not shared state artifacts are copied into the extensible SDK. The default value of "full" copies all of the required @@ -12580,7 +12212,6 @@ - The manifest file for the host part of the SDK. This file lists all the installed packages that make up the host part of the SDK. @@ -12613,7 +12244,6 @@ - When set to "1", specifies to include the packagedata for all recipes in the "world" target in the extensible SDK. Including this data allows the @@ -12638,7 +12268,6 @@ - When set to "1", specifies to include the toolchain in the extensible SDK. Including the toolchain is useful particularly when @@ -12665,7 +12294,6 @@ - A list of classes to remove from the INHERIT value globally within the extensible SDK configuration. @@ -12699,7 +12327,6 @@ - A list of variables not allowed through from the OpenEmbedded build system configuration into the extensible SDK configuration. @@ -12743,7 +12370,6 @@ - A list of variables allowed through from the OpenEmbedded build system configuration into the extensible SDK configuration. @@ -12779,7 +12405,6 @@ - The base name for SDK output files. The name is derived from the DISTRO, @@ -12802,7 +12427,6 @@ - Specifies the operating system for which the SDK will be built. The default value is the value of @@ -12817,7 +12441,6 @@ - The location used by the OpenEmbedded build system when creating SDK output. The @@ -12847,7 +12470,6 @@ - Specifies a list of architectures compatible with the SDK machine. This variable is set automatically and should not @@ -12867,7 +12489,6 @@ - Specifies a list of functions to call once the OpenEmbedded build system creates the SDK. You can specify functions separated by semicolons: @@ -12895,7 +12516,6 @@ - The toolchain binary prefix used for nativesdk recipes. The OpenEmbedded build system uses the @@ -12913,7 +12533,6 @@ - A list of shared state tasks added to the extensible SDK. By default, the following tasks are added: @@ -12940,7 +12559,6 @@ - Specifies the system, including the architecture and the operating system, for which the SDK will be built. @@ -12964,7 +12582,6 @@ - The manifest file for the target part of the SDK. This file lists all the installed packages that make up the target part of the SDK. @@ -12997,7 +12614,6 @@ - A list of targets to install from shared state as part of the standard or extensible SDK installation. The default value is "${PN}" (i.e. the image from which @@ -13017,7 +12633,6 @@ - The title to be printed when running the SDK installer. By default, this title is based on the DISTRO_NAME @@ -13050,7 +12665,6 @@ - An optional URL for an update server for the extensible SDK. If set, the value is used as the default update server when @@ -13066,7 +12680,6 @@ - Specifies the name of the SDK vendor. @@ -13078,7 +12691,6 @@ - Specifies the version of the SDK. The distribution configuration file (e.g. /meta-poky/conf/distro/poky.conf) @@ -13104,7 +12716,6 @@ - The default installation directory for the Extensible SDK. By default, this directory is based on the DISTRO @@ -13134,7 +12745,6 @@ - Equivalent to IMAGE_FEATURES. However, this variable applies to the SDK generated from an @@ -13152,7 +12762,6 @@ - The machine for which the SDK is built. In other words, the SDK is built such that it runs on the target you specify with the @@ -13184,7 +12793,6 @@ - Defines the path offered to the user for installation of the SDK that is generated by the OpenEmbedded build system. @@ -13202,7 +12810,6 @@ - The full path to the sysroot used for cross-compilation within an SDK as it will be when installed into the default @@ -13217,7 +12824,6 @@ - The section in which packages should be categorized. Package management utilities can make use of this variable. @@ -13230,7 +12836,6 @@ - Specifies the optimization flags passed to the C compiler when building for the target. The flags are passed through the default value of the @@ -13255,7 +12860,6 @@ - Defines a serial console (TTY) to enable using getty. Provide a value that specifies the baud rate followed by @@ -13281,7 +12885,6 @@ - Defines a serial console (TTY) to enable using getty. Provide a value that specifies the baud rate followed by @@ -13300,7 +12903,6 @@ - Specifies serial consoles, which must be listed in SERIAL_CONSOLES, to check against /proc/console @@ -13326,7 +12928,6 @@ - A list of recipe dependencies that should not be used to determine signatures of tasks from one recipe when they depend on tasks from another recipe. @@ -13378,7 +12979,6 @@ - A list of recipes that are completely stable and will never change. The ABI for the recipes in the list are presented by @@ -13402,7 +13002,6 @@ - Specifies the number of bits for the target system CPU. The value should be either "32" or "64". @@ -13415,7 +13014,6 @@ - Specifies the endian byte order of the target system. The value should be either "le" for little-endian or "be" for big-endian. @@ -13428,7 +13026,6 @@ - Enables removal of all files from the "Provides" section of an RPM package. Removal of these files is required for packages containing @@ -13455,7 +13052,6 @@ - Groups together machines based upon the same family of SOC (System On Chip). You typically set this variable in a common @@ -13477,7 +13073,6 @@ - Defines the suffix for shared libraries used on the target platform. By default, this suffix is ".so.*" for all Linux-based @@ -13499,7 +13094,6 @@ - Defines the suffix for the development symbolic link (symlink) for shared libraries on the target platform. By default, this suffix is ".so" for Linux-based @@ -13521,7 +13115,6 @@ - When you are fetching files to create a mirror of sources (i.e. creating a source mirror), setting SOURCE_MIRROR_FETCH to "1" in your @@ -13553,7 +13146,6 @@ - Defines your own PREMIRRORS from which to first fetch source before attempting to fetch @@ -13584,7 +13176,6 @@ - Maps commonly used license names to their SPDX counterparts found in meta/files/common-licenses/. For the default SPDXLICENSEMAP @@ -13606,7 +13197,6 @@ - A list of prefixes for PN used by the OpenEmbedded build system to create variants of recipes or packages. The list specifies the prefixes to strip off during certain circumstances @@ -13621,7 +13211,6 @@ - The file type for the Secondary Program Loader (SPL). Some devices use an SPL from which to boot (e.g. the BeagleBone development board). @@ -13663,7 +13252,6 @@ - The list of source files - local or remote. This variable tells the OpenEmbedded build system which bits to pull in for the build and how to pull them in. @@ -13855,7 +13443,6 @@ - By default, the OpenEmbedded build system automatically detects whether SRC_URI contains files that are machine-specific. @@ -13872,7 +13459,6 @@ - The date of the source code used to build the package. This variable applies only if the source was fetched from a Source Code Manager (SCM). @@ -13885,7 +13471,6 @@ - Returns the version string of the current package. This string is used to help define the value of PV. @@ -13923,7 +13508,6 @@ - The revision of the source code used to build the package. This variable applies to Subversion, Git, Mercurial, and Bazaar only. @@ -13953,7 +13537,6 @@ - The directory for the shared state cache. @@ -13965,7 +13548,6 @@ - If set to "1", allows fetches from mirrors that are specified in SSTATE_MIRRORS @@ -13988,7 +13570,6 @@ - Configures the OpenEmbedded build system to search other mirror locations for prebuilt cache data objects before building out the data. @@ -14049,7 +13630,6 @@ - Controls the list of files the OpenEmbedded build system scans for hardcoded installation paths. The variable uses a space-separated list of filenames (not paths) with standard @@ -14084,7 +13664,6 @@ - Specifies the path to the /lib subdirectory of the sysroot directory for the build host. @@ -14098,7 +13677,6 @@ - Specifies the path to the /lib subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14113,7 +13691,6 @@ - Specifies the path to the /usr/bin subdirectory of the sysroot directory for the target for which the current @@ -14129,7 +13706,6 @@ - Specifies the path to the directory containing binary configuration scripts. These scripts provide configuration information for @@ -14155,7 +13731,6 @@ - Specifies the path to the /usr/bin subdirectory of the sysroot directory for the build host. @@ -14169,7 +13744,6 @@ - Specifies the path to the /usr/share subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14184,7 +13758,6 @@ - Specifies the path to the /usr/share subdirectory of the sysroot directory for the build host. @@ -14197,7 +13770,6 @@ - Helps construct the recipe-sysroots directory, which is used during packaging. @@ -14236,7 +13808,6 @@ - Specifies the path to the sysroot directory for the system on which the component is built to run (the system that hosts the component). @@ -14307,7 +13878,6 @@ - Specifies the path to the sysroot directory used when building components that run on the build host itself. @@ -14320,7 +13890,6 @@ - Specifies the path to the sysroot used for the system for which the component generates code. For components that do not generate code, which is the @@ -14352,7 +13921,6 @@ - Specifies the path to the /etc subdirectory of the sysroot directory for the build host. @@ -14366,7 +13934,6 @@ - Specifies the path to the /usr subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14381,7 +13948,6 @@ - Specifies the path to the /usr/include subdirectory of the sysroot directory for the target for which the current @@ -14397,7 +13963,6 @@ - Specifies the path to the /usr/include subdirectory of the sysroot directory for the build host. @@ -14410,7 +13975,6 @@ - Points to the directory containing the kernel build artifacts. Recipes building software that needs to access kernel @@ -14429,7 +13993,6 @@ - The directory with kernel headers that are required to build out-of-tree modules. @@ -14442,7 +14005,6 @@ - Specifies the path to the /usr/lib subdirectory of the sysroot directory for the target for which the current recipe is being built @@ -14457,7 +14019,6 @@ - Specifies the path to the /usr/lib subdirectory of the sysroot directory for the build host. @@ -14470,7 +14031,6 @@ - Specifies the base path used to create recipe stamp files. The path to an actual stamp file is constructed by evaluating this string and then appending additional information. @@ -14507,7 +14067,6 @@ - Specifies the base directory in which the OpenEmbedded build system places stamps. The default directory is @@ -14522,7 +14081,6 @@ - The minimal command and arguments to run strip, which is used to strip symbols. @@ -14536,7 +14094,6 @@ - The short (72 characters or less) summary of the binary package for packaging systems such as opkg, rpm, or dpkg. @@ -14554,7 +14111,6 @@ - The directory in which files checked out of a Subversion system are stored. @@ -14567,7 +14123,6 @@ - Specifies the kernel boot default console. If you want to use a console other than the default, set this variable in your recipe as follows where "X" is @@ -14592,7 +14147,6 @@ - Lists additional options to add to the syslinux file. You need to set this variable in your recipe. If you want to list multiple options, separate the options @@ -14613,7 +14167,6 @@ - Specifies the alternate serial port or turns it off. To turn off serial, set this variable to an empty string in your recipe. @@ -14637,7 +14190,6 @@ - An .LSS file used as the background for the VGA boot menu when you use the boot menu. You need to set this variable in your recipe. @@ -14658,7 +14210,6 @@ - Specifies the alternate console=tty... kernel boot argument. The variable's default value is set in the syslinux @@ -14680,7 +14231,6 @@ - Points to the temporary directory under the work directory (default "${WORKDIR}/sysroot-destdir") @@ -14698,7 +14248,6 @@ - Directories that are staged into the sysroot by the do_populate_sysroot task. @@ -14722,7 +14271,6 @@ - Directories that are not staged into the sysroot by the do_populate_sysroot task. @@ -14752,7 +14300,6 @@ - Extra directories staged into the sysroot by the do_populate_sysroot task for -native recipes, in addition @@ -14787,7 +14334,6 @@ - A list of functions to execute after files are staged into the sysroot. These functions are usually used to apply additional @@ -14803,7 +14349,6 @@ - When inheriting the systemd class, this variable specifies whether the specified service @@ -14833,7 +14378,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14861,7 +14405,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14891,7 +14434,6 @@ - When EFI_PROVIDER is set to "systemd-boot", the @@ -14919,7 +14461,6 @@ - When inheriting the systemd class, this variable locates the systemd unit files when @@ -14949,7 +14490,6 @@ - When inheriting the systemd class, this variable specifies the systemd service name for @@ -14974,7 +14514,6 @@ - When using SysVinit, specifies a space-separated list of the virtual terminals @@ -15003,7 +14542,6 @@ - This variable points to a directory were BitBake places temporary files, which consist mostly of task logs and scripts, when building a particular recipe. @@ -15032,7 +14570,6 @@ - The target machine's architecture. The OpenEmbedded build system supports many architectures. @@ -15065,7 +14602,6 @@ - Specifies architecture-specific assembler flags for the target system. TARGET_AS_ARCH is initialized from @@ -15085,7 +14621,6 @@ - Specifies architecture-specific C compiler flags for the target system. TARGET_CC_ARCH is initialized from @@ -15109,7 +14644,6 @@ - This is a specific kernel compiler flag for a CPU or Application Binary Interface (ABI) tune. The flag is used rarely and only for cases where a @@ -15134,7 +14668,6 @@ - Specifies the flags to pass to the C compiler when building for the target. When building in the target context, @@ -15158,7 +14691,6 @@ - Specifies the flags to pass to the C pre-processor (i.e. to both the C and the C++ compilers) when building for the target. @@ -15183,7 +14715,6 @@ - Specifies the flags to pass to the C++ compiler when building for the target. When building in the target context, @@ -15207,7 +14738,6 @@ - Specifies the method for handling FPU code. For FPU-less targets, which include most ARM CPUs, the variable must be set to "soft". @@ -15222,7 +14752,6 @@ - Specifies architecture-specific linker flags for the target system. TARGET_LD_ARCH is initialized from @@ -15242,7 +14771,6 @@ - Specifies the flags to pass to the linker when building for the target. When building in the target context, @@ -15268,7 +14796,6 @@ - Specifies the target's operating system. The variable can be set to "linux" for glibc-based systems (GNU C Library) and to "linux-musl" for musl libc. @@ -15284,7 +14811,6 @@ - Specifies the prefix used for the toolchain binary target tools. @@ -15320,7 +14846,6 @@ - Specifies the system, including the architecture and the operating system, for which the build is occurring in the context of the current recipe. @@ -15363,7 +14888,6 @@ - Specifies the name of the target vendor. @@ -15375,7 +14899,6 @@ - Specifies the GNU standard C library (libc) variant to use during the build process. @@ -15395,7 +14918,6 @@ - Specifies a suffix to be appended onto the TMPDIR value. @@ -15426,7 +14948,6 @@ - Specifies the toolchain selector. TCMODE controls the characteristics of the generated packages and images by telling the @@ -15498,7 +15019,6 @@ - The location the OpenEmbedded build system uses to export tests when the TEST_EXPORT_ONLY @@ -15518,7 +15038,6 @@ - Specifies to export the tests only. Set this variable to "1" if you do not want to run the tests but you want them to be exported in a manner that @@ -15533,7 +15052,6 @@ - Holds the SSH log and the boot log for QEMU machines. The TEST_LOG_DIR variable defaults to "${WORKDIR}/testimage". @@ -15552,7 +15070,6 @@ - For automated hardware testing, specifies the command to use to control the power of the target machine under test. Typically, this command would point to a script that @@ -15572,7 +15089,6 @@ - For automated hardware testing, specifies additional arguments to pass through to the command specified in TEST_POWERCONTROL_CMD. @@ -15591,7 +15107,6 @@ - The time in seconds allowed for an image to boot before automated runtime tests begin to run against an image. @@ -15615,7 +15130,6 @@ - For automated hardware testing, specifies the command to use to connect to the serial console of the target machine under test. @@ -15641,7 +15155,6 @@ - For automated hardware testing, specifies additional arguments to pass through to the command specified in TEST_SERIALCONTROL_CMD. @@ -15660,7 +15173,6 @@ - The IP address of the build machine (host machine). This IP address is usually automatically detected. However, if detection fails, this variable needs to be set @@ -15683,7 +15195,6 @@ - Specifies the target controller to use when running tests against a test image. The default controller to use is "qemu": @@ -15744,7 +15255,6 @@ - The IP address of your hardware under test. The TEST_TARGET_IP variable has no effect when @@ -15774,7 +15284,6 @@ - An ordered list of tests (modules) to run against an image when performing automated runtime testing. @@ -15833,7 +15342,6 @@ - Automatically runs the series of automated tests for images when an image is successfully built. Setting TESTIMAGE_AUTO to "1" @@ -15874,7 +15382,6 @@ - The directory in which the file BitBake is currently parsing is located. Do not manually set this variable. @@ -15888,7 +15395,6 @@ - The time the build was started. Times appear using the hour, minute, and second (HMS) format (e.g. "140159" for one minute and fifty-nine @@ -15903,7 +15409,6 @@ - This variable is the base directory the OpenEmbedded build system uses for all build output and intermediate files (other than the shared state cache). @@ -15945,7 +15450,6 @@ - This variable lists packages the OpenEmbedded build system uses when building an SDK, which contains a cross-development environment. @@ -15987,7 +15491,6 @@ - This variable defines the name used for the toolchain output. The @@ -16013,7 +15516,6 @@ - This variable lists packages the OpenEmbedded build system uses when it creates the target part of an SDK (i.e. the part built for the target hardware), which @@ -16046,7 +15548,6 @@ - The top-level Build Directory. BitBake automatically sets this variable when you @@ -16062,7 +15563,6 @@ - A sanitized version of TARGET_ARCH. This variable is used where the architecture is needed in @@ -16084,7 +15584,6 @@ - The GNU canonical architecture for a specific architecture (i.e. arm, armeb, @@ -16143,7 +15642,6 @@ - Specifies architecture-specific assembler flags for the target system. The set of flags is based on the selected tune features. @@ -16174,7 +15672,6 @@ - Specifies architecture-specific C compiler flags for the target system. The set of flags is based on the selected tune features. @@ -16199,7 +15696,6 @@ - Specifies architecture-specific linker flags for the target system. The set of flags is based on the selected tune features. @@ -16230,7 +15726,6 @@ - Features used to "tune" a compiler for optimal use given a specific processor. The features are defined within the tune files and allow @@ -16264,7 +15759,6 @@ - The package architecture understood by the packaging system to define the architecture, ABI, and tuning of output packages. @@ -16295,7 +15789,6 @@ - An underlying Application Binary Interface (ABI) used by a particular tuning in a given toolchain layer. Providers that use prebuilt libraries can use the @@ -16323,7 +15816,6 @@ - If set, the OpenEmbedded system ignores the TUNEABI_WHITELIST variable. @@ -16350,7 +15842,6 @@ - A whitelist of permissible TUNEABI values. @@ -16378,7 +15869,6 @@ - Specifies CPU or Application Binary Interface (ABI) tuning features that conflict with feature. @@ -16404,7 +15894,6 @@ - Specifies a valid CPU or Application Binary Interface (ABI) tuning feature. The specified feature is stored as a flag. @@ -16434,7 +15923,6 @@ - Configures the UBOOT_MACHINE and can also define @@ -16477,7 +15965,6 @@ - Specifies the entry point for the U-Boot image. During U-Boot image creation, the UBOOT_ENTRYPOINT variable is passed @@ -16493,7 +15980,6 @@ - Specifies the load address for the U-Boot image. During U-Boot image creation, the UBOOT_LOADADDRESS variable is passed @@ -16509,7 +15995,6 @@ - Appends a string to the name of the local version of the U-Boot image. For example, assuming the version of the U-Boot image @@ -16529,7 +16014,6 @@ - Specifies the value passed on the make command line when building a U-Boot image. @@ -16553,7 +16037,6 @@ - Specifies the target called in the Makefile. The default target is "all". @@ -16567,7 +16050,6 @@ - Points to the generated U-Boot extension. For example, u-boot.sb has a .sb extension. @@ -16586,7 +16068,6 @@ - Specifies the target used for building U-Boot. The target is passed directly as part of the "make" command (e.g. SPL and AIS). @@ -16603,7 +16084,6 @@ - Specifies a list of options that, if reported by the configure script as being invalid, should not generate a warning during the @@ -16641,7 +16121,6 @@ - For recipes inheriting the update-rc.d class, UPDATERCPN specifies @@ -16664,7 +16143,6 @@ - You can perform a per-recipe check for what the latest upstream source code version is by calling bitbake -c checkpkg recipe. @@ -16693,7 +16171,6 @@ - Use the UPSTREAM_CHECK_REGEX variable to specify a different regular expression instead of the default one when the package checking system is parsing @@ -16712,7 +16189,6 @@ - You can perform a per-recipe check for what the latest upstream source code version is by calling bitbake -c checkpkg recipe. @@ -16736,7 +16212,6 @@ - Determines if devtmpfs is used for /dev population. The default value used for USE_DEVFS @@ -16761,7 +16236,6 @@ - When using SysVinit, determines whether or not to run a @@ -16787,7 +16261,6 @@ - A list of classes to globally inherit. These classes are used by the OpenEmbedded build system to enable extra features (e.g. @@ -16815,7 +16288,6 @@ - If set to error, forces the OpenEmbedded build system to produce an error if the user @@ -16875,7 +16347,6 @@ - Specifies a password file to use for obtaining static group identification (gid) values when the OpenEmbedded build system adds a group to the @@ -16911,7 +16382,6 @@ - When inheriting the useradd class, this variable @@ -16948,7 +16418,6 @@ - When inheriting the useradd class, this variable @@ -16979,7 +16448,6 @@ - Specifies a password file to use for obtaining static user identification (uid) values when the OpenEmbedded build system adds a user to the @@ -17015,7 +16483,6 @@ - When set to "useradd-staticids", causes the OpenEmbedded build system to base all user and group additions on a static @@ -17068,7 +16535,6 @@ - Specifies the persistence of the target's /var/log directory, which is used to house postinstall target log files. @@ -17093,7 +16559,6 @@ - Specifies the quality assurance checks whose failures are reported as warnings by the OpenEmbedded build system. You set this variable in your distribution configuration @@ -17177,7 +16642,6 @@ - The pathname of the work directory in which the OpenEmbedded build system builds a recipe. This directory is located within the @@ -17239,7 +16703,6 @@ - Specifies the packages that should be installed to provide an X server and drivers for the current machine, assuming your image directly includes diff --git a/poky/meta-poky/conf/distro/poky.conf b/poky/meta-poky/conf/distro/poky.conf index 37493ed36..f2ee0d187 100644 --- a/poky/meta-poky/conf/distro/poky.conf +++ b/poky/meta-poky/conf/distro/poky.conf @@ -50,14 +50,14 @@ p4://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n \ svn://.*/.* http://downloads.yoctoproject.org/mirror/sources/ \n" SANITY_TESTED_DISTROS ?= " \ - poky-2.7 \n \ poky-3.0 \n \ poky-3.1 \n \ ubuntu-16.04 \n \ ubuntu-18.04 \n \ - ubuntu-19.04 \n \ + ubuntu-20.04 \n \ fedora-30 \n \ fedora-31 \n \ + fedora-32 \n \ centos-7 \n \ centos-8 \n \ debian-8 \n \ diff --git a/poky/meta-poky/conf/layer.conf b/poky/meta-poky/conf/layer.conf index 234be1321..7241af02e 100644 --- a/poky/meta-poky/conf/layer.conf +++ b/poky/meta-poky/conf/layer.conf @@ -9,7 +9,7 @@ BBFILE_COLLECTIONS += "yocto" BBFILE_PATTERN_yocto = "^${LAYERDIR}/" BBFILE_PRIORITY_yocto = "5" -LAYERSERIES_COMPAT_yocto = "dunfell" +LAYERSERIES_COMPAT_yocto = "gatesgarth" # This should only be incremented on significant changes that will # cause compatibility issues with other layers diff --git a/poky/meta-selftest/conf/layer.conf b/poky/meta-selftest/conf/layer.conf index a4bd461c3..37570aa83 100644 --- a/poky/meta-selftest/conf/layer.conf +++ b/poky/meta-selftest/conf/layer.conf @@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "selftest" BBFILE_PATTERN_selftest = "^${LAYERDIR}/" BBFILE_PRIORITY_selftest = "5" -LAYERSERIES_COMPAT_selftest = "dunfell" +LAYERSERIES_COMPAT_selftest = "gatesgarth" diff --git a/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded b/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded index 66e45c7e8..d75df0c8c 100644 --- a/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded +++ b/poky/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb.upgraded @@ -9,7 +9,6 @@ SRC_URI = "http://www.ivarch.com/programs/sources/pv-${PV}.tar.gz \ UPSTREAM_CHECK_URI = "http://www.ivarch.com/programs/pv.shtml" RECIPE_NO_UPDATE_REASON = "This recipe is used to test devtool upgrade feature" -SRC_URI[md5sum] = "062bca5ff33df1dd09472e7fc3bbe332" SRC_URI[sha256sum] = "9dd45391806b0ed215abee4c5ac1597d018c386fe9c1f5afd2f6bc3b07fd82c3" S = "${WORKDIR}/pv-${PV}" diff --git a/poky/meta-skeleton/conf/layer.conf b/poky/meta-skeleton/conf/layer.conf index 5e449a4e4..cea5c74f8 100644 --- a/poky/meta-skeleton/conf/layer.conf +++ b/poky/meta-skeleton/conf/layer.conf @@ -14,4 +14,4 @@ LAYERVERSION_skeleton = "1" LAYERDEPENDS_skeleton = "core" -LAYERSERIES_COMPAT_skeleton = "dunfell" +LAYERSERIES_COMPAT_skeleton = "gatesgarth" diff --git a/poky/meta-yocto-bsp/conf/layer.conf b/poky/meta-yocto-bsp/conf/layer.conf index 64b1248f5..bf0c1bfec 100644 --- a/poky/meta-yocto-bsp/conf/layer.conf +++ b/poky/meta-yocto-bsp/conf/layer.conf @@ -9,4 +9,4 @@ BBFILE_COLLECTIONS += "yoctobsp" BBFILE_PATTERN_yoctobsp = "^${LAYERDIR}/" BBFILE_PRIORITY_yoctobsp = "5" LAYERVERSION_yoctobsp = "4" -LAYERSERIES_COMPAT_yoctobsp = "dunfell" +LAYERSERIES_COMPAT_yoctobsp = "gatesgarth" diff --git a/poky/meta/classes/archiver.bbclass b/poky/meta/classes/archiver.bbclass index 48b4913a9..780c562b6 100644 --- a/poky/meta/classes/archiver.bbclass +++ b/poky/meta/classes/archiver.bbclass @@ -193,7 +193,13 @@ python do_ar_original() { del decoded[5][param] encoded = bb.fetch2.encodeurl(decoded) urls[i] = encoded - fetch = bb.fetch2.Fetch(urls, d) + + # Cleanup SRC_URI before call bb.fetch2.Fetch() since now SRC_URI is in the + # variable "urls", otherwise there might be errors like: + # The SRCREV_FORMAT variable must be set when multiple SCMs are used + ld = bb.data.createCopy(d) + ld.setVar('SRC_URI', '') + fetch = bb.fetch2.Fetch(urls, ld) tarball_suffix = {} for url in fetch.urls: local = fetch.localpath(url).rstrip("/"); @@ -583,7 +589,9 @@ addtask do_ar_configured after do_unpack_and_patch addtask do_ar_mirror after do_fetch addtask do_dumpdata addtask do_ar_recipe -addtask do_deploy_archives before do_build +addtask do_deploy_archives +do_build[recrdeptask] += "do_deploy_archives" +do_populate_sdk[recrdeptask] += "do_deploy_archives" python () { # Add tasks in the correct order, specifically for linux-yocto to avoid race condition. diff --git a/poky/meta/classes/base.bbclass b/poky/meta/classes/base.bbclass index 45f9435fd..4c681cc87 100644 --- a/poky/meta/classes/base.bbclass +++ b/poky/meta/classes/base.bbclass @@ -570,8 +570,7 @@ python () { if unskipped_pkgs: for pkg in skipped_pkgs: bb.debug(1, "Skipping the package %s at do_rootfs because of incompatible license(s): %s" % (pkg, ' '.join(skipped_pkgs[pkg]))) - mlprefix = d.getVar('MLPREFIX') - d.setVar('LICENSE_EXCLUSION-' + mlprefix + pkg, ' '.join(skipped_pkgs[pkg])) + d.setVar('LICENSE_EXCLUSION-' + pkg, ' '.join(skipped_pkgs[pkg])) for pkg in unskipped_pkgs: bb.debug(1, "Including the package %s" % pkg) else: @@ -584,19 +583,6 @@ python () { bb.debug(1, "Skipping recipe %s because of incompatible license(s): %s" % (pn, ' '.join(incompatible_lic))) raise bb.parse.SkipRecipe("it has incompatible license(s): %s" % ' '.join(incompatible_lic)) - # Try to verify per-package (LICENSE_) values. LICENSE should be a - # superset of all per-package licenses. We do not do advanced (pattern) - # matching of license expressions - just check that all license strings - # in LICENSE_ are found in LICENSE. - license_set = oe.license.list_licenses(license) - for pkg in d.getVar('PACKAGES').split(): - pkg_license = d.getVar('LICENSE_' + pkg) - if pkg_license: - unlisted = oe.license.list_licenses(pkg_license) - license_set - if unlisted: - bb.warn("LICENSE_%s includes licenses (%s) that are not " - "listed in LICENSE" % (pkg, ' '.join(unlisted))) - needsrcrev = False srcuri = d.getVar('SRC_URI') for uri in srcuri.split(): diff --git a/poky/meta/classes/cve-check.bbclass b/poky/meta/classes/cve-check.bbclass index 2a530a048..556ac6e67 100644 --- a/poky/meta/classes/cve-check.bbclass +++ b/poky/meta/classes/cve-check.bbclass @@ -65,7 +65,7 @@ python do_cve_check () { } -addtask cve_check before do_build +addtask cve_check before do_build after do_fetch do_cve_check[depends] = "cve-update-db-native:do_populate_cve_db" do_cve_check[nostamp] = "1" diff --git a/poky/meta/classes/fontcache.bbclass b/poky/meta/classes/fontcache.bbclass index 97e7f17f0..624a420a0 100644 --- a/poky/meta/classes/fontcache.bbclass +++ b/poky/meta/classes/fontcache.bbclass @@ -7,7 +7,7 @@ PACKAGE_WRITE_DEPS += "qemu-native" inherit qemu FONT_PACKAGES ??= "${PN}" -FONT_EXTRA_RDEPENDS ?= "fontconfig-utils" +FONT_EXTRA_RDEPENDS ?= "${MLPREFIX}fontconfig-utils" FONTCONFIG_CACHE_DIR ?= "${localstatedir}/cache/fontconfig" FONTCONFIG_CACHE_PARAMS ?= "-v" # You can change this to e.g. FC_DEBUG=16 to debug fc-cache issues, diff --git a/poky/meta/classes/go-mod.bbclass b/poky/meta/classes/go-mod.bbclass new file mode 100644 index 000000000..5871d0250 --- /dev/null +++ b/poky/meta/classes/go-mod.bbclass @@ -0,0 +1,20 @@ +# Handle Go Modules support +# +# When using Go Modules, the the current working directory MUST be at or below +# the location of the 'go.mod' file when the go tool is used, and there is no +# way to tell it to look elsewhere. It will automatically look upwards for the +# file, but not downwards. +# +# To support this use case, we provide the `GO_WORKDIR` variable, which defaults +# to `GO_IMPORT` but allows for easy override. +# +# Copyright 2020 (C) O.S. Systems Software LTDA. + +# The '-modcacherw' option ensures we have write access to the cached objects so +# we avoid errors during clean task as well as when removing the TMPDIR. +export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -modcacherw" + +inherit go + +GO_WORKDIR ?= "${GO_IMPORT}" +do_compile[dirs] += "${B}/src/${GO_WORKDIR}" diff --git a/poky/meta/classes/go.bbclass b/poky/meta/classes/go.bbclass index c99689ac5..a9e31b50e 100644 --- a/poky/meta/classes/go.bbclass +++ b/poky/meta/classes/go.bbclass @@ -41,7 +41,7 @@ GO_EXTLDFLAGS ?= "${HOST_CC_ARCH}${TOOLCHAIN_OPTIONS} ${GO_RPATH_LINK} ${LDFLAGS GO_LINKMODE ?= "" GO_LINKMODE_class-nativesdk = "--linkmode=external" GO_LDFLAGS ?= '-ldflags="${GO_RPATH} ${GO_LINKMODE} -extldflags '${GO_EXTLDFLAGS}'"' -export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS}" +export GOBUILDFLAGS ?= "-v ${GO_LDFLAGS} -trimpath" export GOPATH_OMIT_IN_ACTIONID ?= "1" export GOPTESTBUILDFLAGS ?= "${GOBUILDFLAGS} -c" export GOPTESTFLAGS ?= "" diff --git a/poky/meta/classes/image_types.bbclass b/poky/meta/classes/image_types.bbclass index f82f1d886..ab05cc90f 100644 --- a/poky/meta/classes/image_types.bbclass +++ b/poky/meta/classes/image_types.bbclass @@ -273,7 +273,7 @@ IMAGE_TYPES = " \ ubi ubifs multiubi \ tar tar.gz tar.bz2 tar.xz tar.lz4 tar.zst \ cpio cpio.gz cpio.xz cpio.lzma cpio.lz4 \ - wic wic.gz wic.bz2 wic.lzma \ + wic wic.gz wic.bz2 wic.lzma wic.zst \ container \ f2fs \ " diff --git a/poky/meta/classes/image_types_wic.bbclass b/poky/meta/classes/image_types_wic.bbclass index 96ed0473e..7b1db50a2 100644 --- a/poky/meta/classes/image_types_wic.bbclass +++ b/poky/meta/classes/image_types_wic.bbclass @@ -142,7 +142,7 @@ python do_rootfs_wicenv () { depdir = d.getVar('IMGDEPLOYDIR') bb.utils.copyfile(os.path.join(outdir, basename) + '.env', os.path.join(depdir, basename) + '.env') } -addtask do_flush_pseudodb after do_image before do_image_wic +addtask do_flush_pseudodb after do_rootfs before do_image do_image_qa addtask do_rootfs_wicenv after do_image before do_image_wic do_rootfs_wicenv[vardeps] += "${WICVARS}" do_rootfs_wicenv[prefuncs] = 'set_image_size' diff --git a/poky/meta/classes/insane.bbclass b/poky/meta/classes/insane.bbclass index 8b19f445f..b7c613880 100644 --- a/poky/meta/classes/insane.bbclass +++ b/poky/meta/classes/insane.bbclass @@ -26,7 +26,7 @@ WARN_QA ?= " libdir xorg-driver-abi \ textrel incompatible-license files-invalid \ infodir build-deps src-uri-bad symlink-to-sysroot multilib \ invalid-packageconfig host-user-contaminated uppercase-pn patch-fuzz \ - mime mime-xdg \ + mime mime-xdg unlisted-pkg-lics \ " ERROR_QA ?= "dev-so debug-deps dev-deps debug-files arch pkgconfig la \ perms dep-cmp pkgvarcheck perm-config perm-line perm-link \ @@ -898,6 +898,25 @@ def package_qa_check_expanded_d(package, d, messages): sane = False return sane +QAPKGTEST[unlisted-pkg-lics] = "package_qa_check_unlisted_pkg_lics" +def package_qa_check_unlisted_pkg_lics(package, d, messages): + """ + Check that all licenses for a package are among the licenses for the recipe. + """ + pkg_lics = d.getVar('LICENSE_' + package) + if not pkg_lics: + return True + + recipe_lics_set = oe.license.list_licenses(d.getVar('LICENSE')) + unlisted = oe.license.list_licenses(pkg_lics) - recipe_lics_set + if not unlisted: + return True + + package_qa_add_message(messages, "unlisted-pkg-lics", + "LICENSE_%s includes licenses (%s) that are not " + "listed in LICENSE" % (package, ' '.join(unlisted))) + return False + def package_qa_check_encoding(keys, encode, d): def check_encoding(key, enc): sane = True diff --git a/poky/meta/classes/kernel.bbclass b/poky/meta/classes/kernel.bbclass index 6846d6040..20a0135fc 100644 --- a/poky/meta/classes/kernel.bbclass +++ b/poky/meta/classes/kernel.bbclass @@ -331,6 +331,21 @@ kernel_do_compile() { do_compile_kernelmodules() { unset CFLAGS CPPFLAGS CXXFLAGS LDFLAGS MACHINE + if [ "${BUILD_REPRODUCIBLE_BINARIES}" = "1" ]; then + # kernel sources do not use do_unpack, so SOURCE_DATE_EPOCH may not + # be set.... + if [ "${SOURCE_DATE_EPOCH}" = "" -o "${SOURCE_DATE_EPOCH}" = "0" ]; then + # The source directory is not necessarily a git repository, so we + # specify the git-dir to ensure that git does not query a + # repository in any parent directory. + SOURCE_DATE_EPOCH=`git --git-dir="${S}/.git" log -1 --pretty=%ct 2>/dev/null || echo "${REPRODUCIBLE_TIMESTAMP_ROOTFS}"` + fi + + ts=`LC_ALL=C date -d @$SOURCE_DATE_EPOCH` + export KBUILD_BUILD_TIMESTAMP="$ts" + export KCONFIG_NOTIMESTAMP=1 + bbnote "KBUILD_BUILD_TIMESTAMP: $ts" + fi if (grep -q -i -e '^CONFIG_MODULES=y$' ${B}/.config); then cc_extra=$(get_cc_option) oe_runmake -C ${B} ${PARALLEL_MAKE} modules CC="${KERNEL_CC} $cc_extra " LD="${KERNEL_LD}" ${KERNEL_EXTRA_ARGS} @@ -696,6 +711,7 @@ kernel_do_deploy() { else TAR_ARGS="" fi + TAR_ARGS="$TAR_ARGS --owner=0 --group=0" tar $TAR_ARGS -cv -C ${D}${root_prefix} lib | gzip -9n > $deployDir/modules-${MODULE_TARBALL_NAME}.tgz ln -sf modules-${MODULE_TARBALL_NAME}.tgz $deployDir/modules-${MODULE_TARBALL_LINK_NAME}.tgz diff --git a/poky/meta/classes/multilib.bbclass b/poky/meta/classes/multilib.bbclass index ee677da1e..9f726e453 100644 --- a/poky/meta/classes/multilib.bbclass +++ b/poky/meta/classes/multilib.bbclass @@ -91,13 +91,12 @@ addhandler multilib_virtclass_handler multilib_virtclass_handler[eventmask] = "bb.event.RecipePreFinalise" python __anonymous () { - variant = d.getVar("BBEXTENDVARIANT") - - import oe.classextend + if bb.data.inherits_class('image', d): + variant = d.getVar("BBEXTENDVARIANT") + import oe.classextend - clsextend = oe.classextend.ClassExtender(variant, d) + clsextend = oe.classextend.ClassExtender(variant, d) - if bb.data.inherits_class('image', d): clsextend.map_depends_variable("PACKAGE_INSTALL") clsextend.map_depends_variable("LINGUAS_INSTALL") clsextend.map_depends_variable("RDEPENDS") @@ -109,6 +108,22 @@ python __anonymous () { bb.build.deltask('do_populate_sdk', d) bb.build.deltask('do_populate_sdk_ext', d) return +} + +python multilib_virtclass_handler_postkeyexp () { + cls = d.getVar("BBEXTENDCURR") + variant = d.getVar("BBEXTENDVARIANT") + if cls != "multilib" or not variant: + return + + variant = d.getVar("BBEXTENDVARIANT") + + import oe.classextend + + clsextend = oe.classextend.ClassExtender(variant, d) + + if bb.data.inherits_class('image', d): + return clsextend.map_depends_variable("DEPENDS") clsextend.map_variable("PROVIDES") @@ -129,6 +144,9 @@ python __anonymous () { reset_alternative_priority(d) } +addhandler multilib_virtclass_handler_postkeyexp +multilib_virtclass_handler_postkeyexp[eventmask] = "bb.event.RecipePostKeyExpansion" + def reset_alternative_priority(d): if not bb.data.inherits_class('update-alternatives', d): return diff --git a/poky/meta/classes/package.bbclass b/poky/meta/classes/package.bbclass index 0b5cf4774..0af5f6673 100644 --- a/poky/meta/classes/package.bbclass +++ b/poky/meta/classes/package.bbclass @@ -1508,7 +1508,7 @@ EXPORT_FUNCTIONS package_name_hook PKGDESTWORK = "${WORKDIR}/pkgdata" -PKGDATA_VARS = "PN PE PV PR PKGE PKGV PKGR LICENSE DESCRIPTION SUMMARY RDEPENDS RPROVIDES RRECOMMENDS RSUGGESTS RREPLACES RCONFLICTS SECTION PKG ALLOW_EMPTY FILES CONFFILES FILES_INFO pkg_postinst pkg_postrm pkg_preinst pkg_prerm" +PKGDATA_VARS = "PN PE PV PR PKGE PKGV PKGR LICENSE DESCRIPTION SUMMARY RDEPENDS RPROVIDES RRECOMMENDS RSUGGESTS RREPLACES RCONFLICTS SECTION PKG ALLOW_EMPTY FILES CONFFILES FILES_INFO PACKAGE_ADD_METADATA pkg_postinst pkg_postrm pkg_preinst pkg_prerm" python emit_pkgdata() { from glob import glob @@ -2263,7 +2263,7 @@ python package_depchains() { # Since bitbake can't determine which variables are accessed during package # iteration, we need to list them here: -PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm pkg_postinst_ontarget INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE SKIP_FILEDEPS PRIVATE_LIBS" +PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm pkg_postinst_ontarget INITSCRIPT_NAME INITSCRIPT_PARAMS DEBIAN_NOAUTONAME ALTERNATIVE PKGE PKGV PKGR USERADD_PARAM GROUPADD_PARAM CONFFILES SYSTEMD_SERVICE LICENSE SECTION pkg_preinst pkg_prerm RREPLACES GROUPMEMS_PARAM SYSTEMD_AUTO_ENABLE SKIP_FILEDEPS PRIVATE_LIBS PACKAGE_ADD_METADATA" def gen_packagevar(d, pkgvars="PACKAGEVARS"): ret = [] diff --git a/poky/meta/classes/package_deb.bbclass b/poky/meta/classes/package_deb.bbclass index 790b26aef..cb723fc1d 100644 --- a/poky/meta/classes/package_deb.bbclass +++ b/poky/meta/classes/package_deb.bbclass @@ -283,8 +283,9 @@ def deb_write_pkg(pkg, d): # Otherwise allarch packages may change depending on override configuration deb_write_pkg[vardepsexclude] = "OVERRIDES" -# Indirect references to these vars -do_package_write_deb[vardeps] += "PKGV PKGR PKGV DESCRIPTION SECTION PRIORITY MAINTAINER DPKG_ARCH PN HOMEPAGE" +# Have to list any variables referenced as X_ that aren't in pkgdata here +DEBEXTRAVARS = "PKGV PKGR PKGV DESCRIPTION SECTION PRIORITY MAINTAINER DPKG_ARCH PN HOMEPAGE PACKAGE_ADD_METADATA_DEB" +do_package_write_deb[vardeps] += "${@gen_packagevar(d, 'DEBEXTRAVARS')}" SSTATETASKS += "do_package_write_deb" do_package_write_deb[sstate-inputdirs] = "${PKGWRITEDIRDEB}" diff --git a/poky/meta/classes/package_ipk.bbclass b/poky/meta/classes/package_ipk.bbclass index c008559e4..79cb36c51 100644 --- a/poky/meta/classes/package_ipk.bbclass +++ b/poky/meta/classes/package_ipk.bbclass @@ -238,7 +238,7 @@ def ipk_write_pkg(pkg, d): bb.utils.unlockfile(lf) # Have to list any variables referenced as X_ that aren't in pkgdata here -IPKEXTRAVARS = "PRIORITY MAINTAINER PACKAGE_ARCH HOMEPAGE" +IPKEXTRAVARS = "PRIORITY MAINTAINER PACKAGE_ARCH HOMEPAGE PACKAGE_ADD_METADATA_IPK" ipk_write_pkg[vardeps] += "${@gen_packagevar(d, 'IPKEXTRAVARS')}" # Otherwise allarch packages may change depending on override configuration diff --git a/poky/meta/classes/package_rpm.bbclass b/poky/meta/classes/package_rpm.bbclass index 9145717f9..519c22be4 100644 --- a/poky/meta/classes/package_rpm.bbclass +++ b/poky/meta/classes/package_rpm.bbclass @@ -286,16 +286,18 @@ python write_specfile () { # Construct the SPEC file... srcname = d.getVar('PN') - srcsummary = (d.getVar('SUMMARY') or d.getVar('DESCRIPTION') or ".") - srcversion = d.getVar('PKGV').replace('-', '+') - srcrelease = d.getVar('PKGR') - srcepoch = (d.getVar('PKGE') or "") - srclicense = d.getVar('LICENSE') - srcsection = d.getVar('SECTION') - srcmaintainer = d.getVar('MAINTAINER') - srchomepage = d.getVar('HOMEPAGE') - srcdescription = d.getVar('DESCRIPTION') or "." - srccustomtagschunk = get_package_additional_metadata("rpm", d) + localdata = bb.data.createCopy(d) + localdata.setVar('OVERRIDES', d.getVar("OVERRIDES", False) + ":" + srcname) + srcsummary = (localdata.getVar('SUMMARY') or localdata.getVar('DESCRIPTION') or ".") + srcversion = localdata.getVar('PKGV').replace('-', '+') + srcrelease = localdata.getVar('PKGR') + srcepoch = (localdata.getVar('PKGE') or "") + srclicense = localdata.getVar('LICENSE') + srcsection = localdata.getVar('SECTION') + srcmaintainer = localdata.getVar('MAINTAINER') + srchomepage = localdata.getVar('HOMEPAGE') + srcdescription = localdata.getVar('DESCRIPTION') or "." + srccustomtagschunk = get_package_additional_metadata("rpm", localdata) srcdepends = d.getVar('DEPENDS') srcrdepends = [] @@ -621,6 +623,10 @@ python write_specfile () { # Otherwise allarch packages may change depending on override configuration write_specfile[vardepsexclude] = "OVERRIDES" +# Have to list any variables referenced as X_ that aren't in pkgdata here +RPMEXTRAVARS = "PACKAGE_ADD_METADATA_RPM" +write_specfile[vardeps] += "${@gen_packagevar(d, 'RPMEXTRAVARS')}" + python do_package_rpm () { workdir = d.getVar('WORKDIR') tmpdir = d.getVar('TMPDIR') diff --git a/poky/meta/classes/sanity.bbclass b/poky/meta/classes/sanity.bbclass index 292c5591d..e021b9d24 100644 --- a/poky/meta/classes/sanity.bbclass +++ b/poky/meta/classes/sanity.bbclass @@ -784,6 +784,12 @@ def check_sanity_everybuild(status, d): if "." in paths or "./" in paths or "" in paths: status.addresult("PATH contains '.', './' or '' (empty element), which will break the build, please remove this.\nParsed PATH is " + str(paths) + "\n") + # Check whether 'inherit' directive is found (used for a class to inherit) + # in conf file it's supposed to be uppercase INHERIT + inherit = d.getVar('inherit') + if inherit: + status.addresult("Please don't use inherit directive in your local.conf. The directive is supposed to be used in classes and recipes only to inherit of bbclasses. Here INHERIT should be used.\n") + # Check that the DISTRO is valid, if set # need to take into account DISTRO renaming DISTRO distro = d.getVar('DISTRO') diff --git a/poky/meta/conf/bitbake.conf b/poky/meta/conf/bitbake.conf index bdade79ab..f7700f119 100644 --- a/poky/meta/conf/bitbake.conf +++ b/poky/meta/conf/bitbake.conf @@ -833,8 +833,8 @@ DISTRO_FEATURES_NATIVESDK ?= "x11" # Normally target distro features will not be applied to native builds: # Native distro features on this list will use the target feature value -DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation" -DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation" +DISTRO_FEATURES_FILTER_NATIVE ?= "api-documentation opengl" +DISTRO_FEATURES_FILTER_NATIVESDK ?= "api-documentation opengl" DISTRO_FEATURES_BACKFILL = "pulseaudio sysvinit gobject-introspection-data ldconfig" MACHINE_FEATURES_BACKFILL = "rtc qemu-usermode" diff --git a/poky/meta/conf/distro/include/maintainers.inc b/poky/meta/conf/distro/include/maintainers.inc index 256666c0e..51e6da669 100644 --- a/poky/meta/conf/distro/include/maintainers.inc +++ b/poky/meta/conf/distro/include/maintainers.inc @@ -2,7 +2,7 @@ # # This file contains a list of recipe maintainers. # -# Please submit any patches against recipes in meta to the +# Please submit any patches against recipes in meta to the # OE-Core mail list (openembedded-core@lists.openembedded.org) # For recipes in meta-yocto please use the Poky list (poky@yoctoproject.org) # @@ -579,6 +579,8 @@ RECIPE_MAINTAINER_pn-python3-cython = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pip = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pycairo = "Oleksandr Kravchuk " +RECIPE_MAINTAINER_pn-python3-pyelftools = "Joshua Watt " RECIPE_MAINTAINER_pn-python3-pygments = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pygobject = "Oleksandr Kravchuk " RECIPE_MAINTAINER_pn-python3-pyparsing = "Oleksandr Kravchuk " diff --git a/poky/meta/conf/layer.conf b/poky/meta/conf/layer.conf index f03eb485a..da93d64e0 100644 --- a/poky/meta/conf/layer.conf +++ b/poky/meta/conf/layer.conf @@ -7,12 +7,12 @@ BBFILE_COLLECTIONS += "core" BBFILE_PATTERN_core = "^${LAYERDIR}/" BBFILE_PRIORITY_core = "5" -LAYERSERIES_CORENAMES = "dunfell" +LAYERSERIES_CORENAMES = "dunfell gatesgarth" # This should only be incremented on significant changes that will # cause compatibility issues with other layers LAYERVERSION_core = "11" -LAYERSERIES_COMPAT_core = "dunfell" +LAYERSERIES_COMPAT_core = "gatesgarth" BBLAYERS_LAYERINDEX_NAME_core = "openembedded-core" diff --git a/poky/meta/conf/machine/include/tune-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa53.inc index 6c0b443ea..b7327d00c 100644 --- a/poky/meta/conf/machine/include/tune-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa53.inc @@ -13,5 +13,9 @@ TUNE_FEATURES_tune-cortexa53 = "aarch64 cortexa53 crc" TUNE_FEATURES_tune-cortexa53-crypto = "aarch64 cortexa53 crc crypto" PACKAGE_EXTRA_ARCHS_tune-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa53 cortexa53-crypto" + +TUNE_PKGARCH_tune-cortexa53 = "cortexa53" +TUNE_PKGARCH_tune-cortexa53-crypto = "cortexa53-crypto" + BASE_LIB_tune-cortexa53 = "lib64" BASE_LIB_tune-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa55.inc b/poky/meta/conf/machine/include/tune-cortexa55.inc index 8242cc9ce..274944819 100644 --- a/poky/meta/conf/machine/include/tune-cortexa55.inc +++ b/poky/meta/conf/machine/include/tune-cortexa55.inc @@ -6,12 +6,9 @@ TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa55', ' -mcpu=corte require conf/machine/include/arm/arch-armv8a.inc # Little Endian base configs -AVAILTUNES += "cortexa55 cortexa55-crypto" +AVAILTUNES += "cortexa55" ARMPKGARCH_tune-cortexa55 = "cortexa55" -ARMPKGARCH_tune-cortexa55-crypto = "cortexa55" -TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crc" -TUNE_FEATURES_tune-cortexa55-crypto = "aarch64 cortexa55 crc crypto" -PACKAGE_EXTRA_ARCHS_tune-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa55" -PACKAGE_EXTRA_ARCHS_tune-cortexa55-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa55 cortexa55-crypto" +TUNE_FEATURES_tune-cortexa55 = "aarch64 cortexa55 crc crypto" +TUNE_PKGARCH_tune-cortexa55 = "cortexa55" +PACKAGE_EXTRA_ARCHS_tune-cortexa55 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa55" BASE_LIB_tune-cortexa55 = "lib64" -BASE_LIB_tune-cortexa55-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc index d05e93f51..b95d63e86 100644 --- a/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa57-cortexa53.inc @@ -1,18 +1,16 @@ DEFAULTTUNE ?= "cortexa57-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc TUNEVALID[cortexa57-cortexa53] = "Enable big.LITTLE Cortex-A57.Cortex-A53 specific processor optimizations" TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "aarch64", " -march=armv8-a", "" ,d)}" - +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mcpu=cortex-a57.cortex-a53", "", d)}" MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", "cortexa57-cortexa53:", "" ,d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa57-cortexa53", " -mtune=cortex-a57.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # Little Endian base configs AVAILTUNES += "cortexa57-cortexa53" ARMPKGARCH_tune-cortexa57-cortexa53 = "cortexa57-cortexa53" -TUNE_FEATURES_tune-cortexa57-cortexa53 = "${TUNE_FEATURES_tune-aarch64} cortexa57-cortexa53" +TUNE_FEATURES_tune-cortexa57-cortexa53 = "aarch64 cortexa57-cortexa53" +TUNE_PKGARCH_tune-cortexa57-cortexa53 = "cortexa57-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa57-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-aarch64} cortexa57-cortexa53" BASE_LIB_tune-cortexa57-cortexa53 = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa57.inc b/poky/meta/conf/machine/include/tune-cortexa57.inc new file mode 100644 index 000000000..e8ddeb578 --- /dev/null +++ b/poky/meta/conf/machine/include/tune-cortexa57.inc @@ -0,0 +1,19 @@ +DEFAULTTUNE ?= "cortexa57" + +TUNEVALID[cortexa57] = "Enable Cortex-A57 specific processor optimizations" +TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'cortexa57', ' -mcpu=cortex-a57', '', d)}" + +require conf/machine/include/arm/arch-armv8a.inc + +# Little Endian base configs +AVAILTUNES += "cortexa57 cortexa57-crypto" +ARMPKGARCH_tune-cortexa57 = "cortexa57" +ARMPKGARCH_tune-cortexa57-crypto = "cortexa57" +TUNE_FEATURES_tune-cortexa57 = "aarch64 cortexa57 crc" +TUNE_FEATURES_tune-cortexa57-crypto = "aarch64 cortexa57 crc crypto" +PACKAGE_EXTRA_ARCHS_tune-cortexa57 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa57" +PACKAGE_EXTRA_ARCHS_tune-cortexa57-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa57 cortexa57-crypto" +TUNE_PKGARCH_tune-cortexa57 = "cortexa57" +TUNE_PKGARCH_tune-cortexa57-crypto = "cortexa57-crypto" +BASE_LIB_tune-cortexa57 = "lib64" +BASE_LIB_tune-cortexa57-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc index f208b98e3..fd1ffeb17 100644 --- a/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa72-cortexa53.inc @@ -1,23 +1,22 @@ DEFAULTTUNE ?= "cortexa72-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc - TUNEVALID[cortexa72-cortexa53] = "Enable big.LITTLE Cortex-A72.Cortex-A53 specific processor optimizations" - TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mcpu=cortex-a72.cortex-a53", "", d)}" MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", "cortexa72-cortexa53:", "" ,d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa72-cortexa53", " -mtune=cortex-a72.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # cortexa72.cortexa53 implies crc support AVAILTUNES += "cortexa72-cortexa53 cortexa72-cortexa53-crypto" ARMPKGARCH_tune-cortexa72-cortexa53 = "cortexa72-cortexa53" ARMPKGARCH_tune-cortexa72-cortexa53-crypto = "cortexa72-cortexa53" -TUNE_FEATURES_tune-cortexa72-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa72-cortexa53" -TUNE_FEATURES_tune-cortexa72-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53 = "aarch64 crc cortexa72-cortexa53" +TUNE_FEATURES_tune-cortexa72-cortexa53-crypto = "aarch64 crc crypto cortexa72-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa72-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa72-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72-cortexa53 cortexa72-cortexa53-crypto" +TUNE_PKGARCH_tune-cortexa72-cortexa53 = "cortexa72-cortexa53" +TUNE_PKGARCH_tune-cortexa72-cortexa53-crypto = "cortexa72-cortexa53-crypto" BASE_LIB_tune-cortexa72-cortexa53 = "lib64" BASE_LIB_tune-cortexa72-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa72.inc b/poky/meta/conf/machine/include/tune-cortexa72.inc index 00f7745a2..23640d5c1 100644 --- a/poky/meta/conf/machine/include/tune-cortexa72.inc +++ b/poky/meta/conf/machine/include/tune-cortexa72.inc @@ -10,4 +10,5 @@ AVAILTUNES += "cortexa72" ARMPKGARCH_tune-cortexa72 = "cortexa72" TUNE_FEATURES_tune-cortexa72 = "aarch64 cortexa72 crc crypto" PACKAGE_EXTRA_ARCHS_tune-cortexa72 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa72" +TUNE_PKGARCH_tune-cortexa72 = "cortexa72" BASE_LIB_tune-cortexa72 = "lib64" diff --git a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc index 8df418227..ab87c8874 100644 --- a/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc +++ b/poky/meta/conf/machine/include/tune-cortexa73-cortexa53.inc @@ -1,23 +1,22 @@ DEFAULTTUNE ?= "cortexa73-cortexa53" -require conf/machine/include/arm/arch-armv8a.inc - TUNEVALID[cortexa73-cortexa53] = "Enable big.LITTLE Cortex-A73.Cortex-A53 specific processor optimizations" - TUNECONFLICTS[aarch64] = "armv4 armv5 armv6 armv7 armv7a" - MACHINEOVERRIDES =. "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", "cortexa73-cortexa53:", "" ,d)}" +TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mcpu=cortex-a73.cortex-a53", "", d)}" -TUNE_CCARGS .= "${@bb.utils.contains("TUNE_FEATURES", "cortexa73-cortexa53", " -mtune=cortex-a73.cortex-a53", "", d)}" +require conf/machine/include/arm/arch-armv8a.inc # cortexa73.cortexa53 implies crc support AVAILTUNES += "cortexa73-cortexa53 cortexa73-cortexa53-crypto" ARMPKGARCH_tune-cortexa73-cortexa53 = "cortexa73-cortexa53" ARMPKGARCH_tune-cortexa73-cortexa53-crypto = "cortexa73-cortexa53" -TUNE_FEATURES_tune-cortexa73-cortexa53 = "${TUNE_FEATURES_tune-armv8a-crc} cortexa73-cortexa53" -TUNE_FEATURES_tune-cortexa73-cortexa53-crypto = "${TUNE_FEATURES_tune-armv8a-crc-crypto} cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53 = "aarch64 crc cortexa73-cortexa53" +TUNE_FEATURES_tune-cortexa73-cortexa53-crypto = "aarch64 crc crypto cortexa73-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53 = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc} cortexa73-cortexa53" PACKAGE_EXTRA_ARCHS_tune-cortexa73-cortexa53-crypto = "${PACKAGE_EXTRA_ARCHS_tune-armv8a-crc-crypto} cortexa73-cortexa53 cortexa73-cortexa53-crypto" +TUNE_PKGARCH_tune-cortexa73-cortexa53 = "cortexa73-cortexa53" +TUNE_PKGARCH_tune-cortexa73-cortexa53-crypto = "cortexa73-cortexa53-crypto" BASE_LIB_tune-cortexa73-cortexa53 = "lib64" BASE_LIB_tune-cortexa73-cortexa53-crypto = "lib64" diff --git a/poky/meta/conf/machine/qemuarm64.conf b/poky/meta/conf/machine/qemuarm64.conf index 1e2d4f018..7965fac71 100644 --- a/poky/meta/conf/machine/qemuarm64.conf +++ b/poky/meta/conf/machine/qemuarm64.conf @@ -2,7 +2,7 @@ #@NAME: QEMU ARMv8 machine #@DESCRIPTION: Machine configuration for running an ARMv8 system on QEMU -require conf/machine/include/arm/arch-armv8a.inc +require conf/machine/include/tune-cortexa57.inc require conf/machine/include/qemu.inc KERNEL_IMAGETYPE = "Image" diff --git a/poky/meta/files/common-licenses/Unlicense b/poky/meta/files/common-licenses/Unlicense new file mode 100644 index 000000000..68a49daad --- /dev/null +++ b/poky/meta/files/common-licenses/Unlicense @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to diff --git a/poky/meta/lib/oe/classextend.py b/poky/meta/lib/oe/classextend.py index f02fbe9fb..e1049ce3e 100644 --- a/poky/meta/lib/oe/classextend.py +++ b/poky/meta/lib/oe/classextend.py @@ -4,11 +4,21 @@ import collections +def get_packages(d): + pkgs = d.getVar("PACKAGES_NONML") + extcls = d.getVar("EXTENDERCLASS") + return extcls.rename_packages_internal(pkgs) + +def get_depends(varprefix, d): + extcls = d.getVar("EXTENDERCLASS") + return extcls.map_depends_variable(varprefix + "_NONML") + class ClassExtender(object): def __init__(self, extname, d): self.extname = extname self.d = d self.pkgs_mapping = [] + self.d.setVar("EXTENDERCLASS", self) def extend_name(self, name): if name.startswith("kernel-") or name == "virtual/kernel": @@ -24,7 +34,7 @@ class ClassExtender(object): if not subs.startswith(self.extname): return "virtual/" + self.extname + "-" + subs return name - if name.startswith("/"): + if name.startswith("/") or (name.startswith("${") and name.endswith("}")): return name if not name.startswith(self.extname): return self.extname + "-" + name @@ -89,8 +99,14 @@ class ClassExtender(object): for dep in deps: newdeps[self.map_depends(dep)] = deps[dep] - self.d.setVar(varname, bb.utils.join_deps(newdeps, False).replace("EXTENDPKGV", "${EXTENDPKGV}")) + if not varname.endswith("_NONML"): + #if varname == "DEPENDS": + self.d.renameVar(varname, varname + "_NONML") + self.d.setVar(varname, "${@oe.classextend.get_depends('%s', d)}" % varname) + self.d.appendVarFlag(varname, "vardeps", " " + varname + "_NONML") + ret = bb.utils.join_deps(newdeps, False).replace("EXTENDPKGV", "${EXTENDPKGV}") self.d.setVar("EXTENDPKGV", orig) + return ret def map_packagevars(self): for pkg in (self.d.getVar("PACKAGES").split() + [""]): @@ -109,10 +125,23 @@ class ClassExtender(object): continue self.pkgs_mapping.append([pkg, self.extend_name(pkg)]) - self.d.setVar("PACKAGES", " ".join([row[1] for row in self.pkgs_mapping])) + self.d.renameVar("PACKAGES", "PACKAGES_NONML") + self.d.setVar("PACKAGES", "${@oe.classextend.get_packages(d)}") + + def rename_packages_internal(self, pkgs): + self.pkgs_mapping = [] + for pkg in (self.d.expand(pkgs) or "").split(): + if pkg.startswith(self.extname): + self.pkgs_mapping.append([pkg.split(self.extname + "-")[1], pkg]) + continue + self.pkgs_mapping.append([pkg, self.extend_name(pkg)]) + + return " ".join([row[1] for row in self.pkgs_mapping]) def rename_package_variables(self, variables): for pkg_mapping in self.pkgs_mapping: + if pkg_mapping[0].startswith("${") and pkg_mapping[0].endswith("}"): + continue for subs in variables: self.d.renameVar("%s_%s" % (subs, pkg_mapping[0]), "%s_%s" % (subs, pkg_mapping[1])) diff --git a/poky/meta/lib/oe/recipeutils.py b/poky/meta/lib/oe/recipeutils.py index 732420e46..29473a988 100644 --- a/poky/meta/lib/oe/recipeutils.py +++ b/poky/meta/lib/oe/recipeutils.py @@ -1076,6 +1076,18 @@ def get_recipe_upgrade_status(recipes=None): 'RECIPE_UPSTREAM_VERSION', 'RECIPE_UPSTREAM_DATE', 'CHECK_DATE', + 'FETCHCMD_bzr', + 'FETCHCMD_ccrc', + 'FETCHCMD_cvs', + 'FETCHCMD_git', + 'FETCHCMD_hg', + 'FETCHCMD_npm', + 'FETCHCMD_osc', + 'FETCHCMD_p4', + 'FETCHCMD_repo', + 'FETCHCMD_s3', + 'FETCHCMD_svn', + 'FETCHCMD_wget', ) with bb.tinfoil.Tinfoil() as tinfoil: diff --git a/poky/meta/lib/oe/terminal.py b/poky/meta/lib/oe/terminal.py index a1daa2bed..eb10a6e33 100644 --- a/poky/meta/lib/oe/terminal.py +++ b/poky/meta/lib/oe/terminal.py @@ -207,7 +207,10 @@ def spawn_preferred(sh_cmd, title=None, env=None, d=None): spawn(terminal.name, sh_cmd, title, env, d) break except UnsupportedTerminal: - continue + pass + except: + bb.warn("Terminal %s is supported but did not start" % (terminal.name)) + # when we've run out of options else: raise NoSupportedTerminals(get_cmd_list()) diff --git a/poky/meta/lib/oeqa/core/runner.py b/poky/meta/lib/oeqa/core/runner.py index 1284295c3..00b7d0bb1 100644 --- a/poky/meta/lib/oeqa/core/runner.py +++ b/poky/meta/lib/oeqa/core/runner.py @@ -182,8 +182,10 @@ class OETestResult(_TestResult): (status, log) = self._getTestResultDetails(case) t = "" + duration = 0 if case.id() in self.starttime and case.id() in self.endtime: - t = " (" + "{0:.2f}".format(self.endtime[case.id()] - self.starttime[case.id()]) + "s)" + duration = self.endtime[case.id()] - self.starttime[case.id()] + t = " (" + "{0:.2f}".format(duration) + "s)" if status not in logs: logs[status] = [] @@ -191,6 +193,8 @@ class OETestResult(_TestResult): report = {'status': status} if log: report['log'] = log + if duration: + report['duration'] = duration if dump_streams and case.id() in self.logged_output: (stdout, stderr) = self.logged_output[case.id()] report['stdout'] = stdout diff --git a/poky/meta/lib/oeqa/core/utils/concurrencytest.py b/poky/meta/lib/oeqa/core/utils/concurrencytest.py index fac59f765..01c39830f 100644 --- a/poky/meta/lib/oeqa/core/utils/concurrencytest.py +++ b/poky/meta/lib/oeqa/core/utils/concurrencytest.py @@ -77,14 +77,17 @@ class ProxyTestResult: # a very basic TestResult proxy, in order to modify add* calls def __init__(self, target): self.result = target + self.failed_tests = 0 def _addResult(self, method, test, *args, exception = False, **kwargs): return method(test, *args, **kwargs) def addError(self, test, err = None, **kwargs): + self.failed_tests += 1 self._addResult(self.result.addError, test, err, exception = True, **kwargs) def addFailure(self, test, err = None, **kwargs): + self.failed_tests += 1 self._addResult(self.result.addFailure, test, err, exception = True, **kwargs) def addSuccess(self, test, **kwargs): @@ -96,6 +99,9 @@ class ProxyTestResult: def addUnexpectedSuccess(self, test, **kwargs): self._addResult(self.result.addUnexpectedSuccess, test, **kwargs) + def wasSuccessful(self): + return self.failed_tests == 0 + def __getattr__(self, attr): return getattr(self.result, attr) @@ -287,10 +293,10 @@ def fork_for_tests(concurrency_num, suite): # as per default in parent code subunit_client.buffer = True subunit_result = AutoTimingTestResultDecorator(subunit_client) - process_suite.run(ExtraResultsEncoderTestResult(subunit_result)) + unittest_result = process_suite.run(ExtraResultsEncoderTestResult(subunit_result)) if ourpid != os.getpid(): os._exit(0) - if newbuilddir: + if newbuilddir and unittest_result.wasSuccessful(): removebuilddir(newbuilddir) except: # Don't do anything with process children diff --git a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py index 2b9c4998f..dea519e6d 100644 --- a/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/poky/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -209,7 +209,7 @@ class ImageFeatures(OESelftestTestCase): image_name = 'core-image-minimal' all_image_types = set(get_bb_var("IMAGE_TYPES", image_name).split()) - blacklist = set(('container', 'elf', 'f2fs', 'multiubi', 'tar.zst')) + blacklist = set(('container', 'elf', 'f2fs', 'multiubi', 'tar.zst', 'wic.zst')) img_types = all_image_types - blacklist config = 'IMAGE_FSTYPES += "%s"\n'\ diff --git a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py index 09d3de7ae..793c98a33 100644 --- a/poky/meta/lib/oeqa/selftest/cases/runtime_test.py +++ b/poky/meta/lib/oeqa/selftest/cases/runtime_test.py @@ -188,18 +188,14 @@ class TestImage(OESelftestTestCase): self.skipTest('virgl isn\'t working with Opensuse 15.0') qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') - sdl_packageconfig = get_bb_var('PACKAGECONFIG', 'libsdl2-native') + qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native') features = 'INHERIT += "testimage"\n' if 'gtk+' not in qemu_packageconfig: features += 'PACKAGECONFIG_append_pn-qemu-system-native = " gtk+"\n' if 'sdl' not in qemu_packageconfig: features += 'PACKAGECONFIG_append_pn-qemu-system-native = " sdl"\n' - if 'virglrenderer' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " virglrenderer"\n' - if 'glx' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " glx"\n' - if 'opengl' not in sdl_packageconfig: - features += 'PACKAGECONFIG_append_pn-libsdl2-native = " opengl"\n' + if 'opengl' not in qemu_distrofeatures: + features += 'DISTRO_FEATURES_append = " opengl"\n' features += 'TEST_SUITES = "ping ssh virgl"\n' features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n' features += 'IMAGE_INSTALL_append = " kmscube"\n' @@ -231,12 +227,10 @@ class TestImage(OESelftestTestCase): dripath = subprocess.check_output("pkg-config --variable=dridriverdir dri", shell=True) except subprocess.CalledProcessError as e: self.skipTest("Could not determine the path to dri drivers on the host via pkg-config.\nPlease install Mesa development files (particularly, dri.pc) on the host machine.") - qemu_packageconfig = get_bb_var('PACKAGECONFIG', 'qemu-system-native') + qemu_distrofeatures = get_bb_var('DISTRO_FEATURES', 'qemu-system-native') features = 'INHERIT += "testimage"\n' - if 'virglrenderer' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " virglrenderer"\n' - if 'glx' not in qemu_packageconfig: - features += 'PACKAGECONFIG_append_pn-qemu-system-native = " glx"\n' + if 'opengl' not in qemu_distrofeatures: + features += 'DISTRO_FEATURES_append = " opengl"\n' features += 'TEST_SUITES = "ping ssh virgl"\n' features += 'IMAGE_FEATURES_append = " ssh-server-dropbear"\n' features += 'IMAGE_INSTALL_append = " kmscube"\n' diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb deleted file mode 100644 index 9954d7f57..000000000 --- a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.11.bb +++ /dev/null @@ -1,71 +0,0 @@ -SUMMARY = "Libraries for producing EFI binaries" -HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" -SECTION = "devel" -LICENSE = "GPLv2+ | BSD-2-Clause" -LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ - file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ - file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ - file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ - " - -SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/${BP}.tar.bz2 \ - file://parallel-make-archives.patch \ - file://lib-Makefile-fix-parallel-issue.patch \ - file://gnu-efi-3.0.9-fix-clang-build.patch \ - " - -SRC_URI[md5sum] = "21148bbcccec385a9bfdf5f678959577" -SRC_URI[sha256sum] = "f28da792a2532e91e18e0101468811739a22cde9eee5eacfd0efb9bf3a61d6b9" - -COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" -COMPATIBLE_HOST_armv4 = 'null' - -do_configure_linux-gnux32_prepend() { - cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h - cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h -} - -def gnu_efi_arch(d): - import re - tarch = d.getVar("TARGET_ARCH") - if re.match("i[3456789]86", tarch): - return "ia32" - return tarch - -EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ - 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ - " - -# gnu-efi's Makefile treats prefix as toolchain prefix, so don't -# export it. -prefix[unexport] = "1" - -do_install() { - oe_runmake install INSTALLROOT="${D}" -} - -FILES_${PN} += "${libdir}/*.lds" - -# 64-bit binaries are expected for EFI when targeting X32 -INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" -INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" - -BBCLASSEXTEND = "native" - -# It doesn't support sse, its make.defaults sets: -# CFLAGS += -mno-mmx -mno-sse -# So also remove -mfpmath=sse from TUNE_CCARGS -TUNE_CCARGS_remove = "-mfpmath=sse" - -python () { - ccargs = d.getVar('TUNE_CCARGS').split() - if '-mx32' in ccargs: - # use x86_64 EFI ABI - ccargs.remove('-mx32') - ccargs.append('-m64') - d.setVar('TUNE_CCARGS', ' '.join(ccargs)) -} diff --git a/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb new file mode 100644 index 000000000..7888aba0f --- /dev/null +++ b/poky/meta/recipes-bsp/gnu-efi/gnu-efi_3.0.12.bb @@ -0,0 +1,71 @@ +SUMMARY = "Libraries for producing EFI binaries" +HOMEPAGE = "http://sourceforge.net/projects/gnu-efi/" +SECTION = "devel" +LICENSE = "GPLv2+ | BSD-2-Clause" +LIC_FILES_CHKSUM = "file://gnuefi/crt0-efi-arm.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://gnuefi/crt0-efi-aarch64.S;beginline=4;endline=16;md5=e582764a4776e60c95bf9ab617343d36 \ + file://inc/efishellintf.h;beginline=13;endline=20;md5=202766b79d708eff3cc70fce15fb80c7 \ + file://inc/efishellparm.h;beginline=4;endline=11;md5=468b1231b05bbc84bae3a0d5774e3bb5 \ + file://lib/arm/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/arm/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/math.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + file://lib/aarch64/initplat.c;beginline=2;endline=15;md5=8ed772501da77b2b3345aa6df8744c9e \ + " + +SRC_URI = "${SOURCEFORGE_MIRROR}/${BPN}/files/${BP}.tar.bz2 \ + file://parallel-make-archives.patch \ + file://lib-Makefile-fix-parallel-issue.patch \ + file://gnu-efi-3.0.9-fix-clang-build.patch \ + " + +SRC_URI[md5sum] = "926763ff37bc9db3a9035cec41eb2f45" +SRC_URI[sha256sum] = "0196f2e1fd3c334b66e610a608a0e59233474c7a01bec7bc53989639aa327669" + +COMPATIBLE_HOST = "(x86_64.*|i.86.*|aarch64.*|arm.*)-linux" +COMPATIBLE_HOST_armv4 = 'null' + +do_configure_linux-gnux32_prepend() { + cp ${STAGING_INCDIR}/gnu/stubs-x32.h ${STAGING_INCDIR}/gnu/stubs-64.h + cp ${STAGING_INCDIR}/bits/long-double-32.h ${STAGING_INCDIR}/bits/long-double-64.h +} + +def gnu_efi_arch(d): + import re + tarch = d.getVar("TARGET_ARCH") + if re.match("i[3456789]86", tarch): + return "ia32" + return tarch + +EXTRA_OEMAKE = "'ARCH=${@gnu_efi_arch(d)}' 'CC=${CC}' 'AS=${AS}' 'LD=${LD}' 'AR=${AR}' \ + 'RANLIB=${RANLIB}' 'OBJCOPY=${OBJCOPY}' 'PREFIX=${prefix}' 'LIBDIR=${libdir}' \ + " + +# gnu-efi's Makefile treats prefix as toolchain prefix, so don't +# export it. +prefix[unexport] = "1" + +do_install() { + oe_runmake install INSTALLROOT="${D}" +} + +FILES_${PN} += "${libdir}/*.lds" + +# 64-bit binaries are expected for EFI when targeting X32 +INSANE_SKIP_${PN}-dev_append_linux-gnux32 = " arch" +INSANE_SKIP_${PN}-dev_append_linux-muslx32 = " arch" + +BBCLASSEXTEND = "native" + +# It doesn't support sse, its make.defaults sets: +# CFLAGS += -mno-mmx -mno-sse +# So also remove -mfpmath=sse from TUNE_CCARGS +TUNE_CCARGS_remove = "-mfpmath=sse" + +python () { + ccargs = d.getVar('TUNE_CCARGS').split() + if '-mx32' in ccargs: + # use x86_64 EFI ABI + ccargs.remove('-mx32') + ccargs.append('-m64') + d.setVar('TUNE_CCARGS', ' '.join(ccargs)) +} diff --git a/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb b/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb index 3251d0f05..fa90a12bf 100644 --- a/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb +++ b/poky/meta/recipes-bsp/u-boot/libubootenv_0.2.bb @@ -1,5 +1,5 @@ SUMMARY = "U-Boot libraries and tools to access environment" -DEPENDS += "mtd-utils" +DEPENDS += "mtd-utils zlib" DESCRIPTION = "This package contains tools and libraries to read \ and modify U-Boot environment. \ diff --git a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb index 3a2c24f9f..2b0c71159 100644 --- a/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb +++ b/poky/meta/recipes-connectivity/avahi/avahi_0.8.bb @@ -81,6 +81,11 @@ do_install() { rm -rf ${D}${datadir}/dbus-1/interfaces test -d ${D}${datadir}/dbus-1 && rmdir --ignore-fail-on-non-empty ${D}${datadir}/dbus-1 rm -rf ${D}${libdir}/avahi + + # Move example service files out of /etc/avahi/services so we don't + # advertise ssh & sftp-ssh by default + install -d ${D}${docdir}/avahi + mv ${D}${sysconfdir}/avahi/services/* ${D}${docdir}/avahi } PACKAGES =+ "${@bb.utils.contains("PACKAGECONFIG", "libdns_sd", "libavahi-compat-libdnssd", "", d)}" diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb deleted file mode 100644 index 7ad4b8eee..000000000 --- a/poky/meta/recipes-connectivity/iproute2/iproute2_5.5.0.bb +++ /dev/null @@ -1,12 +0,0 @@ -require iproute2.inc - -SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ - file://0001-libc-compat.h-add-musl-workaround.patch \ - " - -SRC_URI[md5sum] = "ee8e2cdb416d4a8ef39525d39ab7c2d0" -SRC_URI[sha256sum] = "bac543435cac208a11db44c9cc8e35aa902befef8750594654ee71941c388f7b" - -# CFLAGS are computed in Makefile and reference CCOPTS -# -EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'" diff --git a/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb b/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb new file mode 100644 index 000000000..9ab905373 --- /dev/null +++ b/poky/meta/recipes-connectivity/iproute2/iproute2_5.6.0.bb @@ -0,0 +1,12 @@ +require iproute2.inc + +SRC_URI = "${KERNELORG_MIRROR}/linux/utils/net/${BPN}/${BP}.tar.xz \ + file://0001-libc-compat.h-add-musl-workaround.patch \ + " + +SRC_URI[md5sum] = "9da0c352707c34b8b1fec3bf42fcfd09" +SRC_URI[sha256sum] = "1b5b0e25ce6e23da7526ea1da044e814ad85ba761b10dd29c2b027c056b04692" + +# CFLAGS are computed in Makefile and reference CCOPTS +# +EXTRA_OEMAKE_append = " CCOPTS='${CFLAGS}'" diff --git a/poky/meta/recipes-core/glibc/glibc-package.inc b/poky/meta/recipes-core/glibc/glibc-package.inc index 285a9aa2f..ff25fd418 100644 --- a/poky/meta/recipes-core/glibc/glibc-package.inc +++ b/poky/meta/recipes-core/glibc/glibc-package.inc @@ -24,7 +24,7 @@ libc_baselibs_append = " ${@oe.utils.conditional('ARCH_DYNAMIC_LOADER', '', '', INSANE_SKIP_${PN}_append_aarch64 = " libdir" FILES_${PN} = "${libc_baselibs} ${libexecdir}/*" -RRECOMMENDS_${PN} = "${@bb.utils.filter('DISTRO_FEATURES', 'ldconfig', d)}" +RRECOMMENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'ldconfig', '${MLPREFIX}ldconfig', '', d)}" FILES_ldconfig = "${base_sbindir}/ldconfig ${sysconfdir}/ld.so.conf" FILES_ldd = "${bindir}/ldd" FILES_libsegfault = "${base_libdir}/libSegFault*" @@ -152,7 +152,7 @@ do_install_append_armeb () { } do_install_armmultilib () { - oe_multilib_header bits/endian.h bits/fcntl.h bits/fenv.h bits/fp-fast.h bits/hwcap.h bits/ipc.h bits/link.h bits/wordsize.h + oe_multilib_header bits/endian.h bits/fcntl.h bits/fenv.h bits/fp-fast.h bits/hwcap.h bits/ipc.h bits/link.h oe_multilib_header bits/local_lim.h bits/mman.h bits/msq.h bits/pthreadtypes.h bits/pthreadtypes-arch.h bits/sem.h bits/semaphore.h bits/setjmp.h oe_multilib_header bits/shm.h bits/sigstack.h bits/stat.h bits/statfs.h bits/typesizes.h oe_multilib_header bits/procfs-id.h bits/procfs.h bits/shmlba.h diff --git a/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch b/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch new file mode 100644 index 000000000..cbef2f283 --- /dev/null +++ b/poky/meta/recipes-core/glibc/glibc/0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch @@ -0,0 +1,67 @@ +From 9cb0a756b017f5961b70ac781d3eaec6c82513cb Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Fri, 15 May 2020 17:05:45 -0700 +Subject: [PATCH] wordsize.h: Unify the header between arm and aarch64 + +This helps OE multilibs to not sythesize this header which causes all +kind of recursions and other issues since wordsize is fundamental header +and ends up including itself in many case e.g. clang tidy, bpf etc. + +Upstream-Status: Inappropriate [ OE-Specific ] + +Signed-off-by: Khem Raj +--- + sysdeps/aarch64/bits/wordsize.h | 8 ++++++-- + sysdeps/{aarch64 => arm}/bits/wordsize.h | 8 ++++++-- + 2 files changed, 12 insertions(+), 4 deletions(-) + copy sysdeps/{aarch64 => arm}/bits/wordsize.h (85%) + +diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/aarch64/bits/wordsize.h +index ee01841773..34fcdef1f1 100644 +--- a/sysdeps/aarch64/bits/wordsize.h ++++ b/sysdeps/aarch64/bits/wordsize.h +@@ -17,12 +17,16 @@ + License along with the GNU C Library; if not, see + . */ + +-#ifdef __LP64__ ++#if defined (__aarch64__) && defined (__LP64__) + # define __WORDSIZE 64 +-#else ++#elif defined (__aarch64__) + # define __WORDSIZE 32 + # define __WORDSIZE32_SIZE_ULONG 1 + # define __WORDSIZE32_PTRDIFF_LONG 1 ++#else ++# define __WORDSIZE 32 ++# define __WORDSIZE32_SIZE_ULONG 0 ++# define __WORDSIZE32_PTRDIFF_LONG 0 + #endif + + #define __WORDSIZE_TIME64_COMPAT32 0 +diff --git a/sysdeps/aarch64/bits/wordsize.h b/sysdeps/arm/bits/wordsize.h +similarity index 85% +copy from sysdeps/aarch64/bits/wordsize.h +copy to sysdeps/arm/bits/wordsize.h +index ee01841773..34fcdef1f1 100644 +--- a/sysdeps/aarch64/bits/wordsize.h ++++ b/sysdeps/arm/bits/wordsize.h +@@ -17,12 +17,16 @@ + License along with the GNU C Library; if not, see + . */ + +-#ifdef __LP64__ ++#if defined (__aarch64__) && defined (__LP64__) + # define __WORDSIZE 64 +-#else ++#elif defined (__aarch64__) + # define __WORDSIZE 32 + # define __WORDSIZE32_SIZE_ULONG 1 + # define __WORDSIZE32_PTRDIFF_LONG 1 ++#else ++# define __WORDSIZE 32 ++# define __WORDSIZE32_SIZE_ULONG 0 ++# define __WORDSIZE32_PTRDIFF_LONG 0 + #endif + + #define __WORDSIZE_TIME64_COMPAT32 0 diff --git a/poky/meta/recipes-core/glibc/glibc_2.31.bb b/poky/meta/recipes-core/glibc/glibc_2.31.bb index 2032311b2..61679e2c1 100644 --- a/poky/meta/recipes-core/glibc/glibc_2.31.bb +++ b/poky/meta/recipes-core/glibc/glibc_2.31.bb @@ -40,6 +40,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0027-intl-Emit-no-lines-in-bison-generated-files.patch \ file://0028-inject-file-assembly-directives.patch \ file://0029-locale-prevent-maybe-uninitialized-errors-with-Os-BZ.patch \ + file://0030-wordsize.h-Unify-the-header-between-arm-and-aarch64.patch \ " S = "${WORKDIR}/git" B = "${WORKDIR}/build-${TARGET_SYS}" diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb deleted file mode 100644 index ba74eb1f9..000000000 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.15.bb +++ /dev/null @@ -1,18 +0,0 @@ -# -# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular -# - -require libxcrypt.inc - -PROVIDES = "" -AUTO_LIBNAME_PKGS = "" -EXCLUDE_FROM_WORLD = "1" - -API = "--enable-obsolete-api" - -do_install_append () { - rm -rf ${D}${includedir} - rm -rf ${D}${libdir}/pkgconfig - rm -rf ${D}${datadir} -} - diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb new file mode 100644 index 000000000..ba74eb1f9 --- /dev/null +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt-compat_4.4.16.bb @@ -0,0 +1,18 @@ +# +# This provides libcrypto.so.1 which contains obsolete APIs, needed for uninative in particular +# + +require libxcrypt.inc + +PROVIDES = "" +AUTO_LIBNAME_PKGS = "" +EXCLUDE_FROM_WORLD = "1" + +API = "--enable-obsolete-api" + +do_install_append () { + rm -rf ${D}${includedir} + rm -rf ${D}${libdir}/pkgconfig + rm -rf ${D}${datadir} +} + diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc index 2d2a0b03e..da7607aef 100644 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt.inc +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt.inc @@ -10,7 +10,7 @@ LIC_FILES_CHKSUM ?= "file://LICENSING;md5=3bb6614cf5880cbf1b9dbd9e3d145e2c \ inherit autotools pkgconfig SRC_URI = "git://github.com/besser82/libxcrypt.git;branch=${SRCBRANCH}" -SRCREV = "823437d015cd4ab4d100ed205f218681b03ae45c" +SRCREV = "4ffa4d38396c334a1e002427c22281b047a3d6a6" SRCBRANCH ?= "develop" PROVIDES = "virtual/crypt" diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb deleted file mode 100644 index 79dba2f6d..000000000 --- a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.15.bb +++ /dev/null @@ -1,2 +0,0 @@ -require libxcrypt.inc - diff --git a/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb new file mode 100644 index 000000000..79dba2f6d --- /dev/null +++ b/poky/meta/recipes-core/libxcrypt/libxcrypt_4.4.16.bb @@ -0,0 +1,2 @@ +require libxcrypt.inc + diff --git a/poky/meta/recipes-core/musl/musl_git.bb b/poky/meta/recipes-core/musl/musl_git.bb index 82379fd1c..6aa69985d 100644 --- a/poky/meta/recipes-core/musl/musl_git.bb +++ b/poky/meta/recipes-core/musl/musl_git.bb @@ -4,7 +4,7 @@ require musl.inc inherit linuxloader -SRCREV = "040c1d16b468c50c04fc94edff521f1637708328" +SRCREV = "1b4e84c56df0f8ca30f6bc05962a860f869e71df" BASEVER = "1.2.0" diff --git a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb index 1f802da09..90b79adfd 100644 --- a/poky/meta/recipes-core/packagegroups/packagegroup-base.bb +++ b/poky/meta/recipes-core/packagegroups/packagegroup-base.bb @@ -110,16 +110,16 @@ python __anonymous () { machine_features= set(d.getVar("MACHINE_FEATURES").split()) if "bluetooth" in distro_features and not "bluetooth" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_BT", "packagegroup-base-bluetooth") + d.setVar("ADD_BT", "${MLPREFIX}packagegroup-base-bluetooth") if "wifi" in distro_features and not "wifi" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_WIFI", "packagegroup-base-wifi") + d.setVar("ADD_WIFI", "${MLPREFIX}packagegroup-base-wifi") if "3g" in distro_features and not "3g" in machine_features and ("pcmcia" in machine_features or "pci" in machine_features or "usbhost" in machine_features): - d.setVar("ADD_3G", "packagegroup-base-3g") + d.setVar("ADD_3G", "${MLPREFIX}packagegroup-base-3g") if "nfc" in distro_features and not "nfc" in machine_features and ("usbhost" in machine_features): - d.setVar("ADD_NFC", "packagegroup-base-nfc") + d.setVar("ADD_NFC", "${MLPREFIX}packagegroup-base-nfc") } # diff --git a/poky/meta/recipes-core/psplash/psplash_git.bb b/poky/meta/recipes-core/psplash/psplash_git.bb index 22c71f099..44f0007da 100644 --- a/poky/meta/recipes-core/psplash/psplash_git.bb +++ b/poky/meta/recipes-core/psplash/psplash_git.bb @@ -22,6 +22,7 @@ SPLASH_IMAGES = "file://psplash-poky-img.h;outsuffix=default" python __anonymous() { oldpkgs = d.getVar("PACKAGES").split() splashfiles = d.getVar('SPLASH_IMAGES').split() + mlprefix = d.getVar('MLPREFIX') or '' pkgs = [] localpaths = [] for uri in splashfiles: @@ -46,9 +47,9 @@ python __anonymous() { # Set these so that we have less work to do in do_compile and do_install_append d.setVar("SPLASH_INSTALL", " ".join(pkgs)) d.setVar("SPLASH_LOCALPATHS", " ".join(localpaths)) + for p in pkgs: + d.prependVar("PACKAGES", "%s%s " % (mlprefix, p)) - d.prependVar("PACKAGES", "%s " % (" ".join(pkgs))) - mlprefix = d.getVar('MLPREFIX') or '' pn = d.getVar('PN') or '' for p in pkgs: ep = '%s%s' % (mlprefix, p) diff --git a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb index 5b16b503d..2952c2101 100644 --- a/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb +++ b/poky/meta/recipes-devtools/apt/apt-native_1.2.31.bb @@ -2,6 +2,4 @@ require apt-native.inc SRC_URI += "file://noconfigure.patch \ file://no-curl.patch \ - file://gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch \ - file://gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch \ - file://gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch" +" diff --git a/poky/meta/recipes-devtools/apt/apt.inc b/poky/meta/recipes-devtools/apt/apt.inc index 13f5969f8..87d533782 100644 --- a/poky/meta/recipes-devtools/apt/apt.inc +++ b/poky/meta/recipes-devtools/apt/apt.inc @@ -17,6 +17,7 @@ SRC_URI = "https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/${BPN}/${P file://0001-environment.mak-musl-based-systems-can-generate-shar.patch \ file://0001-apt-1.2.12-Fix-musl-build.patch \ file://0001-Include-array.h-for-std-array.patch \ + file://0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch \ " SRC_URI[md5sum] = "d30eed9304e82ea8238c854b5c5a34d9" SRC_URI[sha256sum] = "03ded4f5e9b8d43ecec083704b2dcabf20c182ed382db9ac7251da0b0b038059" diff --git a/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch new file mode 100644 index 000000000..ce5c00508 --- /dev/null +++ b/poky/meta/recipes-devtools/apt/apt/0001-The-C.UTF-8-locale-is-not-portable-use-std-locale-cl.patch @@ -0,0 +1,27 @@ +From 7e8839731ae3fdf7502b91643aa6b252f6c5eaa6 Mon Sep 17 00:00:00 2001 +From: Adrian Bunk +Date: Thu, 14 May 2020 00:08:21 +0300 +Subject: The C.UTF-8 locale is not portable, use std::locale::classic() + +Upstream-Status: Inappropriate [Similar fix already in apt >= 1.3] +Signed-off-by: Adrian Bunk +--- + ftparchive/writer.cc | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc +index 25963820a..6ad571d2a 100644 +--- a/ftparchive/writer.cc ++++ b/ftparchive/writer.cc +@@ -984,7 +984,7 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) : + AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns")); + + time_t const now = time(NULL); +- auto const posix = std::locale("C.UTF-8"); ++ auto const posix = std::locale::classic(); + + // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1 + std::ostringstream datestr; +-- +2.20.1 + diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch deleted file mode 100644 index 438de209a..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-avoid-changing-the-global-LC_TIME-for-Release.patch +++ /dev/null @@ -1,80 +0,0 @@ -From 7ef2b2dba0e0bee450da3c8450ea782a3e7d6429 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Tue, 22 Aug 2017 11:49:01 -0500 -Subject: [PATCH 3/3] Revert "avoid changing the global LC_TIME for Release - writing" - -This reverts commit 78e7b683c645e907db12658405a4b201a6243ea8. - -After we drop debian8 and centos7 that has gcc < 5 (std::put_time not available) -versions this patch can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - ftparchive/writer.cc | 29 +++++++++++++++++------------ - 1 file changed, 17 insertions(+), 12 deletions(-) - -diff --git a/ftparchive/writer.cc b/ftparchive/writer.cc -index 2596382..e43a643 100644 ---- a/ftparchive/writer.cc -+++ b/ftparchive/writer.cc -@@ -37,7 +37,6 @@ - #include - #include - #include --#include - #include - #include - #include -@@ -984,29 +983,35 @@ ReleaseWriter::ReleaseWriter(FileFd * const GivenOutput, string const &/*DB*/) : - AddPatterns(_config->FindVector("APT::FTPArchive::Release::Patterns")); - - time_t const now = time(NULL); -- auto const posix = std::locale("C.UTF-8"); - -- // FIXME: use TimeRFC1123 here? But that uses GMT to satisfy HTTP/1.1 -- std::ostringstream datestr; -- datestr.imbue(posix); -- datestr << std::put_time(gmtime(&now), "%a, %d %b %Y %H:%M:%S UTC"); -+ setlocale(LC_TIME, "C"); -+ -+ char datestr[128]; -+ if (strftime(datestr, sizeof(datestr), "%a, %d %b %Y %H:%M:%S UTC", -+ gmtime(&now)) == 0) -+ { -+ datestr[0] = '\0'; -+ } - - time_t const validuntil = now + _config->FindI("APT::FTPArchive::Release::ValidTime", 0); -- std::ostringstream validstr; -- if (validuntil != now) -+ char validstr[128]; -+ if (now == validuntil || -+ strftime(validstr, sizeof(validstr), "%a, %d %b %Y %H:%M:%S UTC", -+ gmtime(&validuntil)) == 0) - { -- datestr.imbue(posix); -- validstr << std::put_time(gmtime(&validuntil), "%a, %d %b %Y %H:%M:%S UTC"); -+ validstr[0] = '\0'; - } - -+ setlocale(LC_TIME, ""); -+ - map Fields; - Fields["Origin"] = ""; - Fields["Label"] = ""; - Fields["Suite"] = ""; - Fields["Version"] = ""; - Fields["Codename"] = ""; -- Fields["Date"] = datestr.str(); -- Fields["Valid-Until"] = validstr.str(); -+ Fields["Date"] = datestr; -+ Fields["Valid-Until"] = validstr; - Fields["Architectures"] = ""; - Fields["Components"] = ""; - Fields["Description"] = ""; --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch deleted file mode 100644 index 088a66a3c..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_Revert-use-de-localed-std-put_time-instead-rolling-o.patch +++ /dev/null @@ -1,46 +0,0 @@ -From c72ef9b6ae83a0a2fbbefd5c050335f65f0d2bc9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Tue, 22 Aug 2017 11:48:46 -0500 -Subject: [PATCH 2/3] Revert "use de-localed std::put_time instead rolling our - own" - -This reverts commit 4ed2a17ab4334f019c00512aa54a162f0bf083c4. - -After we drop debian8 and centos7 that has gcc < 5 (std::put_time not available) -versions this patch can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - apt-pkg/contrib/strutl.cc | 14 +++++++++----- - 1 file changed, 9 insertions(+), 5 deletions(-) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc -index c2ff01d..e9ef2be 100644 ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -760,11 +760,15 @@ string TimeRFC1123(time_t Date) - if (gmtime_r(&Date, &Conv) == NULL) - return ""; - -- auto const posix = std::locale::classic(); -- std::ostringstream datestr; -- datestr.imbue(posix); -- datestr << std::put_time(&Conv, "%a, %d %b %Y %H:%M:%S GMT"); -- return datestr.str(); -+ char Buf[300]; -+ const char *Day[] = {"Sun","Mon","Tue","Wed","Thu","Fri","Sat"}; -+ const char *Month[] = {"Jan","Feb","Mar","Apr","May","Jun","Jul", -+ "Aug","Sep","Oct","Nov","Dec"}; -+ -+ snprintf(Buf, sizeof(Buf), "%s, %02i %s %i %02i:%02i:%02i GMT",Day[Conv.tm_wday], -+ Conv.tm_mday,Month[Conv.tm_mon],Conv.tm_year+1900,Conv.tm_hour, -+ Conv.tm_min,Conv.tm_sec); -+ return Buf; - } - /*}}}*/ - // ReadMessages - Read messages from the FD /*{{{*/ --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch b/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch deleted file mode 100644 index cb3259187..000000000 --- a/poky/meta/recipes-devtools/apt/apt/gcc_4.x_apt-pkg-contrib-strutl.cc-Include-array-header.patch +++ /dev/null @@ -1,33 +0,0 @@ -From ff8562f7724c4db4b83635af9e627f3495222327 Mon Sep 17 00:00:00 2001 -From: Anibal Limon -Date: Tue, 22 Aug 2017 04:41:31 -0500 -Subject: [PATCH 1/3] apt-pkg/contrib/strutl.cc: Include array header - -If GCC version is less than 5 the array header needs to be included -to support std::array. - -After we drop debian8 and centos7 that has gcc < 5 versions this patch -can be remove. - -Signed-off-by: Anibal Limon - -Upstream-Status: Inappropriate [embedded specific] ---- - apt-pkg/contrib/strutl.cc | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/apt-pkg/contrib/strutl.cc b/apt-pkg/contrib/strutl.cc -index 60d0ca8..c2ff01d 100644 ---- a/apt-pkg/contrib/strutl.cc -+++ b/apt-pkg/contrib/strutl.cc -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - - #include - #include --- -2.1.4 - diff --git a/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch b/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch new file mode 100644 index 000000000..c3be91a10 --- /dev/null +++ b/poky/meta/recipes-devtools/bison/bison/0001-bison-fix-the-parallel-build.patch @@ -0,0 +1,63 @@ +From e0dbcee6e25b3c0cb11a627bbfe3af45ef67ec30 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Thu, 14 May 2020 15:23:16 +0800 +Subject: [PATCH] bison: fix the parallel build + +Explicitly make the BUILT_SOURCES which +are the generated headers such as stdio.h, +fcntl.h and etc to be the dependencies of +the gl_LIBOBJS such as libbison_a-sprintf.o, +libbison_a-printf.o and etc to guarantee the +BUILT_SOURCES is generated before begin to +compile EXTRA_lib_libbison_a_SOURCES such as +fprintf.c in parallel builid, otherwise there +may come below error: + | muscle-tab.c:(.text+0x77a): undefined reference to `rpl_sprintf' + +It does the same for src_bison_OBJECTS and +lib_libbison_a_OBJECTS to make sure BUILT_SOURCES +generated before begin to compile src_bison_SOURCES +which contains AnnotationList.c and etc. + +BTW, the MOSTLYCLEANFILES also contains the +generated header needs to be created early +in the build process, so add it also in to +avoid below error: + | ./lib/uniwidth/width.c:21:10: fatal error: uniwidth.h: No such file or directory + +Upstream-Status: Submitted [bison-patches@gnu.org maillist] + +Signed-off-by: Mingli Yu +--- + lib/gnulib.mk | 2 ++ + src/local.mk | 1 + + 2 files changed, 3 insertions(+) + +diff --git a/lib/gnulib.mk b/lib/gnulib.mk +index c21c656..27fb3dc 100644 +--- a/lib/gnulib.mk ++++ b/lib/gnulib.mk +@@ -120,6 +120,8 @@ lib_libbison_a_SOURCES = + lib_libbison_a_LIBADD = $(gl_LIBOBJS) + lib_libbison_a_DEPENDENCIES = $(gl_LIBOBJS) + EXTRA_lib_libbison_a_SOURCES = ++$(lib_libbison_a_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) ++$(gl_LIBOBJS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) + + lib_libbison_a_CPPFLAGS = $(AM_CPPFLAGS) -DDEFAULT_TEXT_DOMAIN=\"bison-gnulib\" + +diff --git a/src/local.mk b/src/local.mk +index 61dc573..b5b9079 100644 +--- a/src/local.mk ++++ b/src/local.mk +@@ -24,6 +24,7 @@ if RELOCATABLE_VIA_LD + src_bison_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)` + endif + ++$(src_bison_OBJECTS): $(BUILT_SOURCES) $(MOSTLYCLEANFILES:%.h) + src_bison_CFLAGS = $(AM_CFLAGS) $(WERROR_CFLAGS) + src_bison_SOURCES = \ + src/AnnotationList.c \ +-- +2.17.1 + diff --git a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb b/poky/meta/recipes-devtools/bison/bison_3.5.4.bb index 59c34f729..124bc41d3 100644 --- a/poky/meta/recipes-devtools/bison/bison_3.5.4.bb +++ b/poky/meta/recipes-devtools/bison/bison_3.5.4.bb @@ -12,6 +12,7 @@ DEPENDS = "bison-native flex-native" SRC_URI = "${GNU_MIRROR}/bison/bison-${PV}.tar.xz \ file://dont-depend-on-help2man.patch.patch \ file://add-with-bisonlocaledir.patch \ + file://0001-bison-fix-the-parallel-build.patch \ " SRC_URI[sha256sum] = "4c17e99881978fa32c05933c5262457fa5b2b611668454f8dc2a695cd6b3720c" diff --git a/poky/meta/recipes-devtools/file/file_5.38.bb b/poky/meta/recipes-devtools/file/file_5.38.bb index 007db4790..48cf8ab54 100644 --- a/poky/meta/recipes-devtools/file/file_5.38.bb +++ b/poky/meta/recipes-devtools/file/file_5.38.bb @@ -9,7 +9,7 @@ LICENSE = "BSD-2-Clause" LIC_FILES_CHKSUM = "file://COPYING;beginline=2;md5=0251eaec1188b20d9a72c502ecfdda1b" DEPENDS = "file-replacement-native" -DEPENDS_class-native = "" +DEPENDS_class-native = "bzip2-replacement-native" SRC_URI = "git://github.com/file/file.git" diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc index 245f0a6fd..a3de91a2c 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-10.1.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1.inc @@ -65,7 +65,7 @@ SRC_URI = "\ file://0035-gentypes-genmodes-Do-not-use-__LINE__-for-maintainin.patch \ file://0036-Enable-CET-in-cross-compiler-if-possible.patch \ file://0037-mingw32-Enable-operation_not_supported.patch \ - file://0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch \ + file://0038-libatomic-Do-not-enforce-march-on-aarch64.patch \ " SRC_URI[sha256sum] = "b6898a23844b656f1b68691c5c012036c2e694ac4b53a8918d4712ad876e7ea2" @@ -87,7 +87,6 @@ EXTRA_OECONF_BASE = "\ ${SSP} \ --enable-libitm \ --disable-bootstrap \ - --disable-libmudflap \ --with-system-zlib \ ${@'--with-linker-hash-style=${LINKER_HASH_STYLE}' if '${LINKER_HASH_STYLE}' else ''} \ --enable-linker-build-id \ @@ -99,7 +98,6 @@ EXTRA_OECONF_BASE = "\ " EXTRA_OECONF_INITIAL = "\ - --disable-libmudflap \ --disable-libgomp \ --disable-libitm \ --disable-libquadmath \ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch deleted file mode 100644 index fc9228277..000000000 --- a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-Revert-AArch64-Use-__getauxval-instead-of-getauxval-.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 2101fb718935c7cf1cc2ad201bdeb1e635b54b0a Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Mon, 11 May 2020 11:03:41 -0700 -Subject: [PATCH] Revert "[AArch64] Use __getauxval instead of getauxval in LSE - detection code in libgcc" - -This reverts commit 5a57016dd2758cc63a544f191f77635342397a72. - -Upstream-Status: Pending -Signed-off-by: Khem Raj ---- - libgcc/config/aarch64/lse-init.c | 17 ++++++++--------- - 1 file changed, 8 insertions(+), 9 deletions(-) - -diff --git a/libgcc/config/aarch64/lse-init.c b/libgcc/config/aarch64/lse-init.c -index 00e9ab8cd1c..74acef25cce 100644 ---- a/libgcc/config/aarch64/lse-init.c -+++ b/libgcc/config/aarch64/lse-init.c -@@ -29,20 +29,19 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see - _Bool __aarch64_have_lse_atomics - __attribute__((visibility("hidden"), nocommon)); - --/* Gate availability of __getauxval on glibc. All AArch64-supporting glibc -- versions support it. */ --#ifdef __gnu_linux__ -+/* Disable initialization of __aarch64_have_lse_atomics during bootstrap. */ -+#if !defined(inhibit_libc) && defined(HAVE_SYS_AUXV_H) -+# include - --# define AT_HWCAP 16 --# define HWCAP_ATOMICS (1 << 8) -- --unsigned long int __getauxval (unsigned long int); -+/* Disable initialization if the system headers are too old. */ -+# if defined(AT_HWCAP) && defined(HWCAP_ATOMICS) - - static void __attribute__((constructor)) - init_have_lse_atomics (void) - { -- unsigned long hwcap = __getauxval (AT_HWCAP); -+ unsigned long hwcap = getauxval (AT_HWCAP); - __aarch64_have_lse_atomics = (hwcap & HWCAP_ATOMICS) != 0; - } - --#endif /* __gnu_linux__ */ -+# endif /* HWCAP */ -+#endif /* inhibit_libc */ diff --git a/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch new file mode 100644 index 000000000..3946acea1 --- /dev/null +++ b/poky/meta/recipes-devtools/gcc/gcc-10.1/0038-libatomic-Do-not-enforce-march-on-aarch64.patch @@ -0,0 +1,42 @@ +From 38d262bfe7c0c894c364dc6e4dc7971e78a73974 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Wed, 13 May 2020 15:10:38 -0700 +Subject: [PATCH] libatomic: Do not enforce march on aarch64 + +OE passes the right options via gcc compiler cmdline via TUNE_CCARGS +this can conflict between -mcpu settings and -march setting here, since +-mcpu will translate into an appropriate -march, lets depend on that +instead of setting it explicitly + +Upstream-Status: Inappropriate [OE-Specific] + +Signed-off-by: Khem Raj +--- + libatomic/Makefile.am | 1 - + libatomic/Makefile.in | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/libatomic/Makefile.am b/libatomic/Makefile.am +index 133fbbca77e..ac1ca645876 100644 +--- a/libatomic/Makefile.am ++++ b/libatomic/Makefile.am +@@ -125,7 +125,6 @@ libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix _$(s)_.lo,$(SIZEOBJS))) + ## On a target-specific basis, include alternates to be selected by IFUNC. + if HAVE_IFUNC + if ARCH_AARCH64_LINUX +-IFUNC_OPTIONS = -march=armv8-a+lse + libatomic_la_LIBADD += $(foreach s,$(SIZES),$(addsuffix _$(s)_1_.lo,$(SIZEOBJS))) + endif + if ARCH_ARM_LINUX +diff --git a/libatomic/Makefile.in b/libatomic/Makefile.in +index a51807e95c9..97df2d7ff03 100644 +--- a/libatomic/Makefile.in ++++ b/libatomic/Makefile.in +@@ -431,7 +431,6 @@ M_SRC = $(firstword $(filter %/$(M_FILE), $(all_c_files))) + libatomic_la_LIBADD = $(foreach s,$(SIZES),$(addsuffix \ + _$(s)_.lo,$(SIZEOBJS))) $(am__append_1) $(am__append_2) \ + $(am__append_3) $(am__append_4) +-@ARCH_AARCH64_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv8-a+lse + @ARCH_ARM_LINUX_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=armv7-a+fp -DHAVE_KERNEL64 + @ARCH_I386_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -march=i586 + @ARCH_X86_64_TRUE@@HAVE_IFUNC_TRUE@IFUNC_OPTIONS = -mcx16 diff --git a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc index 38c167287..df1432e68 100644 --- a/poky/meta/recipes-devtools/gcc/gcc-runtime.inc +++ b/poky/meta/recipes-devtools/gcc/gcc-runtime.inc @@ -18,10 +18,6 @@ EXTRA_OECONF_append_linuxstdbase = " --enable-clocale=gnu" EXTRA_OECONF_append = " --cache-file=${B}/config.cache" EXTRA_OECONF_append_libc-newlib = " --with-newlib" -# cortex-a55 is ARMv8.2-a based but libatomic explicitly asks for -march=armv8.1-a -# which caused -march conflicts in gcc -TUNE_CCARGS_remove = "-mcpu=cortex-a55+crc -mcpu=cortex-a55 -mcpu=cortex-a55+crc+crypto" - # Disable ifuncs for libatomic on arm conflicts -march/-mcpu EXTRA_OECONF_append_arm = " libat_cv_have_ifunc=no " EXTRA_OECONF_append_armeb = " libat_cv_have_ifunc=no " @@ -51,7 +47,6 @@ RUNTIMETARGET = "${RUNTIMELIBSSP} libstdc++-v3 libgomp libatomic ${RUNTIMELIBITM RUNTIMETARGET_libc-newlib = "libstdc++-v3" # libiberty -# libmudflap # libgfortran needs separate recipe due to libquadmath dependency SLIB = "${TMPDIR}/work-shared/gcc-${PV}-${PR}/gcc-${PV}" @@ -171,9 +166,6 @@ PACKAGES = "\ libssp \ libssp-dev \ libssp-staticdev \ - libmudflap \ - libmudflap-dev \ - libmudflap-staticdev \ libquadmath \ libquadmath-dev \ libquadmath-staticdev \ @@ -246,17 +238,6 @@ SUMMARY_libquadmath-dev = "GNU quad-precision math library - development files" FILES_libquadmath-staticdev = "${libdir}/libquadmath.a" SUMMARY_libquadmath-staticdev = "GNU quad-precision math library - static development files" -# NOTE: mudflap has been removed as of gcc 4.9 and has been superseded by the address sanitiser -FILES_libmudflap = "${libdir}/libmudflap*.so.*" -SUMMARY_libmudflap = "Pointer debugging library for gcc" -FILES_libmudflap-dev = "\ - ${libdir}/libmudflap*.so \ - ${libdir}/libmudflap.la \ -" -SUMMARY_libmudflap-dev = "Pointer debugging library for gcc - development files" -FILES_libmudflap-staticdev = "${libdir}/libmudflap.a" -SUMMARY_libmudflap-staticdev = "Pointer debugging library for gcc - static development files" - FILES_libgomp = "${libdir}/libgomp*${SOLIBS}" SUMMARY_libgomp = "GNU OpenMP parallel programming library" FILES_libgomp-dev = "\ diff --git a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb index ebad0ec60..31295edf9 100644 --- a/poky/meta/recipes-devtools/glide/glide_0.13.3.bb +++ b/poky/meta/recipes-devtools/glide/glide_0.13.3.bb @@ -9,6 +9,10 @@ SRCREV = "8ed5b9292379d86c39592a7e6a58eb9c903877cf" inherit go +# New Go versions has Go modules support enabled by default and cause the Glide +# tool build to fail. +export GO111MODULE = "off" + RDEPENDS_${PN}-dev += "bash" RDEPENDS_${PN}-ptest += "bash" diff --git a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb index 615cb289e..496224a5c 100644 --- a/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb +++ b/poky/meta/recipes-devtools/go/go-dep_0.5.4.bb @@ -13,6 +13,10 @@ SRCREV = "1f7c19e5f52f49ffb9f956f64c010be14683468b" inherit go +# New Go versions has Go modules support enabled by default and cause the Glide +# tool build to fail. +export GO111MODULE = "off" + GO_INSTALL = "${GO_IMPORT}/cmd/dep" RDEPENDS_${PN}-dev += "bash" diff --git a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch index 464ccc4ca..138ff9de7 100644 --- a/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch +++ b/poky/meta/recipes-devtools/mtools/mtools/disable-hardcoded-configs.patch @@ -1,4 +1,4 @@ -From 5c24356762bc4274d3ca4930b0bc7754f4ffd19b Mon Sep 17 00:00:00 2001 +From fa6ebd96c7f330edcd74abf61584592eabb9e726 Mon Sep 17 00:00:00 2001 From: Ed Bartosh Date: Tue, 13 Jun 2017 14:55:52 +0300 Subject: [PATCH] Disabled reading host configs. @@ -12,10 +12,10 @@ Signed-off-by: Ed Bartosh 1 file changed, 8 deletions(-) diff --git a/config.c b/config.c -index f086883..1c3f9bd 100644 +index 265d494..15e64dd 100644 --- a/config.c +++ b/config.c -@@ -701,14 +701,6 @@ void read_config(void) +@@ -740,14 +740,6 @@ void read_config(void) memcpy(devices, const_devices, nr_const_devices*sizeof(struct device)); diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb deleted file mode 100644 index 2093d80db..000000000 --- a/poky/meta/recipes-devtools/mtools/mtools_4.0.23.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Utilities to access MS-DOS disks without mounting them" -DESCRIPTION = "Mtools is a collection of utilities to access MS-DOS disks from GNU and Unix without mounting them." -HOMEPAGE = "http://www.gnu.org/software/mtools/" -SECTION = "optional" -LICENSE = "GPLv3" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -DEPENDS += "virtual/libiconv" - -RDEPENDS_${PN}_libc-glibc = "glibc-gconv-ibm850" -RRECOMMENDS_${PN}_libc-glibc = "\ - glibc-gconv-ibm437 \ - glibc-gconv-ibm737 \ - glibc-gconv-ibm775 \ - glibc-gconv-ibm851 \ - glibc-gconv-ibm852 \ - glibc-gconv-ibm855 \ - glibc-gconv-ibm857 \ - glibc-gconv-ibm860 \ - glibc-gconv-ibm861 \ - glibc-gconv-ibm862 \ - glibc-gconv-ibm863 \ - glibc-gconv-ibm865 \ - glibc-gconv-ibm866 \ - glibc-gconv-ibm869 \ - " -SRC_URI[md5sum] = "1d17b58c53a46b29c7f521d4a55ccef1" -SRC_URI[sha256sum] = "f188db26751aeb5692a79b2380b440ecc05fd1848a52f869d7ca1193f2ef8ee3" - -SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \ - file://mtools-makeinfo.patch \ - file://no-x11.gplv3.patch \ - file://clang_UNUSED.patch \ - " - -SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch" - -inherit autotools texinfo features_check - -EXTRA_OECONF = "--without-x" - -BBCLASSEXTEND = "native nativesdk" - -PACKAGECONFIG ??= "" -PACKAGECONFIG[libbsd] = "ac_cv_lib_bsd_main=yes,ac_cv_lib_bsd_main=no,libbsd" - -do_install_prepend () { - # Create bindir to fix parallel installation issues - mkdir -p ${D}/${bindir} - mkdir -p ${D}/${datadir} -} diff --git a/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb new file mode 100644 index 000000000..d7cc72d17 --- /dev/null +++ b/poky/meta/recipes-devtools/mtools/mtools_4.0.24.bb @@ -0,0 +1,51 @@ +SUMMARY = "Utilities to access MS-DOS disks without mounting them" +DESCRIPTION = "Mtools is a collection of utilities to access MS-DOS disks from GNU and Unix without mounting them." +HOMEPAGE = "http://www.gnu.org/software/mtools/" +SECTION = "optional" +LICENSE = "GPLv3" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +DEPENDS += "virtual/libiconv" + +RDEPENDS_${PN}_libc-glibc = "glibc-gconv-ibm850" +RRECOMMENDS_${PN}_libc-glibc = "\ + glibc-gconv-ibm437 \ + glibc-gconv-ibm737 \ + glibc-gconv-ibm775 \ + glibc-gconv-ibm851 \ + glibc-gconv-ibm852 \ + glibc-gconv-ibm855 \ + glibc-gconv-ibm857 \ + glibc-gconv-ibm860 \ + glibc-gconv-ibm861 \ + glibc-gconv-ibm862 \ + glibc-gconv-ibm863 \ + glibc-gconv-ibm865 \ + glibc-gconv-ibm866 \ + glibc-gconv-ibm869 \ + " +SRC_URI[md5sum] = "aeaf34406e9d28922b7c09a35ca5955e" +SRC_URI[sha256sum] = "24f4a2da9219f98498eb1b340cd96db7ef9b684c067d1bdeb6e85efdd13b2fb9" + +SRC_URI = "${GNU_MIRROR}/mtools/mtools-${PV}.tar.bz2 \ + file://mtools-makeinfo.patch \ + file://no-x11.gplv3.patch \ + file://clang_UNUSED.patch \ + " + +SRC_URI_append_class-native = " file://disable-hardcoded-configs.patch" + +inherit autotools texinfo features_check + +EXTRA_OECONF = "--without-x" + +BBCLASSEXTEND = "native nativesdk" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[libbsd] = "ac_cv_lib_bsd_main=yes,ac_cv_lib_bsd_main=no,libbsd" + +do_install_prepend () { + # Create bindir to fix parallel installation issues + mkdir -p ${D}/${bindir} + mkdir -p ${D}/${datadir} +} diff --git a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb b/poky/meta/recipes-devtools/perl/perl_5.30.2.bb index 778c420b2..26138ea9e 100644 --- a/poky/meta/recipes-devtools/perl/perl_5.30.2.bb +++ b/poky/meta/recipes-devtools/perl/perl_5.30.2.bb @@ -328,7 +328,7 @@ python split_perl_packages () { python() { if d.getVar('CLASSOVERRIDE') == "class-target": - d.setVar("PACKAGES_DYNAMIC", "^perl-module-.*(?\d+(\.\d+)+)\.tar" diff --git a/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch new file mode 100644 index 000000000..ca7ffed93 --- /dev/null +++ b/poky/meta/recipes-devtools/qemu/qemu/CVE-2020-11869.patch @@ -0,0 +1,97 @@ +From ac2071c3791b67fc7af78b8ceb320c01ca1b5df7 Mon Sep 17 00:00:00 2001 +From: BALATON Zoltan +Date: Mon, 6 Apr 2020 22:34:26 +0200 +Subject: [PATCH] ati-vga: Fix checks in ati_2d_blt() to avoid crash + +In some corner cases (that never happen during normal operation but a +malicious guest could program wrong values) pixman functions were +called with parameters that result in a crash. Fix this and add more +checks to disallow such cases. + +Reported-by: Ziming Zhang +Signed-off-by: BALATON Zoltan +Message-id: 20200406204029.19559747D5D@zero.eik.bme.hu +Signed-off-by: Gerd Hoffmann + +Upstream-Status: Backport [https://git.qemu.org/?p=qemu.git;a=commit;h=ac2071c3791b67fc7af78b8ceb320c01ca1b5df7] +CVE: CVE-2020-11869 +Signed-off-by: Lee Chee Yang +--- + hw/display/ati_2d.c | 37 ++++++++++++++++++++++++++----------- + 1 file changed, 26 insertions(+), 11 deletions(-) + +diff --git a/hw/display/ati_2d.c b/hw/display/ati_2d.c +index 42e8231..23a8ae0 100644 +--- a/hw/display/ati_2d.c ++++ b/hw/display/ati_2d.c +@@ -53,12 +53,20 @@ void ati_2d_blt(ATIVGAState *s) + s->vga.vbe_start_addr, surface_data(ds), surface_stride(ds), + surface_bits_per_pixel(ds), + (s->regs.dp_mix & GMC_ROP3_MASK) >> 16); +- int dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? +- s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width); +- int dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? +- s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height); ++ unsigned dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ s->regs.dst_x : s->regs.dst_x + 1 - s->regs.dst_width); ++ unsigned dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ s->regs.dst_y : s->regs.dst_y + 1 - s->regs.dst_height); + int bpp = ati_bpp_from_datatype(s); ++ if (!bpp) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Invalid bpp\n"); ++ return; ++ } + int dst_stride = DEFAULT_CNTL ? s->regs.dst_pitch : s->regs.default_pitch; ++ if (!dst_stride) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Zero dest pitch\n"); ++ return; ++ } + uint8_t *dst_bits = s->vga.vram_ptr + (DEFAULT_CNTL ? + s->regs.dst_offset : s->regs.default_offset); + +@@ -82,12 +90,16 @@ void ati_2d_blt(ATIVGAState *s) + switch (s->regs.dp_mix & GMC_ROP3_MASK) { + case ROP3_SRCCOPY: + { +- int src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? +- s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width); +- int src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? +- s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height); ++ unsigned src_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ s->regs.src_x : s->regs.src_x + 1 - s->regs.dst_width); ++ unsigned src_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ s->regs.src_y : s->regs.src_y + 1 - s->regs.dst_height); + int src_stride = DEFAULT_CNTL ? + s->regs.src_pitch : s->regs.default_pitch; ++ if (!src_stride) { ++ qemu_log_mask(LOG_GUEST_ERROR, "Zero source pitch\n"); ++ return; ++ } + uint8_t *src_bits = s->vga.vram_ptr + (DEFAULT_CNTL ? + s->regs.src_offset : s->regs.default_offset); + +@@ -137,8 +149,10 @@ void ati_2d_blt(ATIVGAState *s) + dst_y * surface_stride(ds), + s->regs.dst_height * surface_stride(ds)); + } +- s->regs.dst_x += s->regs.dst_width; +- s->regs.dst_y += s->regs.dst_height; ++ s->regs.dst_x = (s->regs.dp_cntl & DST_X_LEFT_TO_RIGHT ? ++ dst_x + s->regs.dst_width : dst_x); ++ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ dst_y + s->regs.dst_height : dst_y); + break; + } + case ROP3_PATCOPY: +@@ -179,7 +193,8 @@ void ati_2d_blt(ATIVGAState *s) + dst_y * surface_stride(ds), + s->regs.dst_height * surface_stride(ds)); + } +- s->regs.dst_y += s->regs.dst_height; ++ s->regs.dst_y = (s->regs.dp_cntl & DST_Y_TOP_TO_BOTTOM ? ++ dst_y + s->regs.dst_height : dst_y); + break; + } + default: +-- +1.8.3.1 diff --git a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb b/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb index f0c1daabe..a4018cc44 100644 --- a/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb +++ b/poky/meta/recipes-devtools/qemu/qemu_4.2.0.bb @@ -21,5 +21,8 @@ do_install_append_class-nativesdk() { PACKAGECONFIG ??= " \ fdt sdl kvm \ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa xen', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \ +" +PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'virglrenderer glx', '' ,d)} \ " -PACKAGECONFIG_class-nativesdk ??= "fdt sdl kvm" diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb b/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb deleted file mode 100644 index 7f0708049..000000000 --- a/poky/meta/recipes-devtools/ruby/ruby_2.7.0.bb +++ /dev/null @@ -1,92 +0,0 @@ -require ruby.inc - -DEPENDS_append_libc-musl = " libucontext" - -SRC_URI += " \ - file://remove_has_include_macros.patch \ - file://run-ptest \ - file://0001-Modify-shebang-of-libexec-y2racc-and-libexec-racc2y.patch \ - " - -SRC_URI[md5sum] = "bf4a54e8231176e109a42c546b4725a9" -SRC_URI[sha256sum] = "8c99aa93b5e2f1bc8437d1bbbefd27b13e7694025331f77245d0c068ef1f8cbe" - -PACKAGECONFIG ??= "" -PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" - -PACKAGECONFIG[valgrind] = "--with-valgrind=yes, --with-valgrind=no, valgrind" -PACKAGECONFIG[gmp] = "--with-gmp=yes, --with-gmp=no, gmp" -PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6," - -EXTRA_OECONF = "\ - --disable-versioned-paths \ - --disable-rpath \ - --disable-dtrace \ - --enable-shared \ - --enable-load-relative \ - --with-pkg-config=pkg-config \ -" - -EXTRA_OECONF_append_libc-musl = "\ - LIBS='-lucontext' \ - ac_cv_func_isnan=yes \ - ac_cv_func_isinf=yes \ -" - -do_install() { - oe_runmake 'DESTDIR=${D}' install -} - -do_install_append_class-target () { - # Find out rbconfig.rb from .installed.list - rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list` - # Remove build host directories - sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \ - -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \ - -e 's|${DEBUG_PREFIX_MAP}||g' \ - -e 's:${HOSTTOOLS_DIR}/::g' \ - -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ - -e 's:${RECIPE_SYSROOT}::g' \ - -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ - ${D}$rbconfig_rb -} - -do_install_ptest () { - cp -rf ${S}/test ${D}${PTEST_PATH}/ - - install -D ${S}/tool/test/runner.rb ${D}${PTEST_PATH}/tool/test/runner.rb - cp -r ${S}/tool/lib ${D}${PTEST_PATH}/tool/ - mkdir -p ${D}${PTEST_PATH}/lib - cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib - - # install test-binaries - find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ - | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ - | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - - # adjust path to not assume build directory layout - sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ - -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb - - cp -r ${S}/include ${D}/${libdir}/ruby/ - test_case_rb=`grep rubygems/test_case.rb ${B}/.installed.list` - sed -i -e 's:../../../test/:../../../ptest/test/:g' ${D}/$test_case_rb -} - -PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc" - -SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library" -RDEPENDS_${PN}-ri-docs = "${PN}" -FILES_${PN}-ri-docs += "${datadir}/ri" - -SUMMARY_${PN}-rdoc = "RDoc documentation generator from Ruby source" -RDEPENDS_${PN}-rdoc = "${PN}" -FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc" - -FILES_${PN} += "${datadir}/rubygems" - -FILES_${PN}-ptest_append_class-target = "\ - ${libdir}/ruby/include \ - ${libdir}/ruby/${SHRT_VER}.0/*/-test- \ -" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb b/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb new file mode 100644 index 000000000..3dd9fb0a6 --- /dev/null +++ b/poky/meta/recipes-devtools/ruby/ruby_2.7.1.bb @@ -0,0 +1,92 @@ +require ruby.inc + +DEPENDS_append_libc-musl = " libucontext" + +SRC_URI += " \ + file://remove_has_include_macros.patch \ + file://run-ptest \ + file://0001-Modify-shebang-of-libexec-y2racc-and-libexec-racc2y.patch \ + " + +SRC_URI[md5sum] = "debb9c325bf65021214451660f46e909" +SRC_URI[sha256sum] = "d418483bdd0000576c1370571121a6eb24582116db0b7bb2005e90e250eae418" + +PACKAGECONFIG ??= "" +PACKAGECONFIG += "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" + +PACKAGECONFIG[valgrind] = "--with-valgrind=yes, --with-valgrind=no, valgrind" +PACKAGECONFIG[gmp] = "--with-gmp=yes, --with-gmp=no, gmp" +PACKAGECONFIG[ipv6] = "--enable-ipv6, --disable-ipv6," + +EXTRA_OECONF = "\ + --disable-versioned-paths \ + --disable-rpath \ + --disable-dtrace \ + --enable-shared \ + --enable-load-relative \ + --with-pkg-config=pkg-config \ +" + +EXTRA_OECONF_append_libc-musl = "\ + LIBS='-lucontext' \ + ac_cv_func_isnan=yes \ + ac_cv_func_isinf=yes \ +" + +do_install() { + oe_runmake 'DESTDIR=${D}' install +} + +do_install_append_class-target () { + # Find out rbconfig.rb from .installed.list + rbconfig_rb=`grep rbconfig.rb ${B}/.installed.list` + # Remove build host directories + sed -i -e 's:--sysroot=${STAGING_DIR_TARGET}::g' \ + -e s:'--with-libtool-sysroot=${STAGING_DIR_TARGET}'::g \ + -e 's|${DEBUG_PREFIX_MAP}||g' \ + -e 's:${HOSTTOOLS_DIR}/::g' \ + -e 's:${RECIPE_SYSROOT_NATIVE}::g' \ + -e 's:${RECIPE_SYSROOT}::g' \ + -e 's:${BASE_WORKDIR}/${MULTIMACH_TARGET_SYS}::g' \ + ${D}$rbconfig_rb +} + +do_install_ptest () { + cp -rf ${S}/test ${D}${PTEST_PATH}/ + + install -D ${S}/tool/test/runner.rb ${D}${PTEST_PATH}/tool/test/runner.rb + cp -r ${S}/tool/lib ${D}${PTEST_PATH}/tool/ + mkdir -p ${D}${PTEST_PATH}/lib + cp -r ${S}/lib/did_you_mean ${S}/lib/rdoc ${D}${PTEST_PATH}/lib + + # install test-binaries + find $(find ./.ext -path '*/-test-') -name '*.so' -print0 \ + | tar --no-recursion --null -T - --no-same-owner --preserve-permissions -cf - \ + | tar -C ${D}${libdir}/ruby/${SHRT_VER}.0/ --no-same-owner --preserve-permissions --strip-components=2 -xf - + # adjust path to not assume build directory layout + sed -e 's|File.expand_path(.*\.\./bin/erb[^)]*|File.expand_path("${bindir}/erb"|g' \ + -i ${D}${PTEST_PATH}/test/erb/test_erb_command.rb + + cp -r ${S}/include ${D}/${libdir}/ruby/ + test_case_rb=`grep rubygems/test_case.rb ${B}/.installed.list` + sed -i -e 's:../../../test/:../../../ptest/test/:g' ${D}/$test_case_rb +} + +PACKAGES =+ "${PN}-ri-docs ${PN}-rdoc" + +SUMMARY_${PN}-ri-docs = "ri (Ruby Interactive) documentation for the Ruby standard library" +RDEPENDS_${PN}-ri-docs = "${PN}" +FILES_${PN}-ri-docs += "${datadir}/ri" + +SUMMARY_${PN}-rdoc = "RDoc documentation generator from Ruby source" +RDEPENDS_${PN}-rdoc = "${PN}" +FILES_${PN}-rdoc += "${libdir}/ruby/*/rdoc ${bindir}/rdoc" + +FILES_${PN} += "${datadir}/rubygems" + +FILES_${PN}-ptest_append_class-target = "\ + ${libdir}/ruby/include \ + ${libdir}/ruby/${SHRT_VER}.0/*/-test- \ +" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch b/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch new file mode 100644 index 000000000..fc881862e --- /dev/null +++ b/poky/meta/recipes-devtools/squashfs-tools/files/0001-squashfs-tools-fix-build-failure-against-gcc-10.patch @@ -0,0 +1,45 @@ +From 94e1911ca24726b7cb3efe2f8b9eb7a784757e18 Mon Sep 17 00:00:00 2001 +From: Sergei Trofimovich +Date: Sun, 26 Jan 2020 18:35:13 +0000 +Subject: [PATCH] squashfs-tools: fix build failure against gcc-10 +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +On gcc-10 (and gcc-9 -fno-common) build fails as: + +``` +cc ... -o mksquashfs +ld: read_fs.o:(.bss+0x0): + multiple definition of `fwriter_buffer'; mksquashfs.o:(.bss+0x400c90): first defined here +ld: read_fs.o:(.bss+0x8): + multiple definition of `bwriter_buffer'; mksquashfs.o:(.bss+0x400c98): first defined here +``` + +gcc-10 will change the default from -fcommon to fno-common: +https://gcc.gnu.org/PR85678. + +The error also happens if CFLAGS=-fno-common passed explicitly. + +Reported-by: Toralf Förster +Bug: https://bugs.gentoo.org/706456 +Signed-off-by: Sergei Trofimovich +Signed-off-by: Jacob Kroon +Upstream-Status: Backport [https://github.com/plougher/squashfs-tools/commit/fe2f5da4b0f8994169c53e84b7cb8a0feefc97b5] +--- + squashfs-tools/mksquashfs.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/squashfs-tools/mksquashfs.h b/squashfs-tools/mksquashfs.h +index 1beefef..b650306 100644 +--- a/squashfs-tools/mksquashfs.h ++++ b/squashfs-tools/mksquashfs.h +@@ -143,7 +143,7 @@ struct append_file { + #endif + + extern struct cache *reader_buffer, *fragment_buffer, *reserve_cache; +-struct cache *bwriter_buffer, *fwriter_buffer; ++extern struct cache *bwriter_buffer, *fwriter_buffer; + extern struct queue *to_reader, *to_deflate, *to_writer, *from_writer, + *to_frag, *locked_fragment, *to_process_frag; + extern struct append_file **file_mapping; diff --git a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb index 9bcf026ce..b06951df3 100644 --- a/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb +++ b/poky/meta/recipes-devtools/squashfs-tools/squashfs-tools_git.bb @@ -8,6 +8,7 @@ LIC_FILES_CHKSUM = "file://../COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" PV = "4.4" SRCREV = "52eb4c279cd283ed9802dd1ceb686560b22ffb67" SRC_URI = "git://github.com/plougher/squashfs-tools.git;protocol=https \ + file://0001-squashfs-tools-fix-build-failure-against-gcc-10.patch;striplevel=2 \ " S = "${WORKDIR}/git/squashfs-tools" diff --git a/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch b/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch new file mode 100644 index 000000000..44cb15327 --- /dev/null +++ b/poky/meta/recipes-devtools/syslinux/syslinux/0010-Workaround-multiple-definition-of-symbol-errors.patch @@ -0,0 +1,97 @@ +From 951928f2cad5682c2844e6bd0f7201236c5d9b66 Mon Sep 17 00:00:00 2001 +From: Merlin Mathesius +Date: Wed, 13 May 2020 08:02:27 -0500 +Subject: [PATCH] Workaround multiple definition of symbol errors + +Lifted from Fedora https://src.fedoraproject.org/rpms/syslinux/blob/master/f/0005-Workaround-multiple-definition-of-symbol-errors.patch + +Upstream-Status: Pending +Signed-off-by: Khem Raj + +--- + com32/cmenu/Makefile | 2 +- + com32/elflink/ldlinux/Makefile | 2 +- + com32/gpllib/Makefile | 2 +- + com32/hdt/Makefile | 2 +- + core/Makefile | 2 +- + dos/Makefile | 2 +- + efi/Makefile | 2 +- + 7 files changed, 7 insertions(+), 7 deletions(-) + +--- a/com32/cmenu/Makefile ++++ b/com32/cmenu/Makefile +@@ -49,7 +49,7 @@ makeoutputdirs: + @mkdir -p $(OBJ)/libmenu + + libmenu/libmenu.elf: $(LIBMENU) +- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) \ ++ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) \ + -o $@ $^ + + tidy dist: +--- a/com32/elflink/ldlinux/Makefile ++++ b/com32/elflink/ldlinux/Makefile +@@ -33,7 +33,7 @@ endif + all: $(BTARGET) ldlinux_lnx.a + + ldlinux.elf : $(OBJS) +- $(LD) $(LDFLAGS) -soname $(SONAME) -o $@ $^ $(LIBS) ++ $(LD) $(LDFLAGS) -z muldefs -soname $(SONAME) -o $@ $^ $(LIBS) + + LNXCFLAGS += -D__export='__attribute__((visibility("default")))' + LNXLIBOBJS = get_key.lo +--- a/com32/gpllib/Makefile ++++ b/com32/gpllib/Makefile +@@ -24,7 +24,7 @@ makeoutputdirs: + $(addprefix $(OBJ),$(sort $(dir $(LIBOBJS)))),$(b)) + + libgpl.elf : $(LIBOBJS) +- $(LD) -shared $(LDFLAGS) -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ ++ $(LD) -shared $(LDFLAGS) -z muldefs -soname $(patsubst %.elf,%.c32,$(@F)) -o $@ $^ + + tidy dist clean: + find . \( -name \*.o -o -name .\*.d -o -name \*.tmp \) -print0 | \ +--- a/com32/hdt/Makefile ++++ b/com32/hdt/Makefile +@@ -52,7 +52,7 @@ QEMU ?= qemu-kvm + all: $(MODULES) $(TESTFILES) + + hdt.elf : $(OBJS) $(LIBS) $(C_LIBS) +- $(LD) $(LDFLAGS) -o $@ $^ ++ $(LD) $(LDFLAGS) -z muldefs -o $@ $^ + + memtest: + -[ ! -f $(FLOPPY_DIR)/$(MEMTEST) ] && $(WGET) $(MEMTEST_URL) -O $(FLOPPY_DIR)/$(MEMTEST) +--- a/core/Makefile ++++ b/core/Makefile +@@ -156,7 +156,7 @@ LDSCRIPT = $(SRC)/$(ARCH)/syslinux.ld + NASM_ELF = elf + + %.elf: %.o $(LIBDEP) $(LDSCRIPT) $(AUXLIBS) +- $(LD) $(LDFLAGS) -pie -Bsymbolic \ ++ $(LD) $(LDFLAGS) -z muldefs -pie -Bsymbolic \ + -T $(LDSCRIPT) \ + --unresolved-symbols=report-all \ + -E --hash-style=gnu -M -o $@ $< \ +--- a/dos/Makefile ++++ b/dos/Makefile +@@ -19,7 +19,7 @@ include $(MAKEDIR)/embedded.mk + CFLAGS += -D__MSDOS__ -mregparm=3 -DREGPARM=3 + # CFLAGS += -DDEBUG + +-LDFLAGS = -T $(SRC)/dosexe.ld ++LDFLAGS = -T $(SRC)/dosexe.ld -z muldefs + OPTFLAGS = -g + INCLUDES = -include code16.h -nostdinc -iwithprefix include \ + -I$(SRC) -I$(SRC)/.. -I$(SRC)/../libfat \ +--- a/efi/Makefile ++++ b/efi/Makefile +@@ -71,7 +71,7 @@ $(OBJS): | $(OBJ)/$(ARCH) + BTARGET = syslinux.efi + + syslinux.so: $(OBJS) $(CORE_OBJS) $(LIB_OBJS) +- $(LD) $(LDFLAGS) --strip-debug -o $@ $^ -lgnuefi -lefi ++ $(LD) $(LDFLAGS) -z muldefs --strip-debug -o $@ $^ -lgnuefi -lefi + + # We need to rename the .hash section because the EFI firmware + # linker really doesn't like it. diff --git a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb index e9dbefb93..3e7eef3a7 100644 --- a/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb +++ b/poky/meta/recipes-devtools/syslinux/syslinux_6.04-pre2.bb @@ -20,6 +20,7 @@ SRC_URI = "https://www.zytor.com/pub/syslinux/Testing/6.04/syslinux-${PV}.tar.xz file://0007-linux-syslinux-implement-ext_construct_sectmap_fs.patch \ file://0008-libinstaller-syslinuxext-implement-syslinux_patch_bo.patch \ file://0009-linux-syslinux-implement-install_bootblock.patch \ + file://0010-Workaround-multiple-definition-of-symbol-errors.patch \ file://0001-install-don-t-install-obsolete-file-com32.ld.patch \ " diff --git a/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch new file mode 100644 index 000000000..9afa7f6a5 --- /dev/null +++ b/poky/meta/recipes-devtools/valgrind/valgrind/0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch @@ -0,0 +1,144 @@ +From abbc0761fa0349d49b10dc8c0f10af6bc0578c40 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Tue, 12 May 2020 16:58:36 +0200 +Subject: [PATCH 1/2] gcc10 arm64 build needs __getauxval for linking with + libgcc + +Provide a new library libgcc-sup-.a that contains symbols +needed by libgcc. This needs to be linked after -lgcc to provide +any symbols missing which would normally be provided by glibc. +At the moment this only provides __getauxval on arm64 linux. + +https://bugs.kde.org/show_bug.cgi?id=421321 + +Signed-off-by: Khem Raj +Upstream-Status: Backport [https://sourceware.org/git/?p=valgrind.git;a=commit;h=abbc0761fa0349d49b10dc8c0f10af6bc0578c40] + +--- + Makefile.tool.am | 3 +- + coregrind/Makefile.am | 26 +++++++++++++++++ + coregrind/m_libgcc_sup.c | 61 ++++++++++++++++++++++++++++++++++++++++ + 3 files changed, 89 insertions(+), 1 deletion(-) + create mode 100644 coregrind/m_libgcc_sup.c + +diff --git a/Makefile.tool.am b/Makefile.tool.am +index cc2fa0ee6..2bf90de5d 100644 +--- a/Makefile.tool.am ++++ b/Makefile.tool.am +@@ -17,7 +17,8 @@ TOOL_DEPENDENCIES_@VGCONF_PLATFORM_SEC_CAPS@ = \ + endif + + +-TOOL_LDADD_COMMON = -lgcc ++TOOL_LDADD_COMMON = -lgcc \ ++ $(top_builddir)/coregrind/libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a + TOOL_LDADD_@VGCONF_PLATFORM_PRI_CAPS@ = \ + $(TOOL_DEPENDENCIES_@VGCONF_PLATFORM_PRI_CAPS@) $(TOOL_LDADD_COMMON) + if VGCONF_HAVE_PLATFORM_SEC +diff --git a/coregrind/Makefile.am b/coregrind/Makefile.am +index 6a1a925fb..1753fb633 100644 +--- a/coregrind/Makefile.am ++++ b/coregrind/Makefile.am +@@ -542,6 +542,32 @@ libcoregrind_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_DEPENDENCIES = \ + libnolto_coregrind-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a + endif + ++#---------------------------------------------------------------------------- ++# libgcc-sup-.a ++# Special supplemental library for functions normally supplied by glibc ++# used by libgcc. ++#---------------------------------------------------------------------------- ++ ++pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_PRI@-@VGCONF_OS@.a ++if VGCONF_HAVE_PLATFORM_SEC ++pkglib_LIBRARIES += libgcc-sup-@VGCONF_ARCH_SEC@-@VGCONF_OS@.a ++endif ++ ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_SOURCES = \ ++ m_libgcc_sup.c ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CPPFLAGS = \ ++ $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@) ++libgcc_sup_@VGCONF_ARCH_PRI@_@VGCONF_OS@_a_CFLAGS = \ ++ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_PRI_CAPS@) ++if VGCONF_HAVE_PLATFORM_SEC ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_SOURCES = \ ++ m_libgcc_sup.c ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CPPFLAGS = \ ++ $(AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@) ++libgcc_sup_@VGCONF_ARCH_SEC@_@VGCONF_OS@_a_CFLAGS = \ ++ $(AM_CFLAGS_PSO_@VGCONF_PLATFORM_SEC_CAPS@) ++endif ++ + #---------------------------------------------------------------------------- + # libreplacemalloc_toolpreload-.a + #---------------------------------------------------------------------------- +diff --git a/coregrind/m_libgcc_sup.c b/coregrind/m_libgcc_sup.c +new file mode 100644 +index 000000000..e29325459 +--- /dev/null ++++ b/coregrind/m_libgcc_sup.c +@@ -0,0 +1,61 @@ ++/* -*- mode: C; c-basic-offset: 3; -*- */ ++ ++/*--------------------------------------------------------------------*/ ++/*--- Supplemental functions for libgcc normally provided by glibc ---*/ ++/*--------------------------------------------------------------------*/ ++ ++/* ++ This file is part of Valgrind, a dynamic binary instrumentation ++ framework. ++ ++ Copyright (C) 2020 Mark Wielaard ++ mark@klomp.org ++ ++ This program is free software; you can redistribute it and/or ++ modify it under the terms of the GNU General Public License as ++ published by the Free Software Foundation; either version 2 of the ++ License, or (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, but ++ WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program; if not, see . ++ ++ The GNU General Public License is contained in the file COPYING. ++*/ ++ ++#include "config.h" ++#include "pub_core_basics.h" ++#include "pub_core_clientstate.h" ++ ++/*====================================================================*/ ++/*=== arm64 libgcc support function for init_have_lse_atomics ===*/ ++/*====================================================================*/ ++ ++#if defined(VGP_arm64_linux) ++struct auxv ++{ ++ Word a_type; ++ union { ++ void *a_ptr; ++ Word a_val; ++ } u; ++}; ++#define AT_NULL 0 ++ ++unsigned long int __getauxval (unsigned long int type); ++unsigned long int __getauxval (unsigned long int type) ++{ ++ struct auxv *p; ++ for (p = (struct auxv *) VG_(client_auxv); ++ p != NULL && p->a_type != AT_NULL; ++ p++) ++ if (p->a_type == type) ++ return p->u.a_val; ++ ++ return 0; ++} ++#endif +-- +2.26.2 + diff --git a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb index 7954437a1..a764d1817 100644 --- a/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb +++ b/poky/meta/recipes-devtools/valgrind/valgrind_3.15.0.bb @@ -42,6 +42,7 @@ SRC_URI = "https://sourceware.org/pub/valgrind/valgrind-${PV}.tar.bz2 \ file://0001-none-tests-fdleak_cmsg.stderr.exp-adjust-tmp-paths.patch \ file://0001-tests-Make-pthread_detatch-call-portable-across-plat.patch \ file://0001-memcheck-tests-Fix-timerfd-syscall-test.patch \ + file://0001-gcc10-arm64-build-needs-__getauxval-for-linking-with.patch \ " SRC_URI[md5sum] = "46e5fbdcbc3502a5976a317a0860a975" SRC_URI[sha256sum] = "417c7a9da8f60dd05698b3a7bc6002e4ef996f14c13f0ff96679a16873e78ab1" diff --git a/poky/meta/recipes-extended/acpica/acpica_20200214.bb b/poky/meta/recipes-extended/acpica/acpica_20200214.bb deleted file mode 100644 index cfa9fec4f..000000000 --- a/poky/meta/recipes-extended/acpica/acpica_20200214.bb +++ /dev/null @@ -1,49 +0,0 @@ -SUMMARY = "ACPICA tools for the development and debug of ACPI tables" -DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ -OS-independent reference implementation of the Advanced Configuration and \ -Power Interface Specification (ACPI). ACPICA code contains those portions of \ -ACPI meant to be directly integrated into the host OS as a kernel-resident \ -subsystem, and a small set of tools to assist in developing and debugging \ -ACPI tables." - -HOMEPAGE = "http://www.acpica.org/" -SECTION = "console/tools" - -LICENSE = "Intel | BSD | GPLv2" -LIC_FILES_CHKSUM = "file://source/compiler/aslcompile.c;beginline=7;endline=150;md5=6adbcb81e9ee6ae50c569b94fe12f7c5" - -COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" - -DEPENDS = "m4-native flex-native bison-native" - -SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz" -SRC_URI[md5sum] = "3505ba6170b77db1399eae0e2a959113" -SRC_URI[sha256sum] = "e77ab9f8557ca104f6e8f49efaa8eead29f78ca11cadfc8989012469ecc0738e" -UPSTREAM_CHECK_URI = "https://acpica.org/downloads" - -S = "${WORKDIR}/acpica-unix-${PV}" - -inherit update-alternatives - -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "acpixtract acpidump" - -EXTRA_OEMAKE = "CC='${CC}' \ - OPT_CFLAGS=-Wall \ - DESTDIR=${D} \ - PREFIX=${prefix} \ - INSTALLDIR=${bindir} \ - INSTALLFLAGS= \ - " - -do_install() { - oe_runmake install -} - -# iasl*.bb is a subset of this recipe, so RREPLACE it -PROVIDES = "iasl" -RPROVIDES_${PN} += "iasl" -RREPLACES_${PN} += "iasl" -RCONFLICTS_${PN} += "iasl" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/acpica/acpica_20200430.bb b/poky/meta/recipes-extended/acpica/acpica_20200430.bb new file mode 100644 index 000000000..478be7f56 --- /dev/null +++ b/poky/meta/recipes-extended/acpica/acpica_20200430.bb @@ -0,0 +1,49 @@ +SUMMARY = "ACPICA tools for the development and debug of ACPI tables" +DESCRIPTION = "The ACPI Component Architecture (ACPICA) project provides an \ +OS-independent reference implementation of the Advanced Configuration and \ +Power Interface Specification (ACPI). ACPICA code contains those portions of \ +ACPI meant to be directly integrated into the host OS as a kernel-resident \ +subsystem, and a small set of tools to assist in developing and debugging \ +ACPI tables." + +HOMEPAGE = "http://www.acpica.org/" +SECTION = "console/tools" + +LICENSE = "Intel | BSD | GPLv2" +LIC_FILES_CHKSUM = "file://source/compiler/aslcompile.c;beginline=7;endline=150;md5=6adbcb81e9ee6ae50c569b94fe12f7c5" + +COMPATIBLE_HOST = "(i.86|x86_64|arm|aarch64).*-linux" + +DEPENDS = "m4-native flex-native bison-native" + +SRC_URI = "https://acpica.org/sites/acpica/files/acpica-unix-${PV}.tar.gz" +SRC_URI[sha256sum] = "fb807f1dec31664f972af37d213abf72987afe33abf68c83051e298da35d297c" + +UPSTREAM_CHECK_URI = "https://acpica.org/downloads" + +S = "${WORKDIR}/acpica-unix-${PV}" + +inherit update-alternatives + +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "acpixtract acpidump" + +EXTRA_OEMAKE = "CC='${CC}' \ + OPT_CFLAGS=-Wall \ + DESTDIR=${D} \ + PREFIX=${prefix} \ + INSTALLDIR=${bindir} \ + INSTALLFLAGS= \ + " + +do_install() { + oe_runmake install +} + +# iasl*.bb is a subset of this recipe, so RREPLACE it +PROVIDES = "iasl" +RPROVIDES_${PN} += "iasl" +RREPLACES_${PN} += "iasl" +RCONFLICTS_${PN} += "iasl" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-extended/ghostscript/ghostscript/i686 b/poky/meta/recipes-extended/ghostscript/ghostscript/i686 deleted file mode 120000 index 87aaca590..000000000 --- a/poky/meta/recipes-extended/ghostscript/ghostscript/i686 +++ /dev/null @@ -1 +0,0 @@ -i586 \ No newline at end of file diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch b/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch index 02c2fef55..f2fc8ee95 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0001-Add-more-musl-exclusions.patch @@ -1,35 +1,22 @@ -From 788c47ceef7f115ab7f7aa17f918e58795f4e6c7 Mon Sep 17 00:00:00 2001 +From ad8e73306cb8293f7d32841e1599fd9048801f1f Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 20 Dec 2019 13:06:05 +0100 Subject: [PATCH] Add more musl exclusions Upstream-Status: Pending Signed-off-by: Alexander Kanavin +[ pvorel: rebase for 20200515: enable accept4_01 ] [ pvorel: rebase for 20200120: enable fanotify13, fanotify15, setxattr03 ] Signed-off-by: Petr Vorel --- - testcases/kernel/syscalls/accept4/Makefile | 4 ++++ testcases/kernel/syscalls/timer_create/Makefile | 4 ++++ - 2 files changed, 8 insertions(+) + 1 file changed, 4 insertions(+) -diff --git a/testcases/kernel/syscalls/accept4/Makefile b/testcases/kernel/syscalls/accept4/Makefile -index 504042e11..94db06266 100644 ---- a/testcases/kernel/syscalls/accept4/Makefile -+++ b/testcases/kernel/syscalls/accept4/Makefile -@@ -20,4 +20,8 @@ top_srcdir ?= ../../../.. - - include $(top_srcdir)/include/mk/testcases.mk - -+ifeq ($(LIBC),musl) -+FILTER_OUT_MAKE_TARGETS := accept4_01 -+endif -+ - include $(top_srcdir)/include/mk/generic_leaf_target.mk diff --git a/testcases/kernel/syscalls/timer_create/Makefile b/testcases/kernel/syscalls/timer_create/Makefile -index 8de247075..eb240f432 100644 +index ada241fe1..d454b01e7 100644 --- a/testcases/kernel/syscalls/timer_create/Makefile +++ b/testcases/kernel/syscalls/timer_create/Makefile -@@ -20,6 +20,10 @@ top_srcdir ?= ../../../.. +@@ -5,6 +5,10 @@ top_srcdir ?= ../../../.. include $(top_srcdir)/include/mk/testcases.mk @@ -40,5 +27,6 @@ index 8de247075..eb240f432 100644 CPPFLAGS += -D_GNU_SOURCE -I$(abs_srcdir)/../include LDLIBS += -lpthread -lrt --- -2.25.1 +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch b/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch index b1a99959d..29b2bf7e4 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0001-build-Add-option-to-select-libc-implementation.patch @@ -1,15 +1,16 @@ -From be453d1be826b862d47e08663fd69eea9dd62730 Mon Sep 17 00:00:00 2001 +From 74958c3e341de713b596c8cfd35b2391d6c7bc09 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Thu, 7 Jan 2016 18:19:03 +0000 -Subject: [PATCH 1/6] build: Add option to select libc implementation +Subject: [PATCH] build: Add option to select libc implementation There are more than glibc for C library implementation available on linux now a days, uclibc cloaked like glibc but musl e.g. is very -different and does not implement all GNU extentions +different and does not implement all GNU extensions. Disable tests specifically not building _yet_ on musl based systems -Upstream-Status: Pending +Upstream-Status: Pending (pvorel: this is not going to be fixed, instead +each test needs to be fixed) rt_tgsigqueueinfo fails with: rt_tgsigqueueinfo01.c: In function 'sigusr1_handler': @@ -19,18 +20,17 @@ rt_tgsigqueueinfo01.c:42:22: error: 'siginfo_t' {aka 'struct '} has n | __si_fields Signed-off-by: Khem Raj +[ pvorel: rebase for 20200515: enable pty, ioctl ] [ pvorel: rebase for 20200120: enable mallopt, profil, rpc016, rt_sigsuspend, sbrk_mutex, setdomainname, sethostname, sigsuspend, testpi-3, testpi-5, testpi-6, ustat; move rt_tgsigqueueinfo from 0006-rt_tgsigqueueinfo-disable-test-on-musl.patch ] Signed-off-by: Petr Vorel -Signed-off-by: Petr Vorel --- Makefile | 5 +++++ - testcases/kernel/Makefile | 5 ++++- testcases/kernel/sched/Makefile | 4 +++- testcases/kernel/syscalls/Makefile | 4 ++++ - 4 files changed, 16 insertions(+), 2 deletions(-) + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 768ca4606..e9d679a71 100644 @@ -48,28 +48,6 @@ index 768ca4606..e9d679a71 100644 # CLEAN_TARGETS: Targets which exist solely in clean. # COMMON_TARGETS: Targets which exist in all, clean, and install. # INSTALL_TARGETS: Targets which exist in clean and install (contains -diff --git a/testcases/kernel/Makefile b/testcases/kernel/Makefile -index 3319b3163..94ea362c8 100644 ---- a/testcases/kernel/Makefile -+++ b/testcases/kernel/Makefile -@@ -49,13 +49,16 @@ SUBDIRS += connectors \ - logging \ - mem \ - numa \ -- pty \ - sched \ - security \ - sound \ - tracing \ - uevents \ - -+ifneq ($(LIBC),musl) -+SUBDIRS += pty -+endif -+ - ifeq ($(WITH_POWER_MANAGEMENT_TESTSUITE),yes) - SUBDIRS += power_management - endif diff --git a/testcases/kernel/sched/Makefile b/testcases/kernel/sched/Makefile index 6a57d79ee..74bb93370 100644 --- a/testcases/kernel/sched/Makefile @@ -84,19 +62,20 @@ index 6a57d79ee..74bb93370 100644 +endif include $(top_srcdir)/include/mk/generic_trunk_target.mk diff --git a/testcases/kernel/syscalls/Makefile b/testcases/kernel/syscalls/Makefile -index 45a00cf7d..af5a591a0 100644 +index c6dc8d9e7..aa50761ea 100644 --- a/testcases/kernel/syscalls/Makefile +++ b/testcases/kernel/syscalls/Makefile -@@ -29,6 +29,10 @@ FILTER_OUT_DIRS += capget capset chmod chown clone fork getcontext llseek \ +@@ -15,6 +15,10 @@ FILTER_OUT_DIRS += capget capset chmod chown clone fork getcontext llseek \ mincore mprotect nftw profil remap_file_pages sbrk endif +ifeq ($(LIBC),musl) -+FILTER_OUT_DIRS += confstr fmtmsg getcontext ioctl rt_tgsigqueueinfo ++FILTER_OUT_DIRS += confstr fmtmsg getcontext rt_tgsigqueueinfo +endif + ifeq ($(UCLIBC),1) FILTER_OUT_DIRS += profil endif --- -2.25.1 +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch b/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch new file mode 100644 index 000000000..27b890e22 --- /dev/null +++ b/poky/meta/recipes-extended/ltp/ltp/0001-ptrace01-Fix-missing-format-string.patch @@ -0,0 +1,33 @@ +From adb9587466a493fdd9d4410f1b8b130ebca06daa Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 19 May 2020 22:21:23 -0700 +Subject: [PATCH] ptrace01: Fix missing format string + +Fixes +| ptrace01.c:89:2: error: format string is not a string literal +(potentially insecure) [-Werror,-Wformat-security] +| tst_res(TINFO, tc->message); +| ^ ~~~~~~~~~~~ + +Signed-off-by: Khem Raj +Upstream-Status: Backport [58424835952641f4fd60c0ae3ab6c64decca3f8a] +--- + testcases/kernel/syscalls/ptrace/ptrace01.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/testcases/kernel/syscalls/ptrace/ptrace01.c b/testcases/kernel/syscalls/ptrace/ptrace01.c +index 87a99e4150..9071bbabaf 100644 +--- a/testcases/kernel/syscalls/ptrace/ptrace01.c ++++ b/testcases/kernel/syscalls/ptrace/ptrace01.c +@@ -86,7 +86,7 @@ static void run(unsigned int i) + + got_signal = 0; + +- tst_res(TINFO, tc->message); ++ tst_res(TINFO, "%s", tc->message); + + if (tc->handler == 1) { + parent_act.sa_handler = parent_handler; +-- +2.26.2 + diff --git a/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch b/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch deleted file mode 100644 index ac8f08ef5..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch +++ /dev/null @@ -1,122 +0,0 @@ -From 89c5841bd148a7ae70c65f4a1ca5996b7f0cddfa Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Wed, 19 Feb 2020 22:52:04 -0800 -Subject: [PATCH] syscalls: Check for time64 unsafe syscalls before using them - -musl is using 64bit time_t now on 32bit architectures and these syscalls -no longer exist, therefore its better to check for them being available -before using them - -Signed-off-by: Khem Raj -Reviewed-by: Yang Xu -Reviewed-by: Petr Vorel -Signed-off-by: Petr Vorel -Upstream-Status: accepted as 5b57ae2913e2d2d167cbd3822784b4c4ba336812 ---- - lib/tst_clocks.c | 16 ++++++---------- - .../syscalls/gettimeofday/gettimeofday01.c | 6 ++---- - .../syscalls/gettimeofday/gettimeofday02.c | 8 +++----- - 3 files changed, 11 insertions(+), 19 deletions(-) - -diff --git a/lib/tst_clocks.c b/lib/tst_clocks.c -index 5195da38f..fa2f1cb84 100644 ---- a/lib/tst_clocks.c -+++ b/lib/tst_clocks.c -@@ -3,28 +3,24 @@ - * Copyright (c) 2017 Cyril Hrubis - */ - --/* -- * clock_gettime() and clock_getres() functions -- */ -- --#define _GNU_SOURCE --#include - #include --#include - -+#define TST_NO_DEFAULT_MAIN -+#include "tst_test.h" - #include "tst_clocks.h" -+#include "lapi/syscalls.h" - - int tst_clock_getres(clockid_t clk_id, struct timespec *res) - { -- return syscall(SYS_clock_getres, clk_id, res); -+ return tst_syscall(__NR_clock_getres, clk_id, res); - } - - int tst_clock_gettime(clockid_t clk_id, struct timespec *ts) - { -- return syscall(SYS_clock_gettime, clk_id, ts); -+ return tst_syscall(__NR_clock_gettime, clk_id, ts); - } - - int tst_clock_settime(clockid_t clk_id, struct timespec *ts) - { -- return syscall(SYS_clock_settime, clk_id, ts); -+ return tst_syscall(__NR_clock_settime, clk_id, ts); - } -diff --git a/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c b/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -index 583d8f7b9..08ea1673a 100644 ---- a/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -+++ b/testcases/kernel/syscalls/gettimeofday/gettimeofday01.c -@@ -38,10 +38,8 @@ - #include - #include - #include "test.h" --#include - #include -- --#define gettimeofday(a,b) syscall(__NR_gettimeofday,a,b) -+#include "lapi/syscalls.h" - - char *TCID = "gettimeofday01"; - int TST_TOTAL = 1; -@@ -63,7 +61,7 @@ int main(int ac, char **av) - for (lc = 0; TEST_LOOPING(lc); lc++) { - tst_count = 0; - -- TEST(gettimeofday((void *)-1, (void *)-1)); -+ TEST(ltp_syscall(__NR_gettimeofday, (void *)-1, (void *)-1)); - - /* gettimeofday returns an int, so we need to turn the long - * TEST_RETURN into an int to test with */ -diff --git a/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c b/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -index 1d60f448e..5170ad2f7 100644 ---- a/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -+++ b/testcases/kernel/syscalls/gettimeofday/gettimeofday02.c -@@ -16,14 +16,12 @@ - #include - #include - #include --#include - #include - #include - #include - - #include "tst_test.h" -- --#define gettimeofday(a,b) syscall(__NR_gettimeofday,a,b) -+#include "lapi/syscalls.h" - - static volatile sig_atomic_t done; - static char *str_rtime; -@@ -48,13 +46,13 @@ static void verify_gettimeofday(void) - - alarm(rtime); - -- if (gettimeofday(&tv1, NULL)) { -+ if (tst_syscall(__NR_gettimeofday, &tv1, NULL)) { - tst_res(TBROK | TERRNO, "gettimeofday() failed"); - return; - } - - while (!done) { -- if (gettimeofday(&tv2, NULL)) { -+ if (tst_syscall(__NR_gettimeofday, &tv2, NULL)) { - tst_res(TBROK | TERRNO, "gettimeofday() failed"); - return; - } --- -2.25.1 diff --git a/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch b/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch deleted file mode 100644 index df3e8831f..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 1ce47a6ed811fd78ed04ea2f82e6321c6bca57b6 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Thu, 7 Jan 2016 19:40:08 +0000 -Subject: [PATCH] Check if __GLIBC_PREREQ is defined before using it - -__GLIBC_PREREQ is specific to glibc so it should be checked if it is -defined or not. - -Upstream-Status: Pending - -Signed-off-by: Khem Raj -Signed-off-by: Yi Zhao - ---- - testcases/kernel/syscalls/accept4/accept4_01.c | 7 +++++++ - 1 file changed, 7 insertions(+) - -diff --git a/testcases/kernel/syscalls/accept4/accept4_01.c b/testcases/kernel/syscalls/accept4/accept4_01.c -index 29e18f27d..07444a46f 100644 ---- a/testcases/kernel/syscalls/accept4/accept4_01.c -+++ b/testcases/kernel/syscalls/accept4/accept4_01.c -@@ -38,6 +38,7 @@ - static struct sockaddr_in *conn_addr, *accept_addr; - static int listening_fd; - -+#if defined(__GLIBC__) && defined(__GLIBC_PREREQ) - #if !(__GLIBC_PREREQ(2, 10)) - static int - accept4_01(int fd, struct sockaddr *sockaddr, socklen_t *addrlen, int flags) -@@ -56,6 +57,7 @@ accept4_01(int fd, struct sockaddr *sockaddr, socklen_t *addrlen, int flags) - #endif - } - #endif -+#endif - - static int create_listening_socket(void) - { -@@ -114,12 +116,17 @@ static void verify_accept4(unsigned int nr) - SAFE_CONNECT(connfd, (struct sockaddr *)conn_addr, sizeof(*conn_addr)); - addrlen = sizeof(*accept_addr); - -+#if defined(__GLIBC__) && defined(__GLIBC_PREREQ) - #if !(__GLIBC_PREREQ(2, 10)) - TEST(accept4_01(listening_fd, (struct sockaddr *)accept_addr, &addrlen, - tcase->cloexec | tcase->nonblock)); - #else - TEST(accept4(listening_fd, (struct sockaddr *)accept_addr, &addrlen, - tcase->cloexec | tcase->nonblock)); -+#endif -+#else -+ TEST(accept4(listening_fd, (struct sockaddr *)&claddr, &addrlen, -+ tcase->cloexec | tcase->nonblock)); - #endif - if (TST_RET == -1) { - if (TST_ERR == ENOSYS) diff --git a/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch b/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch index 5622a64d4..e93886c9c 100644 --- a/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch +++ b/poky/meta/recipes-extended/ltp/ltp/0004-guard-mallocopt-with-__GLIBC__.patch @@ -5,9 +5,9 @@ Subject: [PATCH] guard mallocopt() with __GLIBC__ mallocopt is not available on non glibc implementations -Upstream-Status: Pending - Signed-off-by: Khem Raj +Reviewed-by: Petr Vorel +[ Upstream-Status: accepted in 967612c454aea66770b64f69287671037fe895b3 ] --- utils/benchmark/ebizzy-0.3/ebizzy.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch b/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch deleted file mode 100644 index 350091a70..000000000 --- a/poky/meta/recipes-extended/ltp/ltp/0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 4b7db094d6fc5659001ae8dc17078bb65d46b9c9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?An=C3=ADbal=20Lim=C3=B3n?= -Date: Fri, 13 May 2016 11:11:28 -0500 -Subject: [PATCH] acl: Security fix on string printf -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes build error when compiled with -Werror=format-security: - -acl1.c: In function ‘test_acl_default’: -acl1.c:305:2: error: format not a string literal and no format arguments [-Werror=format-security] - 305 | printf(cmd); - -Patch taken from openembedded-core, -original bug report: https://bugzilla.yoctoproject.org/9548 - -[YOCTO #9548] - -Signed-off-by: Aníbal Limón -Signed-off-by: Petr Vorel -Upstream-Status: accepted in 4b7db094d6fc5659001ae8dc17078bb65d46b9c9 ---- - testcases/network/nfsv4/acl/acl1.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/testcases/network/nfsv4/acl/acl1.c b/testcases/network/nfsv4/acl/acl1.c -index aae9484e5..ad778cd33 100644 ---- a/testcases/network/nfsv4/acl/acl1.c -+++ b/testcases/network/nfsv4/acl/acl1.c -@@ -302,7 +302,7 @@ void test_acl_default(char *dir, acl_t acl) - char *cmd = malloc(256); - - strcpy(cmd, "chmod 7777 "); -- printf(cmd); -+ printf(cmd, NULL); - strcat(cmd, dir); - system(cmd); - acl2 = acl_get_file(path, ACL_TYPE_ACCESS); --- -2.25.1 - diff --git a/poky/meta/recipes-extended/ltp/ltp_20200120.bb b/poky/meta/recipes-extended/ltp/ltp_20200120.bb deleted file mode 100644 index deac3917d..000000000 --- a/poky/meta/recipes-extended/ltp/ltp_20200120.bb +++ /dev/null @@ -1,114 +0,0 @@ -SUMMARY = "Linux Test Project" -DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." -HOMEPAGE = "https://linux-test-project.github.io/" -SECTION = "console/utils" -LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" -LIC_FILES_CHKSUM = "\ - file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ - file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ - file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ - file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ - file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ - file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ -" - -DEPENDS = "attr libaio libcap acl openssl zip-native" -DEPENDS_append_libc-musl = " fts " -EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " -EXTRA_OECONF_append_libc-musl = " LIBS=-lfts " - -# since ltp contains x86-64 assembler which uses the frame-pointer register, -# set -fomit-frame-pointer x86-64 to handle cases where optimisation -# is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer -# earlier in CFLAGS, etc. -CFLAGS_append_x86-64 = " -fomit-frame-pointer" - -CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" -CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" -SRCREV = "4079aaf264d0e9ead042b59d1c5f4e643620d0d5" - -SRC_URI = "git://github.com/linux-test-project/ltp.git \ - file://0001-build-Add-option-to-select-libc-implementation.patch \ - file://0003-Check-if-__GLIBC_PREREQ-is-defined-before-using-it.patch \ - file://0004-guard-mallocopt-with-__GLIBC__.patch \ - file://0007-Fix-test_proc_kill-hanging.patch \ - file://0008-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \ - file://0001-Add-more-musl-exclusions.patch \ - file://0001-syscalls-Check-for-time64-unsafe-syscalls-before-usi.patch \ - " - -S = "${WORKDIR}/git" - -inherit autotools-brokensep - -TARGET_CC_ARCH += "${LDFLAGS}" - -export prefix = "/opt/${PN}" -export exec_prefix = "/opt/${PN}" - -PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," -EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" -EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite --with-open-posix-testsuite " -# ltp network/rpc test cases ftbfs when libtirpc is found -EXTRA_OECONF += " --without-tirpc " - -do_install(){ - install -d ${D}${prefix}/ - oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install - - # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run - # as it lacks dependency on some perl moudle such as LWP::Simple - # And this script previously works as a tool for analyzing failures from LTP - # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses - # http://khack.osdl.org to retrieve ltp test results run on - # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible - rm -rf ${D}${prefix}/bin/STPfailure_report.pl - - # Copy POSIX test suite into ${D}${prefix}/testcases by manual - cp -r testcases/open_posix_testsuite ${D}${prefix}/testcases - - # Makefile were configured in the build system - find ${D}${prefix} -name Makefile | xargs -n 1 sed -i \ - -e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \ - -e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \ - -e 's@[^ ]*--sysroot=[^ "]*@@g' -} - -RDEPENDS_${PN} = "\ - attr \ - bash \ - cpio \ - cronie \ - curl \ - e2fsprogs-mke2fs \ - expect \ - file \ - gawk \ - gzip \ - iproute2 \ - ldd \ - libaio \ - logrotate \ - perl \ - python3-core \ - procps \ - quota \ - unzip \ - util-linux \ - which \ - tar \ -" - -FILES_${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a" - -# Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail -INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01" -INSANE_SKIP_${PN} += "already-stripped staticdev" - -# Avoid file dependency scans, as LTP checks for things that may or may not -# exist on the running system. For instance it has specific checks for -# csh and ksh which are not typically part of OpenEmbedded systems (but -# can be added via additional layers.) -SKIP_FILEDEPS_${PN} = '1' diff --git a/poky/meta/recipes-extended/ltp/ltp_20200515.bb b/poky/meta/recipes-extended/ltp/ltp_20200515.bb new file mode 100644 index 000000000..67c759032 --- /dev/null +++ b/poky/meta/recipes-extended/ltp/ltp_20200515.bb @@ -0,0 +1,121 @@ +SUMMARY = "Linux Test Project" +DESCRIPTION = "The Linux Test Project is a joint project with SGI, IBM, OSDL, and Bull with a goal to deliver test suites to the open source community that validate the reliability, robustness, and stability of Linux. The Linux Test Project is a collection of tools for testing the Linux kernel and related features." +HOMEPAGE = "https://linux-test-project.github.io/" +SECTION = "console/utils" +LICENSE = "GPLv2 & GPLv2+ & LGPLv2+ & LGPLv2.1+ & BSD-2-Clause" +LIC_FILES_CHKSUM = "\ + file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://testcases/kernel/controllers/freezer/COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ + file://testcases/kernel/controllers/freezer/run_freezer.sh;beginline=5;endline=17;md5=86a61d2c042d59836ffb353a21456498 \ + file://testcases/kernel/hotplug/memory_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/kernel/hotplug/cpu_hotplug/COPYING;md5=e04a2e542b2b8629bf9cd2ba29b0fe41 \ + file://testcases/open_posix_testsuite/COPYING;md5=48b1c5ec633e3e30ec2cf884ae699947 \ + file://testcases/realtime/COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \ + file://utils/benchmark/kernbench-0.42/COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \ +" + +DEPENDS = "attr libaio libcap acl openssl zip-native" +DEPENDS_append_libc-musl = " fts " +EXTRA_OEMAKE_append_libc-musl = " LIBC=musl " +EXTRA_OECONF_append_libc-musl = " LIBS=-lfts " + +# since ltp contains x86-64 assembler which uses the frame-pointer register, +# set -fomit-frame-pointer x86-64 to handle cases where optimisation +# is set to -O0 or frame pointers have been enabled by -fno-omit-frame-pointer +# earlier in CFLAGS, etc. +CFLAGS_append_x86-64 = " -fomit-frame-pointer" + +CFLAGS_append_powerpc64 = " -D__SANE_USERSPACE_TYPES__" +CFLAGS_append_mipsarchn64 = " -D__SANE_USERSPACE_TYPES__" +SRCREV = "0d79a93e6ca44d9bc95973faea6bcd7b0c6d1f43" + +SRC_URI = "git://github.com/linux-test-project/ltp.git \ + file://0001-build-Add-option-to-select-libc-implementation.patch \ + file://0004-guard-mallocopt-with-__GLIBC__.patch \ + file://0007-Fix-test_proc_kill-hanging.patch \ + file://0001-Add-more-musl-exclusions.patch \ + file://0001-ptrace01-Fix-missing-format-string.patch \ + " + +S = "${WORKDIR}/git" + +inherit autotools-brokensep pkgconfig + +TARGET_CC_ARCH += "${LDFLAGS}" + +export prefix = "/opt/${PN}" +export exec_prefix = "/opt/${PN}" + +PACKAGECONFIG[numa] = "--with-numa, --without-numa, numactl," +EXTRA_AUTORECONF += "-I ${S}/testcases/realtime/m4" +EXTRA_OECONF = " --with-power-management-testsuite --with-realtime-testsuite --with-open-posix-testsuite " +# ltp network/rpc test cases ftbfs when libtirpc is found +EXTRA_OECONF += " --without-tirpc " + +do_install(){ + install -d ${D}${prefix}/ + oe_runmake DESTDIR=${D} SKIP_IDCHECK=1 install + + # fixup not deploy STPfailure_report.pl to avoid confusing about it fails to run + # as it lacks dependency on some perl moudle such as LWP::Simple + # And this script previously works as a tool for analyzing failures from LTP + # runs on the OSDL's Scaleable Test Platform (STP) and it mainly accesses + # http://khack.osdl.org to retrieve ltp test results run on + # OSDL's Scaleable Test Platform, but now http://khack.osdl.org unaccessible + rm -rf ${D}${prefix}/bin/STPfailure_report.pl + + # Copy POSIX test suite into ${D}${prefix}/testcases by manual + cp -r testcases/open_posix_testsuite ${D}${prefix}/testcases + + # Makefile were configured in the build system + find ${D}${prefix} -name Makefile | xargs -n 1 sed -i \ + -e 's@[^ ]*-fdebug-prefix-map=[^ "]*@@g' \ + -e 's@[^ ]*-fmacro-prefix-map=[^ "]*@@g' \ + -e 's@[^ ]*--sysroot=[^ "]*@@g' + + # The controllers memcg_stree test seems to cause us hangs and takes 900s + # (maybe we expect more regular output?), anyhow, skip it + sed -e '/^memcg_stress/d' -i ${D}${prefix}/runtest/controllers +} + +RDEPENDS_${PN} = "\ + attr \ + bash \ + bc \ + coreutils \ + cpio \ + cronie \ + curl \ + e2fsprogs \ + e2fsprogs-mke2fs \ + expect \ + file \ + gawk \ + gdb \ + gzip \ + iproute2 \ + ldd \ + libaio \ + logrotate \ + net-tools \ + perl \ + python3-core \ + procps \ + quota \ + unzip \ + util-linux \ + which \ + tar \ +" + +FILES_${PN} += "${prefix}/* ${prefix}/runtest/* ${prefix}/scenario_groups/* ${prefix}/testcases/bin/* ${prefix}/testcases/bin/*/bin/* ${prefix}/testscripts/* ${prefix}/testcases/open_posix_testsuite/* ${prefix}/testcases/open_posix_testsuite/conformance/* ${prefix}/testcases/open_posix_testsuite/Documentation/* ${prefix}/testcases/open_posix_testsuite/functional/* ${prefix}/testcases/open_posix_testsuite/include/* ${prefix}/testcases/open_posix_testsuite/scripts/* ${prefix}/testcases/open_posix_testsuite/stress/* ${prefix}/testcases/open_posix_testsuite/tools/* ${prefix}/testcases/data/nm01/lib.a ${prefix}/lib/libmem.a" + +# Avoid stripping some generated binaries otherwise some of the ltp tests such as ldd01 & nm01 fail +INHIBIT_PACKAGE_STRIP_FILES = "${prefix}/testcases/bin/nm01 ${prefix}/testcases/bin/ldd01" +INSANE_SKIP_${PN} += "already-stripped staticdev" + +# Avoid file dependency scans, as LTP checks for things that may or may not +# exist on the running system. For instance it has specific checks for +# csh and ksh which are not typically part of OpenEmbedded systems (but +# can be added via additional layers.) +SKIP_FILEDEPS_${PN} = '1' diff --git a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb index 15a8e6ded..16c2f9f2a 100644 --- a/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb +++ b/poky/meta/recipes-extended/packagegroups/packagegroup-core-full-cmdline.bb @@ -32,21 +32,23 @@ python __anonymous () { namemap["packagegroup-core-full-cmdline-sys-services"] = "packagegroup-core-sys-services" packages = d.getVar("PACKAGES").split() + mlprefix = d.getVar("MLPREFIX") for pkg in packages: + pkg2 = pkg[len(mlprefix):] if pkg.endswith('-dev'): - mapped = namemap.get(pkg[:-4], None) + mapped = namemap.get(pkg2[:-4], None) if mapped: mapped += '-dev' elif pkg.endswith('-dbg'): - mapped = namemap.get(pkg[:-4], None) + mapped = namemap.get(pkg2[:-4], None) if mapped: mapped += '-dbg' else: - mapped = namemap.get(pkg, None) + mapped = namemap.get(pkg2, None) if mapped: oldtaskname = mapped.replace("packagegroup-core", "task-core") - mapstr = " %s %s" % (mapped, oldtaskname) + mapstr = " %s%s %s%s" % (mlprefix, mapped, mlprefix, oldtaskname) d.appendVar("RPROVIDES_%s" % pkg, mapstr) d.appendVar("RREPLACES_%s" % pkg, mapstr) d.appendVar("RCONFLICTS_%s" % pkg, mapstr) diff --git a/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb b/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb deleted file mode 100644 index 2a90f89d2..000000000 --- a/poky/meta/recipes-extended/sysstat/sysstat_12.2.1.bb +++ /dev/null @@ -1,8 +0,0 @@ -require sysstat.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=a23a74b3f4caf9616230789d94217acb" - -SRC_URI += "file://0001-configure.in-remove-check-for-chkconfig.patch" - -SRC_URI[md5sum] = "9dfff5fac24e35bd92fb7896debf2ffb" -SRC_URI[sha256sum] = "8edb0e19b514ac560a098a02933a4735b881296d61014db89bf80f05dd7a4732" diff --git a/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb b/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb new file mode 100644 index 000000000..333d10295 --- /dev/null +++ b/poky/meta/recipes-extended/sysstat/sysstat_12.2.2.bb @@ -0,0 +1,8 @@ +require sysstat.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=a23a74b3f4caf9616230789d94217acb" + +SRC_URI += "file://0001-configure.in-remove-check-for-chkconfig.patch" + +SRC_URI[md5sum] = "1073fdf7bba58483a467a8a0681beeda" +SRC_URI[sha256sum] = "78388b64acec81378b962e66b40e57acd4b18ff17a849bc9308f95d290248c9c" diff --git a/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch b/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch deleted file mode 100644 index 198f19861..000000000 --- a/poky/meta/recipes-extended/watchdog/watchdog/0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 8f91385dbd5e7c14b36ecbd8a01ca82c709f6d77 Mon Sep 17 00:00:00 2001 -From: Khem Raj -Date: Fri, 24 Jun 2016 18:19:29 +0000 -Subject: [PATCH] Include linux/param.h for EXEC_PAGESIZE definition - -Musl does not include linux/param.h whereas glibc -does, so it fails to build on musl. - -Signed-off-by: Khem Raj ---- -Upstream-Status: Submitted - - src/watchdog.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/src/watchdog.c b/src/watchdog.c -index acf6450..486384a 100644 ---- a/src/watchdog.c -+++ b/src/watchdog.c -@@ -26,6 +26,9 @@ - #include /* For EXEC_PAGESIZE */ - #include - #include -+#ifdef __linux__ -+#include -+#endif - #include - - #include --- -1.8.3.1 - diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb deleted file mode 100644 index 1acab2e9e..000000000 --- a/poky/meta/recipes-extended/watchdog/watchdog_5.15.bb +++ /dev/null @@ -1,72 +0,0 @@ -SUMMARY = "Software watchdog" -DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ -working. If programs in user space are not longer executed \ -it will reboot the system." -HOMEPAGE = "http://watchdog.sourceforge.net/" -BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" - -LICENSE = "GPL-2.0+" -LIC_FILES_CHKSUM = "file://COPYING;md5=ecc0551bf54ad97f6b541720f84d6569" - -SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \ - file://0001-Include-linux-param.h-for-EXEC_PAGESIZE-definition.patch \ - file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \ - file://watchdog.init \ - file://wd_keepalive.init \ -" - -SRC_URI[md5sum] = "678c32f6f35a0492c9c1b76b4aa88828" -SRC_URI[sha256sum] = "ffdc865137ad5d8e53664bd22bad4de6ca136d1b4636720320cb52af0c18947c" - -UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" -UPSTREAM_CHECK_REGEX = "/watchdog/(?P(\d+[\.\-_]*)+)/" - -inherit autotools update-rc.d systemd pkgconfig - -DEPENDS += "libtirpc" -CFLAGS += "-I${STAGING_INCDIR}/tirpc" -LDFLAGS += "-ltirpc" - -EXTRA_OECONF += " --disable-nfs " - -INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive" - -INITSCRIPT_NAME_${PN} = "watchdog" -INITSCRIPT_PARAMS_${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ." - -INITSCRIPT_NAME_${PN}-keepalive = "wd_keepalive" -INITSCRIPT_PARAMS_${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ." - -SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive" -SYSTEMD_SERVICE_${PN} = "watchdog.service" -SYSTEMD_SERVICE_${PN}-keepalive = "wd_keepalive.service" -# When using systemd, consider making use of internal watchdog support of systemd. -# See RuntimeWatchdogSec in /etc/systemd/system.conf. -SYSTEMD_AUTO_ENABLE = "disable" - -do_install_append() { - install -d ${D}${systemd_system_unitdir} - install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir} - install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir} - - install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog - install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive - - # watchdog.conf is provided by the watchdog-config recipe - rm ${D}${sysconfdir}/watchdog.conf -} - -PACKAGES =+ "${PN}-keepalive" - -FILES_${PN}-keepalive = " \ - ${sysconfdir}/init.d/wd_keepalive \ - ${systemd_system_unitdir}/wd_keepalive.service \ - ${sbindir}/wd_keepalive \ -" - -RDEPENDS_${PN} += "${PN}-config" -RRECOMMENDS_${PN} += "kernel-module-softdog" - -RDEPENDS_${PN}-keepalive += "${PN}-config" -RCONFLICTS_${PN}-keepalive += "${PN}" -RRECOMMENDS_${PN}-keepalive += "kernel-module-softdog" diff --git a/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb new file mode 100644 index 000000000..0199487e2 --- /dev/null +++ b/poky/meta/recipes-extended/watchdog/watchdog_5.16.bb @@ -0,0 +1,71 @@ +SUMMARY = "Software watchdog" +DESCRIPTION = "Watchdog is a daemon that checks if your system is still \ +working. If programs in user space are not longer executed \ +it will reboot the system." +HOMEPAGE = "http://watchdog.sourceforge.net/" +BUGTRACKER = "http://sourceforge.net/tracker/?group_id=172030&atid=860194" + +LICENSE = "GPL-2.0+" +LIC_FILES_CHKSUM = "file://COPYING;md5=084236108b1d4a9851bf5213fea586fd" + +SRC_URI = "${SOURCEFORGE_MIRROR}/watchdog/watchdog-${PV}.tar.gz \ + file://0001-watchdog-remove-interdependencies-of-watchdog-and-wd.patch \ + file://watchdog.init \ + file://wd_keepalive.init \ +" + +SRC_URI[md5sum] = "1b4f51cabc64d1bee2fce7cdd626831f" +SRC_URI[sha256sum] = "b8e7c070e1b72aee2663bdc13b5cc39f76c9232669cfbb1ac0adc7275a3b019d" + +UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/watchdog/files/watchdog/" +UPSTREAM_CHECK_REGEX = "/watchdog/(?P(\d+[\.\-_]*)+)/" + +inherit autotools update-rc.d systemd pkgconfig + +DEPENDS += "libtirpc" +CFLAGS += "-I${STAGING_INCDIR}/tirpc" +LDFLAGS += "-ltirpc" + +EXTRA_OECONF += " --disable-nfs " + +INITSCRIPT_PACKAGES = "${PN} ${PN}-keepalive" + +INITSCRIPT_NAME_${PN} = "watchdog" +INITSCRIPT_PARAMS_${PN} = "start 25 1 2 3 4 5 . stop 85 0 6 ." + +INITSCRIPT_NAME_${PN}-keepalive = "wd_keepalive" +INITSCRIPT_PARAMS_${PN}-keepalive = "start 25 1 2 3 4 5 . stop 85 0 6 ." + +SYSTEMD_PACKAGES = "${PN} ${PN}-keepalive" +SYSTEMD_SERVICE_${PN} = "watchdog.service" +SYSTEMD_SERVICE_${PN}-keepalive = "wd_keepalive.service" +# When using systemd, consider making use of internal watchdog support of systemd. +# See RuntimeWatchdogSec in /etc/systemd/system.conf. +SYSTEMD_AUTO_ENABLE = "disable" + +do_install_append() { + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${S}/debian/watchdog.service ${D}${systemd_system_unitdir} + install -m 0644 ${S}/debian/wd_keepalive.service ${D}${systemd_system_unitdir} + + install -Dm 0755 ${WORKDIR}/watchdog.init ${D}/${sysconfdir}/init.d/watchdog + install -Dm 0755 ${WORKDIR}/wd_keepalive.init ${D}${sysconfdir}/init.d/wd_keepalive + + # watchdog.conf is provided by the watchdog-config recipe + rm ${D}${sysconfdir}/watchdog.conf +} + +PACKAGES =+ "${PN}-keepalive" + +FILES_${PN}-keepalive = " \ + ${sysconfdir}/init.d/wd_keepalive \ + ${systemd_system_unitdir}/wd_keepalive.service \ + ${sbindir}/wd_keepalive \ +" + +RDEPENDS_${PN} += "${PN}-config" +RRECOMMENDS_${PN} += "kernel-module-softdog" + +RDEPENDS_${PN}-keepalive += "${PN}-config" +RCONFLICTS_${PN}-keepalive += "${PN}" +RRECOMMENDS_${PN}-keepalive += "kernel-module-softdog" diff --git a/poky/meta/recipes-extended/xz/xz_5.2.4.bb b/poky/meta/recipes-extended/xz/xz_5.2.4.bb deleted file mode 100644 index 1c4450a9e..000000000 --- a/poky/meta/recipes-extended/xz/xz_5.2.4.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "Utilities for managing LZMA compressed files" -HOMEPAGE = "https://tukaani.org/xz/" -SECTION = "base" - -# The source includes bits of PD, GPLv2, GPLv3, LGPLv2.1+, but the only file -# which is GPLv3 is an m4 macro which isn't shipped in any of our packages, -# and the LGPL bits are under lib/, which appears to be used for libgnu, which -# appears to be used for DOS builds. So we're left with GPLv2+ and PD. -LICENSE = "GPLv2+ & GPL-3.0-with-autoconf-exception & LGPLv2.1+ & PD" -LICENSE_${PN} = "GPLv2+" -LICENSE_${PN}-dev = "GPLv2+" -LICENSE_${PN}-staticdev = "GPLv2+" -LICENSE_${PN}-doc = "GPLv2+" -LICENSE_${PN}-dbg = "GPLv2+" -LICENSE_${PN}-locale = "GPLv2+" -LICENSE_liblzma = "PD" - -LIC_FILES_CHKSUM = "file://COPYING;md5=97d554a32881fee0aa283d96e47cb24a \ - file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ - file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \ - file://lib/getopt.c;endline=23;md5=2069b0ee710572c03bb3114e4532cd84 \ - " - -SRC_URI = "https://tukaani.org/xz/xz-${PV}.tar.gz" -SRC_URI[md5sum] = "5ace3264bdd00c65eeec2891346f65e6" -SRC_URI[sha256sum] = "b512f3b726d3b37b6dc4c8570e137b9311e7552e8ccbab4d39d47ce5f4177145" -UPSTREAM_CHECK_REGEX = "xz-(?P\d+(\.\d+)+)\.tar" - -CACHED_CONFIGUREVARS += "gl_cv_posix_shell=/bin/sh" - -inherit autotools gettext - -PACKAGES =+ "liblzma" - -FILES_liblzma = "${libdir}/liblzma*${SOLIBS}" - -inherit update-alternatives -ALTERNATIVE_PRIORITY = "100" -ALTERNATIVE_${PN} = "xz xzcat unxz \ - lzma lzcat unlzma" - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-extended/xz/xz_5.2.5.bb b/poky/meta/recipes-extended/xz/xz_5.2.5.bb new file mode 100644 index 000000000..af21b6056 --- /dev/null +++ b/poky/meta/recipes-extended/xz/xz_5.2.5.bb @@ -0,0 +1,43 @@ +SUMMARY = "Utilities for managing LZMA compressed files" +HOMEPAGE = "https://tukaani.org/xz/" +SECTION = "base" + +# The source includes bits of PD, GPLv2, GPLv3, LGPLv2.1+, but the only file +# which is GPLv3 is an m4 macro which isn't shipped in any of our packages, +# and the LGPL bits are under lib/, which appears to be used for libgnu, which +# appears to be used for DOS builds. So we're left with GPLv2+ and PD. +LICENSE = "GPLv2+ & GPL-3.0-with-autoconf-exception & LGPLv2.1+ & PD" +LICENSE_${PN} = "GPLv2+" +LICENSE_${PN}-dev = "GPLv2+" +LICENSE_${PN}-staticdev = "GPLv2+" +LICENSE_${PN}-doc = "GPLv2+" +LICENSE_${PN}-dbg = "GPLv2+" +LICENSE_${PN}-locale = "GPLv2+" +LICENSE_liblzma = "PD" + +LIC_FILES_CHKSUM = "file://COPYING;md5=97d554a32881fee0aa283d96e47cb24a \ + file://COPYING.GPLv2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://COPYING.GPLv3;md5=d32239bcb673463ab874e80d47fae504 \ + file://COPYING.LGPLv2.1;md5=4fbd65380cdd255951079008b364516c \ + file://lib/getopt.c;endline=23;md5=2069b0ee710572c03bb3114e4532cd84 \ + " + +SRC_URI = "https://tukaani.org/xz/xz-${PV}.tar.gz" +SRC_URI[md5sum] = "0d270c997aff29708c74d53f599ef717" +SRC_URI[sha256sum] = "f6f4910fd033078738bd82bfba4f49219d03b17eb0794eb91efbae419f4aba10" +UPSTREAM_CHECK_REGEX = "xz-(?P\d+(\.\d+)+)\.tar" + +CACHED_CONFIGUREVARS += "gl_cv_posix_shell=/bin/sh" + +inherit autotools gettext + +PACKAGES =+ "liblzma" + +FILES_liblzma = "${libdir}/liblzma*${SOLIBS}" + +inherit update-alternatives +ALTERNATIVE_PRIORITY = "100" +ALTERNATIVE_${PN} = "xz xzcat unxz \ + lzma lzcat unlzma" + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb index a3325b50b..d5a88dfb3 100644 --- a/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb +++ b/poky/meta/recipes-gnome/gcr/gcr_3.36.0.bb @@ -8,7 +8,7 @@ BUGTRACKER = "https://gitlab.gnome.org/GNOME/gcr/issues" LICENSE = "GPLv2" LIC_FILES_CHKSUM = "file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605" -DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt \ +DEPENDS = "gtk+3 p11-kit glib-2.0 libgcrypt gnupg-native \ ${@bb.utils.contains('GI_DATA_ENABLED', 'True', 'libxslt-native', '', d)}" GNOMEBASEBUILDCLASS = "meson" diff --git a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb deleted file mode 100644 index a68175dc8..000000000 --- a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.0.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "GNOME desktop-wide GSettings schemas" -DESCRIPTION = "GSettings desktop-wide schemas contains a collection of \ -GSettings schemas for settings shared by various components of a desktop." -HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas" -BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -DEPENDS = "glib-2.0" - -GNOMEBASEBUILDCLASS = "meson" - -inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even - -SRC_URI[archive.md5sum] = "697db9e6b2ae058f8a0d0b023e32ceac" -SRC_URI[archive.sha256sum] = "764ab683286536324533a58d4e95fc57f81adaba7d880dd0ebbbced63e960ea6" -SRC_URI += "file://0001-Do-not-skip-gir-installation-for-cross-compiling.patch" diff --git a/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb new file mode 100644 index 000000000..f54b242e7 --- /dev/null +++ b/poky/meta/recipes-gnome/gsettings-desktop-schemas/gsettings-desktop-schemas_3.36.1.bb @@ -0,0 +1,18 @@ +SUMMARY = "GNOME desktop-wide GSettings schemas" +DESCRIPTION = "GSettings desktop-wide schemas contains a collection of \ +GSettings schemas for settings shared by various components of a desktop." +HOMEPAGE = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas" +BUGTRACKER = "https://gitlab.gnome.org/GNOME/gsettings-desktop-schemas/issues" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +DEPENDS = "glib-2.0" + +GNOMEBASEBUILDCLASS = "meson" + +inherit gnomebase gsettings gobject-introspection gettext upstream-version-is-even + +SRC_URI[archive.md5sum] = "708ddd8dec388ebda5539667604197c3" +SRC_URI[archive.sha256sum] = "004bdbe43cf8290f2de7d8537e14d8957610ca479a4fa368e34dbd03f03ec9d9" +SRC_URI += "file://0001-Do-not-skip-gir-installation-for-cross-compiling.patch" diff --git a/poky/meta/recipes-gnome/gtk+/gtk+3.inc b/poky/meta/recipes-gnome/gtk+/gtk+3.inc index 5d1f59ea1..615415400 100644 --- a/poky/meta/recipes-gnome/gtk+/gtk+3.inc +++ b/poky/meta/recipes-gnome/gtk+/gtk+3.inc @@ -46,6 +46,8 @@ do_compile_prepend() { PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl wayland x11', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'glx', '', d)}" +PACKAGECONFIG_class-native = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" PACKAGECONFIG[x11] = "--enable-x11-backend,--disable-x11-backend,at-spi2-atk fontconfig libx11 libxext libxcursor libxi libxdamage libxrandr libxrender libxcomposite libxfixes" # this is provided by oe-core patch that removes epoxy/gl dependency from a X11 build diff --git a/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch b/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch new file mode 100644 index 000000000..51ee66f42 --- /dev/null +++ b/poky/meta/recipes-gnome/libsecret/files/0001-meson-add-option-introspection.patch @@ -0,0 +1,137 @@ +meson: add option introspection + +Add an option 'introspection' for meson which could control whether +build GIR files or not. + +Upstream-Status: Submitted [https://gitlab.gnome.org/GNOME/libsecret/-/merge_requests/53] + +Signed-off-by: Kai Kang +--- + libsecret/meson.build | 86 ++++++++++++++++++++++--------------------- + meson.build | 1 + + meson_options.txt | 1 + + 3 files changed, 46 insertions(+), 42 deletions(-) + +diff --git a/libsecret/meson.build b/libsecret/meson.build +index 759b5ef..2ee8850 100644 +--- a/libsecret/meson.build ++++ b/libsecret/meson.build +@@ -104,50 +104,52 @@ libsecret_dep = declare_dependency( + ) + + # GObject Introspection +-libsecret_gir_sources = [ +- 'secret-attributes.c', +- 'secret-attributes.h', +- 'secret-backend.c', +- 'secret-backend.h', +- 'secret-collection.c', +- 'secret-collection.h', +- 'secret-item.c', +- 'secret-item.h', +- 'secret-methods.c', +- 'secret-password.c', +- 'secret-password.h', +- 'secret-paths.c', +- 'secret-paths.h', +- 'secret-prompt.c', +- 'secret-prompt.h', +- 'secret-retrievable.c', +- 'secret-retrievable.h', +- 'secret-schema.c', +- 'secret-schema.h', +- 'secret-schemas.c', +- 'secret-schemas.h', +- 'secret-service.c', +- 'secret-service.h', +- 'secret-types.h', +- 'secret-value.c', +- 'secret-value.h', +-] +-libsecret_gir_sources += version_h +-libsecret_gir_sources += _enums_generated +- +-libsecret_gir = gnome.generate_gir(libsecret, +- sources: libsecret_gir_sources, +- namespace: 'Secret', +- nsversion: api_version_major, +- export_packages: 'libsecret-@0@'.format(api_version_major), +- includes: [ 'GObject-2.0', 'Gio-2.0' ], +- header: 'libsecret/secret.h', +- extra_args: [ '-D SECRET_COMPILATION'], +- install: true, +-) ++if with_gir ++ libsecret_gir_sources = [ ++ 'secret-attributes.c', ++ 'secret-attributes.h', ++ 'secret-backend.c', ++ 'secret-backend.h', ++ 'secret-collection.c', ++ 'secret-collection.h', ++ 'secret-item.c', ++ 'secret-item.h', ++ 'secret-methods.c', ++ 'secret-password.c', ++ 'secret-password.h', ++ 'secret-paths.c', ++ 'secret-paths.h', ++ 'secret-prompt.c', ++ 'secret-prompt.h', ++ 'secret-retrievable.c', ++ 'secret-retrievable.h', ++ 'secret-schema.c', ++ 'secret-schema.h', ++ 'secret-schemas.c', ++ 'secret-schemas.h', ++ 'secret-service.c', ++ 'secret-service.h', ++ 'secret-types.h', ++ 'secret-value.c', ++ 'secret-value.h', ++ ] ++ libsecret_gir_sources += version_h ++ libsecret_gir_sources += _enums_generated ++ ++ libsecret_gir = gnome.generate_gir(libsecret, ++ sources: libsecret_gir_sources, ++ namespace: 'Secret', ++ nsversion: api_version_major, ++ export_packages: 'libsecret-@0@'.format(api_version_major), ++ includes: [ 'GObject-2.0', 'Gio-2.0' ], ++ header: 'libsecret/secret.h', ++ extra_args: [ '-D SECRET_COMPILATION'], ++ install: true, ++ ) ++endif + + # Vapi +-if with_vapi ++if with_vapi and with_gir + libsecret_vapi = gnome.generate_vapi('libsecret-@0@'.format(api_version_major), + sources: libsecret_gir[0], + metadata_dirs: meson.source_root() / 'libsecret', +diff --git a/meson.build b/meson.build +index a26d046..d22e008 100644 +--- a/meson.build ++++ b/meson.build +@@ -22,6 +22,7 @@ with_gcrypt = get_option('gcrypt') + enable_debug = get_option('debugging') + with_vapi = get_option('vapi') + with_gtkdoc = get_option('gtk_doc') ++with_gir = get_option('introspection') + + # Some variables + config_h_dir = include_directories('.') +diff --git a/meson_options.txt b/meson_options.txt +index c1fda5d..445aeb0 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -3,3 +3,4 @@ option('gcrypt', type: 'boolean', value: true, description: 'With gcrypt and tra + option('debugging', type: 'boolean', value: false, description: 'Turn debugging on/off') + option('vapi', type: 'boolean', value: true, description: 'Create VAPI file.') + option('gtk_doc', type: 'boolean', value: true, description: 'Build reference documentation using gtk-doc') ++option('introspection', type: 'boolean', value: true, description: 'Create GIR file.') +-- +2.17.1 + diff --git a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb index d3a0c2ff5..533015a1e 100644 --- a/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb +++ b/poky/meta/recipes-gnome/libsecret/libsecret_0.20.3.bb @@ -13,15 +13,13 @@ inherit gnomebase gtk-doc vala gobject-introspection manpages DEPENDS += "glib-2.0 libgcrypt gettext-native" +SRC_URI += "file://0001-meson-add-option-introspection.patch" + SRC_URI[archive.md5sum] = "47c3fdfeb111a87b509ad271e4a6f496" SRC_URI[archive.sha256sum] = "4fcb3c56f8ac4ab9c75b66901fb0104ec7f22aa9a012315a14c0d6dffa5290e4" GTKDOC_MESON_OPTION = 'gtk_doc' -# gobject-introspection is mandatory and cannot be configured -REQUIRED_DISTRO_FEATURES = "gobject-introspection-data" -UNKNOWN_CONFIGURE_WHITELIST_append = " introspection" - PACKAGECONFIG[manpages] = "-Dmanpage=true,-Dmanpage=false,libxslt-native xmlto-native" # http://errors.yoctoproject.org/Errors/Details/20228/ diff --git a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb index b772c2ece..092c77b82 100644 --- a/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb +++ b/poky/meta/recipes-graphics/cairo/cairo_1.16.0.bb @@ -42,6 +42,8 @@ PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'directfb', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \ trace" +PACKAGECONFIG_class-native = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11 xcb', '', d)}" PACKAGECONFIG[x11] = "--with-x=yes -enable-xlib,--with-x=no --disable-xlib,${X11DEPENDS}" PACKAGECONFIG[xcb] = "--enable-xcb,--disable-xcb,libxcb" diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb b/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb deleted file mode 100644 index d1c093054..000000000 --- a/poky/meta/recipes-graphics/freetype/freetype_2.10.1.bb +++ /dev/null @@ -1,47 +0,0 @@ -SUMMARY = "Freetype font rendering library" -DESCRIPTION = "FreeType is a software font engine that is designed to be small, efficient, \ -highly customizable, and portable while capable of producing high-quality output (glyph \ -images). It can be used in graphics libraries, display servers, font conversion tools, text \ -image generation tools, and many other products as well." -HOMEPAGE = "http://www.freetype.org/" -BUGTRACKER = "https://savannah.nongnu.org/bugs/?group=freetype" -SECTION = "libs" - -LICENSE = "FreeType | GPLv2+" -LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=4af6221506f202774ef74f64932878a1 \ - file://docs/FTL.TXT;md5=9f37b4e6afa3fef9dba8932b16bd3f97 \ - file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" - -SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz \ - file://use-right-libtool.patch \ - " -SRC_URI[md5sum] = "bd42e75127f8431923679480efb5ba8f" -SRC_URI[sha256sum] = "16dbfa488a21fe827dc27eaf708f42f7aa3bb997d745d31a19781628c36ba26f" - -UPSTREAM_CHECK_REGEX = "freetype-(?P\d+(\.\d+)+)" - -inherit autotools pkgconfig multilib_header - -# Adapt autotools to work with the minimal autoconf usage in freetype -AUTOTOOLS_SCRIPT_PATH = "${S}/builds/unix" -CONFIGURE_SCRIPT = "${S}/configure" -EXTRA_AUTORECONF += "--exclude=autoheader --exclude=automake" - -PACKAGECONFIG ??= "zlib pixmap" - -PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2" -# harfbuzz results in a circular dependency so enabling is non-trivial -PACKAGECONFIG[harfbuzz] = "--with-harfbuzz,--without-harfbuzz,harfbuzz" -PACKAGECONFIG[pixmap] = "--with-png,--without-png,libpng" -PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" -PACKAGECONFIG[freetypeconfig] = "--enable-freetype-config=yes,--enable-freetype-config=no," - -EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" - -TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" - -do_install_append() { - oe_multilib_header freetype2/freetype/config/ftconfig.h -} - -BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb b/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb new file mode 100644 index 000000000..1034ddc0d --- /dev/null +++ b/poky/meta/recipes-graphics/freetype/freetype_2.10.2.bb @@ -0,0 +1,47 @@ +SUMMARY = "Freetype font rendering library" +DESCRIPTION = "FreeType is a software font engine that is designed to be small, efficient, \ +highly customizable, and portable while capable of producing high-quality output (glyph \ +images). It can be used in graphics libraries, display servers, font conversion tools, text \ +image generation tools, and many other products as well." +HOMEPAGE = "http://www.freetype.org/" +BUGTRACKER = "https://savannah.nongnu.org/bugs/?group=freetype" +SECTION = "libs" + +LICENSE = "FreeType | GPLv2+" +LIC_FILES_CHKSUM = "file://docs/LICENSE.TXT;md5=4af6221506f202774ef74f64932878a1 \ + file://docs/FTL.TXT;md5=9f37b4e6afa3fef9dba8932b16bd3f97 \ + file://docs/GPLv2.TXT;md5=8ef380476f642c20ebf40fecb0add2ec" + +SRC_URI = "${SAVANNAH_NONGNU_MIRROR}/${BPN}/${BP}.tar.xz \ + file://use-right-libtool.patch \ + " +SRC_URI[md5sum] = "7c0d5a39f232d7eb9f9d7da76bf08074" +SRC_URI[sha256sum] = "1543d61025d2e6312e0a1c563652555f17378a204a61e99928c9fcef030a2d8b" + +UPSTREAM_CHECK_REGEX = "freetype-(?P\d+(\.\d+)+)" + +inherit autotools pkgconfig multilib_header + +# Adapt autotools to work with the minimal autoconf usage in freetype +AUTOTOOLS_SCRIPT_PATH = "${S}/builds/unix" +CONFIGURE_SCRIPT = "${S}/configure" +EXTRA_AUTORECONF += "--exclude=autoheader --exclude=automake" + +PACKAGECONFIG ??= "zlib pixmap" + +PACKAGECONFIG[bzip2] = "--with-bzip2,--without-bzip2,bzip2" +# harfbuzz results in a circular dependency so enabling is non-trivial +PACKAGECONFIG[harfbuzz] = "--with-harfbuzz,--without-harfbuzz,harfbuzz" +PACKAGECONFIG[pixmap] = "--with-png,--without-png,libpng" +PACKAGECONFIG[zlib] = "--with-zlib,--without-zlib,zlib" +PACKAGECONFIG[freetypeconfig] = "--enable-freetype-config=yes,--enable-freetype-config=no," + +EXTRA_OECONF = "CC_BUILD='${BUILD_CC}'" + +TARGET_CPPFLAGS += "-D_FILE_OFFSET_BITS=64" + +do_install_append() { + oe_multilib_header freetype2/freetype/config/ftconfig.h +} + +BBCLASSEXTEND = "native nativesdk" diff --git a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb index 0782c6ce3..6646ef79f 100644 --- a/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb +++ b/poky/meta/recipes-graphics/libepoxy/libepoxy_1.5.4.bb @@ -19,8 +19,6 @@ UPSTREAM_CHECK_URI = "https://github.com/anholt/libepoxy/releases" inherit meson pkgconfig features_check REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" PACKAGECONFIG[egl] = "-Degl=yes, -Degl=no, virtual/egl" PACKAGECONFIG[x11] = "-Dglx=yes, -Dglx=no -Dx11=false, virtual/libx11 virtual/libgl" diff --git a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb index c1c941e45..83dce8680 100644 --- a/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb +++ b/poky/meta/recipes-graphics/libsdl2/libsdl2_2.0.12.bb @@ -45,8 +45,8 @@ EXTRA_OECONF = "--disable-oss --disable-esd --disable-arts \ # and BSP layers to pick either (desktop) opengl, gles2, or no GL PACKAGECONFIG_GL ?= "${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}" -PACKAGECONFIG_class-native = "x11" -PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}" +PACKAGECONFIG_class-native = "x11 ${PACKAGECONFIG_GL}" +PACKAGECONFIG_class-nativesdk = "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)} ${PACKAGECONFIG_GL}" PACKAGECONFIG ??= " \ ${PACKAGECONFIG_GL} \ ${@bb.utils.filter('DISTRO_FEATURES', 'alsa directfb pulseaudio x11', d)} \ diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb deleted file mode 100644 index 2c845238d..000000000 --- a/poky/meta/recipes-graphics/libva/libva-initial_2.6.1.bb +++ /dev/null @@ -1,9 +0,0 @@ -require libva.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" -SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" -SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" - -do_install_append () { - rm -f ${D}${libdir}/*.so* -} diff --git a/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb new file mode 100644 index 000000000..3e2b806c6 --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-initial_2.7.1.bb @@ -0,0 +1,8 @@ +require libva.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" +SRC_URI[sha256sum] = "a00ff19d9f969259b9784172adad7788dbf3de827d985c5d27c230efd5d98a04" + +do_install_append () { + rm -f ${D}${libdir}/*.so* +} diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb deleted file mode 100644 index 03b38027a..000000000 --- a/poky/meta/recipes-graphics/libva/libva-utils_2.6.0.bb +++ /dev/null @@ -1,32 +0,0 @@ -SUMMARY = "libva-utils is a collection of utilities from libva project" - -DESCRIPTION = "libva-utils is a collection of utilities \ -and examples to exercise VA-API in accordance with the libva \ -project.VA-API is an open-source library and API specification, \ -which provides access to graphics hardware acceleration capabilities \ -for video processing. It consists of a main library and driver-specific \ -acceleration backends for each supported hardware vendor" - -HOMEPAGE = "https://01.org/linuxmedia/vaapi" -BUGTRACKER = "https://github.com/intel/libva-utils/issues" - -SECTION = "x11" -LICENSE = "MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" - -SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.6-branch" -SRCREV = "8ea1eba433dcbceb0e5dcb54b8e3f984987f7a17" -S = "${WORKDIR}/git" - -UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))" - -DEPENDS = "libva" - -inherit meson pkgconfig features_check - -# depends on libva which requires opengl -REQUIRED_DISTRO_FEATURES = "opengl" - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" -PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb new file mode 100644 index 000000000..92a5b099b --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva-utils_2.7.1.bb @@ -0,0 +1,32 @@ +SUMMARY = "libva-utils is a collection of utilities from libva project" + +DESCRIPTION = "libva-utils is a collection of utilities \ +and examples to exercise VA-API in accordance with the libva \ +project.VA-API is an open-source library and API specification, \ +which provides access to graphics hardware acceleration capabilities \ +for video processing. It consists of a main library and driver-specific \ +acceleration backends for each supported hardware vendor" + +HOMEPAGE = "https://01.org/linuxmedia/vaapi" +BUGTRACKER = "https://github.com/intel/libva-utils/issues" + +SECTION = "x11" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=b148fc8adf19dc9aec17cf9cd29a9a5e" + +SRC_URI = "git://github.com/intel/libva-utils.git;branch=v2.7-branch" +SRCREV = "5a24c635f6fb2b9ac31cab3360afca50e1860812" +S = "${WORKDIR}/git" + +UPSTREAM_CHECK_GITTAGREGEX = "(?P(\d+(\.\d+)+))" + +DEPENDS = "libva" + +inherit meson pkgconfig features_check + +# depends on libva which requires opengl +REQUIRED_DISTRO_FEATURES = "opengl" + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)}" +PACKAGECONFIG[x11] = "-Dx11=true, -Dx11=false,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[wayland] = "-Dwayland=true, -Dwayland=false,wayland-native wayland" diff --git a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb b/poky/meta/recipes-graphics/libva/libva_2.6.1.bb deleted file mode 100644 index e8cb8678b..000000000 --- a/poky/meta/recipes-graphics/libva/libva_2.6.1.bb +++ /dev/null @@ -1,24 +0,0 @@ -require libva.inc - -LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" -SRC_URI[md5sum] = "aef13eb48e01a47d1416d97462a22a11" -SRC_URI[sha256sum] = "6c57eb642d828af2411aa38f55dc10111e8c98976dbab8fd62e48629401eaea5" - -PACKAGECONFIG ??= " \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ - ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ -" - -PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" -PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" - -PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" - -PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" - -RDEPENDS_${PN}-x11 =+ "${PN}" -RDEPENDS_${PN}-glx =+ "${PN}-x11" - -FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" -FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" -FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/libva/libva_2.7.1.bb b/poky/meta/recipes-graphics/libva/libva_2.7.1.bb new file mode 100644 index 000000000..b2deb017a --- /dev/null +++ b/poky/meta/recipes-graphics/libva/libva_2.7.1.bb @@ -0,0 +1,23 @@ +require libva.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=2e48940f94acb0af582e5ef03537800f" +SRC_URI[sha256sum] = "a00ff19d9f969259b9784172adad7788dbf3de827d985c5d27c230efd5d98a04" + +PACKAGECONFIG ??= " \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'glx', '', d)} \ + ${@bb.utils.filter('DISTRO_FEATURES', 'x11 wayland', d)} \ +" + +PACKAGECONFIG[x11] = "-Dwith_x11=yes,-Dwith_x11=no,virtual/libx11 libxext libxfixes" +PACKAGECONFIG[glx] = "-Dwith_glx=yes,-Dwith_glx=no,virtual/mesa" + +PACKAGECONFIG[wayland] = "-Dwith_wayland=yes,-Dwith_wayland=no,wayland-native wayland" + +PACKAGES =+ "${PN}-x11 ${PN}-glx ${PN}-wayland" + +RDEPENDS_${PN}-x11 =+ "${PN}" +RDEPENDS_${PN}-glx =+ "${PN}-x11" + +FILES_${PN}-x11 =+ "${libdir}/libva-x11*${SOLIBS}" +FILES_${PN}-glx =+ "${libdir}/libva-glx*${SOLIBS}" +FILES_${PN}-wayland =+ "${libdir}/libva-wayland*${SOLIBS}" diff --git a/poky/meta/recipes-graphics/mesa/mesa.inc b/poky/meta/recipes-graphics/mesa/mesa.inc index fede691d6..bb43a9a8b 100644 --- a/poky/meta/recipes-graphics/mesa/mesa.inc +++ b/poky/meta/recipes-graphics/mesa/mesa.inc @@ -212,18 +212,20 @@ python __anonymous() { ("gles", "libgles3",)): if not p[0] in pkgconfig: continue - fullp = p[1] + "-mesa" - pkgs = " ".join(p[1:]) + mlprefix = d.getVar("MLPREFIX") + fullp = mlprefix + p[1] + "-mesa" + mlprefix = d.getVar("MLPREFIX") + pkgs = " ".join(mlprefix + x for x in p[1:]) d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") d.appendVar("RREPLACES_" + fullp, pkgs) d.appendVar("RPROVIDES_" + fullp, pkgs) d.appendVar("RCONFLICTS_" + fullp, pkgs) - d.appendVar("RRECOMMENDS_" + fullp, " mesa-megadriver") + d.appendVar("RRECOMMENDS_" + fullp, " ${MLPREFIX}mesa-megadriver") # For -dev, the first element is both the Debian and original name fullp += "-dev" - pkgs = p[1] + "-dev" + pkgs = mlprefix + p[1] + "-dev" d.setVar("DEBIAN_NOAUTONAME_" + fullp, "1") d.appendVar("RREPLACES_" + fullp, pkgs) d.appendVar("RPROVIDES_" + fullp, pkgs) diff --git a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb index 1046b8504..29b12628d 100644 --- a/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb +++ b/poky/meta/recipes-graphics/virglrenderer/virglrenderer_0.8.2.bb @@ -22,5 +22,3 @@ inherit meson pkgconfig features_check BBCLASSEXTEND = "native nativesdk" REQUIRED_DISTRO_FEATURES = "opengl" -REQUIRED_DISTRO_FEATURES_class-native = "" -REQUIRED_DISTRO_FEATURES_class-nativesdk = "" diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb deleted file mode 100644 index 7173409e0..000000000 --- a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200122.bb +++ /dev/null @@ -1,936 +0,0 @@ -SUMMARY = "Firmware files for use with Linux kernel" -SECTION = "kernel" - -LICENSE = "\ - Firmware-Abilis \ - & Firmware-adsp_sst \ - & Firmware-agere \ - & Firmware-amdgpu \ - & Firmware-amd-ucode \ - & Firmware-amlogic_vdec \ - & Firmware-atheros_firmware \ - & Firmware-atmel \ - & Firmware-broadcom_bcm43xx \ - & Firmware-ca0132 \ - & Firmware-cavium \ - & Firmware-chelsio_firmware \ - & Firmware-cw1200 \ - & Firmware-cypress \ - & Firmware-dib0700 \ - & Firmware-e100 \ - & Firmware-ene_firmware \ - & Firmware-fw_sst_0f28 \ - & Firmware-go7007 \ - & Firmware-GPLv2 \ - & Firmware-hfi1_firmware \ - & Firmware-i2400m \ - & Firmware-i915 \ - & Firmware-ibt_firmware \ - & Firmware-it913x \ - & Firmware-iwlwifi_firmware \ - & Firmware-IntcSST2 \ - & Firmware-kaweth \ - & Firmware-Marvell \ - & Firmware-moxa \ - & Firmware-myri10ge_firmware \ - & Firmware-netronome \ - & Firmware-nvidia \ - & Firmware-OLPC \ - & Firmware-ath9k-htc \ - & Firmware-phanfw \ - & Firmware-qat \ - & Firmware-qcom \ - & Firmware-qla1280 \ - & Firmware-qla2xxx \ - & Firmware-qualcommAthos_ar3k \ - & Firmware-qualcommAthos_ath10k \ - & Firmware-r8a779x_usb3 \ - & Firmware-radeon \ - & Firmware-ralink_a_mediatek_company_firmware \ - & Firmware-ralink-firmware \ - & Firmware-rtlwifi_firmware \ - & Firmware-imx-sdma_firmware \ - & Firmware-siano \ - & Firmware-tda7706-firmware \ - & Firmware-ti-connectivity \ - & Firmware-ti-keystone \ - & Firmware-ueagle-atm4-firmware \ - & Firmware-via_vt6656 \ - & Firmware-wl1251 \ - & Firmware-xc4000 \ - & Firmware-xc5000 \ - & Firmware-xc5000c \ - & WHENCE \ -" - -LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ - file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ - file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ - file://LICENSE.amdgpu;md5=d357524f5099e2a3db3c1838921c593f \ - file://LICENSE.amd-ucode;md5=3c5399dc9148d7f0e1f41e34b69cf14f \ - file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ - file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ - file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ - file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ - file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ - file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ - file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ - file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ - file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ - file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ - file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ - file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ - file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ - file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ - file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ - file://GPL-2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ - file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \ - file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ - file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ - file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ - file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ - file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ - file://LICENCE.iwlwifi_firmware;md5=3fd842911ea93c29cd32679aa23e1c88 \ - file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ - file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ - file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ - file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ - file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ - file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ - file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ - file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ - file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ - file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ - file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ - file://LICENCE.qat_firmware;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ - file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ - file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ - file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ - file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ - file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ - file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ - file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ - file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ - file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ - file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ - file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ - file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ - file://LICENCE.tda7706-firmware.txt;md5=835997cf5e3c131d0dddd695c7d9103e \ - file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ - file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ - file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ - file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ - file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ - file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ - file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ - file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ - file://WHENCE;md5=c27d0c06cd5d376d8ab55860e65ba4e4 \ - " - -# These are not common licenses, set NO_GENERIC_LICENSE for them -# so that the license files will be copied from fetched source -NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" -NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" -NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" -NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" -NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" -NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" -NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" -NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" -NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" -NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" -NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" -NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" -NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" -NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" -NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" -NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" -NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" -NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" -NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" -NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" -NO_GENERIC_LICENSE[Firmware-GPLv2] = "GPL-2" -NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" -NO_GENERIC_LICENSE[Firmware-i2400m] = "LICENCE.i2400m" -NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" -NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" -NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" -NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" -NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" -NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" -NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" -NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" -NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" -NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" -NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" -NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" -NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" -NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" -NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" -NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" -NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" -NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" -NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" -NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" -NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" -NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" -NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" -NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" -NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" -NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" -NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" -NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" -NO_GENERIC_LICENSE[Firmware-tda7706-firmware] = "LICENCE.tda7706-firmware.txt" -NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" -NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" -NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" -NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" -NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" -NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" -NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" -NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" -NO_GENERIC_LICENSE[WHENCE] = "WHENCE" - -PE = "1" - -SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz" - -SRC_URI[md5sum] = "ac291b21f366ae2a37193ec8f14c39d2" -SRC_URI[sha256sum] = "a30e811b3736a72b874ac27e10662f5e5409b1cadf8aab7ba88e8f8bc8083986" - -inherit allarch - -CLEANBROKEN = "1" - -do_compile() { - : -} - -do_install() { - oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' install - cp GPL-2 LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ -} - - -PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ - ${PN}-mt7601u-license ${PN}-mt7601u \ - ${PN}-radeon-license ${PN}-radeon \ - ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ - ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 ${PN}-sd8887 ${PN}-sd8897 \ - ${PN}-usb8997 \ - ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ - ${PN}-vt6656-license ${PN}-vt6656 \ - ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ - ${PN}-rtl8168 \ - ${PN}-cypress-license \ - ${PN}-broadcom-license \ - ${PN}-bcm-0bb4-0306 \ - ${PN}-bcm43143 \ - ${PN}-bcm43236b \ - ${PN}-bcm43241b0 \ - ${PN}-bcm43241b4 \ - ${PN}-bcm43241b5 \ - ${PN}-bcm43242a \ - ${PN}-bcm4329 \ - ${PN}-bcm4329-fullmac \ - ${PN}-bcm4330 \ - ${PN}-bcm4334 \ - ${PN}-bcm43340 \ - ${PN}-bcm4335 \ - ${PN}-bcm43362 \ - ${PN}-bcm4339 \ - ${PN}-bcm43430 \ - ${PN}-bcm43430a0 \ - ${PN}-bcm43455 \ - ${PN}-bcm4350 \ - ${PN}-bcm4350c2 \ - ${PN}-bcm4354 \ - ${PN}-bcm4356 \ - ${PN}-bcm4356-pcie \ - ${PN}-bcm43569 \ - ${PN}-bcm43570 \ - ${PN}-bcm4358 \ - ${PN}-bcm43602 \ - ${PN}-bcm4366b \ - ${PN}-bcm4366c \ - ${PN}-bcm4371 \ - ${PN}-bcm4373 \ - ${PN}-bcm43xx \ - ${PN}-bcm43xx-hdr \ - ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ - ${PN}-gplv2-license ${PN}-carl9170 \ - ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-qca \ - \ - ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ - \ - ${PN}-iwlwifi-license ${PN}-iwlwifi \ - ${PN}-iwlwifi-135-6 \ - ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ - ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ - ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ - ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ - ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ - ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ - ${PN}-iwlwifi-7260 \ - ${PN}-iwlwifi-7265 \ - ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ - ${PN}-iwlwifi-9000 \ - ${PN}-iwlwifi-misc \ - ${PN}-ibt-license ${PN}-ibt ${PN}-ibt-misc \ - ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ - ${PN}-ibt-17 \ - ${PN}-i915-license ${PN}-i915 \ - ${PN}-adsp-sst-license ${PN}-adsp-sst \ - ${PN}-bnx2-mips \ - ${PN}-liquidio \ - ${PN}-netronome-license ${PN}-netronome \ - ${PN}-qat ${PN}-qat-license \ - ${PN}-qcom-license \ - ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 \ - ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 \ - ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ - ${PN}-whence-license \ - ${PN}-license \ - " - -# For atheros -LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" -LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" -LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" -LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" - -FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" -FILES_${PN}-ar9170 = " \ - ${nonarch_base_libdir}/firmware/ar9170*.fw \ -" -FILES_${PN}-ath6k = " \ - ${nonarch_base_libdir}/firmware/ath6k \ -" -FILES_${PN}-ath9k = " \ - ${nonarch_base_libdir}/firmware/ar9271.fw \ - ${nonarch_base_libdir}/firmware/ar7010*.fw \ - ${nonarch_base_libdir}/firmware/htc_9271.fw \ - ${nonarch_base_libdir}/firmware/htc_7010.fw \ - ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ - ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ -" - -RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" -RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" -RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" - -# For carl9170 -LICENSE_${PN}-carl9170 = "Firmware-GPLv2" -LICENSE_${PN}-gplv2-license = "Firmware-GPLv2" - -FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2" -FILES_${PN}-carl9170 = " \ - ${nonarch_base_libdir}/firmware/carl9170*.fw \ -" - -RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license" - -# For QualCommAthos -LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" -LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" -LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" -LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" -LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k" - -FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" -FILES_${PN}-ar3k = " \ - ${nonarch_base_libdir}/firmware/ar3k \ -" - -FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" -FILES_${PN}-ath10k = " \ - ${nonarch_base_libdir}/firmware/ath10k \ -" - -FILES_${PN}-qca = " \ - ${nonarch_base_libdir}/firmware/qca \ -" - -RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license" -RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" -RDEPENDS_${PN}-qca += "${PN}-ath10k-license" - -# For ralink -LICENSE_${PN}-ralink = "Firmware-ralink-firmware" -LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" - -FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" -FILES_${PN}-ralink = " \ - ${nonarch_base_libdir}/firmware/rt*.bin \ -" - -RDEPENDS_${PN}-ralink += "${PN}-ralink-license" - -# For mediatek MT7601U -LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" -LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware" - -FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" -FILES_${PN}-mt7601u = " \ - ${nonarch_base_libdir}/firmware/mt7601u.bin \ -" - -RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license" - -# For radeon -LICENSE_${PN}-radeon = "Firmware-radeon" -LICENSE_${PN}-radeon-license = "Firmware-radeon" - -FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" -FILES_${PN}-radeon = " \ - ${nonarch_base_libdir}/firmware/radeon \ -" - -RDEPENDS_${PN}-radeon += "${PN}-radeon-license" - -# For marvell -LICENSE_${PN}-pcie8897 = "Firmware-Marvell" -LICENSE_${PN}-pcie8997 = "Firmware-Marvell" -LICENSE_${PN}-sd8686 = "Firmware-Marvell" -LICENSE_${PN}-sd8688 = "Firmware-Marvell" -LICENSE_${PN}-sd8787 = "Firmware-Marvell" -LICENSE_${PN}-sd8797 = "Firmware-Marvell" -LICENSE_${PN}-sd8801 = "Firmware-Marvell" -LICENSE_${PN}-sd8887 = "Firmware-Marvell" -LICENSE_${PN}-sd8897 = "Firmware-Marvell" -LICENSE_${PN}-usb8997 = "Firmware-Marvell" -LICENSE_${PN}-marvell-license = "Firmware-Marvell" - -FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" -FILES_${PN}-pcie8897 = " \ - ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ -" -FILES_${PN}-pcie8997 = " \ - ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ - ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ - ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ -" -FILES_${PN}-sd8686 = " \ - ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ - ${nonarch_base_libdir}/firmware/sd8686* \ -" -FILES_${PN}-sd8688 = " \ - ${nonarch_base_libdir}/firmware/libertas/sd8688* \ - ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ -" -FILES_${PN}-sd8787 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ -" -FILES_${PN}-sd8797 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ -" -FILES_${PN}-sd8801 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ -" -FILES_${PN}-sd8887 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ -" -FILES_${PN}-sd8897 = " \ - ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ -" -FILES_${PN}-usb8997 = " \ - ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ -" - -RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license" -RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license" -RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license" - -# For netronome -LICENSE_${PN}-netronome = "Firmware-netronome" - -FILES_${PN}-netronome-license = " \ - ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ -" -FILES_${PN}-netronome = " \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ - ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ -" - -RDEPENDS_${PN}-netronome += "${PN}-netronome-license" - -# For rtl -LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" -LICENSE_${PN}-rtl8168 = "WHENCE" - -FILES_${PN}-rtl-license = " \ - ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ -" -FILES_${PN}-rtl8188 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ -" -FILES_${PN}-rtl8192cu = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ -" -FILES_${PN}-rtl8192ce = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ -" -FILES_${PN}-rtl8192su = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ -" -FILES_${PN}-rtl8723 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ -" -FILES_${PN}-rtl8821 = " \ - ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ -" -FILES_${PN}-rtl8168 = " \ - ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ -" - -RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license" -RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license" - -# For ti-connectivity -LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity" -LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" -LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" -LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" - -FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" -# wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to -# wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c -# and drivers/net/wireless/ti/wlcore/spi.c. -# While they're optional and actually only used to override the MAC -# address on wl18xx, driver loading will delay (by udev timout - 60s) -# if not there. So let's make it available always. Because it's a -# symlink, both need to go to wlcommon. -FILES_${PN}-wlcommon = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ -" -FILES_${PN}-wl12xx = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ -" -FILES_${PN}-wl18xx = " \ - ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ -" - -RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" -RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" - -# For vt6656 -LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" -LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" - -FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" -FILES_${PN}-vt6656 = " \ - ${nonarch_base_libdir}/firmware/vntwusb.fw \ -" - -RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license" - -# For broadcom - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u - -LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" -FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES - -FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" -FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" -FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" -FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" -FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" -FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" -FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" -FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" -FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin" -FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" -FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" -FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" -FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" -FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ -" -FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" -FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*" -FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" -FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" -FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin" -FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" -FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin" -FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" -FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ -" -FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" -FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" -FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" - -# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done -# Currently 1st one and last 6 have cypress LICENSE - -LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license" -LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" -RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license" - -# For broadcom cypress - -LICENSE_${PN}-cypress-license = "Firmware-cypress" -FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" - -FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" -FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*" -FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*" -FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*" -FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin" -FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*" -FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ - ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ -" - -LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress" -RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43340 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43362 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license" -LICENSE_${PN}-bcm43430 = "Firmware-cypress" -RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license" -LICENSE_${PN}-bcm4354 = "Firmware-cypress" -RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license" -LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress" -RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license" -LICENSE_${PN}-bcm4373 = "Firmware-cypress" -RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license" - -# For Broadcom bnx2-mips -# -# which is a separate case to the other Broadcom firmwares since its -# license is contained in the shared WHENCE file. - -LICENSE_${PN}-bnx2-mips = "WHENCE" -LICENSE_${PN}-whence-license = "WHENCE" - -FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" -FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" - -RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" - -# For imx-sdma -LICENSE_${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" -LICENSE_${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" -LICENSE_${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" - -FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" - -RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" -RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" -RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" - -FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" - -FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" - -RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" -RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" - -# For iwlwifi -LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" -LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" - - -FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" -FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" -FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" -FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" -FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" -FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" -FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" -FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" -FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" -FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" -FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" -FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" -FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" -FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" -FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" -FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" -FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" -FILES_${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" -FILES_${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" -FILES_${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" -FILES_${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" -FILES_${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" -FILES_${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" -FILES_${PN}-iwlwifi-misc = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode" - -RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" -RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" - -# -iwlwifi-misc is a "catch all" package that includes all the iwlwifi -# firmwares that are not already included in other -iwlwifi- packages. -# -iwlwifi is a virtual package that depends upon all iwlwifi packages. -# These are distinct in order to allow the -misc firmwares to be installed -# without pulling in every other iwlwifi package. -ALLOW_EMPTY_${PN}-iwlwifi = "1" -ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" - -# Handle package updating for the newly merged iwlwifi groupings -RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" -RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" -RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" - -RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" -RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" -RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" - -# For ibt -LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-11-5 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-12-16 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware" -LICENSE_${PN}-ibt-misc = "Firmware-ibt_firmware" - -FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" -FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" -FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" -FILES_${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" -FILES_${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" -FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" -FILES_${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/ibt-*" - -RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-11-5 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-12-16 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license" -RDEPENDS_${PN}-ibt-misc = "${PN}-ibt-license" - -ALLOW_EMPTY_${PN}-ibt= "1" -ALLOW_EMPTY_${PN}-ibt-misc = "1" - -LICENSE_${PN}-i915 = "Firmware-i915" -LICENSE_${PN}-i915-license = "Firmware-i915" -FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" -FILES_${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" -RDEPENDS_${PN}-i915 = "${PN}-i915-license" - -FILES_${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" -LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" -LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" -FILES_${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" -RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" - -# For QAT -LICENSE_${PN}-qat = "Firmware-qat" -LICENSE_${PN}-qat-license = "Firmware-qat" -FILES_${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" -FILES_${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" -RDEPENDS_${PN}-qat = "${PN}-qat-license" - -# For QCOM VPU/GPU and SDM845 -LICENSE_${PN}-qcom-license = "Firmware-qcom" -FILES_${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" -FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" -FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" -FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" -FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*" -FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" -FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" -FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.*" -RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license" -RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license" - -FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" - -# For other firmwares -# Maybe split out to separate packages when needed. -LICENSE_${PN} = "\ - Firmware-Abilis \ - & Firmware-agere \ - & Firmware-amdgpu \ - & Firmware-amd-ucode \ - & Firmware-atmel \ - & Firmware-ca0132 \ - & Firmware-cavium \ - & Firmware-chelsio_firmware \ - & Firmware-cw1200 \ - & Firmware-dib0700 \ - & Firmware-e100 \ - & Firmware-ene_firmware \ - & Firmware-fw_sst_0f28 \ - & Firmware-go7007 \ - & Firmware-hfi1_firmware \ - & Firmware-i2400m \ - & Firmware-ibt_firmware \ - & Firmware-it913x \ - & Firmware-IntcSST2 \ - & Firmware-kaweth \ - & Firmware-moxa \ - & Firmware-myri10ge_firmware \ - & Firmware-nvidia \ - & Firmware-OLPC \ - & Firmware-ath9k-htc \ - & Firmware-phanfw \ - & Firmware-qat \ - & Firmware-qcom \ - & Firmware-qla1280 \ - & Firmware-qla2xxx \ - & Firmware-r8a779x_usb3 \ - & Firmware-radeon \ - & Firmware-ralink_a_mediatek_company_firmware \ - & Firmware-ralink-firmware \ - & Firmware-imx-sdma_firmware \ - & Firmware-siano \ - & Firmware-tda7706-firmware \ - & Firmware-ti-connectivity \ - & Firmware-ti-keystone \ - & Firmware-ueagle-atm4-firmware \ - & Firmware-wl1251 \ - & Firmware-xc4000 \ - & Firmware-xc5000 \ - & Firmware-xc5000c \ - & WHENCE \ -" - -FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" -FILES_${PN} += "${nonarch_base_libdir}/firmware/*" -RDEPENDS_${PN} += "${PN}-license" -RDEPENDS_${PN} += "${PN}-whence-license" - -# Make linux-firmware depend on all of the split-out packages. -# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. -# Make linux-firmware-ibt depend on all of the split-out ibt packages. -python populate_packages_prepend () { - firmware_pkgs = oe.utils.packages_filter_out_system(d) - d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) - - iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) - d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) - - ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) - d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) -} - -# Firmware files are generally not ran on the CPU, so they can be -# allarch despite being architecture specific -INSANE_SKIP = "arch" diff --git a/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb new file mode 100644 index 000000000..fa0507a88 --- /dev/null +++ b/poky/meta/recipes-kernel/linux-firmware/linux-firmware_20200421.bb @@ -0,0 +1,938 @@ +SUMMARY = "Firmware files for use with Linux kernel" +SECTION = "kernel" + +LICENSE = "\ + Firmware-Abilis \ + & Firmware-adsp_sst \ + & Firmware-agere \ + & Firmware-amdgpu \ + & Firmware-amd-ucode \ + & Firmware-amlogic_vdec \ + & Firmware-atheros_firmware \ + & Firmware-atmel \ + & Firmware-broadcom_bcm43xx \ + & Firmware-ca0132 \ + & Firmware-cavium \ + & Firmware-chelsio_firmware \ + & Firmware-cw1200 \ + & Firmware-cypress \ + & Firmware-dib0700 \ + & Firmware-e100 \ + & Firmware-ene_firmware \ + & Firmware-fw_sst_0f28 \ + & Firmware-go7007 \ + & Firmware-GPLv2 \ + & Firmware-hfi1_firmware \ + & Firmware-i2400m \ + & Firmware-i915 \ + & Firmware-ibt_firmware \ + & Firmware-it913x \ + & Firmware-iwlwifi_firmware \ + & Firmware-IntcSST2 \ + & Firmware-kaweth \ + & Firmware-Marvell \ + & Firmware-moxa \ + & Firmware-myri10ge_firmware \ + & Firmware-netronome \ + & Firmware-nvidia \ + & Firmware-OLPC \ + & Firmware-ath9k-htc \ + & Firmware-phanfw \ + & Firmware-qat \ + & Firmware-qcom \ + & Firmware-qla1280 \ + & Firmware-qla2xxx \ + & Firmware-qualcommAthos_ar3k \ + & Firmware-qualcommAthos_ath10k \ + & Firmware-r8a779x_usb3 \ + & Firmware-radeon \ + & Firmware-ralink_a_mediatek_company_firmware \ + & Firmware-ralink-firmware \ + & Firmware-rtlwifi_firmware \ + & Firmware-imx-sdma_firmware \ + & Firmware-siano \ + & Firmware-tda7706-firmware \ + & Firmware-ti-connectivity \ + & Firmware-ti-keystone \ + & Firmware-ueagle-atm4-firmware \ + & Firmware-via_vt6656 \ + & Firmware-wl1251 \ + & Firmware-xc4000 \ + & Firmware-xc5000 \ + & Firmware-xc5000c \ + & WHENCE \ +" + +LIC_FILES_CHKSUM = "file://LICENCE.Abilis;md5=b5ee3f410780e56711ad48eadc22b8bc \ + file://LICENCE.adsp_sst;md5=615c45b91a5a4a9fe046d6ab9a2df728 \ + file://LICENCE.agere;md5=af0133de6b4a9b2522defd5f188afd31 \ + file://LICENSE.amdgpu;md5=d357524f5099e2a3db3c1838921c593f \ + file://LICENSE.amd-ucode;md5=3c5399dc9148d7f0e1f41e34b69cf14f \ + file://LICENSE.amlogic_vdec;md5=dc44f59bf64a81643e500ad3f39a468a \ + file://LICENCE.atheros_firmware;md5=30a14c7823beedac9fa39c64fdd01a13 \ + file://LICENSE.atmel;md5=aa74ac0c60595dee4d4e239107ea77a3 \ + file://LICENCE.broadcom_bcm43xx;md5=3160c14df7228891b868060e1951dfbc \ + file://LICENCE.ca0132;md5=209b33e66ee5be0461f13d31da392198 \ + file://LICENCE.cadence;md5=009f46816f6956cfb75ede13d3e1cee0 \ + file://LICENCE.cavium;md5=c37aaffb1ebe5939b2580d073a95daea \ + file://LICENCE.chelsio_firmware;md5=819aa8c3fa453f1b258ed8d168a9d903 \ + file://LICENCE.cw1200;md5=f0f770864e7a8444a5c5aa9d12a3a7ed \ + file://LICENCE.cypress;md5=48cd9436c763bf873961f9ed7b5c147b \ + file://LICENSE.dib0700;md5=f7411825c8a555a1a3e5eab9ca773431 \ + file://LICENCE.e100;md5=ec0f84136766df159a3ae6d02acdf5a8 \ + file://LICENCE.ene_firmware;md5=ed67f0f62f8f798130c296720b7d3921 \ + file://LICENCE.fw_sst_0f28;md5=6353931c988ad52818ae733ac61cd293 \ + file://LICENCE.go7007;md5=c0bb9f6aaaba55b0529ee9b30aa66beb \ + file://GPL-2;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://LICENSE.hfi1_firmware;md5=5e7b6e586ce7339d12689e49931ad444 \ + file://LICENCE.i2400m;md5=14b901969e23c41881327c0d9e4b7d36 \ + file://LICENSE.i915;md5=2b0b2e0d20984affd4490ba2cba02570 \ + file://LICENCE.ibt_firmware;md5=fdbee1ddfe0fb7ab0b2fcd6b454a366b \ + file://LICENSE.ice;md5=742ab4850f2670792940e6d15c974b2f \ + file://LICENCE.IntcSST2;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ + file://LICENCE.it913x;md5=1fbf727bfb6a949810c4dbfa7e6ce4f8 \ + file://LICENCE.iwlwifi_firmware;md5=3fd842911ea93c29cd32679aa23e1c88 \ + file://LICENCE.kaweth;md5=b1d876e562f4b3b8d391ad8395dfe03f \ + file://LICENCE.Marvell;md5=28b6ed8bd04ba105af6e4dcd6e997772 \ + file://LICENCE.mediatek;md5=7c1976b63217d76ce47d0a11d8a79cf2 \ + file://LICENCE.moxa;md5=1086614767d8ccf744a923289d3d4261 \ + file://LICENCE.myri10ge_firmware;md5=42e32fb89f6b959ca222e25ac8df8fed \ + file://LICENCE.Netronome;md5=4add08f2577086d44447996503cddf5f \ + file://LICENCE.nvidia;md5=4428a922ed3ba2ceec95f076a488ce07 \ + file://LICENCE.NXP;md5=58bb8ba632cd729b9ba6183bc6aed36f \ + file://LICENCE.OLPC;md5=5b917f9d8c061991be4f6f5f108719cd \ + file://LICENCE.open-ath9k-htc-firmware;md5=1b33c9f4d17bc4d457bdb23727046837 \ + file://LICENCE.phanfw;md5=954dcec0e051f9409812b561ea743bfa \ + file://LICENCE.qat_firmware;md5=9e7d8bea77612d7cc7d9e9b54b623062 \ + file://LICENSE.qcom;md5=164e3362a538eb11d3ac51e8e134294b \ + file://LICENCE.qla1280;md5=d6895732e622d950609093223a2c4f5d \ + file://LICENCE.qla2xxx;md5=505855e921b75f1be4a437ad9b79dff0 \ + file://LICENSE.QualcommAtheros_ar3k;md5=b5fe244fb2b532311de1472a3bc06da5 \ + file://LICENSE.QualcommAtheros_ath10k;md5=cb42b686ee5f5cb890275e4321db60a8 \ + file://LICENCE.r8a779x_usb3;md5=4c1671656153025d7076105a5da7e498 \ + file://LICENSE.radeon;md5=68ec28bacb3613200bca44f404c69b16 \ + file://LICENCE.ralink_a_mediatek_company_firmware;md5=728f1a85fd53fd67fa8d7afb080bc435 \ + file://LICENCE.ralink-firmware.txt;md5=ab2c269277c45476fb449673911a2dfd \ + file://LICENCE.rtlwifi_firmware.txt;md5=00d06cfd3eddd5a2698948ead2ad54a5 \ + file://LICENSE.sdma_firmware;md5=51e8c19ecc2270f4b8ea30341ad63ce9 \ + file://LICENCE.siano;md5=4556c1bf830067f12ca151ad953ec2a5 \ + file://LICENCE.tda7706-firmware.txt;md5=835997cf5e3c131d0dddd695c7d9103e \ + file://LICENCE.ti-connectivity;md5=c5e02be633f1499c109d1652514d85ec \ + file://LICENCE.ti-keystone;md5=3a86335d32864b0bef996bee26cc0f2c \ + file://LICENCE.ueagle-atm4-firmware;md5=4ed7ea6b507ccc583b9d594417714118 \ + file://LICENCE.via_vt6656;md5=e4159694cba42d4377a912e78a6e850f \ + file://LICENCE.wl1251;md5=ad3f81922bb9e197014bb187289d3b5b \ + file://LICENCE.xc4000;md5=0ff51d2dc49fce04814c9155081092f0 \ + file://LICENCE.xc5000;md5=1e170c13175323c32c7f4d0998d53f66 \ + file://LICENCE.xc5000c;md5=12b02efa3049db65d524aeb418dd87ca \ + file://WHENCE;md5=cb9a66eff0464b55335d3a7374fbc51c \ + " + +# These are not common licenses, set NO_GENERIC_LICENSE for them +# so that the license files will be copied from fetched source +NO_GENERIC_LICENSE[Firmware-Abilis] = "LICENCE.Abilis" +NO_GENERIC_LICENSE[Firmware-adsp_sst] = "LICENCE.adsp_sst" +NO_GENERIC_LICENSE[Firmware-agere] = "LICENCE.agere" +NO_GENERIC_LICENSE[Firmware-amdgpu] = "LICENSE.amdgpu" +NO_GENERIC_LICENSE[Firmware-amd-ucode] = "LICENSE.amd-ucode" +NO_GENERIC_LICENSE[Firmware-amlogic_vdec] = "LICENSE.amlogic_vdec" +NO_GENERIC_LICENSE[Firmware-atheros_firmware] = "LICENCE.atheros_firmware" +NO_GENERIC_LICENSE[Firmware-atmel] = "LICENSE.atmel" +NO_GENERIC_LICENSE[Firmware-broadcom_bcm43xx] = "LICENCE.broadcom_bcm43xx" +NO_GENERIC_LICENSE[Firmware-ca0132] = "LICENCE.ca0132" +NO_GENERIC_LICENSE[Firmware-cadence] = "LICENCE.cadence" +NO_GENERIC_LICENSE[Firmware-cavium] = "LICENCE.cavium" +NO_GENERIC_LICENSE[Firmware-chelsio_firmware] = "LICENCE.chelsio_firmware" +NO_GENERIC_LICENSE[Firmware-cw1200] = "LICENCE.cw1200" +NO_GENERIC_LICENSE[Firmware-cypress] = "LICENCE.cypress" +NO_GENERIC_LICENSE[Firmware-dib0700] = "LICENSE.dib0700" +NO_GENERIC_LICENSE[Firmware-e100] = "LICENCE.e100" +NO_GENERIC_LICENSE[Firmware-ene_firmware] = "LICENCE.ene_firmware" +NO_GENERIC_LICENSE[Firmware-fw_sst_0f28] = "LICENCE.fw_sst_0f28" +NO_GENERIC_LICENSE[Firmware-go7007] = "LICENCE.go7007" +NO_GENERIC_LICENSE[Firmware-GPLv2] = "GPL-2" +NO_GENERIC_LICENSE[Firmware-hfi1_firmware] = "LICENSE.hfi1_firmware" +NO_GENERIC_LICENSE[Firmware-i2400m] = "LICENCE.i2400m" +NO_GENERIC_LICENSE[Firmware-i915] = "LICENSE.i915" +NO_GENERIC_LICENSE[Firmware-ibt_firmware] = "LICENCE.ibt_firmware" +NO_GENERIC_LICENSE[Firmware-IntcSST2] = "LICENCE.IntcSST2" +NO_GENERIC_LICENSE[Firmware-it913x] = "LICENCE.it913x" +NO_GENERIC_LICENSE[Firmware-iwlwifi_firmware] = "LICENCE.iwlwifi_firmware" +NO_GENERIC_LICENSE[Firmware-kaweth] = "LICENCE.kaweth" +NO_GENERIC_LICENSE[Firmware-Marvell] = "LICENCE.Marvell" +NO_GENERIC_LICENSE[Firmware-mediatek] = "LICENCE.mediatek" +NO_GENERIC_LICENSE[Firmware-moxa] = "LICENCE.moxa" +NO_GENERIC_LICENSE[Firmware-myri10ge_firmware] = "LICENCE.myri10ge_firmware" +NO_GENERIC_LICENSE[Firmware-netronome] = "LICENCE.Netronome" +NO_GENERIC_LICENSE[Firmware-nvidia] = "LICENCE.nvidia" +NO_GENERIC_LICENSE[Firmware-OLPC] = "LICENCE.OLPC" +NO_GENERIC_LICENSE[Firmware-ath9k-htc] = "LICENCE.open-ath9k-htc-firmware" +NO_GENERIC_LICENSE[Firmware-phanfw] = "LICENCE.phanfw" +NO_GENERIC_LICENSE[Firmware-qat] = "LICENCE.qat_firmware" +NO_GENERIC_LICENSE[Firmware-qcom] = "LICENSE.qcom" +NO_GENERIC_LICENSE[Firmware-qla1280] = "LICENCE.qla1280" +NO_GENERIC_LICENSE[Firmware-qla2xxx] = "LICENCE.qla2xxx" +NO_GENERIC_LICENSE[Firmware-qualcommAthos_ar3k] = "LICENSE.QualcommAtheros_ar3k" +NO_GENERIC_LICENSE[Firmware-qualcommAthos_ath10k] = "LICENSE.QualcommAtheros_ath10k" +NO_GENERIC_LICENSE[Firmware-r8a779x_usb3] = "LICENCE.r8a779x_usb3" +NO_GENERIC_LICENSE[Firmware-radeon] = "LICENSE.radeon" +NO_GENERIC_LICENSE[Firmware-ralink_a_mediatek_company_firmware] = "LICENCE.ralink_a_mediatek_company_firmware" +NO_GENERIC_LICENSE[Firmware-ralink-firmware] = "LICENCE.ralink-firmware.txt" +NO_GENERIC_LICENSE[Firmware-rtlwifi_firmware] = "LICENCE.rtlwifi_firmware.txt" +NO_GENERIC_LICENSE[Firmware-siano] = "LICENCE.siano" +NO_GENERIC_LICENSE[Firmware-imx-sdma_firmware] = "LICENSE.sdma_firmware" +NO_GENERIC_LICENSE[Firmware-tda7706-firmware] = "LICENCE.tda7706-firmware.txt" +NO_GENERIC_LICENSE[Firmware-ti-connectivity] = "LICENCE.ti-connectivity" +NO_GENERIC_LICENSE[Firmware-ti-keystone] = "LICENCE.ti-keystone" +NO_GENERIC_LICENSE[Firmware-ueagle-atm4-firmware] = "LICENCE.ueagle-atm4-firmware" +NO_GENERIC_LICENSE[Firmware-via_vt6656] = "LICENCE.via_vt6656" +NO_GENERIC_LICENSE[Firmware-wl1251] = "LICENCE.wl1251" +NO_GENERIC_LICENSE[Firmware-xc4000] = "LICENCE.xc4000" +NO_GENERIC_LICENSE[Firmware-xc5000] = "LICENCE.xc5000" +NO_GENERIC_LICENSE[Firmware-xc5000c] = "LICENCE.xc5000c" +NO_GENERIC_LICENSE[WHENCE] = "WHENCE" + +PE = "1" + +SRC_URI = "${KERNELORG_MIRROR}/linux/kernel/firmware/${BPN}-${PV}.tar.xz" + +SRC_URI[md5sum] = "229a93395f4033da68429f165a62b952" +SRC_URI[sha256sum] = "6dd7cba25d694c031f65529b9027cc8faaffaddfae70a4e3b58c2e4a0af3bfa8" + +inherit allarch + +CLEANBROKEN = "1" + +do_compile() { + : +} + +do_install() { + oe_runmake 'DESTDIR=${D}' 'FIRMWAREDIR=${nonarch_base_libdir}/firmware' install + cp GPL-2 LICEN[CS]E.* WHENCE ${D}${nonarch_base_libdir}/firmware/ +} + + +PACKAGES =+ "${PN}-ralink-license ${PN}-ralink \ + ${PN}-mt7601u-license ${PN}-mt7601u \ + ${PN}-radeon-license ${PN}-radeon \ + ${PN}-marvell-license ${PN}-pcie8897 ${PN}-pcie8997 \ + ${PN}-sd8686 ${PN}-sd8688 ${PN}-sd8787 ${PN}-sd8797 ${PN}-sd8801 ${PN}-sd8887 ${PN}-sd8897 \ + ${PN}-usb8997 \ + ${PN}-ti-connectivity-license ${PN}-wlcommon ${PN}-wl12xx ${PN}-wl18xx \ + ${PN}-vt6656-license ${PN}-vt6656 \ + ${PN}-rtl-license ${PN}-rtl8188 ${PN}-rtl8192cu ${PN}-rtl8192ce ${PN}-rtl8192su ${PN}-rtl8723 ${PN}-rtl8821 \ + ${PN}-rtl8168 \ + ${PN}-cypress-license \ + ${PN}-broadcom-license \ + ${PN}-bcm-0bb4-0306 \ + ${PN}-bcm43143 \ + ${PN}-bcm43236b \ + ${PN}-bcm43241b0 \ + ${PN}-bcm43241b4 \ + ${PN}-bcm43241b5 \ + ${PN}-bcm43242a \ + ${PN}-bcm4329 \ + ${PN}-bcm4329-fullmac \ + ${PN}-bcm4330 \ + ${PN}-bcm4334 \ + ${PN}-bcm43340 \ + ${PN}-bcm4335 \ + ${PN}-bcm43362 \ + ${PN}-bcm4339 \ + ${PN}-bcm43430 \ + ${PN}-bcm43430a0 \ + ${PN}-bcm43455 \ + ${PN}-bcm4350 \ + ${PN}-bcm4350c2 \ + ${PN}-bcm4354 \ + ${PN}-bcm4356 \ + ${PN}-bcm4356-pcie \ + ${PN}-bcm43569 \ + ${PN}-bcm43570 \ + ${PN}-bcm4358 \ + ${PN}-bcm43602 \ + ${PN}-bcm4366b \ + ${PN}-bcm4366c \ + ${PN}-bcm4371 \ + ${PN}-bcm4373 \ + ${PN}-bcm43xx \ + ${PN}-bcm43xx-hdr \ + ${PN}-atheros-license ${PN}-ar9170 ${PN}-ath6k ${PN}-ath9k \ + ${PN}-gplv2-license ${PN}-carl9170 \ + ${PN}-ar3k-license ${PN}-ar3k ${PN}-ath10k-license ${PN}-ath10k ${PN}-qca \ + \ + ${PN}-imx-sdma-license ${PN}-imx-sdma-imx6q ${PN}-imx-sdma-imx7d \ + \ + ${PN}-iwlwifi-license ${PN}-iwlwifi \ + ${PN}-iwlwifi-135-6 \ + ${PN}-iwlwifi-3160-7 ${PN}-iwlwifi-3160-8 ${PN}-iwlwifi-3160-9 \ + ${PN}-iwlwifi-3160-10 ${PN}-iwlwifi-3160-12 ${PN}-iwlwifi-3160-13 \ + ${PN}-iwlwifi-3160-16 ${PN}-iwlwifi-3160-17 \ + ${PN}-iwlwifi-6000-4 ${PN}-iwlwifi-6000g2a-5 ${PN}-iwlwifi-6000g2a-6 \ + ${PN}-iwlwifi-6000g2b-5 ${PN}-iwlwifi-6000g2b-6 \ + ${PN}-iwlwifi-6050-4 ${PN}-iwlwifi-6050-5 \ + ${PN}-iwlwifi-7260 \ + ${PN}-iwlwifi-7265 \ + ${PN}-iwlwifi-7265d ${PN}-iwlwifi-8000c ${PN}-iwlwifi-8265 \ + ${PN}-iwlwifi-9000 \ + ${PN}-iwlwifi-misc \ + ${PN}-ibt-license ${PN}-ibt ${PN}-ibt-misc \ + ${PN}-ibt-11-5 ${PN}-ibt-12-16 ${PN}-ibt-hw-37-7 ${PN}-ibt-hw-37-8 \ + ${PN}-ibt-17 \ + ${PN}-i915-license ${PN}-i915 \ + ${PN}-adsp-sst-license ${PN}-adsp-sst \ + ${PN}-bnx2-mips \ + ${PN}-liquidio \ + ${PN}-netronome-license ${PN}-netronome \ + ${PN}-qat ${PN}-qat-license \ + ${PN}-qcom-license \ + ${PN}-qcom-venus-1.8 ${PN}-qcom-venus-4.2 \ + ${PN}-qcom-adreno-a3xx ${PN}-qcom-adreno-a530 ${PN}-qcom-adreno-a630 \ + ${PN}-qcom-sdm845-audio ${PN}-qcom-sdm845-compute ${PN}-qcom-sdm845-modem \ + ${PN}-whence-license \ + ${PN}-license \ + " + +# For atheros +LICENSE_${PN}-ar9170 = "Firmware-atheros_firmware" +LICENSE_${PN}-ath6k = "Firmware-atheros_firmware" +LICENSE_${PN}-ath9k = "Firmware-atheros_firmware" +LICENSE_${PN}-atheros-license = "Firmware-atheros_firmware" + +FILES_${PN}-atheros-license = "${nonarch_base_libdir}/firmware/LICENCE.atheros_firmware" +FILES_${PN}-ar9170 = " \ + ${nonarch_base_libdir}/firmware/ar9170*.fw \ +" +FILES_${PN}-ath6k = " \ + ${nonarch_base_libdir}/firmware/ath6k \ +" +FILES_${PN}-ath9k = " \ + ${nonarch_base_libdir}/firmware/ar9271.fw \ + ${nonarch_base_libdir}/firmware/ar7010*.fw \ + ${nonarch_base_libdir}/firmware/htc_9271.fw \ + ${nonarch_base_libdir}/firmware/htc_7010.fw \ + ${nonarch_base_libdir}/firmware/ath9k_htc/htc_7010-1.4.0.fw \ + ${nonarch_base_libdir}/firmware/ath9k_htc/htc_9271-1.4.0.fw \ +" + +RDEPENDS_${PN}-ar9170 += "${PN}-atheros-license" +RDEPENDS_${PN}-ath6k += "${PN}-atheros-license" +RDEPENDS_${PN}-ath9k += "${PN}-atheros-license" + +# For carl9170 +LICENSE_${PN}-carl9170 = "Firmware-GPLv2" +LICENSE_${PN}-gplv2-license = "Firmware-GPLv2" + +FILES_${PN}-gplv2-license = "${nonarch_base_libdir}/firmware/GPL-2" +FILES_${PN}-carl9170 = " \ + ${nonarch_base_libdir}/firmware/carl9170*.fw \ +" + +RDEPENDS_${PN}-carl9170 += "${PN}-gplv2-license" + +# For QualCommAthos +LICENSE_${PN}-ar3k = "Firmware-qualcommAthos_ar3k" +LICENSE_${PN}-ar3k-license = "Firmware-qualcommAthos_ar3k" +LICENSE_${PN}-ath10k = "Firmware-qualcommAthos_ath10k" +LICENSE_${PN}-ath10k-license = "Firmware-qualcommAthos_ath10k" +LICENSE_${PN}-qca = "Firmware-qualcommAthos_ath10k" + +FILES_${PN}-ar3k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ar3k" +FILES_${PN}-ar3k = " \ + ${nonarch_base_libdir}/firmware/ar3k \ +" + +FILES_${PN}-ath10k-license = "${nonarch_base_libdir}/firmware/LICENSE.QualcommAtheros_ath10k" +FILES_${PN}-ath10k = " \ + ${nonarch_base_libdir}/firmware/ath10k \ +" + +FILES_${PN}-qca = " \ + ${nonarch_base_libdir}/firmware/qca \ +" + +RDEPENDS_${PN}-ar3k += "${PN}-ar3k-license" +RDEPENDS_${PN}-ath10k += "${PN}-ath10k-license" +RDEPENDS_${PN}-qca += "${PN}-ath10k-license" + +# For ralink +LICENSE_${PN}-ralink = "Firmware-ralink-firmware" +LICENSE_${PN}-ralink-license = "Firmware-ralink-firmware" + +FILES_${PN}-ralink-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink-firmware.txt" +FILES_${PN}-ralink = " \ + ${nonarch_base_libdir}/firmware/rt*.bin \ +" + +RDEPENDS_${PN}-ralink += "${PN}-ralink-license" + +# For mediatek MT7601U +LICENSE_${PN}-mt7601u = "Firmware-ralink_a_mediatek_company_firmware" +LICENSE_${PN}-mt7601u-license = "Firmware-ralink_a_mediatek_company_firmware" + +FILES_${PN}-mt7601u-license = "${nonarch_base_libdir}/firmware/LICENCE.ralink_a_mediatek_company_firmware" +FILES_${PN}-mt7601u = " \ + ${nonarch_base_libdir}/firmware/mt7601u.bin \ +" + +RDEPENDS_${PN}-mt7601u += "${PN}-mt7601u-license" + +# For radeon +LICENSE_${PN}-radeon = "Firmware-radeon" +LICENSE_${PN}-radeon-license = "Firmware-radeon" + +FILES_${PN}-radeon-license = "${nonarch_base_libdir}/firmware/LICENSE.radeon" +FILES_${PN}-radeon = " \ + ${nonarch_base_libdir}/firmware/radeon \ +" + +RDEPENDS_${PN}-radeon += "${PN}-radeon-license" + +# For marvell +LICENSE_${PN}-pcie8897 = "Firmware-Marvell" +LICENSE_${PN}-pcie8997 = "Firmware-Marvell" +LICENSE_${PN}-sd8686 = "Firmware-Marvell" +LICENSE_${PN}-sd8688 = "Firmware-Marvell" +LICENSE_${PN}-sd8787 = "Firmware-Marvell" +LICENSE_${PN}-sd8797 = "Firmware-Marvell" +LICENSE_${PN}-sd8801 = "Firmware-Marvell" +LICENSE_${PN}-sd8887 = "Firmware-Marvell" +LICENSE_${PN}-sd8897 = "Firmware-Marvell" +LICENSE_${PN}-usb8997 = "Firmware-Marvell" +LICENSE_${PN}-marvell-license = "Firmware-Marvell" + +FILES_${PN}-marvell-license = "${nonarch_base_libdir}/firmware/LICENCE.Marvell" +FILES_${PN}-pcie8897 = " \ + ${nonarch_base_libdir}/firmware/mrvl/pcie8897_uapsta.bin \ +" +FILES_${PN}-pcie8997 = " \ + ${nonarch_base_libdir}/firmware/mrvl/pcie8997_wlan_v4.bin \ + ${nonarch_base_libdir}/firmware/mrvl/pcieuart8997_combo_v4.bin \ + ${nonarch_base_libdir}/firmware/mrvl/pcieusb8997_combo_v4.bin \ +" +FILES_${PN}-sd8686 = " \ + ${nonarch_base_libdir}/firmware/libertas/sd8686_v9* \ + ${nonarch_base_libdir}/firmware/sd8686* \ +" +FILES_${PN}-sd8688 = " \ + ${nonarch_base_libdir}/firmware/libertas/sd8688* \ + ${nonarch_base_libdir}/firmware/mrvl/sd8688* \ +" +FILES_${PN}-sd8787 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8787_uapsta.bin \ +" +FILES_${PN}-sd8797 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8797_uapsta.bin \ +" +FILES_${PN}-sd8801 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8801_uapsta.bin \ +" +FILES_${PN}-sd8887 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8887_uapsta.bin \ +" +FILES_${PN}-sd8897 = " \ + ${nonarch_base_libdir}/firmware/mrvl/sd8897_uapsta.bin \ +" +FILES_${PN}-usb8997 = " \ + ${nonarch_base_libdir}/firmware/mrvl/usbusb8997_combo_v4.bin \ +" + +RDEPENDS_${PN}-sd8686 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8688 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8787 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8797 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8801 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8887 += "${PN}-marvell-license" +RDEPENDS_${PN}-sd8897 += "${PN}-marvell-license" +RDEPENDS_${PN}-usb8997 += "${PN}-marvell-license" + +# For netronome +LICENSE_${PN}-netronome = "Firmware-netronome" + +FILES_${PN}-netronome-license = " \ + ${nonarch_base_libdir}/firmware/LICENCE.Netronome \ +" +FILES_${PN}-netronome = " \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0081*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0096*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0097*.nffw \ + ${nonarch_base_libdir}/firmware/netronome/nic_AMDA0099*.nffw \ +" + +RDEPENDS_${PN}-netronome += "${PN}-netronome-license" + +# For rtl +LICENSE_${PN}-rtl8188 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192cu = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192ce = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8192su = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8723 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8821 = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl-license = "Firmware-rtlwifi_firmware" +LICENSE_${PN}-rtl8168 = "WHENCE" + +FILES_${PN}-rtl-license = " \ + ${nonarch_base_libdir}/firmware/LICENCE.rtlwifi_firmware.txt \ +" +FILES_${PN}-rtl8188 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8188*.bin \ +" +FILES_${PN}-rtl8192cu = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cufw*.bin \ +" +FILES_${PN}-rtl8192ce = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8192cfw*.bin \ +" +FILES_${PN}-rtl8192su = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8712u.bin \ +" +FILES_${PN}-rtl8723 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8723*.bin \ +" +FILES_${PN}-rtl8821 = " \ + ${nonarch_base_libdir}/firmware/rtlwifi/rtl8821*.bin \ +" +FILES_${PN}-rtl8168 = " \ + ${nonarch_base_libdir}/firmware/rtl_nic/rtl8168*.fw \ +" + +RDEPENDS_${PN}-rtl8188 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192ce += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192cu += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8192su = "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8723 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8821 += "${PN}-rtl-license" +RDEPENDS_${PN}-rtl8168 += "${PN}-whence-license" + +# For ti-connectivity +LICENSE_${PN}-wlcommon = "Firmware-ti-connectivity" +LICENSE_${PN}-wl12xx = "Firmware-ti-connectivity" +LICENSE_${PN}-wl18xx = "Firmware-ti-connectivity" +LICENSE_${PN}-ti-connectivity-license = "Firmware-ti-connectivity" + +FILES_${PN}-ti-connectivity-license = "${nonarch_base_libdir}/firmware/LICENCE.ti-connectivity" +# wl18xx optionally needs wl1271-nvs.bin (which itself is a symlink to +# wl127x-nvs.bin) - see linux/drivers/net/wireless/ti/wlcore/sdio.c +# and drivers/net/wireless/ti/wlcore/spi.c. +# While they're optional and actually only used to override the MAC +# address on wl18xx, driver loading will delay (by udev timout - 60s) +# if not there. So let's make it available always. Because it's a +# symlink, both need to go to wlcommon. +FILES_${PN}-wlcommon = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/TI* \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl127x-nvs.bin \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl1271-nvs.bin \ +" +FILES_${PN}-wl12xx = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl12* \ +" +FILES_${PN}-wl18xx = " \ + ${nonarch_base_libdir}/firmware/ti-connectivity/wl18* \ +" + +RDEPENDS_${PN}-wl12xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" +RDEPENDS_${PN}-wl18xx = "${PN}-ti-connectivity-license ${PN}-wlcommon" + +# For vt6656 +LICENSE_${PN}-vt6656 = "Firmware-via_vt6656" +LICENSE_${PN}-vt6656-license = "Firmware-via_vt6656" + +FILES_${PN}-vt6656-license = "${nonarch_base_libdir}/firmware/LICENCE.via_vt6656" +FILES_${PN}-vt6656 = " \ + ${nonarch_base_libdir}/firmware/vntwusb.fw \ +" + +RDEPENDS_${PN}-vt6656 = "${PN}-vt6656-license" + +# For broadcom + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e " \${PN}-$pkg \\"; done | sort -u + +LICENSE_${PN}-broadcom-license = "Firmware-broadcom_bcm43xx" +FILES_${PN}-broadcom-license = "${nonarch_base_libdir}/firmware/LICENCE.broadcom_bcm43xx" + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo "$i - $pkg"; echo -e "FILES_\${PN}-$pkg = \"\${nonarch_base_libdir}/firmware/brcm/$i\""; done | grep ^FILES + +FILES_${PN}-bcm43xx = "${nonarch_base_libdir}/firmware/brcm/bcm43xx-0.fw" +FILES_${PN}-bcm43xx-hdr = "${nonarch_base_libdir}/firmware/brcm/bcm43xx_hdr-0.fw" +FILES_${PN}-bcm4329-fullmac = "${nonarch_base_libdir}/firmware/brcm/bcm4329-fullmac-4.bin" +FILES_${PN}-bcm43236b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43236b.bin" +FILES_${PN}-bcm4329 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4329-sdio.bin" +FILES_${PN}-bcm4330 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4330-sdio.*" +FILES_${PN}-bcm4334 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4334-sdio.bin" +FILES_${PN}-bcm4335 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4335-sdio.bin" +FILES_${PN}-bcm4339 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4339-sdio.bin" +FILES_${PN}-bcm43241b0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b0-sdio.bin" +FILES_${PN}-bcm43241b4 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b4-sdio.bin" +FILES_${PN}-bcm43241b5 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43241b5-sdio.bin" +FILES_${PN}-bcm43242a = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43242a.bin" +FILES_${PN}-bcm43143 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43143.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac43143-sdio.bin \ +" +FILES_${PN}-bcm43430a0 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430a0-sdio.*" +FILES_${PN}-bcm43455 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43455-sdio.*" +FILES_${PN}-bcm4350c2 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350c2-pcie.bin" +FILES_${PN}-bcm4350 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4350-pcie.bin" +FILES_${PN}-bcm4356 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-sdio.bin" +FILES_${PN}-bcm43569 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43569.bin" +FILES_${PN}-bcm43570 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43570-pcie.bin" +FILES_${PN}-bcm4358 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4358-pcie.bin" +FILES_${PN}-bcm43602 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac43602-pcie.ap.bin \ +" +FILES_${PN}-bcm4366b = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366b-pcie.bin" +FILES_${PN}-bcm4366c = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4366c-pcie.bin" +FILES_${PN}-bcm4371 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4371-pcie.bin" + +# for i in `grep brcm WHENCE | grep ^File | sed 's/File: brcm.//g'`; do pkg=`echo $i | sed 's/-[sp40].*//g; s/\.bin//g; s/brcmfmac/bcm/g; s/_hdr/-hdr/g; s/BCM/bcm-0bb4-0306/g'`; echo -e "LICENSE_\${PN}-$pkg = \"Firmware-broadcom_bcm43xx\"\nRDEPENDS_\${PN}-$pkg += \"\${PN}-broadcom-license\""; done +# Currently 1st one and last 6 have cypress LICENSE + +LICENSE_${PN}-bcm43xx = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43xx += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43xx-hdr = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43xx-hdr += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4329-fullmac = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4329-fullmac += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43236b = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43236b += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4329 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4329 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4330 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4330 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4334 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4334 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4335 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4335 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4339 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4339 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b0 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b0 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b4 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b4 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43241b5 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43241b5 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43242a = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43242a += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43143 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43143 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43430a0 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43430a0 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43455 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43455 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4350c2 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4350c2 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4350 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4350 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4356 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4356 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43569 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43569 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43570 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43570 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4358 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4358 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm43602 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm43602 += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4366b = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4366b += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4366c = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4366c += "${PN}-broadcom-license" +LICENSE_${PN}-bcm4371 = "Firmware-broadcom_bcm43xx" +RDEPENDS_${PN}-bcm4371 += "${PN}-broadcom-license" + +# For broadcom cypress + +LICENSE_${PN}-cypress-license = "Firmware-cypress" +FILES_${PN}-cypress-license = "${nonarch_base_libdir}/firmware/LICENCE.cypress" + +FILES_${PN}-bcm-0bb4-0306 = "${nonarch_base_libdir}/firmware/brcm/BCM-0bb4-0306.hcd" +FILES_${PN}-bcm43340 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43340-sdio.*" +FILES_${PN}-bcm43362 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43362-sdio.*" +FILES_${PN}-bcm43430 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac43430-sdio.*" +FILES_${PN}-bcm4354 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4354-sdio.bin" +FILES_${PN}-bcm4356-pcie = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4356-pcie.*" +FILES_${PN}-bcm4373 = "${nonarch_base_libdir}/firmware/brcm/brcmfmac4373-sdio.bin \ + ${nonarch_base_libdir}/firmware/brcm/brcmfmac4373.bin \ +" + +LICENSE_${PN}-bcm-0bb4-0306 = "Firmware-cypress" +RDEPENDS_${PN}-bcm-0bb4-0306 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43340 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43340 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43362 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43362 += "${PN}-cypress-license" +LICENSE_${PN}-bcm43430 = "Firmware-cypress" +RDEPENDS_${PN}-bcm43430 += "${PN}-cypress-license" +LICENSE_${PN}-bcm4354 = "Firmware-cypress" +RDEPENDS_${PN}-bcm4354 += "${PN}-cypress-license" +LICENSE_${PN}-bcm4356-pcie = "Firmware-cypress" +RDEPENDS_${PN}-bcm4356-pcie += "${PN}-cypress-license" +LICENSE_${PN}-bcm4373 = "Firmware-cypress" +RDEPENDS_${PN}-bcm4373 += "${PN}-cypress-license" + +# For Broadcom bnx2-mips +# +# which is a separate case to the other Broadcom firmwares since its +# license is contained in the shared WHENCE file. + +LICENSE_${PN}-bnx2-mips = "WHENCE" +LICENSE_${PN}-whence-license = "WHENCE" + +FILES_${PN}-bnx2-mips = "${nonarch_base_libdir}/firmware/bnx2/bnx2-mips-09-6.2.1b.fw" +FILES_${PN}-whence-license = "${nonarch_base_libdir}/firmware/WHENCE" + +RDEPENDS_${PN}-bnx2-mips += "${PN}-whence-license" + +# For imx-sdma +LICENSE_${PN}-imx-sdma-imx6q = "Firmware-imx-sdma_firmware" +LICENSE_${PN}-imx-sdma-imx7d = "Firmware-imx-sdma_firmware" +LICENSE_${PN}-imx-sdma-license = "Firmware-imx-sdma_firmware" + +FILES_${PN}-imx-sdma-imx6q = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx6q.bin" + +RPROVIDES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" +RREPLACES_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" +RCONFLICTS_${PN}-imx-sdma-imx6q = "firmware-imx-sdma-imx6q" + +FILES_${PN}-imx-sdma-imx7d = "${nonarch_base_libdir}/firmware/imx/sdma/sdma-imx7d.bin" + +FILES_${PN}-imx-sdma-license = "${nonarch_base_libdir}/firmware/LICENSE.sdma_firmware" + +RDEPENDS_${PN}-imx-sdma-imx6q += "${PN}-imx-sdma-license" +RDEPENDS_${PN}-imx-sdma-imx7d += "${PN}-imx-sdma-license" + +# For iwlwifi +LICENSE_${PN}-iwlwifi = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-135-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-7 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-8 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-9 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-10 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-12 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-13 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-16 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-3160-17 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000-4 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2a-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2a-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2b-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6000g2b-6 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6050-4 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-6050-5 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7260 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7265 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-7265d = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-8000c = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-8265 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-9000 = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-misc = "Firmware-iwlwifi_firmware" +LICENSE_${PN}-iwlwifi-license = "Firmware-iwlwifi_firmware" + + +FILES_${PN}-iwlwifi-license = "${nonarch_base_libdir}/firmware/LICENCE.iwlwifi_firmware" +FILES_${PN}-iwlwifi-135-6 = "${nonarch_base_libdir}/firmware/iwlwifi-135-6.ucode" +FILES_${PN}-iwlwifi-3160-7 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-7.ucode" +FILES_${PN}-iwlwifi-3160-8 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-8.ucode" +FILES_${PN}-iwlwifi-3160-9 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-9.ucode" +FILES_${PN}-iwlwifi-3160-10 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-10.ucode" +FILES_${PN}-iwlwifi-3160-12 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-12.ucode" +FILES_${PN}-iwlwifi-3160-13 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-13.ucode" +FILES_${PN}-iwlwifi-3160-16 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-16.ucode" +FILES_${PN}-iwlwifi-3160-17 = "${nonarch_base_libdir}/firmware/iwlwifi-3160-17.ucode" +FILES_${PN}-iwlwifi-6000-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6000-4.ucode" +FILES_${PN}-iwlwifi-6000g2a-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-5.ucode" +FILES_${PN}-iwlwifi-6000g2a-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2a-6.ucode" +FILES_${PN}-iwlwifi-6000g2b-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-5.ucode" +FILES_${PN}-iwlwifi-6000g2b-6 = "${nonarch_base_libdir}/firmware/iwlwifi-6000g2b-6.ucode" +FILES_${PN}-iwlwifi-6050-4 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-4.ucode" +FILES_${PN}-iwlwifi-6050-5 = "${nonarch_base_libdir}/firmware/iwlwifi-6050-5.ucode" +FILES_${PN}-iwlwifi-7260 = "${nonarch_base_libdir}/firmware/iwlwifi-7260-*.ucode" +FILES_${PN}-iwlwifi-7265 = "${nonarch_base_libdir}/firmware/iwlwifi-7265-*.ucode" +FILES_${PN}-iwlwifi-7265d = "${nonarch_base_libdir}/firmware/iwlwifi-7265D-*.ucode" +FILES_${PN}-iwlwifi-8000c = "${nonarch_base_libdir}/firmware/iwlwifi-8000C-*.ucode" +FILES_${PN}-iwlwifi-8265 = "${nonarch_base_libdir}/firmware/iwlwifi-8265-*.ucode" +FILES_${PN}-iwlwifi-9000 = "${nonarch_base_libdir}/firmware/iwlwifi-9000-*.ucode" +FILES_${PN}-iwlwifi-misc = "${nonarch_base_libdir}/firmware/iwlwifi-*.ucode" + +RDEPENDS_${PN}-iwlwifi-135-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-7 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-8 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-9 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-10 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-12 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-13 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-16 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-3160-17 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000-4 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2a-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2a-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2b-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6000g2b-6 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6050-4 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-6050-5 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-7265d = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-8000c = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-8265 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-9000 = "${PN}-iwlwifi-license" +RDEPENDS_${PN}-iwlwifi-misc = "${PN}-iwlwifi-license" + +# -iwlwifi-misc is a "catch all" package that includes all the iwlwifi +# firmwares that are not already included in other -iwlwifi- packages. +# -iwlwifi is a virtual package that depends upon all iwlwifi packages. +# These are distinct in order to allow the -misc firmwares to be installed +# without pulling in every other iwlwifi package. +ALLOW_EMPTY_${PN}-iwlwifi = "1" +ALLOW_EMPTY_${PN}-iwlwifi-misc = "1" + +# Handle package updating for the newly merged iwlwifi groupings +RPROVIDES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" +RREPLACES_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" +RCONFLICTS_${PN}-iwlwifi-7265 = "${PN}-iwlwifi-7265-8 ${PN}-iwlwifi-7265-9" + +RPROVIDES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" +RREPLACES_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" +RCONFLICTS_${PN}-iwlwifi-7260 = "${PN}-iwlwifi-7260-7 ${PN}-iwlwifi-7260-8 ${PN}-iwlwifi-7260-9" + +# For ibt +LICENSE_${PN}-ibt-license = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-hw-37-7 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-hw-37-8 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-11-5 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-12-16 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-17 = "Firmware-ibt_firmware" +LICENSE_${PN}-ibt-misc = "Firmware-ibt_firmware" + +FILES_${PN}-ibt-license = "${nonarch_base_libdir}/firmware/LICENCE.ibt_firmware" +FILES_${PN}-ibt-hw-37-7 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.7*.bseq" +FILES_${PN}-ibt-hw-37-8 = "${nonarch_base_libdir}/firmware/intel/ibt-hw-37.8*.bseq" +FILES_${PN}-ibt-11-5 = "${nonarch_base_libdir}/firmware/intel/ibt-11-5.sfi ${nonarch_base_libdir}/firmware/intel/ibt-11-5.ddc" +FILES_${PN}-ibt-12-16 = "${nonarch_base_libdir}/firmware/intel/ibt-12-16.sfi ${nonarch_base_libdir}/firmware/intel/ibt-12-16.ddc" +FILES_${PN}-ibt-17 = "${nonarch_base_libdir}/firmware/intel/ibt-17-*.sfi ${nonarch_base_libdir}/firmware/intel/ibt-17-*.ddc" +FILES_${PN}-ibt-misc = "${nonarch_base_libdir}/firmware/ibt-*" + +RDEPENDS_${PN}-ibt-hw-37-7 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-hw-37.8 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-11-5 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-12-16 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-17 = "${PN}-ibt-license" +RDEPENDS_${PN}-ibt-misc = "${PN}-ibt-license" + +ALLOW_EMPTY_${PN}-ibt= "1" +ALLOW_EMPTY_${PN}-ibt-misc = "1" + +LICENSE_${PN}-i915 = "Firmware-i915" +LICENSE_${PN}-i915-license = "Firmware-i915" +FILES_${PN}-i915-license = "${nonarch_base_libdir}/firmware/LICENSE.i915" +FILES_${PN}-i915 = "${nonarch_base_libdir}/firmware/i915" +RDEPENDS_${PN}-i915 = "${PN}-i915-license" + +FILES_${PN}-adsp-sst-license = "${nonarch_base_libdir}/firmware/LICENCE.adsp_sst" +LICENSE_${PN}-adsp-sst = "Firmware-adsp_sst" +LICENSE_${PN}-adsp-sst-license = "Firmware-adsp_sst" +FILES_${PN}-adsp-sst = "${nonarch_base_libdir}/firmware/intel/dsp_fw*" +RDEPENDS_${PN}-adsp-sst = "${PN}-adsp-sst-license" + +# For QAT +LICENSE_${PN}-qat = "Firmware-qat" +LICENSE_${PN}-qat-license = "Firmware-qat" +FILES_${PN}-qat-license = "${nonarch_base_libdir}/firmware/LICENCE.qat_firmware" +FILES_${PN}-qat = "${nonarch_base_libdir}/firmware/qat*.bin" +RDEPENDS_${PN}-qat = "${PN}-qat-license" + +# For QCOM VPU/GPU and SDM845 +LICENSE_${PN}-qcom-license = "Firmware-qcom" +FILES_${PN}-qcom-license = "${nonarch_base_libdir}/firmware/LICENSE.qcom ${nonarch_base_libdir}/firmware/qcom/NOTICE.txt" +FILES_${PN}-qcom-venus-1.8 = "${nonarch_base_libdir}/firmware/qcom/venus-1.8/*" +FILES_${PN}-qcom-venus-4.2 = "${nonarch_base_libdir}/firmware/qcom/venus-4.2/*" +FILES_${PN}-qcom-adreno-a3xx = "${nonarch_base_libdir}/firmware/qcom/a300_*.fw ${nonarch_base_libdir}/firmware/a300_*.fw" +FILES_${PN}-qcom-adreno-a530 = "${nonarch_base_libdir}/firmware/qcom/a530*.*" +FILES_${PN}-qcom-adreno-a630 = "${nonarch_base_libdir}/firmware/qcom/a630*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/a630*.*" +FILES_${PN}-qcom-sdm845-audio = "${nonarch_base_libdir}/firmware/qcom/sdm845/adsp*.*" +FILES_${PN}-qcom-sdm845-compute = "${nonarch_base_libdir}/firmware/qcom/sdm845/cdsp*.*" +FILES_${PN}-qcom-sdm845-modem = "${nonarch_base_libdir}/firmware/qcom/sdm845/mba.mbn ${nonarch_base_libdir}/firmware/qcom/sdm845/modem*.* ${nonarch_base_libdir}/firmware/qcom/sdm845/wlanmdsp.mbn" +RDEPENDS_${PN}-qcom-venus-1.8 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-venus-4.2 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a3xx = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a530 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-adreno-a630 = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-audio = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-compute = "${PN}-qcom-license" +RDEPENDS_${PN}-qcom-sdm845-modem = "${PN}-qcom-license" + +FILES_${PN}-liquidio = "${nonarch_base_libdir}/firmware/liquidio" + +# For other firmwares +# Maybe split out to separate packages when needed. +LICENSE_${PN} = "\ + Firmware-Abilis \ + & Firmware-agere \ + & Firmware-amdgpu \ + & Firmware-amd-ucode \ + & Firmware-atmel \ + & Firmware-ca0132 \ + & Firmware-cavium \ + & Firmware-chelsio_firmware \ + & Firmware-cw1200 \ + & Firmware-dib0700 \ + & Firmware-e100 \ + & Firmware-ene_firmware \ + & Firmware-fw_sst_0f28 \ + & Firmware-go7007 \ + & Firmware-hfi1_firmware \ + & Firmware-i2400m \ + & Firmware-ibt_firmware \ + & Firmware-it913x \ + & Firmware-IntcSST2 \ + & Firmware-kaweth \ + & Firmware-moxa \ + & Firmware-myri10ge_firmware \ + & Firmware-nvidia \ + & Firmware-OLPC \ + & Firmware-ath9k-htc \ + & Firmware-phanfw \ + & Firmware-qat \ + & Firmware-qcom \ + & Firmware-qla1280 \ + & Firmware-qla2xxx \ + & Firmware-r8a779x_usb3 \ + & Firmware-radeon \ + & Firmware-ralink_a_mediatek_company_firmware \ + & Firmware-ralink-firmware \ + & Firmware-imx-sdma_firmware \ + & Firmware-siano \ + & Firmware-tda7706-firmware \ + & Firmware-ti-connectivity \ + & Firmware-ti-keystone \ + & Firmware-ueagle-atm4-firmware \ + & Firmware-wl1251 \ + & Firmware-xc4000 \ + & Firmware-xc5000 \ + & Firmware-xc5000c \ + & WHENCE \ +" + +FILES_${PN}-license += "${nonarch_base_libdir}/firmware/LICEN*" +FILES_${PN} += "${nonarch_base_libdir}/firmware/*" +RDEPENDS_${PN} += "${PN}-license" +RDEPENDS_${PN} += "${PN}-whence-license" + +# Make linux-firmware depend on all of the split-out packages. +# Make linux-firmware-iwlwifi depend on all of the split-out iwlwifi packages. +# Make linux-firmware-ibt depend on all of the split-out ibt packages. +python populate_packages_prepend () { + firmware_pkgs = oe.utils.packages_filter_out_system(d) + d.appendVar('RRECOMMENDS_linux-firmware', ' ' + ' '.join(firmware_pkgs)) + + iwlwifi_pkgs = filter(lambda x: x.find('-iwlwifi-') != -1, firmware_pkgs) + d.appendVar('RRECOMMENDS_linux-firmware-iwlwifi', ' ' + ' '.join(iwlwifi_pkgs)) + + ibt_pkgs = filter(lambda x: x.find('-ibt-') != -1, firmware_pkgs) + d.appendVar('RRECOMMENDS_linux-firmware-ibt', ' ' + ' '.join(ibt_pkgs)) +} + +# Firmware files are generally not ran on the CPU, so they can be +# allarch despite being architecture specific +INSANE_SKIP = "arch" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb index d550bf537..f6acb291f 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-rt_5.4.bb @@ -11,13 +11,13 @@ python () { raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "c7609ad17612bd59c1cadb53faf23be8fd7250ef" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine ?= "5db46f8cf9b485f320287147ce593789ee0b5447" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb index 078a15cec..f797aa1df 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.4.bb @@ -6,7 +6,7 @@ KCONFIG_MODE = "--allnoconfig" require recipes-kernel/linux/linux-yocto.inc -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" @@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine_qemuarm ?= "ba0b1e26460cb764005af5758334fc1777760dfd" -SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine_qemuarm ?= "b84f9483ed29096cd9bb6b1922666e8a275dd496" +SRCREV_machine ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" PV = "${LINUX_VERSION}+git${SRCPV}" diff --git a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb index e22509469..65afdc32f 100644 --- a/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb +++ b/poky/meta/recipes-kernel/linux/linux-yocto_5.4.bb @@ -12,16 +12,16 @@ KBRANCH_qemux86 ?= "v5.4/standard/base" KBRANCH_qemux86-64 ?= "v5.4/standard/base" KBRANCH_qemumips64 ?= "v5.4/standard/mti-malta64" -SRCREV_machine_qemuarm ?= "440e41f2f471ba2bb5e3c801ffc140523bdd59b1" -SRCREV_machine_qemuarm64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemumips ?= "941c329c8810e946840bd2f4ab983a94651e563f" -SRCREV_machine_qemuppc ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemuriscv64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemux86 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemux86-64 ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_machine_qemumips64 ?= "b73834a11da2d4327cc3cb9f33fa3540f24d56aa" -SRCREV_machine ?= "e378a5626133c1f46c7ee4ede3785dbb805dc5ab" -SRCREV_meta ?= "054d410d1a73e4729f1fe7540db058de69fe8cfe" +SRCREV_machine_qemuarm ?= "cbe84f8dbb7fe4a67a337795d81cca735346f4c8" +SRCREV_machine_qemuarm64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemumips ?= "b0ad6cf1238ec97860a9e26a6da1aa431c5b96fb" +SRCREV_machine_qemuppc ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemuriscv64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemux86 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemux86-64 ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_machine_qemumips64 ?= "5247564ab2b897a678ed0cd8fb2905c918fc64df" +SRCREV_machine ?= "29f44c85c379c38f15e544828e7e77b3c008f378" +SRCREV_meta ?= "4ed477131e6e508d335d70c070eb84a5c3d673e5" # remap qemuarm to qemuarma15 for the 5.4 kernel # KMACHINE_qemuarm ?= "qemuarma15" @@ -30,7 +30,7 @@ SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRA git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.4;destsuffix=${KMETA}" LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814" -LINUX_VERSION ?= "5.4.34" +LINUX_VERSION ?= "5.4.40" DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}" DEPENDS += "openssl-native util-linux-native" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch new file mode 100644 index 000000000..58f4d2919 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch @@ -0,0 +1,853 @@ +From a2cc0e06330e55eefe668f7d6370de6d3177a907 Mon Sep 17 00:00:00 2001 +From: Mathieu Desnoyers +Date: Tue, 5 May 2020 13:38:31 -0400 +Subject: [PATCH] Update for kernel 5.7: use vmalloc_sync_mappings on kernels + >= 5.7 + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/da0fcb1497ff2437407883647a8a0bba12bd0f91] + +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + lib/ringbuffer/ring_buffer_backend.c | 4 +-- + lttng-abi.c | 4 +-- + lttng-context-callstack.c | 2 +- + lttng-context-cgroup-ns.c | 2 +- + lttng-context-cpu-id.c | 2 +- + lttng-context-egid.c | 2 +- + lttng-context-euid.c | 2 +- + lttng-context-gid.c | 2 +- + lttng-context-hostname.c | 2 +- + lttng-context-interruptible.c | 2 +- + lttng-context-ipc-ns.c | 2 +- + lttng-context-migratable.c | 2 +- + lttng-context-mnt-ns.c | 2 +- + lttng-context-need-reschedule.c | 2 +- + lttng-context-net-ns.c | 2 +- + lttng-context-nice.c | 2 +- + lttng-context-perf-counters.c | 2 +- + lttng-context-pid-ns.c | 2 +- + lttng-context-pid.c | 2 +- + lttng-context-ppid.c | 2 +- + lttng-context-preemptible.c | 2 +- + lttng-context-prio.c | 2 +- + lttng-context-procname.c | 2 +- + lttng-context-sgid.c | 2 +- + lttng-context-suid.c | 2 +- + lttng-context-tid.c | 2 +- + lttng-context-uid.c | 2 +- + lttng-context-user-ns.c | 2 +- + lttng-context-uts-ns.c | 2 +- + lttng-context-vegid.c | 2 +- + lttng-context-veuid.c | 2 +- + lttng-context-vgid.c | 2 +- + lttng-context-vpid.c | 2 +- + lttng-context-vppid.c | 2 +- + lttng-context-vsgid.c | 2 +- + lttng-context-vsuid.c | 2 +- + lttng-context-vtid.c | 2 +- + lttng-context-vuid.c | 2 +- + lttng-context.c | 2 +- + lttng-events.c | 10 +++--- + lttng-ring-buffer-client.h | 4 +-- + lttng-ring-buffer-metadata-client.h | 4 +-- + lttng-syscalls.c | 2 +- + probes/lttng-kprobes.c | 2 +- + probes/lttng-kretprobes.c | 2 +- + probes/lttng-tracepoint-event-impl.h | 4 +-- + probes/lttng-uprobes.c | 2 +- + probes/lttng.c | 2 +- + tests/probes/lttng-test.c | 2 +- + wrapper/vmalloc.h | 49 ++++++++++++++++++++++++++-- + 50 files changed, 104 insertions(+), 61 deletions(-) + +diff --git a/lib/ringbuffer/ring_buffer_backend.c b/lib/ringbuffer/ring_buffer_backend.c +index d4bec25..d232b7f 100644 +--- a/lib/ringbuffer/ring_buffer_backend.c ++++ b/lib/ringbuffer/ring_buffer_backend.c +@@ -17,7 +17,7 @@ + #include + + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -156,7 +156,7 @@ int lib_ring_buffer_backend_allocate(const struct lib_ring_buffer_config *config + * If kmalloc ever uses vmalloc underneath, make sure the buffer pages + * will not fault. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + wrapper_clear_current_oom_origin(); + vfree(pages); + return 0; +diff --git a/lttng-abi.c b/lttng-abi.c +index b63e376..826ecab 100644 +--- a/lttng-abi.c ++++ b/lttng-abi.c +@@ -30,7 +30,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -1938,7 +1938,7 @@ int __init lttng_abi_init(void) + { + int ret = 0; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_clock_ref(); + + ret = lttng_tp_mempool_init(); +diff --git a/lttng-context-callstack.c b/lttng-context-callstack.c +index 195990a..ba35a39 100644 +--- a/lttng-context-callstack.c ++++ b/lttng-context-callstack.c +@@ -141,7 +141,7 @@ int __lttng_add_callstack_generic(struct lttng_ctx **ctx, + field->record = lttng_callstack_record; + field->priv = fdata; + field->destroy = lttng_callstack_destroy; +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + + error_create: +diff --git a/lttng-context-cgroup-ns.c b/lttng-context-cgroup-ns.c +index 81486e5..f324b7e 100644 +--- a/lttng-context-cgroup-ns.c ++++ b/lttng-context-cgroup-ns.c +@@ -97,7 +97,7 @@ int lttng_add_cgroup_ns_to_ctx(struct lttng_ctx **ctx) + field->record = cgroup_ns_record; + field->get_value = cgroup_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_cgroup_ns_to_ctx); +diff --git a/lttng-context-cpu-id.c b/lttng-context-cpu-id.c +index 3778225..6e2f3f4 100644 +--- a/lttng-context-cpu-id.c ++++ b/lttng-context-cpu-id.c +@@ -68,7 +68,7 @@ int lttng_add_cpu_id_to_ctx(struct lttng_ctx **ctx) + field->record = cpu_id_record; + field->get_value = cpu_id_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_cpu_id_to_ctx); +diff --git a/lttng-context-egid.c b/lttng-context-egid.c +index 51536e2..bdcebb9 100644 +--- a/lttng-context-egid.c ++++ b/lttng-context-egid.c +@@ -70,7 +70,7 @@ int lttng_add_egid_to_ctx(struct lttng_ctx **ctx) + field->record = egid_record; + field->get_value = egid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_egid_to_ctx); +diff --git a/lttng-context-euid.c b/lttng-context-euid.c +index 1bcd53f..c2b8dcd 100644 +--- a/lttng-context-euid.c ++++ b/lttng-context-euid.c +@@ -70,7 +70,7 @@ int lttng_add_euid_to_ctx(struct lttng_ctx **ctx) + field->record = euid_record; + field->get_value = euid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_euid_to_ctx); +diff --git a/lttng-context-gid.c b/lttng-context-gid.c +index da54207..c355e8c 100644 +--- a/lttng-context-gid.c ++++ b/lttng-context-gid.c +@@ -70,7 +70,7 @@ int lttng_add_gid_to_ctx(struct lttng_ctx **ctx) + field->record = gid_record; + field->get_value = gid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_gid_to_ctx); +diff --git a/lttng-context-hostname.c b/lttng-context-hostname.c +index e485aa9..17dbd57 100644 +--- a/lttng-context-hostname.c ++++ b/lttng-context-hostname.c +@@ -101,7 +101,7 @@ int lttng_add_hostname_to_ctx(struct lttng_ctx **ctx) + field->record = hostname_record; + field->get_value = hostname_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_hostname_to_ctx); +diff --git a/lttng-context-interruptible.c b/lttng-context-interruptible.c +index f3da199..8bd279a 100644 +--- a/lttng-context-interruptible.c ++++ b/lttng-context-interruptible.c +@@ -75,7 +75,7 @@ int lttng_add_interruptible_to_ctx(struct lttng_ctx **ctx) + field->record = interruptible_record; + field->get_value = interruptible_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_interruptible_to_ctx); +diff --git a/lttng-context-ipc-ns.c b/lttng-context-ipc-ns.c +index 78d5966..40b901b 100644 +--- a/lttng-context-ipc-ns.c ++++ b/lttng-context-ipc-ns.c +@@ -96,7 +96,7 @@ int lttng_add_ipc_ns_to_ctx(struct lttng_ctx **ctx) + field->record = ipc_ns_record; + field->get_value = ipc_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_ipc_ns_to_ctx); +diff --git a/lttng-context-migratable.c b/lttng-context-migratable.c +index e3d8ede..65154b8 100644 +--- a/lttng-context-migratable.c ++++ b/lttng-context-migratable.c +@@ -68,7 +68,7 @@ int lttng_add_migratable_to_ctx(struct lttng_ctx **ctx) + field->record = migratable_record; + field->get_value = migratable_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_migratable_to_ctx); +diff --git a/lttng-context-mnt-ns.c b/lttng-context-mnt-ns.c +index b5bb955..cb59776 100644 +--- a/lttng-context-mnt-ns.c ++++ b/lttng-context-mnt-ns.c +@@ -98,7 +98,7 @@ int lttng_add_mnt_ns_to_ctx(struct lttng_ctx **ctx) + field->record = mnt_ns_record; + field->get_value = mnt_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_mnt_ns_to_ctx); +diff --git a/lttng-context-need-reschedule.c b/lttng-context-need-reschedule.c +index f29fb28..94efaa5 100644 +--- a/lttng-context-need-reschedule.c ++++ b/lttng-context-need-reschedule.c +@@ -68,7 +68,7 @@ int lttng_add_need_reschedule_to_ctx(struct lttng_ctx **ctx) + field->record = need_reschedule_record; + field->get_value = need_reschedule_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_need_reschedule_to_ctx); +diff --git a/lttng-context-net-ns.c b/lttng-context-net-ns.c +index 6694037..37de09f 100644 +--- a/lttng-context-net-ns.c ++++ b/lttng-context-net-ns.c +@@ -97,7 +97,7 @@ int lttng_add_net_ns_to_ctx(struct lttng_ctx **ctx) + field->record = net_ns_record; + field->get_value = net_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_net_ns_to_ctx); +diff --git a/lttng-context-nice.c b/lttng-context-nice.c +index 563e805..acaba85 100644 +--- a/lttng-context-nice.c ++++ b/lttng-context-nice.c +@@ -68,7 +68,7 @@ int lttng_add_nice_to_ctx(struct lttng_ctx **ctx) + field->record = nice_record; + field->get_value = nice_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_nice_to_ctx); +diff --git a/lttng-context-perf-counters.c b/lttng-context-perf-counters.c +index 43c4077..6b04d12 100644 +--- a/lttng-context-perf-counters.c ++++ b/lttng-context-perf-counters.c +@@ -321,7 +321,7 @@ int lttng_add_perf_counter_to_ctx(uint32_t type, + field->u.perf_counter = perf_field; + lttng_context_update(*ctx); + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,10,0)) +diff --git a/lttng-context-pid-ns.c b/lttng-context-pid-ns.c +index f039f26..ccf629d 100644 +--- a/lttng-context-pid-ns.c ++++ b/lttng-context-pid-ns.c +@@ -98,7 +98,7 @@ int lttng_add_pid_ns_to_ctx(struct lttng_ctx **ctx) + field->record = pid_ns_record; + field->get_value = pid_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_pid_ns_to_ctx); +diff --git a/lttng-context-pid.c b/lttng-context-pid.c +index b3caabb..326eabe 100644 +--- a/lttng-context-pid.c ++++ b/lttng-context-pid.c +@@ -68,7 +68,7 @@ int lttng_add_pid_to_ctx(struct lttng_ctx **ctx) + field->record = pid_record; + field->get_value = pid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_pid_to_ctx); +diff --git a/lttng-context-ppid.c b/lttng-context-ppid.c +index ef84ad1..ff25288 100644 +--- a/lttng-context-ppid.c ++++ b/lttng-context-ppid.c +@@ -90,7 +90,7 @@ int lttng_add_ppid_to_ctx(struct lttng_ctx **ctx) + field->record = ppid_record; + field->get_value = ppid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_ppid_to_ctx); +diff --git a/lttng-context-preemptible.c b/lttng-context-preemptible.c +index 328f2a4..867805b 100644 +--- a/lttng-context-preemptible.c ++++ b/lttng-context-preemptible.c +@@ -86,7 +86,7 @@ int lttng_add_preemptible_to_ctx(struct lttng_ctx **ctx) + field->record = preemptible_record; + field->get_value = preemptible_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_preemptible_to_ctx); +diff --git a/lttng-context-prio.c b/lttng-context-prio.c +index b5d21e7..367f7bd 100644 +--- a/lttng-context-prio.c ++++ b/lttng-context-prio.c +@@ -89,7 +89,7 @@ int lttng_add_prio_to_ctx(struct lttng_ctx **ctx) + field->record = prio_record; + field->get_value = prio_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_prio_to_ctx); +diff --git a/lttng-context-procname.c b/lttng-context-procname.c +index 54007d1..8f18ca2 100644 +--- a/lttng-context-procname.c ++++ b/lttng-context-procname.c +@@ -72,7 +72,7 @@ int lttng_add_procname_to_ctx(struct lttng_ctx **ctx) + field->record = procname_record; + field->get_value = procname_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_procname_to_ctx); +diff --git a/lttng-context-sgid.c b/lttng-context-sgid.c +index 61c8d53..2a58cbd 100644 +--- a/lttng-context-sgid.c ++++ b/lttng-context-sgid.c +@@ -70,7 +70,7 @@ int lttng_add_sgid_to_ctx(struct lttng_ctx **ctx) + field->record = sgid_record; + field->get_value = sgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_sgid_to_ctx); +diff --git a/lttng-context-suid.c b/lttng-context-suid.c +index 66d3ef5..ab3e2a9 100644 +--- a/lttng-context-suid.c ++++ b/lttng-context-suid.c +@@ -70,7 +70,7 @@ int lttng_add_suid_to_ctx(struct lttng_ctx **ctx) + field->record = suid_record; + field->get_value = suid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_suid_to_ctx); +diff --git a/lttng-context-tid.c b/lttng-context-tid.c +index d2a20e6..f6defc4 100644 +--- a/lttng-context-tid.c ++++ b/lttng-context-tid.c +@@ -71,7 +71,7 @@ int lttng_add_tid_to_ctx(struct lttng_ctx **ctx) + field->record = tid_record; + field->get_value = tid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_tid_to_ctx); +diff --git a/lttng-context-uid.c b/lttng-context-uid.c +index 5f11de2..5593852 100644 +--- a/lttng-context-uid.c ++++ b/lttng-context-uid.c +@@ -70,7 +70,7 @@ int lttng_add_uid_to_ctx(struct lttng_ctx **ctx) + field->record = uid_record; + field->get_value = uid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_uid_to_ctx); +diff --git a/lttng-context-user-ns.c b/lttng-context-user-ns.c +index 746e4d9..0ed62e3 100644 +--- a/lttng-context-user-ns.c ++++ b/lttng-context-user-ns.c +@@ -82,7 +82,7 @@ int lttng_add_user_ns_to_ctx(struct lttng_ctx **ctx) + field->record = user_ns_record; + field->get_value = user_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_user_ns_to_ctx); +diff --git a/lttng-context-uts-ns.c b/lttng-context-uts-ns.c +index 7352a3d..283bc73 100644 +--- a/lttng-context-uts-ns.c ++++ b/lttng-context-uts-ns.c +@@ -96,7 +96,7 @@ int lttng_add_uts_ns_to_ctx(struct lttng_ctx **ctx) + field->record = uts_ns_record; + field->get_value = uts_ns_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_uts_ns_to_ctx); +diff --git a/lttng-context-vegid.c b/lttng-context-vegid.c +index 604da2a..1431dac 100644 +--- a/lttng-context-vegid.c ++++ b/lttng-context-vegid.c +@@ -70,7 +70,7 @@ int lttng_add_vegid_to_ctx(struct lttng_ctx **ctx) + field->record = vegid_record; + field->get_value = vegid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vegid_to_ctx); +diff --git a/lttng-context-veuid.c b/lttng-context-veuid.c +index 983ae6a..a1b5b70 100644 +--- a/lttng-context-veuid.c ++++ b/lttng-context-veuid.c +@@ -70,7 +70,7 @@ int lttng_add_veuid_to_ctx(struct lttng_ctx **ctx) + field->record = veuid_record; + field->get_value = veuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_veuid_to_ctx); +diff --git a/lttng-context-vgid.c b/lttng-context-vgid.c +index e08c77d..0eed24e 100644 +--- a/lttng-context-vgid.c ++++ b/lttng-context-vgid.c +@@ -70,7 +70,7 @@ int lttng_add_vgid_to_ctx(struct lttng_ctx **ctx) + field->record = vgid_record; + field->get_value = vgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vgid_to_ctx); +diff --git a/lttng-context-vpid.c b/lttng-context-vpid.c +index 982ce55..b5b6ce0 100644 +--- a/lttng-context-vpid.c ++++ b/lttng-context-vpid.c +@@ -83,7 +83,7 @@ int lttng_add_vpid_to_ctx(struct lttng_ctx **ctx) + field->record = vpid_record; + field->get_value = vpid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vpid_to_ctx); +diff --git a/lttng-context-vppid.c b/lttng-context-vppid.c +index 66d6382..347ac63 100644 +--- a/lttng-context-vppid.c ++++ b/lttng-context-vppid.c +@@ -112,7 +112,7 @@ int lttng_add_vppid_to_ctx(struct lttng_ctx **ctx) + field->record = vppid_record; + field->get_value = vppid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vppid_to_ctx); +diff --git a/lttng-context-vsgid.c b/lttng-context-vsgid.c +index aca5eda..3daf889 100644 +--- a/lttng-context-vsgid.c ++++ b/lttng-context-vsgid.c +@@ -70,7 +70,7 @@ int lttng_add_vsgid_to_ctx(struct lttng_ctx **ctx) + field->record = vsgid_record; + field->get_value = vsgid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vsgid_to_ctx); +diff --git a/lttng-context-vsuid.c b/lttng-context-vsuid.c +index 66c1300..d7fb0db 100644 +--- a/lttng-context-vsuid.c ++++ b/lttng-context-vsuid.c +@@ -70,7 +70,7 @@ int lttng_add_vsuid_to_ctx(struct lttng_ctx **ctx) + field->record = vsuid_record; + field->get_value = vsuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vsuid_to_ctx); +diff --git a/lttng-context-vtid.c b/lttng-context-vtid.c +index 8fd68a8..e81ba0e 100644 +--- a/lttng-context-vtid.c ++++ b/lttng-context-vtid.c +@@ -83,7 +83,7 @@ int lttng_add_vtid_to_ctx(struct lttng_ctx **ctx) + field->record = vtid_record; + field->get_value = vtid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vtid_to_ctx); +diff --git a/lttng-context-vuid.c b/lttng-context-vuid.c +index 6ae575f..33e22d3 100644 +--- a/lttng-context-vuid.c ++++ b/lttng-context-vuid.c +@@ -70,7 +70,7 @@ int lttng_add_vuid_to_ctx(struct lttng_ctx **ctx) + field->record = vuid_record; + field->get_value = vuid_get_value; + lttng_context_update(*ctx); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return 0; + } + EXPORT_SYMBOL_GPL(lttng_add_vuid_to_ctx); +diff --git a/lttng-context.c b/lttng-context.c +index eb4534c..a6d4ee6 100644 +--- a/lttng-context.c ++++ b/lttng-context.c +@@ -11,7 +11,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + +diff --git a/lttng-events.c b/lttng-events.c +index a1c8445..401f646 100644 +--- a/lttng-events.c ++++ b/lttng-events.c +@@ -30,7 +30,7 @@ + #include + #include + +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -2753,9 +2753,9 @@ end: + * Registers a transport which can be used as output to extract the data out of + * LTTng. The module calling this registration function must ensure that no + * trap-inducing code will be executed by the transport functions. E.g. +- * vmalloc_sync_all() must be called between a vmalloc and the moment the memory ++ * vmalloc_sync_mappings() must be called between a vmalloc and the moment the memory + * is made visible to the transport function. This registration acts as a +- * vmalloc_sync_all. Therefore, only if the module allocates virtual memory ++ * vmalloc_sync_mappings. Therefore, only if the module allocates virtual memory + * after its registration must it synchronize the TLBs. + */ + void lttng_transport_register(struct lttng_transport *transport) +@@ -2763,9 +2763,9 @@ void lttng_transport_register(struct lttng_transport *transport) + /* + * Make sure no page fault can be triggered by the module about to be + * registered. We deal with this here so we don't have to call +- * vmalloc_sync_all() in each module's init. ++ * vmalloc_sync_mappings() in each module's init. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + mutex_lock(&sessions_mutex); + list_add_tail(&transport->node, <tng_transport_list); +diff --git a/lttng-ring-buffer-client.h b/lttng-ring-buffer-client.h +index d5c512c..ff62830 100644 +--- a/lttng-ring-buffer-client.h ++++ b/lttng-ring-buffer-client.h +@@ -10,7 +10,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -766,7 +766,7 @@ static int __init lttng_ring_buffer_client_init(void) + * This vmalloc sync all also takes care of the lib ring buffer + * vmalloc'd module pages when it is built as a module into LTTng. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_transport_register(<tng_relay_transport); + return 0; + } +diff --git a/lttng-ring-buffer-metadata-client.h b/lttng-ring-buffer-metadata-client.h +index 17ffd75..a098b8d 100644 +--- a/lttng-ring-buffer-metadata-client.h ++++ b/lttng-ring-buffer-metadata-client.h +@@ -9,7 +9,7 @@ + + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + +@@ -428,7 +428,7 @@ static int __init lttng_ring_buffer_client_init(void) + * This vmalloc sync all also takes care of the lib ring buffer + * vmalloc'd module pages when it is built as a module into LTTng. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_transport_register(<tng_relay_transport); + return 0; + } +diff --git a/lttng-syscalls.c b/lttng-syscalls.c +index fb14f6b..97f1ba9 100644 +--- a/lttng-syscalls.c ++++ b/lttng-syscalls.c +@@ -760,7 +760,7 @@ int lttng_syscalls_register(struct lttng_channel *chan, void *filter) + struct lttng_kernel_event ev; + int ret; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + if (!chan->sc_table) { + /* create syscall table mapping syscall to events */ +diff --git a/probes/lttng-kprobes.c b/probes/lttng-kprobes.c +index c0a15e4..a44eaa1 100644 +--- a/probes/lttng-kprobes.c ++++ b/probes/lttng-kprobes.c +@@ -132,7 +132,7 @@ int lttng_kprobes_register(const char *name, + * Well.. kprobes itself puts the page fault handler on the blacklist, + * but we can never be too careful. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + ret = register_kprobe(&event->u.kprobe.kp); + if (ret) +diff --git a/probes/lttng-kretprobes.c b/probes/lttng-kretprobes.c +index 4b18d46..ab98ff2 100644 +--- a/probes/lttng-kretprobes.c ++++ b/probes/lttng-kretprobes.c +@@ -221,7 +221,7 @@ int lttng_kretprobes_register(const char *name, + * Well.. kprobes itself puts the page fault handler on the blacklist, + * but we can never be too careful. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + ret = register_kretprobe(<tng_krp->krp); + if (ret) +diff --git a/probes/lttng-tracepoint-event-impl.h b/probes/lttng-tracepoint-event-impl.h +index 321cdfa..77b8638 100644 +--- a/probes/lttng-tracepoint-event-impl.h ++++ b/probes/lttng-tracepoint-event-impl.h +@@ -15,7 +15,7 @@ + #include + #include + #include +-#include /* for wrapper_vmalloc_sync_all() */ ++#include /* for wrapper_vmalloc_sync_mappings() */ + #include + #include + #include +@@ -1391,7 +1391,7 @@ static __used struct lttng_probe_desc TP_ID(__probe_desc___, TRACE_SYSTEM) = { + #ifndef TP_MODULE_NOINIT + static int TP_ID(__lttng_events_init__, TRACE_SYSTEM)(void) + { +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + return lttng_probe_register(&TP_ID(__probe_desc___, TRACE_SYSTEM)); + } + +diff --git a/probes/lttng-uprobes.c b/probes/lttng-uprobes.c +index 64d8237..bc10128 100644 +--- a/probes/lttng-uprobes.c ++++ b/probes/lttng-uprobes.c +@@ -161,7 +161,7 @@ int lttng_uprobes_add_callsite(struct lttng_event *event, + } + + /* Ensure the memory we just allocated don't trigger page faults. */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + uprobe_handler->event = event; + uprobe_handler->up_consumer.handler = lttng_uprobes_handler_pre; +diff --git a/probes/lttng.c b/probes/lttng.c +index 383202c..05bc138 100644 +--- a/probes/lttng.c ++++ b/probes/lttng.c +@@ -116,7 +116,7 @@ int __init lttng_logger_init(void) + { + int ret = 0; + +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + + /* /dev/lttng-logger */ + ret = misc_register(&logger_dev); +diff --git a/tests/probes/lttng-test.c b/tests/probes/lttng-test.c +index e347639..b450e7d 100644 +--- a/tests/probes/lttng-test.c ++++ b/tests/probes/lttng-test.c +@@ -97,7 +97,7 @@ int __init lttng_test_init(void) + int ret = 0; + + (void) wrapper_lttng_fixup_sig(THIS_MODULE); +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + lttng_test_filter_event_dentry = + proc_create_data(LTTNG_TEST_FILTER_EVENT_FILE, + S_IRUGO | S_IWUGO, NULL, +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 0c3eb86..54715b5 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -21,8 +21,35 @@ + #include + #include + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++ ++static inline ++void wrapper_vmalloc_sync_mappings(void) ++{ ++ void (*vmalloc_sync_mappings_sym)(void); ++ ++ vmalloc_sync_mappings_sym = (void *) kallsyms_lookup_funcptr("vmalloc_sync_mappings"); ++ if (vmalloc_sync_mappings_sym) { ++ vmalloc_sync_mappings_sym(); ++ } else { ++#ifdef CONFIG_X86 ++ /* ++ * Only x86 needs vmalloc_sync_mappings to make sure LTTng does not ++ * trigger recursive page faults. ++ */ ++ printk_once(KERN_WARNING "LTTng: vmalloc_sync_mappings symbol lookup failed.\n"); ++ printk_once(KERN_WARNING "Page fault handler and NMI tracing might trigger faults.\n"); ++#endif ++ } ++} ++ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ ++/* ++ * Map vmalloc_sync_mappings to vmalloc_sync_all() on kernels before 5.7. ++ */ + static inline +-void wrapper_vmalloc_sync_all(void) ++void wrapper_vmalloc_sync_mappings(void) + { + void (*vmalloc_sync_all_sym)(void); + +@@ -40,13 +67,29 @@ void wrapper_vmalloc_sync_all(void) + #endif + } + } ++ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + #else + ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++ ++static inline ++void wrapper_vmalloc_sync_mappings(void) ++{ ++ return vmalloc_sync_mappings(); ++} ++ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + static inline +-void wrapper_vmalloc_sync_all(void) ++void wrapper_vmalloc_sync_mappings(void) + { + return vmalloc_sync_all(); + } ++ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++ + #endif + + #if (LINUX_VERSION_CODE >= KERNEL_VERSION(4,12,0)) +@@ -61,7 +104,7 @@ void *lttng_kvmalloc_node(unsigned long size, gfp_t flags, int node) + * Make sure we don't trigger recursive page faults in the + * tracing fast path. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + } + return ret; + } +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch new file mode 100644 index 000000000..807fe933c --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch @@ -0,0 +1,32 @@ +From 4d1817c129310945bf0b8227ebc0fbb4f6299dc7 Mon Sep 17 00:00:00 2001 +From: Michael Jeanson +Date: Wed, 6 May 2020 11:03:32 -0400 +Subject: [PATCH 2/4] Fix: missing wrapper rename to + wrapper_vmalloc_sync_mappings + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/c1ba644f2edf6a5bc030111ce4167a8798cc1053] + +Signed-off-by: Michael Jeanson +Signed-off-by: Mathieu Desnoyers +Change-Id: Idf7082a980c5a604bfef5c69906678b5083a9bbf +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 54715b5..5d0b389 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -216,7 +216,7 @@ void *lttng_kvmalloc_node(unsigned long size, gfp_t flags, int node) + * Make sure we don't trigger recursive page faults in the + * tracing fast path. + */ +- wrapper_vmalloc_sync_all(); ++ wrapper_vmalloc_sync_mappings(); + } + return ret; + } +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch new file mode 100644 index 000000000..48d7e2f00 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch @@ -0,0 +1,88 @@ +From 23cfd7b53ec1521d3c23ceddfda49352c2d349dc Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Thu, 14 May 2020 13:05:24 +0300 +Subject: [PATCH 3/4] Fix: Use vmalloc_sync_mappings on kernel 5.6 as well + +Upstream commit [1], that got rid of vmalloc_sync_all and introduced +vmalloc_sync_mappings, is a v5.6 commit: +$ git tag --contains 763802b53a427ed3cbd419dbba255c414fdd9e7c +v5.6 +v5.6-rc7 +v5.7-rc1 +v5.7-rc2 +v5.7-rc3 + +Extend the LINUX_VERSION_CODE check to v5.6 to fix the following warnings: +... +[ 483.242037] LTTng: vmalloc_sync_all symbol lookup failed. +[ 483.257056] Page fault handler and NMI tracing might trigger faults. +... + +[1] https://github.com/torvalds/linux/commit/763802b53a427ed3cbd419dbba255c414fdd9e7c + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/da356b324dfc160e09b8966b691792037badf455] + +Signed-off-by: Ovidiu Panait +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index 5d0b389..d905f60 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -21,7 +21,7 @@ + #include + #include + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -43,7 +43,7 @@ void wrapper_vmalloc_sync_mappings(void) + } + } + +-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + /* + * Map vmalloc_sync_mappings to vmalloc_sync_all() on kernels before 5.7. +@@ -68,11 +68,11 @@ void wrapper_vmalloc_sync_mappings(void) + } + } + +-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + #else + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -80,7 +80,7 @@ void wrapper_vmalloc_sync_mappings(void) + return vmalloc_sync_mappings(); + } + +-#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#else /* #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -88,7 +88,7 @@ void wrapper_vmalloc_sync_mappings(void) + return vmalloc_sync_all(); + } + +-#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,7,0)) */ ++#endif /* #else #if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) */ + + #endif + +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch new file mode 100644 index 000000000..a0b870486 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules/0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch @@ -0,0 +1,67 @@ +From f419315f28a1da656c4faa8a852a2928ce38c72d Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Thu, 14 May 2020 14:27:17 +0300 +Subject: [PATCH 4/4] Update: Use vmalloc_sync_mappings for stable kernels + +Starting from v5.4.28/v5.2.37/v4.19.113/v4.14.175/v4.9.218/v4.4.218, stable +kernel branches backported v5.6 upstream commit [1], causing the following +warnings: +... +[ 483.242037] LTTng: vmalloc_sync_all symbol lookup failed. +[ 483.257056] Page fault handler and NMI tracing might trigger faults. +... + +Extend check for vmalloc_sync_mappings for stable kernels as well. + +[1] https://github.com/torvalds/linux/commit/763802b53a427ed3cbd419dbba255c414fdd9e7c + +[ Edit: minor coding style fix by Mathieu Desnoyers. ] + +Upstream-Status: Backport [https://github.com/lttng/lttng-modules/commit/5939591f87dc291bc858caf72decfb8569d802e3] + +Signed-off-by: Ovidiu Panait +Signed-off-by: Mathieu Desnoyers +Signed-off-by: Ovidiu Panait +--- + wrapper/vmalloc.h | 17 +++++++++++++++-- + 1 file changed, 15 insertions(+), 2 deletions(-) + +diff --git a/wrapper/vmalloc.h b/wrapper/vmalloc.h +index d905f60..c7538ae 100644 +--- a/wrapper/vmalloc.h ++++ b/wrapper/vmalloc.h +@@ -20,8 +20,15 @@ + + #include + #include ++#include + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \ ++ || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0) \ ++ || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0) \ ++ || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0) \ ++ || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0) \ ++ || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0) \ ++ || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +@@ -72,7 +79,13 @@ void wrapper_vmalloc_sync_mappings(void) + + #else + +-#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0)) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(5,6,0) \ ++ || LTTNG_KERNEL_RANGE(5,4,28, 5,5,0) \ ++ || LTTNG_KERNEL_RANGE(5,2,37, 5,3,0) \ ++ || LTTNG_KERNEL_RANGE(4,19,113, 4,20,0) \ ++ || LTTNG_KERNEL_RANGE(4,14,175, 4,15,0) \ ++ || LTTNG_KERNEL_RANGE(4,9,218, 4,10,0) \ ++ || LTTNG_KERNEL_RANGE(4,4,218, 4,5,0)) + + static inline + void wrapper_vmalloc_sync_mappings(void) +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb deleted file mode 100644 index 6fff096a3..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-modules_2.11.2.bb +++ /dev/null @@ -1,43 +0,0 @@ -SECTION = "devel" -SUMMARY = "Linux Trace Toolkit KERNEL MODULE" -DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" -LICENSE = "LGPLv2.1 & GPLv2 & MIT" -LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" - -inherit module - -COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' - -SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ - file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ - " - -SRC_URI[md5sum] = "2e3bc8cfb264fa13f374618b46f170e7" -SRC_URI[sha256sum] = "8a42240813b8fd1d001835cd6f5ec687f7d7f3b26070d4e21604c35a51a6441d" - -export INSTALL_MOD_DIR="kernel/lttng-modules" - -EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" - -do_install_append() { - # Delete empty directories to avoid QA failures if no modules were built - find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; -} - -python do_package_prepend() { - if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): - bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) -} - -BBCLASSEXTEND = "devupstream:target" -LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" -DEFAULT_PREFERENCE_class-devupstream = "-1" -SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.11 \ - file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ - file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ - " -SRCREV_class-devupstream = "17c413953603f063f2a9d6c3788bec914ce6f955" -PV_class-devupstream = "2.11.2+git${SRCPV}" -S_class-devupstream = "${WORKDIR}/git" -SRCREV_FORMAT ?= "lttng_git" diff --git a/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb new file mode 100644 index 000000000..4a6c42e3b --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-modules_2.12.0.bb @@ -0,0 +1,47 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit KERNEL MODULE" +DESCRIPTION = "The lttng-modules 2.0 package contains the kernel tracer modules" +LICENSE = "LGPLv2.1 & GPLv2 & MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" + +inherit module + +COMPATIBLE_HOST = '(x86_64|i.86|powerpc|aarch64|mips|nios2|arm|riscv).*-linux' + +SRC_URI = "https://lttng.org/files/${BPN}/${BPN}-${PV}.tar.bz2 \ + file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ + file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ + file://0001-Update-for-kernel-5.7-use-vmalloc_sync_mappings-on-k.patch \ + file://0002-Fix-missing-wrapper-rename-to-wrapper_vmalloc_sync_m.patch \ + file://0003-Fix-Use-vmalloc_sync_mappings-on-kernel-5.6-as-well.patch \ + file://0004-Update-Use-vmalloc_sync_mappings-for-stable-kernels.patch \ + " + +SRC_URI[md5sum] = "be252df5013ea03894921d0b493c7b6c" +SRC_URI[sha256sum] = "efeb2ae60e96dbe9a9b342d3a80dfc7642f06a8c09686089d491ad696bb98f4d" + +export INSTALL_MOD_DIR="kernel/lttng-modules" + +EXTRA_OEMAKE += "KERNELDIR='${STAGING_KERNEL_DIR}'" + +do_install_append() { + # Delete empty directories to avoid QA failures if no modules were built + find ${D}/${nonarch_base_libdir} -depth -type d -empty -exec rmdir {} \; +} + +python do_package_prepend() { + if not os.path.exists(os.path.join(d.getVar('D'), d.getVar('nonarch_base_libdir')[1:], 'modules')): + bb.warn("%s: no modules were created; this may be due to CONFIG_TRACEPOINTS not being enabled in your kernel." % d.getVar('PN')) +} + +BBCLASSEXTEND = "devupstream:target" +LIC_FILES_CHKSUM_class-devupstream = "file://LICENSE;md5=3f882d431dc0f32f1f44c0707aa41128" +DEFAULT_PREFERENCE_class-devupstream = "-1" +SRC_URI_class-devupstream = "git://git.lttng.org/lttng-modules;branch=stable-2.12 \ + file://Makefile-Do-not-fail-if-CONFIG_TRACEPOINTS-is-not-en.patch \ + file://BUILD_RUNTIME_BUG_ON-vs-gcc7.patch \ + " +SRCREV_class-devupstream = "17c413953603f063f2a9d6c3788bec914ce6f955" +PV_class-devupstream = "2.12.0+git${SRCPV}" +S_class-devupstream = "${WORKDIR}/git" +SRCREV_FORMAT ?= "lttng_git" diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch new file mode 100644 index 000000000..a150d648a --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-tools/0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch @@ -0,0 +1,43 @@ +From e5d94cf4882cc6516af52b794c6acb8e4d6469a3 Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait +Date: Mon, 18 May 2020 16:39:26 +0300 +Subject: [PATCH] tests: gen-ust-events-ns/tp.h: Fix build with musl libc + +Fix the following build error with musl libc: +In file included from ../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:14, + from ../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.c:10: +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:17:10: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/tp.h:17:10: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/./tp.h:17:2: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~~~ +../../../../../lttng-tools-2.12.0/tests/utils/testapp/gen-ust-events-ns/./tp.h:17:2: error: unknown type name 'ino_t'; did you mean 'int8_t'? + 17 | TP_ARGS(ino_t, ns_ino), + | ^~~~~~~ + +Upstream-Status: Submitted [https://github.com/lttng/lttng-tools/pull/161] + +Signed-off-by: Ovidiu Panait +--- + tests/utils/testapp/gen-ust-events-ns/tp.h | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/tests/utils/testapp/gen-ust-events-ns/tp.h b/tests/utils/testapp/gen-ust-events-ns/tp.h +index 4dbfed5..e0ddb29 100644 +--- a/tests/utils/testapp/gen-ust-events-ns/tp.h ++++ b/tests/utils/testapp/gen-ust-events-ns/tp.h +@@ -11,6 +11,7 @@ + #if !defined(_TRACEPOINT_TP_H) || defined(TRACEPOINT_HEADER_MULTI_READ) + #define _TRACEPOINT_TP_H + ++#include + #include + + TRACEPOINT_EVENT(tp, tptest, +-- +2.17.1 + diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch b/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch deleted file mode 100644 index 42cebf94a..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-tools/x32.patch +++ /dev/null @@ -1,36 +0,0 @@ -Fix build for x32 - -Signed-off-by: Christopher Larson - -Fix build error of src/common/utils.c for x32. - -Upstream-Status: Submitted [https://github.com/lttng/lttng-tools/pull/150] - -Signed-off-by: Kai Kang - -diff --git a/src/bin/lttng/utils.c b/src/bin/lttng/utils.c -index 0e96ef0c..5c79c8c7 100644 ---- a/src/bin/lttng/utils.c -+++ b/src/bin/lttng/utils.c -@@ -158,7 +158,7 @@ unsigned int fls_u32(uint32_t x) - #define HAS_FLS_U32 - #endif - --#if defined(__x86_64) -+#if defined(__x86_64) && !defined(__ILP32__) - static inline - unsigned int fls_u64(uint64_t x) - { -diff --git a/src/common/utils.c b/src/common/utils.c -index 08139e5e..3c389981 100644 ---- a/src/common/utils.c -+++ b/src/common/utils.c -@@ -1223,7 +1223,7 @@ static inline unsigned int fls_u32(uint32_t x) - #define HAS_FLS_U32 - #endif - --#if defined(__x86_64) -+#if defined(__x86_64) && !defined(__ILP32__) - static inline - unsigned int fls_u64(uint64_t x) - { diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb deleted file mode 100644 index 36a19ec18..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-tools_2.11.2.bb +++ /dev/null @@ -1,166 +0,0 @@ -SECTION = "devel" -SUMMARY = "Linux Trace Toolkit Control" -DESCRIPTION = "The Linux trace toolkit is a suite of tools designed \ -to extract program execution details from the Linux operating system \ -and interpret them." - -LICENSE = "GPLv2 & LGPLv2.1" -LIC_FILES_CHKSUM = "file://LICENSE;md5=01d7fc4496aacf37d90df90b90b0cac1 \ - file://gpl-2.0.txt;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ - file://lgpl-2.1.txt;md5=0f0d71500e6a57fd24d825f33242b9ca" - -DEPENDS = "liburcu popt libxml2 util-linux" -RDEPENDS_${PN} = "libgcc" -RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed python3-core" -RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" -RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" -# babelstats.pl wants getopt-long -RDEPENDS_${PN}-ptest += "perl-module-getopt-long" - -PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ - am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ - PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ -" -PACKAGECONFIG ??= "lttng-ust" -PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" -PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" -PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" -PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" -PACKAGECONFIG_remove_arc = "lttng-ust" - -SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ - file://x32.patch \ - file://0001-tests-do-not-strip-a-helper-library.patch \ - file://run-ptest \ - file://lttng-sessiond.service \ - file://0001-tests-regression-disable-the-tools-live-tests.patch \ - " - -SRC_URI[md5sum] = "68ed78f7fa4235477ea577e48b3cd245" -SRC_URI[sha256sum] = "936477305b25f65c5dd22db9161287d30a309ce868b6180857b1fd1fb5e6a56b" - -inherit autotools ptest pkgconfig useradd python3-dir manpages systemd - -SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" -SYSTEMD_AUTO_ENABLE = "disable" - -USERADD_PACKAGES = "${PN}" -GROUPADD_PARAM_${PN} = "tracing" - -FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ - ${PYTHON_SITEPACKAGES_DIR}/*" -FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" -FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" - -# Since files are installed into ${libdir}/lttng/libexec we match -# the libexec insane test so skip it. -# Python module needs to keep _lttng.so -INSANE_SKIP_${PN} = "libexec dev-so" -INSANE_SKIP_${PN}-dbg = "libexec" - -PRIVATE_LIBS_${PN}-ptest = "libfoo.so" - -do_install_append () { - # install systemd unit file - install -d ${D}${systemd_unitdir}/system - install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system -} - -do_install_ptest () { - for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh; do - install -D "${B}/$f" "${D}${PTEST_PATH}/$f" - done - - for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-3.0.xsd; do - install -D "${S}/$f" "${D}${PTEST_PATH}/$f" - done - - # Prevent 'make check' from recursing into non-test subdirectories. - sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" - - # We don't need these - sed -i -e '/dist_noinst_SCRIPTS = /,/^$/d' "${D}${PTEST_PATH}/tests/Makefile" - - # We shouldn't need to build anything in tests/utils - sed -i -e 's!am__append_1 = . utils!am__append_1 = . !' \ - "${D}${PTEST_PATH}/tests/Makefile" - - # Copy the tests directory tree and the executables and - # Makefiles found within. - for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do - install -d "${D}${PTEST_PATH}/tests/$d" - find "${B}/tests/$d" -maxdepth 1 -executable -type f \ - -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + - # Take all .py scripts for tests using the python bindings. - find "${B}/tests/$d" -maxdepth 1 -type f -name "*.py" \ - -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + - test -r "${B}/tests/$d/Makefile" && \ - install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile" - done - - for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do - for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do - cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f - case $f in - *.so) - install -d ${D}${PTEST_PATH}/tests/$d/ - ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f - # Remove any rpath/runpath to pass QA check. - chrpath --delete ${D}${PTEST_PATH}/tests/$d/$f - ;; - esac - done - done - - chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary - - # - # Use the versioned libs of liblttng-ust-dl. - # - ustdl="${D}${PTEST_PATH}/tests/regression/ust/ust-dl/test_ust-dl.py" - if [ -e $ustdl ]; then - sed -i -e 's!:liblttng-ust-dl.so!:liblttng-ust-dl.so.0!' $ustdl - fi - - install ${B}/tests/unit/ini_config/sample.ini ${D}${PTEST_PATH}/tests/unit/ini_config/ - - # We shouldn't need to build anything in tests/regression/tools - sed -i -e 's!^SUBDIRS = tools !SUBDIRS = !' \ - "${D}${PTEST_PATH}/tests/regression/Makefile" - - # Prevent attempts to update Makefiles during test runs, and - # silence "Making check in $SUBDIR" messages. - find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ - sed -i -e '/Makefile:/,/^$/d' -e '/%: %.in/,/^$/d' \ - -e '/echo "Making $$target in $$subdir"; \\/d' \ - -e 's/^srcdir = \(.*\)/srcdir = ./' \ - -e 's/^builddir = \(.*\)/builddir = ./' \ - -e 's/^all-am:.*/all-am:/' \ - {} + - - find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ - touch -r "${B}/Makefile" {} + - - # - # Need to stop generated binaries from rebuilding by removing their source dependencies - # - sed -e 's#\(^test.*OBJECTS.=\)#disable\1#g' \ - -e 's#\(^test.*DEPENDENCIES.=\)#disable\1#g' \ - -e 's#\(^test.*SOURCES.=\)#disable\1#g' \ - -e 's#\(^test.*LDADD.=\)#disable\1#g' \ - -i ${D}${PTEST_PATH}/tests/unit/Makefile - - # Substitute links to installed binaries. - for prog in lttng lttng-relayd lttng-sessiond lttng-consumerd lttng-crash; do - exedir="${D}${PTEST_PATH}/src/bin/${prog}" - install -d "$exedir" - case "$prog" in - lttng-consumerd) - ln -s "${libdir}/lttng/libexec/$prog" "$exedir" - ;; - *) - ln -s "${bindir}/$prog" "$exedir" - ;; - esac - done -} diff --git a/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb new file mode 100644 index 000000000..148a7928d --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-tools_2.12.0.bb @@ -0,0 +1,166 @@ +SECTION = "devel" +SUMMARY = "Linux Trace Toolkit Control" +DESCRIPTION = "The Linux trace toolkit is a suite of tools designed \ +to extract program execution details from the Linux operating system \ +and interpret them." + +LICENSE = "GPLv2 & LGPLv2.1" +LIC_FILES_CHKSUM = "file://LICENSE;md5=40ef17463fbd6f377db3c47b1cbaded8 \ + file://LICENSES/GPL-2.0;md5=e68f69a54b44ba526ad7cb963e18fbce \ + file://LICENSES/LGPL-2.1;md5=9920968d0f2ff585ce61fae30344dd95" + +DEPENDS = "liburcu popt libxml2 util-linux" +RDEPENDS_${PN} = "libgcc" +RDEPENDS_${PN}-ptest += "make perl bash gawk babeltrace procps perl-module-overloading coreutils util-linux kmod lttng-modules sed python3-core" +RDEPENDS_${PN}-ptest_append_libc-glibc = " glibc-utils" +RDEPENDS_${PN}-ptest_append_libc-musl = " musl-utils" +# babelstats.pl wants getopt-long +RDEPENDS_${PN}-ptest += "perl-module-getopt-long" + +PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ + am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ + PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ +" +PACKAGECONFIG ??= "lttng-ust" +PACKAGECONFIG[python] = "--enable-python-bindings ${PYTHON_OPTION},,python3 swig-native" +PACKAGECONFIG[lttng-ust] = "--with-lttng-ust, --without-lttng-ust, lttng-ust" +PACKAGECONFIG[kmod] = "--with-kmod, --without-kmod, kmod" +PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" +PACKAGECONFIG_remove_arc = "lttng-ust" + +SRC_URI = "https://lttng.org/files/lttng-tools/lttng-tools-${PV}.tar.bz2 \ + file://0001-tests-do-not-strip-a-helper-library.patch \ + file://run-ptest \ + file://lttng-sessiond.service \ + file://0001-tests-regression-disable-the-tools-live-tests.patch \ + file://0001-tests-gen-ust-events-ns-tp.h-Fix-build-with-musl-lib.patch \ + " + +SRC_URI[md5sum] = "4592201ea981f0722438345fb1f009d2" +SRC_URI[sha256sum] = "405661d27617dc79a42712174a051a45c7ca12d167576c0d93f2de708ed29445" + +inherit autotools ptest pkgconfig useradd python3-dir manpages systemd + +SYSTEMD_SERVICE_${PN} = "lttng-sessiond.service" +SYSTEMD_AUTO_ENABLE = "disable" + +USERADD_PACKAGES = "${PN}" +GROUPADD_PARAM_${PN} = "tracing" + +FILES_${PN} += "${libdir}/lttng/libexec/* ${datadir}/xml/lttng \ + ${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-staticdev += "${PYTHON_SITEPACKAGES_DIR}/*.a" +FILES_${PN}-dev += "${PYTHON_SITEPACKAGES_DIR}/*.la" + +# Since files are installed into ${libdir}/lttng/libexec we match +# the libexec insane test so skip it. +# Python module needs to keep _lttng.so +INSANE_SKIP_${PN} = "libexec dev-so" +INSANE_SKIP_${PN}-dbg = "libexec" + +PRIVATE_LIBS_${PN}-ptest = "libfoo.so" + +do_install_append () { + # install systemd unit file + install -d ${D}${systemd_unitdir}/system + install -m 0644 ${WORKDIR}/lttng-sessiond.service ${D}${systemd_unitdir}/system +} + +do_install_ptest () { + for f in Makefile tests/Makefile tests/utils/utils.sh tests/regression/tools/save-load/load-42*.lttng tests/regression/tools/save-load/configuration/load-42*.lttng tests/regression/tools/health/test_health.sh tests/regression/tools/metadata/utils.sh tests/regression/tools/rotation/rotate_utils.sh; do + install -D "${B}/$f" "${D}${PTEST_PATH}/$f" + done + + for f in config/tap-driver.sh config/test-driver src/common/config/session.xsd src/common/mi-lttng-4.0.xsd; do + install -D "${S}/$f" "${D}${PTEST_PATH}/$f" + done + + # Prevent 'make check' from recursing into non-test subdirectories. + sed -i -e 's!^SUBDIRS = .*!SUBDIRS = tests!' "${D}${PTEST_PATH}/Makefile" + + # We don't need these + sed -i -e '/dist_noinst_SCRIPTS = /,/^$/d' "${D}${PTEST_PATH}/tests/Makefile" + + # We shouldn't need to build anything in tests/utils + sed -i -e 's!am__append_1 = . utils!am__append_1 = . !' \ + "${D}${PTEST_PATH}/tests/Makefile" + + # Copy the tests directory tree and the executables and + # Makefiles found within. + for d in $(find "${B}/tests" -type d -not -name .libs -printf '%P ') ; do + install -d "${D}${PTEST_PATH}/tests/$d" + find "${B}/tests/$d" -maxdepth 1 -executable -type f \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + # Take all .py scripts for tests using the python bindings. + find "${B}/tests/$d" -maxdepth 1 -type f -name "*.py" \ + -exec install -t "${D}${PTEST_PATH}/tests/$d" {} + + test -r "${B}/tests/$d/Makefile" && \ + install -t "${D}${PTEST_PATH}/tests/$d" "${B}/tests/$d/Makefile" + done + + for d in $(find "${B}/tests" -type d -name .libs -printf '%P ') ; do + for f in $(find "${B}/tests/$d" -maxdepth 1 -executable -type f -printf '%P ') ; do + cp ${B}/tests/$d/$f ${D}${PTEST_PATH}/tests/`dirname $d`/$f + case $f in + *.so) + install -d ${D}${PTEST_PATH}/tests/$d/ + ln -s ../$f ${D}${PTEST_PATH}/tests/$d/$f + # Remove any rpath/runpath to pass QA check. + chrpath --delete ${D}${PTEST_PATH}/tests/$d/$f + ;; + esac + done + done + + chrpath --delete ${D}${PTEST_PATH}/tests/utils/testapp/userspace-probe-elf-binary/userspace-probe-elf-binary + + # + # Use the versioned libs of liblttng-ust-dl. + # + ustdl="${D}${PTEST_PATH}/tests/regression/ust/ust-dl/test_ust-dl.py" + if [ -e $ustdl ]; then + sed -i -e 's!:liblttng-ust-dl.so!:liblttng-ust-dl.so.0!' $ustdl + fi + + install ${B}/tests/unit/ini_config/sample.ini ${D}${PTEST_PATH}/tests/unit/ini_config/ + + # We shouldn't need to build anything in tests/regression/tools + sed -i -e 's!^SUBDIRS = tools !SUBDIRS = !' \ + "${D}${PTEST_PATH}/tests/regression/Makefile" + + # Prevent attempts to update Makefiles during test runs, and + # silence "Making check in $SUBDIR" messages. + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + sed -i -e '/Makefile:/,/^$/d' -e '/%: %.in/,/^$/d' \ + -e '/echo "Making $$target in $$subdir"; \\/d' \ + -e 's/^srcdir = \(.*\)/srcdir = ./' \ + -e 's/^builddir = \(.*\)/builddir = ./' \ + -e 's/^all-am:.*/all-am:/' \ + {} + + + find "${D}${PTEST_PATH}" -name Makefile -type f -exec \ + touch -r "${B}/Makefile" {} + + + # + # Need to stop generated binaries from rebuilding by removing their source dependencies + # + sed -e 's#\(^test.*OBJECTS.=\)#disable\1#g' \ + -e 's#\(^test.*DEPENDENCIES.=\)#disable\1#g' \ + -e 's#\(^test.*SOURCES.=\)#disable\1#g' \ + -e 's#\(^test.*LDADD.=\)#disable\1#g' \ + -i ${D}${PTEST_PATH}/tests/unit/Makefile + + # Substitute links to installed binaries. + for prog in lttng lttng-relayd lttng-sessiond lttng-consumerd lttng-crash; do + exedir="${D}${PTEST_PATH}/src/bin/${prog}" + install -d "$exedir" + case "$prog" in + lttng-consumerd) + ln -s "${libdir}/lttng/libexec/$prog" "$exedir" + ;; + *) + ln -s "${bindir}/$prog" "$exedir" + ;; + esac + done +} diff --git a/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb b/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb deleted file mode 100644 index 3bd0dfad6..000000000 --- a/poky/meta/recipes-kernel/lttng/lttng-ust_2.11.1.bb +++ /dev/null @@ -1,51 +0,0 @@ -SUMMARY = "Linux Trace Toolkit Userspace Tracer 2.x" -DESCRIPTION = "The LTTng UST 2.x package contains the userspace tracer library to trace userspace codes." -HOMEPAGE = "http://lttng.org/ust" -BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" - -LICENSE = "LGPLv2.1+ & MIT & GPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \ - file://snprintf/snprintf.c;endline=32;md5=d3d544959d8a3782b2e07451be0a903c \ - file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44" - -PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ - am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ - PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ -" - -inherit autotools lib_package manpages python3native - -EXTRA_OECONF = "--disable-numa" - -DEPENDS = "liburcu util-linux" -RDEPENDS_${PN}-bin = "python3-core" - -# For backwards compatibility after rename -RPROVIDES_${PN} = "lttng2-ust" -RREPLACES_${PN} = "lttng2-ust" -RCONFLICTS_${PN} = "lttng2-ust" - -PE = "2" - -SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ - file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ - " - -SRC_URI[md5sum] = "7de04a8ff1f0a4effa09a42620ec4081" -SRC_URI[sha256sum] = "7fbab963d60741ffd4d8dd0a246f6cf168cdfe3b2385798bd90550f5f0bba869" - -CVE_PRODUCT = "ust" - -PACKAGECONFIG[examples] = "--enable-examples, --disable-examples," -PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" -PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" - -FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" -FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" -FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" - -do_install_append() { - # Patch python tools to use Python 3; they should be source compatible, but - # still refer to Python 2 in the shebang - sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp -} diff --git a/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb new file mode 100644 index 000000000..ad544d1b4 --- /dev/null +++ b/poky/meta/recipes-kernel/lttng/lttng-ust_2.12.0.bb @@ -0,0 +1,51 @@ +SUMMARY = "Linux Trace Toolkit Userspace Tracer 2.x" +DESCRIPTION = "The LTTng UST 2.x package contains the userspace tracer library to trace userspace codes." +HOMEPAGE = "http://lttng.org/ust" +BUGTRACKER = "https://bugs.lttng.org/projects/lttng-ust" + +LICENSE = "LGPLv2.1+ & MIT & GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=c963eb366b781252b0bf0fdf1624d9e9 \ + file://snprintf/snprintf.c;endline=32;md5=d3d544959d8a3782b2e07451be0a903c \ + file://snprintf/various.h;endline=31;md5=89f2509b6b4682c4fc95255eec4abe44" + +PYTHON_OPTION = "am_cv_python_pyexecdir='${PYTHON_SITEPACKAGES_DIR}' \ + am_cv_python_pythondir='${PYTHON_SITEPACKAGES_DIR}' \ + PYTHON_INCLUDE='-I${STAGING_INCDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}' \ +" + +inherit autotools lib_package manpages python3native + +EXTRA_OECONF = "--disable-numa" + +DEPENDS = "liburcu util-linux" +RDEPENDS_${PN}-bin = "python3-core" + +# For backwards compatibility after rename +RPROVIDES_${PN} = "lttng2-ust" +RREPLACES_${PN} = "lttng2-ust" +RCONFLICTS_${PN} = "lttng2-ust" + +PE = "2" + +SRC_URI = "https://lttng.org/files/lttng-ust/lttng-ust-${PV}.tar.bz2 \ + file://0001-python-lttngust-Makefile.am-Add-install-lib-to-setup.patch \ + " + +SRC_URI[md5sum] = "3bf4a04c305271d13cf6596c4e7b9b3c" +SRC_URI[sha256sum] = "1983edb525f3f27e3494088d8d5389b4c71af66bbfe63c6f1df2ad95aa44a528" + +CVE_PRODUCT = "ust" + +PACKAGECONFIG[examples] = "--enable-examples, --disable-examples," +PACKAGECONFIG[manpages] = "--enable-man-pages, --disable-man-pages, asciidoc-native xmlto-native libxslt-native" +PACKAGECONFIG[python3-agent] = "--enable-python-agent ${PYTHON_OPTION}, --disable-python-agent, python3, python3" + +FILES_${PN} += " ${PYTHON_SITEPACKAGES_DIR}/*" +FILES_${PN}-staticdev += " ${PYTHON_SITEPACKAGES_DIR}/*.a" +FILES_${PN}-dev += " ${PYTHON_SITEPACKAGES_DIR}/*.la" + +do_install_append() { + # Patch python tools to use Python 3; they should be source compatible, but + # still refer to Python 2 in the shebang + sed -i -e '1s,#!.*python.*,#!${bindir}/python3,' ${D}${bindir}/lttng-gen-tp +} diff --git a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb index 460e05a44..0be1422a2 100644 --- a/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb +++ b/poky/meta/recipes-kernel/make-mod-scripts/make-mod-scripts_1.0.bb @@ -12,6 +12,8 @@ S = "${WORKDIR}" do_configure[depends] += "virtual/kernel:do_shared_workdir openssl-native:do_populate_sysroot" do_compile[depends] += "virtual/kernel:do_compile_kernelmodules" +RDEPENDS_${PN}-dev = "" + DEPENDS += "bc-native bison-native" EXTRA_OEMAKE = " HOSTCC="${BUILD_CC} ${BUILD_CFLAGS} ${BUILD_LDFLAGS}" HOSTCPP="${BUILD_CPP}"" diff --git a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb index 9882e1276..d092b158f 100644 --- a/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb +++ b/poky/meta/recipes-multimedia/alsa/alsa-plugins_1.2.1.bb @@ -167,7 +167,7 @@ FILES_${PN}-pulseaudio-conf += "\ " RDEPENDS_${PN}-pulseaudio-conf += "\ - libasound-module-conf-pulse \ - libasound-module-ctl-pulse \ - libasound-module-pcm-pulse \ + ${MLPREFIX}libasound-module-conf-pulse \ + ${MLPREFIX}libasound-module-ctl-pulse \ + ${MLPREFIX}libasound-module-pcm-pulse \ " diff --git a/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb index 288c715cc..e9941c7a2 100644 --- a/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb +++ b/poky/meta/recipes-sato/webkit/webkitgtk_2.28.2.bb @@ -39,8 +39,8 @@ DEPENDS = "zlib libsoup-2.4 curl libxml2 cairo libxslt libgcrypt \ " PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'wayland x11', d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '' ,d)} \ - ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2' ,d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'webgl opengl', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', '', 'webgl gles2', d)} \ enchant \ libsecret \ " diff --git a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb index 107d312d1..02a4d4712 100644 --- a/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb +++ b/poky/meta/recipes-support/atk/at-spi2-atk_2.34.2.bb @@ -9,7 +9,7 @@ SRC_URI[archive.sha256sum] = "901323cee0eef05c01ec4dee06c701aeeca81a314a7d60216f DEPENDS = "dbus glib-2.0 glib-2.0-native atk at-spi2-core libxml2" GNOMEBASEBUILDCLASS = "meson" -inherit gnomebase features_check upstream-version-is-even +inherit gnomebase upstream-version-is-even PACKAGES =+ "${PN}-gnome ${PN}-gtk2" diff --git a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb index 7c4db85b3..694c5f09b 100644 --- a/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb +++ b/poky/meta/recipes-support/bmap-tools/bmap-tools_3.5.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" SRC_URI = "git://github.com/intel/${BPN}" -SRCREV = "db7087b883bf52cbff063ad17a41cc1cbb85104d" +SRCREV = "a17f0e3ff8669dd3b1c44a741ae4f8162155faed" S = "${WORKDIR}/git" PV .= "+git${SRCPV}" diff --git a/poky/meta/recipes-support/boost/boost.inc b/poky/meta/recipes-support/boost/boost.inc index 8eb949438..ca140d595 100644 --- a/poky/meta/recipes-support/boost/boost.inc +++ b/poky/meta/recipes-support/boost/boost.inc @@ -62,12 +62,16 @@ PACKAGES = "${PN}-dbg ${BOOST_PACKAGES}" python __anonymous () { packages = [] extras = [] + mlprefix = d.getVar("MLPREFIX") for lib in d.getVar('BOOST_LIBS').split(): extras.append("--with-%s" % lib) - pkg = "boost-%s" % lib.replace("_", "-") - packages.append(pkg) + pkg = "boost-%s" % (lib.replace("_", "-")) + packages.append(mlprefix + pkg) if not d.getVar("FILES_%s" % pkg): - d.setVar("FILES_%s" % pkg, "${libdir}/libboost_%s*.so.*" % lib) + d.setVar("FILES_%s%s" % (mlprefix, pkg), "${libdir}/libboost_%s*.so.*" % lib) + else: + d.setVar("FILES_%s%s" % (mlprefix, pkg), d.getVar("FILES_%s" % pkg)) + d.setVar("BOOST_PACKAGES", " ".join(packages)) d.setVar("BJAM_EXTRA", " ".join(extras)) } diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_143.bb b/poky/meta/recipes-support/diffoscope/diffoscope_143.bb deleted file mode 100644 index 4ba3832d1..000000000 --- a/poky/meta/recipes-support/diffoscope/diffoscope_143.bb +++ /dev/null @@ -1,18 +0,0 @@ -SUMMARY = "in-depth comparison of files, archives, and directories" -HOMEPAGE = "https://diffoscope.org/" -LICENSE = "GPL-3.0+" -LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" - -PYPI_PACKAGE = "diffoscope" - -inherit pypi setuptools3 - -SRC_URI[md5sum] = "a86cf8467a5dec99832d5c082928f937" -SRC_URI[sha256sum] = "a1fb4dd97af92bb8ce275d1caf465971726919e28efe5f043bd3ea9afb50574a" - -RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" - -# Dependencies don't build for musl -COMPATIBLE_HOST_libc-musl = 'null' - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/diffoscope/diffoscope_144.bb b/poky/meta/recipes-support/diffoscope/diffoscope_144.bb new file mode 100644 index 000000000..3a877cae1 --- /dev/null +++ b/poky/meta/recipes-support/diffoscope/diffoscope_144.bb @@ -0,0 +1,18 @@ +SUMMARY = "in-depth comparison of files, archives, and directories" +HOMEPAGE = "https://diffoscope.org/" +LICENSE = "GPL-3.0+" +LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" + +PYPI_PACKAGE = "diffoscope" + +inherit pypi setuptools3 + +SRC_URI[md5sum] = "4ee9d1a36086caa31ccbc6300ad31652" +SRC_URI[sha256sum] = "9a45464b7b7184fa1ad2af9c52ebac8f00b3dd5dcf9e15dfc00c653c26fcc345" + +RDEPENDS_${PN} += "binutils vim squashfs-tools python3-libarchive-c python3-magic" + +# Dependencies don't build for musl +COMPATIBLE_HOST_libc-musl = 'null' + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb deleted file mode 100644 index 332af025d..000000000 --- a/poky/meta/recipes-support/iso-codes/iso-codes_4.4.bb +++ /dev/null @@ -1,19 +0,0 @@ -SUMMARY = "ISO language, territory, currency, script codes and their translations" -HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes" -BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues" - -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" - -SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http" -SRCREV = "38edb926592954b87eb527124da0ec68d2a748f3" - -# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which -# are inhibited by allarch -DEPENDS = "gettext-native" - -S = "${WORKDIR}/git" - -inherit allarch autotools - -FILES_${PN} += "${datadir}/xml/" diff --git a/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb b/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb new file mode 100644 index 000000000..6f9868ffe --- /dev/null +++ b/poky/meta/recipes-support/iso-codes/iso-codes_4.5.0.bb @@ -0,0 +1,19 @@ +SUMMARY = "ISO language, territory, currency, script codes and their translations" +HOMEPAGE = "https://salsa.debian.org/iso-codes-team/iso-codes" +BUGTRACKER = "https://salsa.debian.org/iso-codes-team/iso-codes/issues" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=4fbd65380cdd255951079008b364516c" + +SRC_URI = "git://salsa.debian.org/iso-codes-team/iso-codes.git;protocol=http" +SRCREV = "a36019e5014bff251f83d522ddcfebaecf52afd3" + +# inherit gettext cannot be used, because it adds gettext-native to BASEDEPENDS which +# are inhibited by allarch +DEPENDS = "gettext-native" + +S = "${WORKDIR}/git" + +inherit allarch autotools + +FILES_${PN} += "${datadir}/xml/" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb deleted file mode 100644 index 6731b3373..000000000 --- a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.68.4.bb +++ /dev/null @@ -1,43 +0,0 @@ -SUMMARY = "An HTTP library implementation in C" -HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" -BUGTRACKER = "https://bugzilla.gnome.org/" -SECTION = "x11/gnome/libs" -LICENSE = "LGPLv2" -LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" - -DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" - -SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" - -SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz" -SRC_URI[md5sum] = "603f3a945cd6ecc1fda644d7853b3b81" -SRC_URI[sha256sum] = "2d50b12922cc516ab6a7c35844d42f9c8a331668bbdf139232743d82582b3294" - -CVE_PRODUCT = "libsoup" - -S = "${WORKDIR}/libsoup-${PV}" - -inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc - -GIR_MESON_ENABLE_FLAG = 'enabled' -GIR_MESON_DISABLE_FLAG = 'disabled' - -# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. -PACKAGECONFIG ??= "" -PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" -PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5" - -EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false" - -GTKDOC_MESON_OPTION = "gtk_doc" - -# When built without gnome support, libsoup-2.4 will contain only one shared lib -# and will therefore become subject to renaming by debian.bbclass. Prevent -# renaming in order to keep the package name consistent regardless of whether -# gnome support is enabled or disabled. -DEBIAN_NOAUTONAME_${PN} = "1" - -# glib-networking is needed for SSL, proxies, etc. -RRECOMMENDS_${PN} = "glib-networking" - -BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb new file mode 100644 index 000000000..d10db7940 --- /dev/null +++ b/poky/meta/recipes-support/libsoup/libsoup-2.4_2.70.0.bb @@ -0,0 +1,43 @@ +SUMMARY = "An HTTP library implementation in C" +HOMEPAGE = "https://wiki.gnome.org/Projects/libsoup" +BUGTRACKER = "https://bugzilla.gnome.org/" +SECTION = "x11/gnome/libs" +LICENSE = "LGPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=5f30f0716dfdd0d91eb439ebec522ec2" + +DEPENDS = "glib-2.0 glib-2.0-native libxml2 sqlite3 intltool-native libpsl" + +SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" + +SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz" +SRC_URI[md5sum] = "c539f5b5ab534f024dc4e6a14e6d3f54" +SRC_URI[sha256sum] = "54b020f74aefa438918d8e53cff62e2b1e59efe2de53e06b19a4b07b1f4d5342" + +CVE_PRODUCT = "libsoup" + +S = "${WORKDIR}/libsoup-${PV}" + +inherit meson gettext pkgconfig upstream-version-is-even gobject-introspection gtk-doc + +GIR_MESON_ENABLE_FLAG = 'enabled' +GIR_MESON_DISABLE_FLAG = 'disabled' + +# libsoup-gnome is entirely deprecated and just stubs in 2.42 onwards. Disable by default. +PACKAGECONFIG ??= "" +PACKAGECONFIG[gnome] = "-Dgnome=true,-Dgnome=false" +PACKAGECONFIG[gssapi] = "-Dgssapi=enabled,-Dgssapi=disabled,krb5" + +EXTRA_OEMESON_append = " -Dvapi=disabled -Dtls_check=false" + +GTKDOC_MESON_OPTION = "gtk_doc" + +# When built without gnome support, libsoup-2.4 will contain only one shared lib +# and will therefore become subject to renaming by debian.bbclass. Prevent +# renaming in order to keep the package name consistent regardless of whether +# gnome support is enabled or disabled. +DEBIAN_NOAUTONAME_${PN} = "1" + +# glib-networking is needed for SSL, proxies, etc. +RRECOMMENDS_${PN} = "glib-networking" + +BBCLASSEXTEND = "native" diff --git a/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb b/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb index 8c500dcad..d9ca0732f 100644 --- a/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb +++ b/poky/meta/recipes-support/pinentry/pinentry_1.1.0.bb @@ -28,7 +28,6 @@ PACKAGECONFIG[libcap] = "--with-libcap, --without-libcap, libcap" PACKAGECONFIG[qt] = "--enable-pinentry-qt, --disable-pinentry-qt, qtbase-native qtbase" PACKAGECONFIG[gtk2] = "--enable-pinentry-gtk2, --disable-pinentry-gtk2, gtk+ glib-2.0" -#To use libsecret, add meta-gnome PACKAGECONFIG[secret] = "--enable-libsecret, --disable-libsecret, libsecret" EXTRA_OECONF = " \ diff --git a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb b/poky/meta/recipes-support/re2c/re2c_1.0.1.bb deleted file mode 100644 index 35200ecde..000000000 --- a/poky/meta/recipes-support/re2c/re2c_1.0.1.bb +++ /dev/null @@ -1,15 +0,0 @@ -SUMMARY = "Tool for writing very fast and very flexible scanners" -HOMEPAGE = "http://re2c.sourceforge.net/" -AUTHOR = "Marcus Börger " -SECTION = "devel" -LICENSE = "PD" -LIC_FILES_CHKSUM = "file://README;beginline=146;md5=881056c9add17f8019ccd8c382ba963a" - -SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.gz" -SRC_URI[md5sum] = "e2c6cf52fc6a21595f21bc82db5324f8" -SRC_URI[sha256sum] = "605058d18a00e01bfc32aebf83af35ed5b13180b4e9f279c90843afab2c66c7c" -UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases" - -BBCLASSEXTEND = "native" - -inherit autotools diff --git a/poky/meta/recipes-support/re2c/re2c_1.3.bb b/poky/meta/recipes-support/re2c/re2c_1.3.bb new file mode 100644 index 000000000..0e1d93874 --- /dev/null +++ b/poky/meta/recipes-support/re2c/re2c_1.3.bb @@ -0,0 +1,14 @@ +SUMMARY = "Tool for writing very fast and very flexible scanners" +HOMEPAGE = "http://re2c.sourceforge.net/" +AUTHOR = "Marcus Börger " +SECTION = "devel" +LICENSE = "PD" +LIC_FILES_CHKSUM = "file://LICENSE;md5=64eca4d8a3b67f9dc7656094731a2c8d" + +SRC_URI = "https://github.com/skvadrik/re2c/releases/download/${PV}/${BPN}-${PV}.tar.xz" +SRC_URI[sha256sum] = "f37f25ff760e90088e7d03d1232002c2c2672646d5844fdf8e0d51a5cd75a503" +UPSTREAM_CHECK_URI = "https://github.com/skvadrik/re2c/releases" + +BBCLASSEXTEND = "native nativesdk" + +inherit autotools diff --git a/poky/scripts/lib/checklayer/__init__.py b/poky/scripts/lib/checklayer/__init__.py index 5aeec2f00..113800027 100644 --- a/poky/scripts/lib/checklayer/__init__.py +++ b/poky/scripts/lib/checklayer/__init__.py @@ -143,6 +143,9 @@ def detect_layers(layer_directories, no_auto): def _find_layer_depends(depend, layers): for layer in layers: + if 'collections' not in layer: + continue + for collection in layer['collections']: if depend == collection: return layer diff --git a/poky/scripts/lib/devtool/upgrade.py b/poky/scripts/lib/devtool/upgrade.py index cb6dce378..f962a71e4 100644 --- a/poky/scripts/lib/devtool/upgrade.py +++ b/poky/scripts/lib/devtool/upgrade.py @@ -391,12 +391,12 @@ def _create_new_recipe(newpv, md5, sha256, srcrev, srcbranch, srcsubdir_old, src newvalues['SRC_URI[%s.md5sum]' % name] = None newvalues['SRC_URI[%s.sha256sum]' % name] = None - if md5 and sha256: + if sha256: if addnames: nameprefix = '%s.' % addnames[0] else: nameprefix = '' - newvalues['SRC_URI[%smd5sum]' % nameprefix] = md5 + newvalues['SRC_URI[%smd5sum]' % nameprefix] = None newvalues['SRC_URI[%ssha256sum]' % nameprefix] = sha256 if srcsubdir_new != srcsubdir_old: diff --git a/poky/scripts/lib/resulttool/log.py b/poky/scripts/lib/resulttool/log.py index f1bfd9950..eb3927ec8 100644 --- a/poky/scripts/lib/resulttool/log.py +++ b/poky/scripts/lib/resulttool/log.py @@ -34,13 +34,17 @@ def log(args, logger): return 1 for _, run_name, _, r in resultutils.test_run_results(results): - if args.dump_ptest and 'ptestresult.sections' in r: - for name, ptest in r['ptestresult.sections'].items(): - logdata = resultutils.ptestresult_get_log(r, name) + if args.dump_ptest: + for sectname in ['ptestresult.sections', 'ltpposixresult.sections', 'ltpresult.sections']: + if sectname in r: + for name, ptest in r[sectname].items(): + logdata = resultutils.generic_get_log(sectname, r, name) if logdata is not None: dest_dir = args.dump_ptest if args.prepend_run: dest_dir = os.path.join(dest_dir, run_name) + if not sectname.startswith("ptest"): + dest_dir = os.path.join(dest_dir, sectname.split(".")[0]) os.makedirs(dest_dir, exist_ok=True) dest = os.path.join(dest_dir, '%s.log' % name) @@ -49,10 +53,13 @@ def log(args, logger): f.write(logdata) if args.raw_ptest: - rawlog = resultutils.ptestresult_get_rawlogs(r) - if rawlog is not None: - print(rawlog) - else: + found = False + for sectname in ['ptestresult.rawlogs', 'ltpposixresult.rawlogs', 'ltpresult.rawlogs']: + rawlog = resultutils.generic_get_rawlogs(sectname, r) + if rawlog is not None: + print(rawlog) + found = True + if not found: print('Raw ptest logs not found') return 1 diff --git a/poky/scripts/lib/resulttool/report.py b/poky/scripts/lib/resulttool/report.py index 7ceceac80..f0ca50ebe 100644 --- a/poky/scripts/lib/resulttool/report.py +++ b/poky/scripts/lib/resulttool/report.py @@ -96,7 +96,6 @@ class ResultsTextReport(object): if 'ltpresult.sections' in result and suite not in result['ltpresult.sections']: try: _, suite, suite1, test = k.split(".", 3) - print("split2: %s %s %s" % (suite, suite1, test)) if suite + "." + suite1 in result['ltpresult.sections']: suite = suite + "." + suite1 except ValueError: diff --git a/poky/scripts/lib/resulttool/resultutils.py b/poky/scripts/lib/resulttool/resultutils.py index 5fec01f6f..8917022d3 100644 --- a/poky/scripts/lib/resulttool/resultutils.py +++ b/poky/scripts/lib/resulttool/resultutils.py @@ -130,23 +130,29 @@ def decode_log(logdata): return data.decode("utf-8", errors='ignore') return None -def ptestresult_get_log(results, section): - if 'ptestresult.sections' not in results: +def generic_get_log(sectionname, results, section): + if sectionname not in results: return None - if section not in results['ptestresult.sections']: + if section not in results[sectionname]: return None - ptest = results['ptestresult.sections'][section] + ptest = results[sectionname][section] if 'log' not in ptest: return None return decode_log(ptest['log']) -def ptestresult_get_rawlogs(results): - if 'ptestresult.rawlogs' not in results: +def ptestresult_get_log(results, section): + return generic_get_log('ptestresuls.sections', results, section) + +def generic_get_rawlogs(sectname, results): + if sectname not in results: return None - if 'log' not in results['ptestresult.rawlogs']: + if 'log' not in results[sectname]: return None - return decode_log(results['ptestresult.rawlogs']['log']) + return decode_log(results[sectname]['log']) + +def ptestresult_get_rawlogs(results): + return generic_get_rawlogs('ptestresult.rawlogs', results) def save_resultsdata(results, destdir, fn="testresults.json", ptestjson=False, ptestlogs=False): for res in results: diff --git a/poky/scripts/multilib_header_wrapper.h b/poky/scripts/multilib_header_wrapper.h index c81e7ee5e..88f319381 100644 --- a/poky/scripts/multilib_header_wrapper.h +++ b/poky/scripts/multilib_header_wrapper.h @@ -5,26 +5,9 @@ * */ -#pragma once - -#if defined (__bpf__) -#define __MHWORDSIZE 64 -#elif defined (__arm__) -#define __MHWORDSIZE 32 -#elif defined (__aarch64__) && defined ( __LP64__) -#define __MHWORDSIZE 64 -#elif defined (__aarch64__) -#define __MHWORDSIZE 32 -#else #include -#if defined (__WORDSIZE) -#define __MHWORDSIZE __WORDSIZE -#else -#error "__WORDSIZE is not defined" -#endif -#endif -#if __MHWORDSIZE == 32 +#if __WORDSIZE == 32 #ifdef _MIPS_SIM @@ -40,7 +23,7 @@ #include #endif -#elif __MHWORDSIZE == 64 +#elif __WORDSIZE == 64 #include #else #error "Unknown __WORDSIZE detected" -- cgit v1.2.3