Go to file
Rob Mohr e11d715936 Add #! line to stm32f429i test runner.
Change-Id: Ida76b2683b6a24e9c60f2fa943672b9c5ed2f23d
2019-12-03 13:28:59 -08:00
docs Fix copyright notices 2019-11-27 22:34:02 +00:00
env_setup Use openocd provided by CIPD 2019-12-03 19:50:43 +00:00
pw_bloat Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_build Fix bazel build. 2019-12-02 21:44:15 +00:00
pw_cli pw_cli: Remove date/time from subprocess logs 2019-12-03 18:32:43 +00:00
pw_docgen pw_docgen: Fix paths, multiple sources 2019-11-25 14:55:02 -08:00
pw_dumb_io Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_dumb_io_baremetal_stm32f429 Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_dumb_io_stdio Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_module pw_module: New checkers 2019-12-03 08:56:35 +00:00
pw_preprocessor Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_presubmit/py presubmit: Fix invoking script directly 2019-12-03 17:06:14 +00:00
pw_span Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_status Fix copyright notices 2019-11-27 22:34:02 +00:00
pw_string pw_string: Fix test for limited snprintfs 2019-12-03 11:11:13 -08:00
pw_toolchain
pw_unit_test pw_unit_test: Create test running groups 2019-12-02 16:03:32 -08:00
pw_varint Fix the copyright notice on a few files 2019-12-03 00:00:28 +00:00
targets Add #! line to stm32f429i test runner. 2019-12-03 13:28:59 -08:00
.clang-format
.gitignore Adding env_setup folder and initial setup script. 2019-11-22 23:33:36 +00:00
.gn
.pylintrc Add .pylintrc 2019-11-27 11:18:08 -08:00
AUTHORS
BUILD
BUILD.gn pw_unit_test: Create test running groups 2019-12-02 16:03:32 -08:00
BUILDCONFIG.gn
CONTRIBUTING.md Fix copyright notices 2019-11-27 22:34:02 +00:00
LICENSE
modules.gni pw_varint: Add varint module 2019-12-02 18:39:29 +00:00
pw_vars_default.gni Update test runner to run tests from metadata 2019-11-22 17:58:51 +00:00
README.md Add fix for broken Python on Homebrew. 2019-12-02 22:57:58 +00:00
WORKSPACE

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 hardware. (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

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