Go to file
Wyatt Hepler dceb02000f pw_presubmit: Only show checks that run
- Evaluate each unique path filter once before running the checks.
- Do not output results for skipped checks.
- Add a message that calls out when no files are being checked.

Change-Id: I0d8debd50e7b5838e837693d46e29cc6d9da447e
2019-12-11 19:36:24 -08:00
docs Fix how pw_build docs are used. 2019-12-10 20:10:44 -08:00
env_setup Remove yapf, mypy, and pylint from requirements.in 2019-12-11 16:53:52 -08:00
pw_bloat docs: Use glob to pull in docs.rst 2019-12-10 15:50:29 -08:00
pw_build Fix how pw_build docs are used. 2019-12-10 20:10:44 -08:00
pw_cli Rename help to short_help. 2019-12-09 13:45:01 -08:00
pw_docgen docs: Use glob to pull in docs.rst 2019-12-10 15:50:29 -08:00
pw_dumb_io pw_dumb_io: Update docs 2019-12-10 00:05:55 +00:00
pw_dumb_io_baremetal_stm32f429 pw_dumb_io: Update docs 2019-12-10 00:05:55 +00:00
pw_dumb_io_stdio pw_dumb_io: Update docs 2019-12-10 00:05:55 +00:00
pw_module pw_module: Start module structure documentation 2019-12-10 10:07:18 -08:00
pw_preprocessor Expand docs for a few modules 2019-12-09 17:13:47 -08:00
pw_presubmit pw_presubmit: Only show checks that run 2019-12-11 19:36:24 -08:00
pw_span pw_span: Fix typo and example in docs 2019-12-10 09:21:12 -08:00
pw_status Expand docs for a few modules 2019-12-09 17:13:47 -08:00
pw_string Expand docs for a few modules 2019-12-09 17:13:47 -08:00
pw_test_server Fix golint warnings 2019-12-10 17:39:04 -08:00
pw_toolchain Apply pw format to the repository 2019-12-05 09:31:11 -08:00
pw_unit_test Rename help to short_help. 2019-12-09 13:45:01 -08:00
pw_varint Fix the copyright notice on a few files 2019-12-03 00:00:28 +00:00
targets stm32f429i-disc1: Automatic board detection 2019-12-06 23:22:18 +00:00
.clang-format Add preprocessor and unit_test modules 2019-11-04 16:07:34 -08:00
.gitignore Move CIPD installation dir. 2019-12-11 11:23:09 -08:00
.gn Initial Pigweed modules 2019-10-31 17:43:53 -07:00
.pylintrc Update Sphinx conf.py; add autodoc extension 2019-12-05 16:33:33 -08:00
AUTHORS
BUILD Remove SUBDIRS from BUILD. (Apparently unused.) 2019-11-19 18:28:54 +00:00
BUILD.gn pw_unit_test: Create test running groups 2019-12-02 16:03:32 -08:00
BUILDCONFIG.gn Start build target config files 2019-11-14 00:34:25 +00:00
CONTRIBUTING.md Fix copyright notices 2019-11-27 22:34:02 +00:00
LICENSE
modules.gni pw_module: Start module structure documentation 2019-12-10 10:07:18 -08:00
pw_vars_default.gni Update test runner to run tests from metadata 2019-11-22 17:58:51 +00:00
README.md Add command for running tests on hardware. 2019-12-03 13:55:40 -08:00
WORKSPACE Add bazel build system files. 2019-11-14 07:16:44 -08:00

Pigweed Embedded Oriented Software Libraries

Pigweed is a collection of embedded-focused libraries, which we call "modules". These modules are designed for small-footprint MMU-less microcontrollers like the ST Micro STM32L452 or the Nordic NRF82832. The modules are designed to facilitate easy integration into existing codebases.

Pigweed is in the early stages of development.

Getting Started

$ git clone sso://pigweed.googlesource.com/pigweed/pigweed ~/pigweed
$ cd ~/pigweed
$ env_setup/cipd/cipd.py auth-login  # Once per machine.
$ . env_setup/setup.sh

If you're using Homebrew and you get an error saying module 'http.client' has no attribute 'HTTPSConnection' then your Homebrew Python was not set up to support SSL. Ensure it's installed with brew install openssl and then run brew uninstall python && brew install python. After that things should work.

The environment setup script will pull down the versions of tools necessary to build Pigweed and add them to your environment. You can then build with either GN or Bazel. You can also confirm you're getting the right versions of tools—they should be installed under env_setup/.

$ which gn
~/pigweed/env_setup/cipd/tools/gn
$ gn gen out/host
$ ninja -C out/host
$ which bazel
~/pigweed/env_setup/cipd/tools/bazel
$ bazel test //...

And do the following to test on the STM32F429 Discovery board. (The bazel build does not yet support building for hardware.)

$ gn gen --args='pw_target_config = "//targets/stm32f429i-disc1/target_config.gni"' out/disco
$ ninja -C out/disco
$ pw test --root out/disco/ --runner stm32f429i_disc1_unit_test_runner -- --port /dev/ttyACM0

If any of this doesn't work please file a bug.