diff options
Diffstat (limited to 'meta-openembedded/meta-oe')
41 files changed, 630 insertions, 177 deletions
diff --git a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/thingsboard-gateway/thingsboard-gateway_3.1.bb b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/thingsboard-gateway/thingsboard-gateway_3.2.bb index ec2830d37c..7c3197778f 100644 --- a/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/thingsboard-gateway/thingsboard-gateway_3.1.bb +++ b/meta-openembedded/meta-oe/dynamic-layers/meta-python/recipes-connectivity/thingsboard-gateway/thingsboard-gateway_3.2.bb @@ -7,7 +7,7 @@ HOMEPAGE = "https://thingsboard.io/" LICENSE = "Apache-2.0" LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" -SRC_URI[sha256sum] = "1a563e062ba734d1cc6e6cbaf8016af5cfb8c2921cb06e1e7af98153af1d121c" +SRC_URI[sha256sum] = "06fdb1000cb3f25ff78a2441c0e0f9e5bb2abec3eff907d57f58c1709c110217" inherit pypi setuptools3 diff --git a/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/syzkaller.py b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/syzkaller.py new file mode 100644 index 0000000000..64fc864bf8 --- /dev/null +++ b/meta-openembedded/meta-oe/lib/oeqa/selftest/cases/syzkaller.py @@ -0,0 +1,124 @@ +# +# SPDX-License-Identifier: MIT +# + +from oeqa.selftest.case import OESelftestTestCase +from oeqa.utils.commands import runCmd, bitbake, get_bb_var, get_bb_vars +from oeqa.utils.network import get_free_port + +class TestSyzkaller(OESelftestTestCase): + def setUpSyzkallerConfig(self, os_arch, qemu_postfix): + syz_target_sysroot = get_bb_var('PKGD', 'syzkaller') + syz_target = os.path.join(syz_target_sysroot, 'usr') + + qemu_native_bin = os.path.join(self.syz_native_sysroot, 'usr/bin/qemu-system-' + qemu_postfix) + kernel_cmdline = "ip=dhcp rootfs=/dev/sda dummy_hcd.num=%s" % (self.dummy_hcd_num) + kernel_objdir = self.deploy_dir_image + port = get_free_port() + + if not os.path.exists(self.syz_workdir): + os.mkdir(self.syz_workdir) + + with open(self.syz_cfg, 'w') as f: + f.write( +""" +{ + "target": "%s", + "http": "127.0.0.1:%s", + "workdir": "%s", + "kernel_obj": "%s", + "kernel_src": "%s", + "image": "%s", + "syzkaller": "%s", + "type": "qemu", + "reproduce" : false, + "sandbox": "none", + "vm": { + "count": %s, + "kernel": "%s", + "cmdline": "%s", + "cpu": %s, + "mem": %s, + "qemu": "%s", + "qemu_args": "-device virtio-scsi-pci,id=scsi -device scsi-hd,drive=rootfs -enable-kvm -cpu host,migratable=off", + "image_device": "drive index=0,id=rootfs,if=none,media=disk,file=" + } +} +""" +% (os_arch, port, self.syz_workdir, kernel_objdir, self.kernel_src, + self.rootfs, syz_target, self.syz_qemu_vms, self.kernel, kernel_cmdline, + self.syz_qemu_cpus, self.syz_qemu_mem, qemu_native_bin)) + + def test_syzkallerFuzzingQemux86_64(self): + self.image = 'core-image-minimal' + self.machine = 'qemux86-64' + self.fstype = "ext4" + + self.write_config( +""" +MACHINE = "%s" +IMAGE_FSTYPES = "%s" +KERNEL_IMAGETYPES += "vmlinux" +EXTRA_IMAGE_FEATURES += " ssh-server-openssh" +IMAGE_ROOTFS_EXTRA_SPACE = "512000" +KERNEL_EXTRA_FEATURES += " \ + cfg/debug/syzkaller/debug-syzkaller.scc \ +" +IMAGE_INSTALL:append = " syzkaller" +""" +% (self.machine, self.fstype)) + + build_vars = ['TOPDIR', 'DEPLOY_DIR_IMAGE', 'STAGING_KERNEL_DIR'] + syz_fuzz_vars = ['SYZ_WORKDIR', 'SYZ_FUZZTIME', 'SYZ_QEMU_MEM', 'SYZ_QEMU_CPUS', 'SYZ_QEMU_VM_COUNT'] + syz_aux_vars = ['SYZ_DUMMY_HCD_NUM'] + + needed_vars = build_vars + syz_fuzz_vars + syz_aux_vars + bb_vars = get_bb_vars(needed_vars) + + for var in syz_fuzz_vars: + if not bb_vars[var]: + self.skipTest( +""" +%s variable not set. +Please configure %s fuzzing parameters to run this test. + +Example local.conf config: +SYZ_WORKDIR="<path>" # syzkaller workdir location (must be persistent across os-selftest runs) +SYZ_FUZZTIME="30" # fuzzing time in minutes +SYZ_QEMU_VM_COUNT="1" # number of qemu VMs to be used for fuzzing +SYZ_QEMU_MEM="2048"' # memory used by each qemu VM +SYZ_QEMU_CPUS="2"' # number of cpus used by each qemu VM +""" +% (var, ', '.join(syz_fuzz_vars))) + + self.topdir = bb_vars['TOPDIR'] + self.deploy_dir_image = bb_vars['DEPLOY_DIR_IMAGE'] + self.kernel_src = bb_vars['STAGING_KERNEL_DIR'] + + """ + SYZ_WORKDIR must be set to an absolute path where syzkaller will store + the corpus database, config, runtime and crash data generated during + fuzzing. It must be persistent between oe-selftest runs, so the fuzzer + does not start over again on each run. + """ + self.syz_workdir = bb_vars['SYZ_WORKDIR'] + self.syz_fuzztime = int(bb_vars['SYZ_FUZZTIME']) * 60 + self.syz_qemu_mem = int(bb_vars['SYZ_QEMU_MEM']) + self.syz_qemu_cpus = int(bb_vars['SYZ_QEMU_CPUS']) + self.syz_qemu_vms = int(bb_vars['SYZ_QEMU_VM_COUNT']) + self.dummy_hcd_num = int(bb_vars['SYZ_DUMMY_HCD_NUM'] or 8) + + self.syz_cfg = os.path.join(self.syz_workdir, 'syzkaller.cfg') + self.kernel = os.path.join(self.deploy_dir_image, 'bzImage') + self.rootfs = os.path.join(self.deploy_dir_image, '%s-%s.%s' % (self.image, self.machine, self.fstype)) + + self.syz_native_sysroot = get_bb_var('RECIPE_SYSROOT_NATIVE', 'syzkaller-native') + + self.setUpSyzkallerConfig("linux/amd64", "x86_64") + + bitbake(self.image) + bitbake('syzkaller') + bitbake('syzkaller-native -c addto_recipe_sysroot') + + cmd = "syz-manager -config %s" % self.syz_cfg + runCmd(cmd, native_sysroot = self.syz_native_sysroot, timeout=self.syz_fuzztime, output_log=self.logger, ignore_status=True, shell=True) diff --git a/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd_1.8.4.bb b/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd_1.8.4.bb index 72f37aea85..99077923dc 100644 --- a/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd_1.8.4.bb +++ b/meta-openembedded/meta-oe/recipes-bsp/fwupd/fwupd_1.8.4.bb @@ -83,7 +83,7 @@ PACKAGECONFIG[plugin_emmc] = "-Dplugin_emmc=true,-Dplugin_emmc=false" PACKAGECONFIG[plugin_ep963x] = "-Dplugin_ep963x=true,-Dplugin_ep963x=false" PACKAGECONFIG[plugin_fastboot] = "-Dplugin_fastboot=true,-Dplugin_fastboot=false" PACKAGECONFIG[plugin_flashrom] = "-Dplugin_flashrom=true,-Dplugin_flashrom=false,flashrom" -PACKAGECONFIG[plugin_gpio] = "-Dplugin_gpio=true,-Dplugin_gpio" +PACKAGECONFIG[plugin_gpio] = "-Dplugin_gpio=true,-Dplugin_gpio=false" PACKAGECONFIG[plugin_intel_spi] = "-Dplugin_intel_spi=true -Dlzma=true,-Dplugin_intel_spi=false -Dlzma=false,xz" PACKAGECONFIG[plugin_logitech_bulkcontroller] = "-Dplugin_logitech_bulkcontroller=true,-Dplugin_logitech_bulkcontroller=false,protobuf-c-native protobuf-c" PACKAGECONFIG[plugin_modem_manager] = "-Dplugin_modem_manager=true,-Dplugin_modem_manager=false,libqmi modemmanager" diff --git a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb index cd99fb48c9..a5a033cae4 100644 --- a/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb +++ b/meta-openembedded/meta-oe/recipes-core/packagegroups/packagegroup-meta-oe.bb @@ -300,7 +300,6 @@ RDEPENDS:packagegroup-meta-oe-devtools ="\ python3-distutils-extra \ python3-pycups \ rapidjson \ - sip3 \ squashfs-tools-ng \ uftrace \ unifex \ diff --git a/meta-openembedded/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.0.15.bb b/meta-openembedded/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.0.16.bb index 07004635f0..4b4f5f5102 100644 --- a/meta-openembedded/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.0.15.bb +++ b/meta-openembedded/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.0.16.bb @@ -6,9 +6,9 @@ inherit cargo # DEFAULT_PREFERENCE = "-1" # how to get coreutils could be as easy as but default to a git checkout: -# SRC_URI += "crate://crates.io/coreutils/0.0.15" +# SRC_URI += "crate://crates.io/coreutils/0.0.16" SRC_URI += "git://github.com/uutils/coreutils.git;protocol=https;nobranch=1" -SRCREV = "5b6cd6146b40f5c1391cd812b1b929edd2283994" +SRCREV = "af13472223a1b6b6b4111a06faa8f561f04c3e59" S = "${WORKDIR}/git" CARGO_SRC_DIR = "" @@ -19,9 +19,9 @@ SRC_URI += " \ crate://crates.io/Inflector/0.11.4 \ crate://crates.io/adler/1.0.2 \ crate://crates.io/ahash/0.7.6 \ - crate://crates.io/aho-corasick/0.7.18 \ + crate://crates.io/aho-corasick/0.7.19 \ crate://crates.io/aliasable/0.1.3 \ - crate://crates.io/android_system_properties/0.1.4 \ + crate://crates.io/android_system_properties/0.1.5 \ crate://crates.io/ansi_term/0.12.1 \ crate://crates.io/arrayref/0.3.6 \ crate://crates.io/arrayvec/0.7.2 \ @@ -29,25 +29,23 @@ SRC_URI += " \ crate://crates.io/autocfg/1.1.0 \ crate://crates.io/bigdecimal/0.3.0 \ crate://crates.io/binary-heap-plus/0.4.1 \ - crate://crates.io/bindgen/0.59.2 \ + crate://crates.io/bindgen/0.60.1 \ crate://crates.io/bitflags/1.3.2 \ crate://crates.io/blake2b_simd/1.0.0 \ crate://crates.io/blake3/1.3.1 \ - crate://crates.io/block-buffer/0.10.2 \ + crate://crates.io/block-buffer/0.10.3 \ crate://crates.io/bstr/0.2.17 \ - crate://crates.io/bumpalo/3.10.0 \ + crate://crates.io/bumpalo/3.11.0 \ crate://crates.io/byte-unit/4.0.14 \ crate://crates.io/bytecount/0.6.3 \ crate://crates.io/byteorder/1.4.3 \ crate://crates.io/cc/1.0.73 \ crate://crates.io/cexpr/0.6.0 \ - crate://crates.io/cfg-if/0.1.10 \ crate://crates.io/cfg-if/1.0.0 \ crate://crates.io/chrono/0.4.22 \ crate://crates.io/clang-sys/1.3.3 \ - crate://crates.io/clap/2.34.0 \ - crate://crates.io/clap/3.2.17 \ - crate://crates.io/clap_complete/3.2.4 \ + crate://crates.io/clap/3.2.22 \ + crate://crates.io/clap_complete/3.2.5 \ crate://crates.io/clap_lex/0.2.4 \ crate://crates.io/compare/0.1.0 \ crate://crates.io/constant_time_eq/0.1.5 \ @@ -55,14 +53,10 @@ SRC_URI += " \ crate://crates.io/core-foundation-sys/0.8.3 \ crate://crates.io/coz/0.1.3 \ crate://crates.io/cpp/0.5.7 \ - crate://crates.io/cpp_build/0.4.0 \ - crate://crates.io/cpp_common/0.4.0 \ + crate://crates.io/cpp_build/0.5.7 \ crate://crates.io/cpp_common/0.5.7 \ crate://crates.io/cpp_macros/0.5.7 \ - crate://crates.io/cpp_syn/0.12.0 \ - crate://crates.io/cpp_synmap/0.3.0 \ - crate://crates.io/cpp_synom/0.12.0 \ - crate://crates.io/cpufeatures/0.2.2 \ + crate://crates.io/cpufeatures/0.2.5 \ crate://crates.io/crc32fast/1.3.2 \ crate://crates.io/crossbeam-channel/0.5.6 \ crate://crates.io/crossbeam-deque/0.8.2 \ @@ -70,6 +64,7 @@ SRC_URI += " \ crate://crates.io/crossbeam-utils/0.8.11 \ crate://crates.io/crossterm/0.25.0 \ crate://crates.io/crossterm_winapi/0.9.0 \ + crate://crates.io/crunchy/0.2.2 \ crate://crates.io/crypto-common/0.1.6 \ crate://crates.io/ctor/0.1.23 \ crate://crates.io/ctrlc/3.2.3 \ @@ -78,13 +73,15 @@ SRC_URI += " \ crate://crates.io/data-encoding-macro/0.1.12 \ crate://crates.io/data-encoding/2.3.2 \ crate://crates.io/diff/0.1.13 \ - crate://crates.io/digest/0.10.3 \ + crate://crates.io/digest/0.10.5 \ crate://crates.io/dlv-list/0.3.0 \ crate://crates.io/dns-lookup/1.0.8 \ crate://crates.io/dunce/1.0.2 \ - crate://crates.io/either/1.7.0 \ + crate://crates.io/either/1.8.0 \ crate://crates.io/env_logger/0.8.4 \ crate://crates.io/env_logger/0.9.0 \ + crate://crates.io/errno-dragonfly/0.1.2 \ + crate://crates.io/errno/0.2.8 \ crate://crates.io/exacl/0.9.0 \ crate://crates.io/fastrand/1.8.0 \ crate://crates.io/file_diff/1.0.0 \ @@ -93,12 +90,12 @@ SRC_URI += " \ crate://crates.io/fnv/1.0.7 \ crate://crates.io/fs_extra/1.2.0 \ crate://crates.io/fsevent-sys/4.1.0 \ - crate://crates.io/fts-sys/0.2.1 \ + crate://crates.io/fts-sys/0.2.2 \ crate://crates.io/gcd/2.1.0 \ crate://crates.io/generic-array/0.14.6 \ crate://crates.io/getrandom/0.2.7 \ crate://crates.io/glob/0.3.0 \ - crate://crates.io/half/1.8.2 \ + crate://crates.io/half/2.1.0 \ crate://crates.io/hashbrown/0.12.3 \ crate://crates.io/heck/0.4.0 \ crate://crates.io/hermit-abi/0.1.19 \ @@ -106,56 +103,55 @@ SRC_URI += " \ crate://crates.io/hex/0.4.3 \ crate://crates.io/hostname/0.3.1 \ crate://crates.io/humantime/2.1.0 \ - crate://crates.io/iana-time-zone/0.1.45 \ + crate://crates.io/iana-time-zone/0.1.48 \ crate://crates.io/indexmap/1.9.1 \ crate://crates.io/inotify-sys/0.1.5 \ crate://crates.io/inotify/0.9.6 \ crate://crates.io/instant/0.1.12 \ - crate://crates.io/itertools/0.10.3 \ + crate://crates.io/io-lifetimes/0.7.3 \ + crate://crates.io/itertools/0.10.4 \ crate://crates.io/itoa/1.0.3 \ - crate://crates.io/js-sys/0.3.59 \ + crate://crates.io/js-sys/0.3.60 \ crate://crates.io/keccak/0.1.2 \ - crate://crates.io/kernel32-sys/0.2.2 \ crate://crates.io/kqueue-sys/1.0.3 \ crate://crates.io/kqueue/1.0.6 \ crate://crates.io/lazy_static/1.4.0 \ crate://crates.io/lazycell/1.3.0 \ crate://crates.io/libc/0.2.132 \ crate://crates.io/libloading/0.7.3 \ - crate://crates.io/lock_api/0.4.7 \ + crate://crates.io/linux-raw-sys/0.0.46 \ + crate://crates.io/lock_api/0.4.8 \ crate://crates.io/log/0.4.17 \ crate://crates.io/lscolors/0.12.0 \ crate://crates.io/match_cfg/0.1.0 \ - crate://crates.io/md-5/0.10.1 \ - crate://crates.io/memchr/1.0.2 \ + crate://crates.io/md-5/0.10.5 \ crate://crates.io/memchr/2.5.0 \ crate://crates.io/memmap2/0.5.7 \ crate://crates.io/memoffset/0.6.5 \ crate://crates.io/minimal-lexical/0.2.1 \ - crate://crates.io/miniz_oxide/0.5.3 \ + crate://crates.io/miniz_oxide/0.5.4 \ crate://crates.io/mio/0.8.4 \ crate://crates.io/nix/0.25.0 \ crate://crates.io/nom/7.1.1 \ - crate://crates.io/notify/5.0.0-pre.16 \ + crate://crates.io/notify/5.0.0 \ crate://crates.io/num-bigint/0.4.3 \ crate://crates.io/num-integer/0.1.45 \ crate://crates.io/num-traits/0.2.15 \ crate://crates.io/num_cpus/1.13.1 \ crate://crates.io/num_threads/0.1.6 \ crate://crates.io/number_prefix/0.4.0 \ - crate://crates.io/numtoa/0.1.0 \ - crate://crates.io/once_cell/1.13.1 \ - crate://crates.io/onig/6.3.2 \ + crate://crates.io/once_cell/1.14.0 \ + crate://crates.io/onig/6.4.0 \ crate://crates.io/onig_sys/69.8.1 \ crate://crates.io/ordered-multimap/0.4.3 \ crate://crates.io/os_display/0.1.3 \ - crate://crates.io/os_str_bytes/6.0.1 \ - crate://crates.io/ouroboros/0.15.2 \ - crate://crates.io/ouroboros_macro/0.15.2 \ + crate://crates.io/os_str_bytes/6.3.0 \ + crate://crates.io/ouroboros/0.15.5 \ + crate://crates.io/ouroboros_macro/0.15.5 \ crate://crates.io/output_vt100/0.1.3 \ crate://crates.io/parking_lot/0.12.1 \ crate://crates.io/parking_lot_core/0.9.3 \ - crate://crates.io/paste/1.0.8 \ + crate://crates.io/paste/1.0.9 \ crate://crates.io/peeking_take_while/0.1.2 \ crate://crates.io/phf/0.10.1 \ crate://crates.io/phf_codegen/0.10.0 \ @@ -165,22 +161,21 @@ SRC_URI += " \ crate://crates.io/pkg-config/0.3.25 \ crate://crates.io/platform-info/1.0.0 \ crate://crates.io/ppv-lite86/0.2.16 \ - crate://crates.io/pretty_assertions/1.2.1 \ + crate://crates.io/pretty_assertions/1.3.0 \ crate://crates.io/proc-macro-error-attr/1.0.4 \ crate://crates.io/proc-macro-error/1.0.4 \ crate://crates.io/proc-macro2/1.0.43 \ + crate://crates.io/procfs/0.14.1 \ crate://crates.io/quick-error/2.0.1 \ crate://crates.io/quickcheck/1.0.3 \ - crate://crates.io/quote/0.3.15 \ crate://crates.io/quote/1.0.21 \ crate://crates.io/rand/0.8.5 \ crate://crates.io/rand_chacha/0.3.1 \ - crate://crates.io/rand_core/0.6.3 \ + crate://crates.io/rand_core/0.6.4 \ crate://crates.io/rayon-core/1.9.3 \ crate://crates.io/rayon/1.5.3 \ crate://crates.io/redox_syscall/0.2.16 \ - crate://crates.io/redox_termios/0.1.2 \ - crate://crates.io/reference-counted-singleton/0.1.1 \ + crate://crates.io/reference-counted-singleton/0.1.2 \ crate://crates.io/regex-automata/0.1.10 \ crate://crates.io/regex-syntax/0.6.27 \ crate://crates.io/regex/1.6.0 \ @@ -190,14 +185,15 @@ SRC_URI += " \ crate://crates.io/rlimit/0.8.3 \ crate://crates.io/rust-ini/0.18.0 \ crate://crates.io/rustc-hash/1.1.0 \ + crate://crates.io/rustix/0.35.9 \ crate://crates.io/rustversion/1.0.9 \ crate://crates.io/same-file/1.0.6 \ crate://crates.io/scopeguard/1.1.0 \ - crate://crates.io/selinux-sys/0.5.2 \ - crate://crates.io/selinux/0.2.7 \ - crate://crates.io/sha1/0.10.1 \ - crate://crates.io/sha2/0.10.2 \ - crate://crates.io/sha3/0.10.2 \ + crate://crates.io/selinux-sys/0.5.3 \ + crate://crates.io/selinux/0.3.0 \ + crate://crates.io/sha1/0.10.5 \ + crate://crates.io/sha2/0.10.6 \ + crate://crates.io/sha3/0.10.5 \ crate://crates.io/shlex/1.1.0 \ crate://crates.io/signal-hook-mio/0.2.3 \ crate://crates.io/signal-hook-registry/1.4.0 \ @@ -205,9 +201,8 @@ SRC_URI += " \ crate://crates.io/siphasher/0.3.10 \ crate://crates.io/smallvec/1.9.0 \ crate://crates.io/smawk/0.3.1 \ - crate://crates.io/socket2/0.4.4 \ + crate://crates.io/socket2/0.4.7 \ crate://crates.io/strsim/0.10.0 \ - crate://crates.io/strsim/0.8.0 \ crate://crates.io/strum/0.24.1 \ crate://crates.io/strum_macros/0.24.3 \ crate://crates.io/subtle/2.4.1 \ @@ -215,43 +210,36 @@ SRC_URI += " \ crate://crates.io/tempfile/3.3.0 \ crate://crates.io/term_grid/0.1.7 \ crate://crates.io/termcolor/1.1.3 \ - crate://crates.io/terminal_size/0.1.17 \ - crate://crates.io/termion/1.5.6 \ - crate://crates.io/termsize/0.1.6 \ - crate://crates.io/textwrap/0.11.0 \ - crate://crates.io/textwrap/0.15.0 \ - crate://crates.io/thiserror-impl/1.0.32 \ - crate://crates.io/thiserror/1.0.32 \ + crate://crates.io/terminal_size/0.2.1 \ + crate://crates.io/textwrap/0.15.1 \ + crate://crates.io/thiserror-impl/1.0.36 \ + crate://crates.io/thiserror/1.0.36 \ crate://crates.io/time-macros/0.2.4 \ - crate://crates.io/time/0.3.9 \ + crate://crates.io/time/0.3.14 \ crate://crates.io/typenum/1.15.0 \ - crate://crates.io/unicode-ident/1.0.3 \ + crate://crates.io/unicode-ident/1.0.4 \ crate://crates.io/unicode-linebreak/0.1.2 \ - crate://crates.io/unicode-segmentation/1.9.0 \ - crate://crates.io/unicode-width/0.1.9 \ - crate://crates.io/unicode-xid/0.0.4 \ + crate://crates.io/unicode-segmentation/1.10.0 \ + crate://crates.io/unicode-width/0.1.10 \ + crate://crates.io/unicode-xid/0.2.4 \ crate://crates.io/unindent/0.1.10 \ - crate://crates.io/unix_socket/0.5.0 \ crate://crates.io/users/0.11.0 \ crate://crates.io/utf-8/0.7.6 \ crate://crates.io/utf8-width/0.1.6 \ crate://crates.io/uuid/1.1.2 \ - crate://crates.io/vec_map/0.8.2 \ crate://crates.io/version_check/0.9.4 \ crate://crates.io/walkdir/2.3.2 \ crate://crates.io/wasi/0.11.0+wasi-snapshot-preview1 \ - crate://crates.io/wasm-bindgen-backend/0.2.82 \ - crate://crates.io/wasm-bindgen-macro-support/0.2.82 \ - crate://crates.io/wasm-bindgen-macro/0.2.82 \ - crate://crates.io/wasm-bindgen-shared/0.2.82 \ - crate://crates.io/wasm-bindgen/0.2.82 \ - crate://crates.io/which/4.2.5 \ + crate://crates.io/wasm-bindgen-backend/0.2.83 \ + crate://crates.io/wasm-bindgen-macro-support/0.2.83 \ + crate://crates.io/wasm-bindgen-macro/0.2.83 \ + crate://crates.io/wasm-bindgen-shared/0.2.83 \ + crate://crates.io/wasm-bindgen/0.2.83 \ + crate://crates.io/which/4.3.0 \ crate://crates.io/wild/2.1.0 \ - crate://crates.io/winapi-build/0.1.1 \ crate://crates.io/winapi-i686-pc-windows-gnu/0.4.0 \ crate://crates.io/winapi-util/0.1.5 \ crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ - crate://crates.io/winapi/0.2.8 \ crate://crates.io/winapi/0.3.9 \ crate://crates.io/windows-sys/0.36.1 \ crate://crates.io/windows_aarch64_msvc/0.36.1 \ @@ -260,6 +248,7 @@ SRC_URI += " \ crate://crates.io/windows_x86_64_gnu/0.36.1 \ crate://crates.io/windows_x86_64_msvc/0.36.1 \ crate://crates.io/xattr/0.2.3 \ + crate://crates.io/yansi/0.5.1 \ crate://crates.io/z85/3.0.5 \ crate://crates.io/zip/0.6.2 \ " diff --git a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start index b73cb70b14..479f14ae7e 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start +++ b/meta-openembedded/meta-oe/recipes-devtools/android-tools/android-tools-conf-configfs/android-gadget-start @@ -4,4 +4,6 @@ set -e sleep 10 -ls /sys/class/udc/ | xargs echo -n > /sys/kernel/config/usb_gadget/adb/UDC +ls /sys/class/udc/ | head -n 1 | xargs echo -n > /sys/kernel/config/usb_gadget/adb/UDC + +bbnote "Setting UDC $(ls /sys/class/udc/ | head -n 1) for USB ADB Gadget usage" diff --git a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20221009.0.bb b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20221023.0.bb index 5564a9b853..b7703cef96 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20221009.0.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/ctags/ctags_5.9.20221023.0.bb @@ -14,7 +14,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3" inherit autotools-brokensep pkgconfig manpages -SRCREV = "5d506a1a3b6850f05de5e785c5d14cfd6f9b1620" +SRCREV = "d8f5c062ea6ff484f4f1f5095a7d3c364f3019ea" SRC_URI = "git://github.com/universal-ctags/ctags;branch=master;protocol=https" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers.inc b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers.inc index fc85e571ee..0700c5bd34 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers.inc +++ b/meta-openembedded/meta-oe/recipes-devtools/flatbuffers/flatbuffers.inc @@ -1,3 +1,3 @@ -PV = "22.9.29" -SRCREV = "c92e78a9f841a6110ec27180d68d1f7f2afda21d" +PV = "22.10.26" +SRCREV = "203241ed3275625c8a25c4a1e7b86e3c0289c488" SRC_URI = "git://github.com/google/flatbuffers.git;branch=master;protocol=https" diff --git a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.50.0.bb b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.50.1.bb index 74ec3a8a55..7b8a25c277 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.50.0.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/grpc/grpc_1.50.1.bb @@ -20,7 +20,7 @@ RDEPENDS:${PN}-dev:append:class-native = " ${PN}-compiler" # RDEPENDS:${PN}-dev += "${PN}-compiler" S = "${WORKDIR}/git" -SRCREV_grpc = "91091e3668144de9c6aa392f496bb7639f7025a7" +SRCREV_grpc = "90ccf24d22b6fc909a1021ebd89fd8c838467d26" BRANCH = "v1.50.x" SRC_URI = "gitsm://github.com/grpc/grpc.git;protocol=https;name=grpc;branch=${BRANCH} \ file://0001-Revert-Changed-GRPCPP_ABSEIL_SYNC-to-GPR_ABSEIL_SYNC.patch \ diff --git a/meta-openembedded/meta-oe/recipes-devtools/jq/jq/run-ptest b/meta-openembedded/meta-oe/recipes-devtools/jq/jq/run-ptest index 0e4c707e96..a813958b5a 100644..100755 --- a/meta-openembedded/meta-oe/recipes-devtools/jq/jq/run-ptest +++ b/meta-openembedded/meta-oe/recipes-devtools/jq/jq/run-ptest @@ -1,11 +1,37 @@ #!/bin/sh +JQ_LIB=@libdir@/jq +LOG="${JQ_LIB}/ptest/jq_ptest_$(date +%Y%m%d-%H%M%S).log" + +# clean up the log file to avoid a file has the same name and has existing content +echo "" > ${LOG} + +# The purpose of ptest is doing intergration test, so disable valgrind by default +# change PACKAGECOFIG to enable valgrind. +#export NO_VALGRIND=1 +# The --enable-valgrind configure option for jq only can be used within Makefiles, +# and it cannot be utilized here since it also checks compile, which cannot be avoid +# Requested enhancement to jq: https://github.com/stedolan/jq/issues/2493 + for test in optionaltest mantest jqtest onigtest shtest utf8test base64test; do - ./tests/${test} + ./tests/${test} >> ${LOG} 2>> ${LOG} if [ $? -eq 0 ]; then echo "PASS: ${test}" + echo "PASS: ${test}" >> ${LOG} else echo "FAIL: ${test}" + echo "FAIL: ${test}" >> ${LOG} fi done +passed=`grep PASS: ${LOG}|wc -l` +failed=`grep FAIL: ${LOG}|wc -l` +skipped=`grep SKIP: ${LOG}|wc -l` +all=$((passed + failed + skipped)) + +( echo "=== Test Summary ===" + echo "TOTAL: ${all}" + echo "PASSED: ${passed}" + echo "FAILED: ${failed}" + echo "SKIPPED: ${skipped}" +) | tee -a /${LOG} diff --git a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb index c6634cd300..4fa98aa44f 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/jq/jq_git.bb @@ -24,10 +24,8 @@ PACKAGECONFIG ?= "oniguruma" PACKAGECONFIG[docs] = "--enable-docs,--disable-docs,ruby-native" PACKAGECONFIG[maintainer-mode] = "--enable-maintainer-mode,--disable-maintainer-mode,flex-native bison-native" PACKAGECONFIG[oniguruma] = "--with-oniguruma,--without-oniguruma,onig" - -EXTRA_OECONF += " \ - --disable-valgrind \ -" +# enable if you want ptest running under valgrind +PACKAGECONFIG[valgrind] = "--enable-valgrind,--disable-valgrind,valgrind" do_install_ptest() { cp -rf ${B}/tests ${D}${PTEST_PATH} @@ -35,6 +33,11 @@ do_install_ptest() { # libjq.so.* is packaged in the main jq component, so remove it from ptest rm -f ${D}${PTEST_PATH}/.libs/libjq.so.* ln -sf ${bindir}/jq ${D}${PTEST_PATH} + if [ "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', 'true', 'false', d)}" = "false" ]; then + sed -i 's:#export NO_VALGRIND=1:export NO_VALGRIND=1:g' ${D}${PTEST_PATH}/run-ptest + fi + # handle multilib + sed -i s:@libdir@:${libdir}:g ${D}${PTEST_PATH}/run-ptest } BBCLASSEXTEND = "native" diff --git a/meta-openembedded/meta-oe/recipes-devtools/jwt-cpp/jwt-cpp_0.6.0.bb b/meta-openembedded/meta-oe/recipes-devtools/jwt-cpp/jwt-cpp_0.6.0.bb new file mode 100644 index 0000000000..8929115fd7 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/jwt-cpp/jwt-cpp_0.6.0.bb @@ -0,0 +1,18 @@ +SUMMARY = "A header only library for creating and validating json web tokens in c++" +HOMEPAGE = "https://thalhammer.github.io/jwt-cpp/" +SECTION = "libs" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE;md5=8325a5ce4414c65ffdda392e0d96a9ff" + +SRC_URI = "git://github.com/Thalhammer/jwt-cpp.git;branch=master;protocol=https \ + " + +SRCREV = "4a537e969891dde542ad8b1a4a214955a83be29f" + +S = "${WORKDIR}/git" + +DEPENDS = "openssl" + +inherit cmake + +EXTRA_OECMAKE += "-DJWT_BUILD_EXAMPLES=OFF -DJWT_CMAKE_FILES_INSTALL_DIR=${libdir}/cmake" diff --git a/meta-openembedded/meta-oe/recipes-devtools/perfetto/files/0001-meson-add-pc-file-for-lib_perfetto.patch b/meta-openembedded/meta-oe/recipes-devtools/perfetto/files/0001-meson-add-pc-file-for-lib_perfetto.patch new file mode 100644 index 0000000000..70de44173d --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/perfetto/files/0001-meson-add-pc-file-for-lib_perfetto.patch @@ -0,0 +1,52 @@ +From 027f90dc9386ec08f2a5107025683e5fed6f3444 Mon Sep 17 00:00:00 2001 +From: Markus Volk <f_l_k@t-online.de> +Date: Mon, 17 Oct 2022 19:20:53 +0200 +Subject: [PATCH] meson: add PC file for lib_perfetto + +--- + meson.build | 12 ++++++++++-- + 1 file changed, 10 insertions(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 06015141c..752b4d928 100644 +--- a/meson.build ++++ b/meson.build +@@ -19,9 +19,12 @@ + project( + 'perfetto', + ['c','cpp'], +- default_options: ['c_std=c99', 'cpp_std=c++11'] ++ default_options: ['c_std=c99', 'cpp_std=c++11'], ++ version: '27.1' + ) + ++soversion = meson.project_version() ++ + fs = import('fs') + + if not fs.is_dir('sdk') +@@ -30,8 +33,9 @@ endif + + dep_threads = dependency('threads') + +-lib_perfetto = static_library( ++lib_perfetto = shared_library( + 'perfetto', ++ version: soversion, + sources: 'sdk/perfetto.cc', + dependencies: dep_threads, + install: true, +@@ -39,6 +43,10 @@ lib_perfetto = static_library( + + inc_perfetto = include_directories('sdk') + ++install_headers('sdk/perfetto.h') ++pkg = import('pkgconfig') ++pkg.generate(lib_perfetto) ++ + dep_perfetto = declare_dependency( + link_with: lib_perfetto, + include_directories: inc_perfetto, +-- +2.34.1 + diff --git a/meta-openembedded/meta-oe/recipes-devtools/perfetto/libperfetto.bb b/meta-openembedded/meta-oe/recipes-devtools/perfetto/libperfetto.bb new file mode 100644 index 0000000000..c8f56fd527 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/perfetto/libperfetto.bb @@ -0,0 +1,14 @@ +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=f87516e0b698007e9e75a1fe1012b390" + +require perfetto.inc + +inherit meson + +SRC_URI:append = " file://0001-meson-add-pc-file-for-lib_perfetto.patch" + +LDFLAGS += "-Wl,--as-needed -latomic -Wl,--no-as-needed" + +FILES:${PN} += "${datadir}" + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.bb b/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.bb index 143445c145..98e39f068d 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.bb @@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f87516e0b698007e9e75a1fe1012b390 \ file://debian/copyright;md5=4e08364c82141f181de69d0a2b89d612 \ file://python/LICENSE;md5=c602a632c34ade9c78a976734077bce7" -SRC_URI = "git://github.com/google/perfetto.git;branch=master;protocol=https;name=perfetto \ +SRC_URI:append = " \ git://github.com/protocolbuffers/protobuf.git;branch=3.9.x;protocol=https;destsuffix=git/buildtools/protobuf;name=protobuf \ git://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxx.git;protocol=https;destsuffix=git/buildtools/libcxx;branch=main;name=libcxx \ git://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi.git;protocol=https;destsuffix=git/buildtools/libcxxabi;branch=main;name=libcxxabi \ @@ -19,7 +19,6 @@ SRC_URI = "git://github.com/google/perfetto.git;branch=master;protocol=https;nam https://storage.googleapis.com/perfetto/gn-linux64-1968-0725d782;subdir=git/buildtools/;name=gn \ file://0001-Remove-check_build_deps-build-steps.patch " -SRCREV_perfetto = "5bd3f582c075d0d026c5fe0b5e291d34dee0d976" SRCREV_protobuf = "6a59a2ad1f61d9696092f79b6d74368b4d7970a3" SRCREV_libcxx = "d9040c75cfea5928c804ab7c235fed06a63f743a" SRCREV_libcxxabi = "196ba1aaa8ac285d94f4ea8d9836390a45360533" @@ -27,6 +26,8 @@ SRCREV_libunwind = "d999d54f4bca789543a2eb6c995af2d9b5a1f3ed" SRCREV_zlib = "5c85a2da4c13eda07f69d81a1579a5afddd35f59" SRC_URI[gn.sha256sum] = "f706aaa0676e3e22f5fc9ca482295d7caee8535d1869f99efa2358177b64f5cd" +require perfetto.inc + DEPENDS += " ninja-native" COMPATIBLE_HOST = "(i.86|x86_64|aarch64|arm).*-linux*" @@ -35,7 +36,6 @@ FILES:${PN}:append = " \ ${bindir}/tracebox \ " -S = "${WORKDIR}/git" B = "${WORKDIR}/build" # Run the GN (Generate Ninja) script, and replace the compiler flags where applicable diff --git a/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.inc b/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.inc new file mode 100644 index 0000000000..5cb6f8bb34 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-devtools/perfetto/perfetto.inc @@ -0,0 +1,9 @@ +SUMMARY = "Perfetto - System profiling, app tracing and trace analysis." +HOMEPAGE = "https://github.com/google/perfetto" + +SRC_URI = "git://github.com/google/perfetto.git;protocol=https;name=perfetto;nobranch=1" + +SRCREV_perfetto = "1c52b5e132312aeb007ed180d4ba1d8d66227923" +PV = "27.1" + +S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.21.5.bb b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.21.5.bb index 0bc9cbedc0..c8b9158e6c 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.21.5.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/protobuf/protobuf_3.21.5.bb @@ -26,6 +26,7 @@ inherit cmake pkgconfig ptest PACKAGECONFIG ??= "" PACKAGECONFIG:class-native ?= "compiler" +PACKAGECONFIG:class-nativesdk ?= "compiler" PACKAGECONFIG[python] = ",," PACKAGECONFIG[compiler] = "-Dprotobuf_BUILD_PROTOC_BINARIES=ON,-Dprotobuf_BUILD_PROTOC_BINARIES=OFF" diff --git a/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.23.bb b/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.23.bb deleted file mode 100644 index d6335585e2..0000000000 --- a/meta-openembedded/meta-oe/recipes-devtools/sip/sip3_4.19.23.bb +++ /dev/null @@ -1,40 +0,0 @@ -SUMMARY = "SIP is a C++/Python Wrapper Generator" -HOMEPAGE = "https://riverbankcomputing.com/software/sip/" -SECTION = "devel" -LICENSE = "GPL-2.0-or-later" -LIC_FILES_CHKSUM = "file://LICENSE-GPL2;md5=e91355d8a6f8bd8f7c699d62863c7303" - -SRC_URI = "https://www.riverbankcomputing.com/static/Downloads/sip/${PV}/sip-${PV}.tar.gz \ -" -SRC_URI[md5sum] = "70adc0c9734e2d9dcd241d3f931dfc74" -SRC_URI[sha256sum] = "22ca9bcec5388114e40d4aafd7ccd0c4fe072297b628d0c5cdfa2f010c0bc7e7" - -inherit python3-dir python3native - -S = "${WORKDIR}/sip-${PV}" - -DEPENDS = "python3" - -PACKAGES += "python3-sip3" - -BBCLASSEXTEND = "native" - -CONFIGURE_SYSROOT = "${STAGING_DIR_HOST}" -CONFIGURE_SYSROOT:class-native = "${STAGING_DIR_NATIVE}" - -do_configure:prepend() { - echo "py_platform = linux" > sip.cfg - echo "py_inc_dir = ${STAGING_INCDIR}/python%(py_major).%(py_minor)${PYTHON_ABI}" >> sip.cfg - echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg - echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg - echo "sip_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> sip.cfg - echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg - ${PYTHON} configure.py --configuration sip.cfg --sip-module PyQt5.sip --sysroot ${CONFIGURE_SYSROOT} CC="${CC}" CXX="${CXX}" LINK="${CXX}" STRIP="" LINK_SHLIB="${CXX}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LFLAGS="${LDFLAGS}" -} - -do_install() { - oe_runmake install -} - -FILES:python3-sip3 = "${libdir}/${PYTHON_DIR}/site-packages/" -FILES:${PN}-dbg += "${libdir}/${PYTHON_DIR}/site-packages/.debug" diff --git a/meta-openembedded/meta-oe/recipes-devtools/valijson/valijson_0.7.bb b/meta-openembedded/meta-oe/recipes-devtools/valijson/valijson_0.7.bb index 51b2bb9e0f..3bb89ee8f1 100644 --- a/meta-openembedded/meta-oe/recipes-devtools/valijson/valijson_0.7.bb +++ b/meta-openembedded/meta-oe/recipes-devtools/valijson/valijson_0.7.bb @@ -20,19 +20,3 @@ PACKAGECONFIG[tests] = "-Dvalijson_BUILD_TESTS=TRUE,-Dvalijson_BUILD_TESTS=FALSE RDEPENDS:${PN}-dev = "" BBCLASSEXTEND = "native nativesdk" - -do_install() { - install -d ${D}${includedir}/compat - install -d ${D}${includedir}/valijson - install -d ${D}${includedir}/valijson/adapters - install -d ${D}${includedir}/valijson/constraints - install -d ${D}${includedir}/valijson/internal - install -d ${D}${includedir}/valijson/utils - - install -m 0644 ${S}/include/compat/* ${D}${includedir}/compat - install -D -m 0644 ${S}/include/valijson/*.hpp -t ${D}${includedir}/valijson - install -D -m 0644 ${S}/include/valijson/adapters/*.hpp -t ${D}${includedir}/valijson/adapters - install -D -m 0644 ${S}/include/valijson/constraints/*.hpp -t ${D}${includedir}/valijson/constraints - install -D -m 0644 ${S}/include/valijson/internal/*.hpp -t ${D}${includedir}/valijson/internal - install -D -m 0644 ${S}/include/valijson/utils/*.hpp -t ${D}${includedir}/valijson/utils -} diff --git a/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.9.2.bb b/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.9.2.bb index f4de8607a0..7fb58de3c1 100644 --- a/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.9.2.bb +++ b/meta-openembedded/meta-oe/recipes-extended/libzip/libzip_1.9.2.bb @@ -25,3 +25,5 @@ SRC_URI[sha256sum] = "c93e9852b7b2dc931197831438fee5295976ee0ba24f8524a8907be5c2 # Patch for CVE-2017-12858 is applied in version 1.2.0. CVE_CHECK_IGNORE += "CVE-2017-12858" + +BBCLASSEXTEND += "native" diff --git a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock/setuptools.patch b/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock/setuptools.patch deleted file mode 100644 index c375e10f75..0000000000 --- a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock/setuptools.patch +++ /dev/null @@ -1,18 +0,0 @@ -Switch to setuptools as distutils is deprecated. - -Upstream-Status: Backport [https://pagure.io/sanlock/c/75758fc10db2354dda397d3aba63c7b72a420982] -Signed-off-by: Ross Burton <ross.burton@arm.com> - -diff --git a/python/setup.py b/python/setup.py -index b3bfaf1..dfbaf21 100644 ---- a/python/setup.py -+++ b/python/setup.py -@@ -4,7 +4,7 @@ - # modify, copy, or redistribute it subject to the terms and conditions - # of the GNU General Public License v.2. - --from distutils.core import setup, Extension -+from setuptools import setup, Extension - - sanlocklib = ['sanlock'] - sanlock = Extension(name='sanlock', diff --git a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.4.bb b/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.5.bb index 3b4ae318c6..c2a17d06b9 100644 --- a/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.4.bb +++ b/meta-openembedded/meta-oe/recipes-extended/sanlock/sanlock_3.8.5.bb @@ -15,10 +15,9 @@ PV .= "+git${SRCPV}" SRC_URI = "git://pagure.io/sanlock.git;protocol=http;branch=master \ file://0001-sanlock-Replace-cp-a-with-cp-R-no-dereference-preser.patch \ - file://setuptools.patch \ file://0001-add-missing-system-header-string.h.patch \ " -SRCREV = "a181e951376d49a82eef17920c8ebedec80b4823" +SRCREV = "b820c63093c4ae85d7da4f719cf3026d7fca5d09" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-graphics/cglm/cglm_0.8.5.bb b/meta-openembedded/meta-oe/recipes-graphics/cglm/cglm_0.8.7.bb index 5a437c102f..95a651dd03 100644 --- a/meta-openembedded/meta-oe/recipes-graphics/cglm/cglm_0.8.5.bb +++ b/meta-openembedded/meta-oe/recipes-graphics/cglm/cglm_0.8.7.bb @@ -10,7 +10,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=8dc95c4110ba741c43832734b51b7de7" SRC_URI = "git://github.com/recp/cglm;branch=master;protocol=https" # Tag v0.8.5 -SRCREV = "7e5d1f435f628b873347eb052b7d6605b0b997f2" +SRCREV = "8cfc98d2835a8cd1a9041f257c7ba0bfe4fbc1f3" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.9.bb b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb index 123af4d3aa..8daf38a0ba 100644 --- a/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.6.9.bb +++ b/meta-openembedded/meta-oe/recipes-graphics/fvwm/fvwm_2.7.0.bb @@ -36,7 +36,7 @@ SRC_URI = " \ file://0001-Fix-compilation-for-disabled-gnome.patch \ " -SRCREV = "88eab6dc16da6e5dd25fe97fbb56b96ef0d58657" +SRCREV = "7baf540e56fb1a3e91752acba872a88543529d46" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-graphics/libglvnd/libglvnd_1.5.0.bb b/meta-openembedded/meta-oe/recipes-graphics/libglvnd/libglvnd_1.5.0.bb new file mode 100644 index 0000000000..b92bad46e0 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/libglvnd/libglvnd_1.5.0.bb @@ -0,0 +1,30 @@ +DESCRIPTION = "libglvnd is a vendor-neutral dispatch layer for arbitrating \ +OpenGL API calls between multiple vendors." +HOMEPAGE = "https://gitlab.freedesktop.org/glvnd/libglvnd" +LICENSE = "MIT & BSD-1-Clause & BSD-3-Clause & GPL-3.0-with-autoconf-exception" +LIC_FILES_CHKSUM = "file://README.md;beginline=323;md5=7ac5f0111f648b92fe5427efeb08e8c4" + +SRC_URI = "git://git@gitlab.freedesktop.org/glvnd/libglvnd.git;protocol=https;branch=master" + +# v1.5.0 tag +SRCREV = "c7cdf0cc4395b57563294d1f340b6bb1b95366a0" + +REQUIRED_DISTRO_FEATURES = "opengl" + +inherit meson pkgconfig features_check + +S = "${WORKDIR}/git" + +PACKAGECONFIG ?= "\ + ${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'x11', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'egl gles1 gles2', '', d)} \ + ${@bb.utils.contains('DISTRO_FEATURES', 'opengl x11', 'glx', '', d)} \ + " + +PACKAGECONFIG[x11] = "-Dx11=enabled,-Dx11=disabled,libx11 libxext xorgproto" +PACKAGECONFIG[glx] = "-Dglx=enabled,-Dglx=disabled,libx11 libxext xorgproto" +PACKAGECONFIG[egl] = "-Degl=true,-Degl=false," +PACKAGECONFIG[gles1] = "-Dgles1=true,-Dgles1=false," +PACKAGECONFIG[gles2] = "-Dgles2=true,-Dgles2=false," + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-amdgpu_22.0.0.bb b/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-amdgpu_22.0.0.bb new file mode 100644 index 0000000000..94e2ea43ee --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-graphics/xorg-driver/xf86-video-amdgpu_22.0.0.bb @@ -0,0 +1,22 @@ +require recipes-graphics/xorg-driver/xorg-driver-video.inc + +LIC_FILES_CHKSUM = "file://COPYING;md5=aabff1606551f9461ccf567739af63dc" + +SUMMARY = "X.Org X server -- AMD Radeon GPU display driver" + +DESCRIPTION = "Xorg driver for AMD Radeon GPUs using the amdgpu kernel driver" + +SRC_URI[md5sum] = "73efb437f5eb29b2c52a9d82c7e15d72" +SRC_URI[sha256sum] = "bc47a1a8854e790270fa5de2fb9dfe8558139b03d8f68ac1057dcd235d572dcc" + +XORG_DRIVER_COMPRESSOR = ".tar.gz" +DEPENDS += "virtual/libx11 libdrm virtual/libgbm xorgproto" + +PACKAGECONFIG ??= "udev glamor" +PACKAGECONFIG[udev] = "--enable-udev,--disable-udev,udev" +PACKAGECONFIG[glamor] = "--enable-glamor,--disable-glamor" + +RRECOMMENDS:${PN} += "linux-firmware-amdgpu" + +FILES:${PN}-config = "${datadir}/X11/xorg.conf.d" +FILES:${PN} += "${datadir}/X11" diff --git a/meta-openembedded/meta-oe/recipes-kernel/ipmitool/ipmitool_1.8.19.bb b/meta-openembedded/meta-oe/recipes-kernel/ipmitool/ipmitool_1.8.19.bb index 0a600e23bb..a8d203e599 100644 --- a/meta-openembedded/meta-oe/recipes-kernel/ipmitool/ipmitool_1.8.19.bb +++ b/meta-openembedded/meta-oe/recipes-kernel/ipmitool/ipmitool_1.8.19.bb @@ -30,7 +30,7 @@ SRC_URI = "git://github.com/ipmitool/ipmitool;protocol=https;branch=master \ IANA_ENTERPRISE_NUMBERS ?= "" # Add these via bbappend if this database is needed by the system -#IANA_ENTERPRISE_NUMBERS ?= "http://www.iana.org/assignments/enterprise-numbers;name=iana-enterprise-numbers;downloadfilename=iana-enterprise-numbers" +#IANA_ENTERPRISE_NUMBERS = "http://www.iana.org/assignments/enterprise-numbers;name=iana-enterprise-numbers;downloadfilename=iana-enterprise-numbers" #SRC_URI[iana-enterprise-numbers.sha256sum] = "cdd97fc08325667434b805eb589104ae63f7a9eb720ecea73cb55110b383934c" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.2.bb index eb004c2ed5..1c3538a3da 100644 --- a/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.1.bb +++ b/meta-openembedded/meta-oe/recipes-kernel/makedumpfile/makedumpfile_1.7.2.bb @@ -11,7 +11,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe" LICENSE = "GPL-2.0-only" SRCBRANCH ?= "master" -SRCREV = "74bbdd14ec861552ace1ca63953eb2ef73e1f965" +SRCREV = "9fefc6848d0b3765760e709cfe92fb9d76d5d452" DEPENDS = "bzip2 zlib elfutils xz" RDEPENDS:${PN}-tools = "perl ${PN}" diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/0001-Make-IPX-packet-interpretation-dependent-on-the-ipx-header.patch b/meta-openembedded/meta-oe/recipes-security/audit/audit/0001-Make-IPX-packet-interpretation-dependent-on-the-ipx-header.patch new file mode 100644 index 0000000000..054f50ab23 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/0001-Make-IPX-packet-interpretation-dependent-on-the-ipx-header.patch @@ -0,0 +1,65 @@ +From 6b09724c69d91668418ddb3af00da6db6755208c Mon Sep 17 00:00:00 2001 +From: Steve Grubb <sgrubb@redhat.com> +Date: Thu, 2 Sep 2021 15:01:12 -0400 +Subject: [PATCH] Make IPX packet interpretation dependent on the ipx header + file existing + +Upstream-Status: Backport [https://github.com/linux-audit/audit-userspace/commit/6b09724c69d91668418ddb3af00da6db6755208c.patch] +Comment: Remove one hunk from changelog file and refresh rest hunks as per codebase of audit_2.8.5 +Signed-off-by: Akash Hadke <akash.hadke@kpit.com> +--- + auparse/interpret.c | 8 ++++++-- + configure.ac | 6 ++++++ + 2 files changed, 12 insertions(+), 2 deletions(-) + +diff --git a/auparse/interpret.c b/auparse/interpret.c +index 63829aa0e..6c316456d 100644 +--- a/auparse/interpret.c 2022-10-14 11:22:20.833880000 +0200 ++++ b/auparse/interpret.c 2022-10-14 11:35:13.196455950 +0200 +@@ -44,8 +44,10 @@ + #include <linux/ax25.h> + #include <linux/atm.h> + #include <linux/x25.h> +-#include <linux/if.h> // FIXME: remove when ipx.h is fixed +-#include <linux/ipx.h> ++#ifdef HAVE_IPX_HEADERS ++ #include <linux/if.h> // FIXME: remove when ipx.h is fixed ++ #include <linux/ipx.h> ++#endif + #include <linux/capability.h> + #include <sys/personality.h> + #include <sys/prctl.h> +@@ -1158,6 +1160,7 @@ + x->sax25_call.ax25_call[6]); + } + break; ++#ifdef HAVE_IPX_HEADERS + case AF_IPX: + { + const struct sockaddr_ipx *ip = +@@ -1167,6 +1170,7 @@ + str, ip->sipx_port, ip->sipx_network); + } + break; ++#endif + case AF_ATMPVC: + { + const struct sockaddr_atmpvc* at = +diff --git a/configure.ac b/configure.ac +index 8f541e4c0..005eb0b5b 100644 +--- a/configure.ac 2022-10-14 11:22:20.833880000 +0200 ++++ b/configure.ac 2022-10-14 11:36:32.391044084 +0200 +@@ -414,6 +414,12 @@ + AC_DEFINE_UNQUOTED(HAVE_LIBWRAP, [], Define if tcp_wrappers support is enabled ) + fi + ++# linux/ipx.h - deprecated in 2018 ++AC_CHECK_HEADER(linux/ipx.h, ipx_headers=yes, ipx_headers=no) ++if test $ipx_headers = yes ; then ++ AC_DEFINE(HAVE_IPX_HEADERS,1,[IPX packet interpretation]) ++fi ++ + # See if we want to support lower capabilities for plugins + LIBCAP_NG_PATH + + diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit/0002-Fixed-swig-host-contamination-issue.patch b/meta-openembedded/meta-oe/recipes-security/audit/audit/0002-Fixed-swig-host-contamination-issue.patch index 4a1b979975..39a090c83b 100644 --- a/meta-openembedded/meta-oe/recipes-security/audit/audit/0002-Fixed-swig-host-contamination-issue.patch +++ b/meta-openembedded/meta-oe/recipes-security/audit/audit/0002-Fixed-swig-host-contamination-issue.patch @@ -13,6 +13,11 @@ Upstream-Status: Inappropriate [embedded specific] Signed-off-by: Anders Hedlund <anders.hedlund@windriver.com> Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Yi Zhao <yi.zhao@windriver.com> + +Comment: Refresh hunk from auditswig.i to fix build with linux 5.17+ +Reference-Commit: ee3c680c3 audit: Upgrade to 3.0.8 and fix build with linux 5.17+ +Signed-off-by: Akash Hadke <akash.hadke@kpit.com> +Signed-off-by: Akash Hadke <hadkeakash4@gmail.com> --- bindings/swig/python3/Makefile.am | 3 ++- bindings/swig/src/auditswig.i | 2 +- @@ -43,12 +48,12 @@ diff --git a/bindings/swig/src/auditswig.i b/bindings/swig/src/auditswig.i index 7ebb373..424fb68 100644 --- a/bindings/swig/src/auditswig.i +++ b/bindings/swig/src/auditswig.i -@@ -39,7 +39,7 @@ signed +@@ -39,7 +39,7 @@ #define __attribute(X) /*nothing*/ typedef unsigned __u32; typedef unsigned uid_t; -%include "/usr/include/linux/audit.h" -+%include "linux/audit.h" ++%include "../lib/audit.h" #define __extension__ /*nothing*/ #include <stdint.h> %include "../lib/libaudit.h" diff --git a/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb b/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb index 347c855063..f846b27f90 100644 --- a/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb +++ b/meta-openembedded/meta-oe/recipes-security/audit/audit_2.8.5.bb @@ -14,6 +14,7 @@ SRC_URI = "git://github.com/linux-audit/${BPN}-userspace.git;branch=2.8_maintena file://auditd \ file://auditd.service \ file://audit-volatile.conf \ + file://0001-Make-IPX-packet-interpretation-dependent-on-the-ipx-header.patch \ " S = "${WORKDIR}/git" @@ -72,6 +73,11 @@ FILES:${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}" CONFFILES:auditd = "${sysconfdir}/audit/audit.rules" RDEPENDS:auditd = "bash" +do_configure:prepend() { + sed -e 's|buf\[];|buf[0];|g' ${STAGING_INCDIR}/linux/audit.h > ${S}/lib/audit.h + sed -i -e 's|#include <linux/audit.h>|#include "audit.h"|g' ${S}/lib/libaudit.h +} + do_install:append() { rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.a rm -f ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages/*.la diff --git a/meta-openembedded/meta-oe/recipes-support/function2/function2_4.2.1.bb b/meta-openembedded/meta-oe/recipes-support/function2/function2_4.2.2.bb index 8e3718102e..31cd077d91 100644 --- a/meta-openembedded/meta-oe/recipes-support/function2/function2_4.2.1.bb +++ b/meta-openembedded/meta-oe/recipes-support/function2/function2_4.2.2.bb @@ -3,7 +3,7 @@ DESCRIPTION = "Provides improved implementations of std::function." HOMEPAGE = "https://naios.github.io/function2" LICENSE = "BSL-1.0" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=e4224ccaecb14d942c71d31bef20d78c" -SRCREV = "f569a63cfe369df867a1a4d17aaa12269156536c" +SRCREV = "2d3a878ef19dd5d2fb188898513610fac0a48621" PV .= "+git${SRCPV}" SRC_URI += "gitsm://github.com/Naios/function2;branch=master;protocol=https" diff --git a/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb index 2810a4f651..f9e1530161 100644 --- a/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb +++ b/meta-openembedded/meta-oe/recipes-support/iniparser/iniparser_4.1.bb @@ -22,3 +22,5 @@ do_install:append() { install -Dm 0644 ${S}/iniparser.pc ${D}${libdir}/pkgconfig/iniparser.pc sed -i -e 's,@baselib@,${baselib},g' ${D}${libdir}/pkgconfig/iniparser.pc } + +BBCLASSEXTEND += "native" diff --git a/meta-openembedded/meta-oe/recipes-support/msktutil/msktutil_1.2.bb b/meta-openembedded/meta-oe/recipes-support/msktutil/msktutil_1.2.bb new file mode 100644 index 0000000000..1b9a04ef29 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-support/msktutil/msktutil_1.2.bb @@ -0,0 +1,15 @@ +SUMMARY = "Program for interoperability with Active Directory" +DESCRIPTION = "Msktutil creates user or computer accounts in Active Directory, \ + creates Kerberos keytabs on Unix/Linux systems, adds and removes \ + principals to and from keytabs and changes the user or computer \ + account's password." + +LICENSE = "GPL-2.0-only" +LIC_FILES_CHKSUM = "file://LICENSE;md5=eb723b61539feef013de476e68b5c50a" + +SRC_URI = "https://github.com/msktutil/msktutil/releases/download/v${PV}/msktutil-${PV}.tar.bz2" +SRC_URI[sha256sum] = "27dc078cbac3186540d8ea845fc0ced6b1d9f844e586ccd9eaa2d9f4650c2ce6" + +DEPENDS += "krb5 cyrus-sasl openldap" + +inherit autotools diff --git a/meta-openembedded/meta-oe/recipes-support/poco/poco_1.12.2.bb b/meta-openembedded/meta-oe/recipes-support/poco/poco_1.12.3.bb index 5ecc5b8dee..32c57ce978 100644 --- a/meta-openembedded/meta-oe/recipes-support/poco/poco_1.12.2.bb +++ b/meta-openembedded/meta-oe/recipes-support/poco/poco_1.12.3.bb @@ -11,7 +11,7 @@ DEPENDS = "libpcre2 zlib" SRC_URI = "git://github.com/pocoproject/poco.git;branch=master;protocol=https \ file://run-ptest \ " -SRCREV = "be19dc4a2f30eb97cc9bdd7551460db11cc27353" +SRCREV = "f1aefe34a46891b09230422bbc37465bc6d0a0d1" UPSTREAM_CHECK_GITTAGREGEX = "poco-(?P<pver>\d+(\.\d+)+)" diff --git a/meta-openembedded/meta-oe/recipes-support/tio/tio_2.1.bb b/meta-openembedded/meta-oe/recipes-support/tio/tio_2.2.bb index 1c36bd522c..8bfebc7776 100644 --- a/meta-openembedded/meta-oe/recipes-support/tio/tio_2.1.bb +++ b/meta-openembedded/meta-oe/recipes-support/tio/tio_2.2.bb @@ -7,7 +7,7 @@ LICENSE = "GPL-2.0-or-later" LIC_FILES_CHKSUM = "file://LICENSE;md5=0e1a95b7892d3015ecd6d0016f601f2c" SRC_URI = "git://github.com/tio/tio;protocol=https;nobranch=1" -SRCREV = "14fc77ffc13a4c60a98f0bb7e0f431e9ed7cf1fd" +SRCREV = "eaab692d4d6be1ef41c0f6950977cf9054520cb7" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.38.bb b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.2.bb index 235bc30614..49c2a3f2ab 100644 --- a/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_6.1.38.bb +++ b/meta-openembedded/meta-oe/recipes-support/vboxguestdrivers/vboxguestdrivers_7.0.2.bb @@ -1,7 +1,7 @@ SUMMARY = "VirtualBox Linux Guest Drivers" SECTION = "core" -LICENSE = "GPL-2.0-only" -LIC_FILES_CHKSUM = "file://${WORKDIR}/${VBOX_NAME}/COPYING;md5=e197d5641bb35b29d46ca8c4bf7f2660" +LICENSE = "GPL-3.0-only" +LIC_FILES_CHKSUM = "file://${WORKDIR}/${VBOX_NAME}/COPYING;md5=fff5fe1c81dd6dc3d522e7862e44881e" DEPENDS = "virtual/kernel" @@ -15,7 +15,7 @@ SRC_URI = "http://download.virtualbox.org/virtualbox/${PV}/${VBOX_NAME}.tar.bz2 file://Makefile.utils \ " -SRC_URI[sha256sum] = "56d997b58154df3974ce040a64970fa774add41e84b23dfb84b279b24545d7e4" +SRC_URI[sha256sum] = "612fd6fc417e0067653091a613e1d4fa084d3f42407dff5f991a0eb1e2ab26c8" S ?= "${WORKDIR}/vbox_module" S:task-patch = "${WORKDIR}/${VBOX_NAME}" diff --git a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.8.0.bb b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.8.2.bb index 4b90dcc579..74e683e589 100644 --- a/meta-openembedded/meta-oe/recipes-test/bats/bats_1.8.0.bb +++ b/meta-openembedded/meta-oe/recipes-test/bats/bats_1.8.2.bb @@ -11,7 +11,7 @@ SRC_URI = "\ " # v1.7.0 -SRCREV = "e9b286bb39ad7b0cb7b7d2e819d44d1aff387522" +SRCREV = "e8c840b58f0833e23461c682655fe540aa923f85" S = "${WORKDIR}/git" diff --git a/meta-openembedded/meta-oe/recipes-test/cpputest/cpputest_4.0.bb b/meta-openembedded/meta-oe/recipes-test/cpputest/cpputest_4.0.bb index 921143a74c..5536cf07b6 100644 --- a/meta-openembedded/meta-oe/recipes-test/cpputest/cpputest_4.0.bb +++ b/meta-openembedded/meta-oe/recipes-test/cpputest/cpputest_4.0.bb @@ -15,7 +15,11 @@ inherit cmake EXTRA_OECMAKE = "-DLONGLONG=ON \ -DC++11=ON \ -DTESTS=OFF \ - -DEXTENSIONS=OFF \ " +DEV_PKG_DEPENDENCY = "" + FILES:${PN}-dev += "${libdir}/CppUTest/cmake/*" + +PACKAGECONFIG ??= "" +PACKAGECONFIG[extensions] = "-DEXTENSIONS=ON,-DEXTENSIONS=OFF" diff --git a/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller/0001-sys-targets-targets.go-allow-users-to-override-hardc.patch b/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller/0001-sys-targets-targets.go-allow-users-to-override-hardc.patch new file mode 100644 index 0000000000..d647b8d4a0 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller/0001-sys-targets-targets.go-allow-users-to-override-hardc.patch @@ -0,0 +1,67 @@ +From aca1030d29f627314d13884ebc7b2c313d718df7 Mon Sep 17 00:00:00 2001 +From: Ovidiu Panait <ovidiu.panait@windriver.com> +Date: Wed, 13 Apr 2022 17:17:54 +0300 +Subject: [PATCH] sys/targets/targets.go: allow users to override hardcoded + cross-compilers + +Currently, cross compiler names are hardcoded for each os/arch combo. However, +toolchain tuples differ, especially when using vendor provided toolchains. +Allow users to specify the cross compiler for an os/arch combo using +SYZ_CC_<os>_<arch> environment variables. + +Also, remove hardcoded "-march=armv6" flag to fix compilation on arm. + +Upstream-Status: Inappropriate [embedded specific] + +Signed-off-by: Ovidiu Panait <ovidiu.panait@windriver.com> +--- + sys/targets/targets.go | 19 +++++++++++-------- + 1 file changed, 11 insertions(+), 8 deletions(-) + +diff --git a/sys/targets/targets.go b/sys/targets/targets.go +index f3be708f3..19a8bb681 100644 +--- a/sys/targets/targets.go ++++ b/sys/targets/targets.go +@@ -258,7 +258,6 @@ var List = map[string]map[string]*Target{ + PtrSize: 4, + PageSize: 4 << 10, + LittleEndian: true, +- CFlags: []string{"-D__LINUX_ARM_ARCH__=6", "-march=armv6"}, + Triple: "arm-linux-gnueabi", + KernelArch: "arm", + KernelHeaderArch: "arm", +@@ -670,12 +669,16 @@ func initTarget(target *Target, OS, arch string) { + for i := range target.CFlags { + target.replaceSourceDir(&target.CFlags[i], sourceDir) + } +- if OS == Linux && arch == runtime.GOARCH { +- // Don't use cross-compiler for native compilation, there are cases when this does not work: +- // https://github.com/google/syzkaller/pull/619 +- // https://github.com/google/syzkaller/issues/387 +- // https://github.com/google/syzkaller/commit/06db3cec94c54e1cf720cdd5db72761514569d56 +- target.Triple = "" ++ if OS == Linux { ++ if cc := os.Getenv("SYZ_CC_" + OS + "_" + arch); cc != "" { ++ target.CCompiler = cc ++ } else if arch == runtime.GOARCH { ++ // Don't use cross-compiler for native compilation, there are cases when this does not work: ++ // https://github.com/google/syzkaller/pull/619 ++ // https://github.com/google/syzkaller/issues/387 ++ // https://github.com/google/syzkaller/commit/06db3cec94c54e1cf720cdd5db72761514569d56 ++ target.Triple = "" ++ } + } + if target.CCompiler == "" { + target.setCompiler(useClang) +@@ -803,7 +806,7 @@ func (target *Target) lazyInit() { + // On CI we want to fail loudly if cross-compilation breaks. + // Also fail if SOURCEDIR_GOOS is set b/c in that case user probably assumes it will work. + if (target.OS != runtime.GOOS || !runningOnCI) && os.Getenv("SOURCEDIR_"+strings.ToUpper(target.OS)) == "" { +- if _, err := exec.LookPath(target.CCompiler); err != nil { ++ if _, err := exec.LookPath(strings.Fields(target.CCompiler)[0]); err != nil { + target.BrokenCompiler = fmt.Sprintf("%v is missing (%v)", target.CCompiler, err) + return + } +-- +2.25.1 + diff --git a/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller_git.bb b/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller_git.bb new file mode 100644 index 0000000000..f7c751f806 --- /dev/null +++ b/meta-openembedded/meta-oe/recipes-test/syzkaller/syzkaller_git.bb @@ -0,0 +1,73 @@ +DESCRIPTION = "syzkaller is an unsupervised coverage-guided kernel fuzzer" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://src/${GO_IMPORT}/LICENSE;md5=5335066555b14d832335aa4660d6c376" + +inherit go-mod + +GO_IMPORT = "github.com/google/syzkaller" + +SRC_URI = "git://${GO_IMPORT};protocol=https;destsuffix=${BPN}-${PV}/src/${GO_IMPORT};branch=master \ + file://0001-sys-targets-targets.go-allow-users-to-override-hardc.patch;patchdir=src/${GO_IMPORT} \ + " +SRCREV = "67cb024cd1a3c95e311263a5c95e957f9abfd8ca" + +COMPATIBLE_HOST = "(x86_64|i.86|arm|aarch64).*-linux" + +B = "${S}/src/${GO_IMPORT}/bin" + +GO_EXTRA_LDFLAGS += ' -X ${GO_IMPORT}/prog.GitRevision=${SRCREV}' + +export GOHOSTFLAGS="${GO_LINKSHARED} ${GOBUILDFLAGS}" +export GOTARGETFLAGS="${GO_LINKSHARED} ${GOBUILDFLAGS}" +export TARGETOS = '${GOOS}' +export TARGETARCH = '${GOARCH}' +export TARGETVMARCH = '${GOARCH}' + +CGO_ENABLED = "0" + +DEPENDS:class-native += "qemu-system-native" + +do_compile:class-native() { + export HOSTOS="${GOHOSTOS}" + export HOSTARCH="${GOHOSTARCH}" + + oe_runmake HOSTGO="${GO}" host +} + +do_compile:class-target() { + export HOSTOS="${GOOS}" + export HOSTARCH="${GOARCH}" + export SYZ_CC_${TARGETOS}_${TARGETARCH}="${CC}" + + # Unset GOOS and GOARCH so that the correct syz-sysgen binary can be + # generated. Fixes: + # go install: cannot install cross-compiled binaries when GOBIN is set + unset GOOS + unset GOARCH + + oe_runmake GO="${GO}" CC="${CXX}" CFLAGS="${CXXFLAGS} ${LDFLAGS}" REV=${SRCREV} target +} + +do_install:class-native() { + SYZ_BINS_NATIVE="syz-manager syz-runtest syz-repro syz-mutate syz-prog2c \ + syz-db syz-upgrade" + + install -d ${D}${bindir} + + for i in ${SYZ_BINS_NATIVE}; do + install -m 0755 ${B}/${i} ${D}${bindir} + done +} + +do_install:class-target() { + SYZ_TARGET_DIR="${TARGETOS}_${TARGETARCH}" + SYZ_BINS_TARGET="syz-fuzzer syz-execprog syz-stress syz-executor" + + install -d ${D}${bindir}/${SYZ_TARGET_DIR} + + for i in ${SYZ_BINS_TARGET}; do + install -m 0755 ${B}/${SYZ_TARGET_DIR}/${i} ${D}${bindir}/${SYZ_TARGET_DIR} + done +} + +BBCLASSEXTEND += "native" |