Add initial project files
Bug: 329891679
Change-Id: I806e60ba4d46aa958cdd8b015f3fb626005a3e71
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/quickstart/zephyr/+/197990
Commit-Queue: Kayce Basques <kayce@google.com>
Pigweed-Auto-Submit: Kayce Basques <kayce@google.com>
Reviewed-by: Yuval Peress <peress@google.com>
Reviewed-by: Keir Mierle <keir@google.com>
diff --git a/.clang-format b/.clang-format
new file mode 120000
index 0000000..1c7cede
--- /dev/null
+++ b/.clang-format
@@ -0,0 +1 @@
+third_party/pigweed/.clang-format
\ No newline at end of file
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..5e77914
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,39 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+# West's directory.
+.west/
+
+# IDE-specific files.
+.cache/
+.idea/
+.pw_ide/
+.vscode/extensions.json
+.vscode/launch.json
+.vscode/settings.json
+.vscode/tasks.json
+
+# Directories checked out by West.
+bootloader/
+modules/
+tools/
+
+# Build artifacts.
+build/
+out/
+twister-out*/
+
+# Auto-generated environment stuff.
+environment/
+build_overrides/pigweed_environment.gni
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..dd4552c
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,22 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+[submodule "third_party/pigweed"]
+ path = third_party/pigweed
+ url = https://pigweed.googlesource.com/pigweed/pigweed
+ branch = main
+[submodule "third_party/zephyr"]
+ path = third_party/zephyr
+ url = git@github.com:zephyrproject-rtos/zephyr.git
+ branch = main
diff --git a/.gn b/.gn
new file mode 100644
index 0000000..c260473
--- /dev/null
+++ b/.gn
@@ -0,0 +1,26 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+buildconfig = "//BUILDCONFIG.gn"
+
+default_args = {
+ pw_build_PIP_CONSTRAINTS = [
+ # Upstream Pigweed constraints.
+ "$dir_pw_env_setup/py/pw_env_setup/virtualenv_setup/constraint.list",
+ ]
+ # Default virtualenv target for GN build.
+ pw_build_PYTHON_BUILD_VENV = "//:project_build_venv"
+}
diff --git a/.pw_ide.yaml b/.pw_ide.yaml
new file mode 100644
index 0000000..a2bda92
--- /dev/null
+++ b/.pw_ide.yaml
@@ -0,0 +1,20 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+config_title: pw_ide
+
+compdb_gen_cmd: "west build -p --cmake-only -b native_sim app"
+compdb_search_paths:
+ - "build/"
+ - "twister-out/"
diff --git a/BUILD.gn b/BUILD.gn
new file mode 100644
index 0000000..5fe49ca
--- /dev/null
+++ b/BUILD.gn
@@ -0,0 +1,50 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+import("//build_overrides/pigweed.gni")
+
+import("$dir_pigweed/pw_build/python.gni")
+import("$dir_pigweed/pw_build/python_dist.gni")
+import("$dir_pigweed/pw_build/python_venv.gni")
+
+pw_python_group("python") {
+ python_deps = [
+ ":pip_install_project_tools",
+ ]
+}
+
+_all_python_packages = [
+ "$dir_pw_env_setup:core_pigweed_python_packages",
+]
+
+pw_python_venv("project_build_venv") {
+ path = "$root_build_dir/python-venv"
+ constraints = pw_build_PIP_CONSTRAINTS
+ requirements = pw_build_PIP_REQUIREMENTS
+ source_packages = _all_python_packages
+}
+
+pw_python_distribution("generate_project_python_distribution") {
+ packages = _all_python_packages
+ generate_setup_cfg = {
+ name = "project-tools"
+ version = "0.0.1"
+ append_date_to_version = true
+ include_default_pyproject_file = true
+ }
+}
+
+pw_python_pip_install("pip_install_project_tools") {
+ packages = [ ":generate_project_python_distribution" ]
+}
diff --git a/BUILDCONFIG.gn b/BUILDCONFIG.gn
new file mode 100644
index 0000000..e3822e2
--- /dev/null
+++ b/BUILDCONFIG.gn
@@ -0,0 +1,19 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+_pigweed_directory = {
+ import("//build_overrides/pigweed.gni")
+}
+
+set_default_toolchain("${_pigweed_directory.dir_pw_toolchain}/default")
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..9e5d0b9
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,15 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+add_subdirectory(lib)
diff --git a/Kconfig b/Kconfig
new file mode 100644
index 0000000..9d97202
--- /dev/null
+++ b/Kconfig
@@ -0,0 +1,15 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+rsource "lib/Kconfig"
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..53e4ee8
--- /dev/null
+++ b/README.md
@@ -0,0 +1,3 @@
+# zephyr-quickstart
+
+See https://pigweed.dev/get_started/zephyr.html
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
new file mode 100644
index 0000000..effefbd
--- /dev/null
+++ b/app/CMakeLists.txt
@@ -0,0 +1,21 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+cmake_minimum_required(VERSION 3.20)
+
+find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
+
+project(zephyr-quickstart LANGUAGES C CXX)
+
+target_sources(app PRIVATE src/main.cc)
diff --git a/app/prj.conf b/app/prj.conf
new file mode 100644
index 0000000..b32e2c2
--- /dev/null
+++ b/app/prj.conf
@@ -0,0 +1,21 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+# C++ configuration.
+CONFIG_CPP=y
+CONFIG_STD_CPP17=y
+CONFIG_REQUIRES_FULL_LIBCPP=y
+
+# Logging configuration.
+CONFIG_LOG=y
diff --git a/app/src/main.cc b/app/src/main.cc
new file mode 100644
index 0000000..1a996c4
--- /dev/null
+++ b/app/src/main.cc
@@ -0,0 +1,20 @@
+// Copyright 2024 The Pigweed Authors
+//
+// Licensed under the Apache License, Version 2.0 (the "License"); you may not
+// use this file except in compliance with the License. You may obtain a copy of
+// the License at
+//
+// https://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+// License for the specific language governing permissions and limitations under
+// the License.
+
+#include "pw_log/log.h"
+
+int main() {
+ PW_LOG_INFO("Hello, world!");
+ return 0;
+}
diff --git a/bootstrap.sh b/bootstrap.sh
new file mode 100644
index 0000000..4f238fb
--- /dev/null
+++ b/bootstrap.sh
@@ -0,0 +1,125 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+# This script must be tested on bash, zsh, and dash.
+
+_bootstrap_abspath () {
+ $(command -v python3 || command -v python2 || command -v python) -c "import os.path; print(os.path.abspath('$@'))"
+}
+
+# Shell: bash.
+if test -n "$BASH"; then
+ _PW_BOOTSTRAP_PATH="$(_bootstrap_abspath "$BASH_SOURCE")"
+# Shell: zsh.
+elif test -n "$ZSH_NAME"; then
+ _PW_BOOTSTRAP_PATH="$(_bootstrap_abspath "${(%):-%N}")"
+# Shell: dash.
+elif test ${0##*/} = dash; then
+ _PW_BOOTSTRAP_PATH="$(_bootstrap_abspath \
+ "$(lsof -p $$ -Fn0 | tail -1 | sed 's#^[^/]*##;')")"
+# If everything else fails, try $0. It could work.
+else
+ _PW_BOOTSTRAP_PATH="$(_bootstrap_abspath "$0")"
+fi
+
+# Check if this file is being executed or sourced.
+_pw_sourced=0
+if [ -n "$SWARMING_BOT_ID" ]; then
+ # If set we're running on swarming and don't need this check.
+ _pw_sourced=1
+elif [ -n "$ZSH_EVAL_CONTEXT" ]; then
+ case $ZSH_EVAL_CONTEXT in *:file) _pw_sourced=1;; esac
+elif [ -n "$KSH_VERSION" ]; then
+ [ "$(cd $(dirname -- $0) && pwd -P)/$(basename -- $0)" != \
+ "$(cd $(dirname -- ${.sh.file}) && pwd -P)/$(basename -- ${.sh.file})" ] \
+ && _pw_sourced=1
+elif [ -n "$BASH_VERSION" ]; then
+ (return 0 2>/dev/null) && _pw_sourced=1
+else # All other shells: examine $0 for known shell binary filenames
+ # Detects `sh` and `dash`; add additional shell filenames as needed.
+ case ${0##*/} in sh|dash) _pw_sourced=1;; esac
+fi
+
+# Downstream projects need to set something other than PW_ROOT here, like
+# YOUR_PROJECT_ROOT. Please also set PW_PROJECT_ROOT and PW_ROOT before
+# invoking pw_bootstrap or pw_activate.
+######### BEGIN PROJECT-SPECIFIC CODE #########
+# Please also set PW_PROJECT_ROOT to YOUR_PROJECT_ROOT.
+PW_PROJECT_ROOT="$(dirname "${_PW_BOOTSTRAP_PATH}")"
+PW_ROOT="${PW_PROJECT_ROOT}/third_party/pigweed"
+echo "PW_ROOT=${PW_ROOT}"
+echo "PW_PROJECT_ROOT=${PW_PROJECT_ROOT}"
+
+# Downstream projects may wish to set PW_BANNER_FUNC to a function that prints
+# an ASCII art banner here.
+########## END PROJECT-SPECIFIC CODE ##########
+export PW_ROOT
+export PW_PROJECT_ROOT
+if [ -n "$PW_BANNER_FUNC" ]; then
+ export PW_BANNER_FUNC
+fi
+
+. "$PW_ROOT/pw_env_setup/util.sh"
+
+# Check environment properties
+pw_deactivate
+pw_eval_sourced "$_pw_sourced" "$_PW_BOOTSTRAP_PATH"
+if ! pw_check_root "$PW_ROOT"; then
+ return
+fi
+
+_PW_ACTUAL_ENVIRONMENT_ROOT="$(pw_get_env_root)"
+export _PW_ACTUAL_ENVIRONMENT_ROOT
+SETUP_SH="$_PW_ACTUAL_ENVIRONMENT_ROOT/activate.sh"
+
+# Run full bootstrap when invoked as bootstrap, or env file is missing/empty.
+if [ "$(basename "$_PW_BOOTSTRAP_PATH")" = "bootstrap.sh" ] || \
+ [ ! -f "$SETUP_SH" ] || \
+ [ ! -s "$SETUP_SH" ]; then
+######### BEGIN PROJECT-SPECIFIC CODE #########
+ pw_bootstrap --shell-file "$SETUP_SH" --install-dir "$_PW_ACTUAL_ENVIRONMENT_ROOT"
+########## END PROJECT-SPECIFIC CODE ##########
+ pw_finalize bootstrap "$SETUP_SH"
+else
+ pw_activate
+ pw_finalize activate "$SETUP_SH"
+fi
+
+if [ "$_PW_ENV_SETUP_STATUS" -eq 0 ]; then
+# This is where any additional checks about the environment should go.
+######### BEGIN PROJECT-SPECIFIC CODE #########
+ echo -n
+########## END PROJECT-SPECIFIC CODE ##########
+fi
+
+unset _pw_sourced
+unset _PW_BOOTSTRAP_PATH
+unset SETUP_SH
+unset _bootstrap_abspath
+
+if [[ "$TERM" != dumb ]]; then
+ # Shell completion: bash.
+ if test -n "$BASH"; then
+ . "$PW_ROOT/pw_cli/py/pw_cli/shell_completion/pw.bash"
+ . "$PW_ROOT/pw_cli/py/pw_cli/shell_completion/pw_build.bash"
+ # Shell completion: zsh.
+ elif test -n "$ZSH_NAME"; then
+ . "$PW_ROOT/pw_cli/py/pw_cli/shell_completion/pw.zsh"
+ . "$PW_ROOT/pw_cli/py/pw_cli/shell_completion/pw_build.zsh"
+ fi
+fi
+
+pw_cleanup
+
+git -C "$PW_ROOT" config blame.ignoreRevsFile .git-blame-ignore-revs
diff --git a/build_overrides/pigweed.gni b/build_overrides/pigweed.gni
new file mode 100644
index 0000000..97dd45c
--- /dev/null
+++ b/build_overrides/pigweed.gni
@@ -0,0 +1,21 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+declare_args() {
+ dir_project = "//"
+ # Location of the Pigweed repository.
+ dir_pigweed = "//third_party/pigweed"
+}
+
+import("$dir_pigweed/modules.gni")
diff --git a/cipd.json b/cipd.json
new file mode 100644
index 0000000..df86d04
--- /dev/null
+++ b/cipd.json
@@ -0,0 +1,19 @@
+{
+ "packages": [
+ {
+ "path": "infra/3pp/tools/zephyr_sdk/${platform}",
+ "subdir": "zephyr_sdk",
+ "platforms": [
+ "mac-amd64",
+ "mac-arm64",
+ "linux-amd64",
+ "linux-arm64",
+ "windows-amd64"
+ ],
+ "tags": [
+ "latest"
+ ],
+ "version_file": ".versions/zephyr_sdk.cipd_version"
+ }
+ ]
+}
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
new file mode 100644
index 0000000..ef4d136
--- /dev/null
+++ b/lib/CMakeLists.txt
@@ -0,0 +1,13 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
diff --git a/lib/Kconfig b/lib/Kconfig
new file mode 100644
index 0000000..ef4d136
--- /dev/null
+++ b/lib/Kconfig
@@ -0,0 +1,13 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
diff --git a/manifest/west.yml b/manifest/west.yml
new file mode 100644
index 0000000..28e9758
--- /dev/null
+++ b/manifest/west.yml
@@ -0,0 +1,31 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+manifest:
+ projects:
+ - import: false
+ name: pigweed
+ path: third_party/pigweed
+ remote: google
+ revision: main
+ - import: true
+ name: zephyr
+ path: third_party/zephyr
+ remote: zephyrproject-rtos
+ revision: main
+ remotes:
+ - name: google
+ url-base: git@github.com:google
+ - name: zephyrproject-rtos
+ url-base: git@github.com:zephyrproject-rtos
diff --git a/manifest/zephyr/module.yml b/manifest/zephyr/module.yml
new file mode 100644
index 0000000..5becc00
--- /dev/null
+++ b/manifest/zephyr/module.yml
@@ -0,0 +1,29 @@
+# Copyright 2024 The Pigweed Authors
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# https://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+name: zephyr-quickstart
+
+build:
+ # Path to the `Kconfig` file that will be sourced into Zephyr `Kconfig` tree
+ # under Zephyr > Modules > {module_name}. Path is relative from where the
+ # `west.yml` file is located.
+ kconfig: ../Kconfig
+ # Path to the folder that contains the `CMakeLists.txt` file to be included
+ # by Zephyr build system. The `../` is the root of this repository.
+ cmake: ../
+ settings:
+ # Additional roots for boards and DTS files. Zephyr will use the
+ # `<board_root>/boards` for additional boards. The `../` is the root of this
+ # repository.
+ board_root: ../
diff --git a/pigweed.json b/pigweed.json
new file mode 100644
index 0000000..3f733e0
--- /dev/null
+++ b/pigweed.json
@@ -0,0 +1,44 @@
+{
+ "pw": {
+ "pw_cli": {
+ "plugins": {
+ "ide": {
+ "module": "pw_ide.__main__",
+ "function": "main"
+ },
+ "package": {
+ "module": "pw_package.pigweed_packages",
+ "function": "main"
+ }
+ }
+ },
+ "pw_env_setup": {
+ "relative_pigweed_root": "third_party/pigweed",
+ "cipd_package_files": [
+ "cipd.json",
+ "third_party/pigweed/pw_env_setup/py/pw_env_setup/cipd_setup/default.json",
+ "third_party/pigweed/pw_env_setup/py/pw_env_setup/cipd_setup/cmake.json",
+ "third_party/pigweed/pw_env_setup/py/pw_env_setup/cipd_setup/pigweed.json",
+ "third_party/pigweed/pw_env_setup/py/pw_env_setup/cipd_setup/python.json"
+ ],
+ "project_actions": [
+ {
+ "import_path": "pw_env_setup",
+ "module_name": "zephyr_sdk_actions"
+ }
+ ],
+ "virtualenv": {
+ "gn_root": ".",
+ "gn_targets": [
+ ":python.install"
+ ],
+ "requirements": [
+ "third_party/zephyr/scripts/requirements.txt"
+ ],
+ "pip_install_find_links": [
+ "${PW_PROJECT_ROOT}/pip_cache"
+ ]
+ }
+ }
+ }
+}
diff --git a/third_party/pigweed b/third_party/pigweed
new file mode 160000
index 0000000..42616d8
--- /dev/null
+++ b/third_party/pigweed
@@ -0,0 +1 @@
+Subproject commit 42616d83123f2176914d091f973088980dcf7e1a
diff --git a/third_party/zephyr b/third_party/zephyr
new file mode 160000
index 0000000..7ffafd9
--- /dev/null
+++ b/third_party/zephyr
@@ -0,0 +1 @@
+Subproject commit 7ffafd9b6473d229e712bc67e9759042a49483f7