commit | f40ee3d41970c8530188fa21bcc409ae74ec9653 | [log] [tgz] |
---|---|---|
author | pigweed-roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com> | Sat Mar 08 00:37:04 2025 -0800 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Sat Mar 08 00:37:04 2025 -0800 |
tree | 85db7a5c9ccf9e5551a1c1d23f04841855cb1825 | |
parent | 9d24ef3def8fd6a3baeeed6147aa1a011fd79828 [diff] |
roll: pigweed e7e47e7..3fa32a8 (21 commits) 3fa32a8:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/255134 pw_i2c_mcuxpresso: Convert to new i2c initiator message interface bce90ae:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260974 pw_i2c_mcuxpresso: Use non-blocking i3c operations 7d88fb9:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/259973 pw_i2c: Split Message::GetData() into const and non-const version 2dc5872:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/259972 pw_i2c: Add feature support to Initiator class 8c78d5f:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/255133 pw_i2c: Change initiator to take a list of messages for one transaction 287133e:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260059 pw_i2c: Improve TenBit support in Address class 28fdb0a:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/271743 pw_bluetooth_sapphire: Clean up adapter logs 870f8f8:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260225 pw_bluetooth_sapphire: Add BidirectionalMap 39b8e48:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/265638 pw_bluetooth_sapphire: Add operator== to DiscoveryFilter 19b092e:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/265637 pw_bluetooth_sapphire: Add ToString to DiscoveryFilter cdf2d7e:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260230 pw_bluetooth_sapphire: Rename DiscoveryFilter::MatchLowEnergyResult 324e513:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/272572 pw_kernel: Add tokenized logging backend 749889c:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/274033 pw_allocator: Fix sign conversion warning 432f5c2:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/273612 pw_bluetooth_sapphire: Ensure identity is known for LEPublic addresses 8c51086:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260229 pw_bluetooth_sapphire: Wrap LowEnergyScanner delegate calls 553d60f:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/265634 pw_bluetooth_sapphire: Constify some methods that should have been b7b7110:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/260228 pw_bluetooth_sapphire: PacketFilterConfig to AdvertisingPacketFilter be05ee5:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/272896 pw_bluetooth_sapphire: Handle L2CAP config req retry failure correctly 693a34d:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/271712 pw_bluetooth: Add Enable() and Disable() APIs to Snoop Log b3bfda8:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/273812 pw_allocator: Fix pw_assert deps 6d2af30:https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/273852 pw_bluetooth: Add drees to OWNERS Rolled-Repo: https://pigweed.googlesource.com/pigweed/pigweed Rolled-Commits: e7e47e71527497..3fa32a86aa204d Roll-Count: 1 Roller-URL: https://cr-buildbucket.appspot.com/build/8720979680238025409 GitWatcher: ignore CQ-Do-Not-Cancel-Tryjobs: true Change-Id: I67b19dd82bd292ca9a42b3fa542cb1e7304ac594 Reviewed-on: https://pigweed-review.googlesource.com/c/zephyr/zephyr-bazel/+/273951 Commit-Queue: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com> Lint: Lint 🤖 <android-build-ayeaye@system.gserviceaccount.com> Bot-Commit: Pigweed Roller <pigweed-roller@pigweed-service-accounts.iam.gserviceaccount.com>
The way this repository works is by overlaying itself on top of Zephyr. To get started, first make sure you have Bazel‘s skylib version 1.7.1 or greater. If you don’t have it, you can use:
http_archive( name = "bazel_skylib", sha256 = "bc283cdfcd526a52c3201279cda4bc298652efa898b10b4db0837dc51652756f", urls = [ "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz", "https://github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz", ], ) load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace") bazel_skylib_workspace()
To grab the zephyr-bazel repo, use a git_repository rule in your WORKSPACE, such as:
git_repository( name = "zephyr-bazel", remote = "https://pigweed.googlesource.com/zephyr/zephyr-bazel" branch = "main", )
Once you have @zephyr-bazel
, we can load the patch rule to generate the Zephyr diff that will augment Zephyr to include the BUILD.zephyr rules.
load("@zephyr-bazel//:setup.bzl", "create_zephyr_patch_file") create_zephyr_patch_file( name = "zephyr-patch", filename = "patch.diff", # This is optional, use it to see what's going on under the hood debug = True, )
We now have a diff file at @zephyr-patch//:patch.diff
. We're ready to load Zephyr.
git_repository( name = "zephyr", remote = "https://github.com/zephyrproject-rtos/zephyr.git", branch = "main", patches = [ "@zephyr-patch//:patch.diff", ], )
The final step will be to load Zephyr's python dependencies:
load("@rules_python//python:pip.bzl", "pip_parse") pip_parse( name = "py_deps", python_interpreter_target = interpreter, requirements_lock = "@@zephyr//:scripts/requirements-base.txt", ) load("@py_deps//:requirements.bzl", zephyr_install_deps = "install_deps") zephyr_install_deps()
In your main application, you can now use the Zephyr utilities for building your app.
load("@zephyr//:defs.bzl", "dts_cc_library") dts_cc_library( name = "app_native_sim_dts", dts_lib = "@zephyr//boards/native/native_sim:native_sim", ) cc_binary( ... deps = [ ... "@zephyr//:zephyr", ] + select({ "@platform//cpu:x86_64": [ ":app_native_sim_dts", "@zephyr//include:posix", ], }), copts = select({ "@platform//cpu:x86_64": [ "-DCONFIG_ARCH_POSIX=1", ], }), )
There is currently just 1 example, you can run it via:
$ cd examples/hello_dts $ bazel run :app
Or, you can run the tests via:
$ cd examples/hello_dts $ bazel test //...