pw_ide: Create Python symlinks

Provide commands for creating symlinks to the Python virtual environment
and associated bin directory. The location can vary depending on the
name of the environment directory, and the Python venv directory
structure is different on Windows compared to other platforms. This
allows us to provide stable references to the venv to IDEs regardless of
those variations.

Change-Id: I738e9729b695982b2d6a6fe3ae73923efa54d891
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/110256
Reviewed-by: Anthony DiGirolamo <tonymd@google.com>
Commit-Queue: Chad Norvell <chadnorvell@google.com>
4 files changed
tree: 661e231f7fa550500f8bcc821a8131cc1698fd79
  1. .allstar/
  2. build_overrides/
  3. docker/
  4. docs/
  5. pw_allocator/
  6. pw_analog/
  7. pw_android_toolchain/
  8. pw_arduino_build/
  9. pw_assert/
  10. pw_assert_basic/
  11. pw_assert_log/
  12. pw_assert_tokenized/
  13. pw_assert_zephyr/
  14. pw_base64/
  15. pw_bloat/
  16. pw_blob_store/
  17. pw_bluetooth/
  18. pw_bluetooth_hci/
  19. pw_boot/
  20. pw_boot_cortex_m/
  21. pw_build/
  22. pw_build_info/
  23. pw_build_mcuxpresso/
  24. pw_bytes/
  25. pw_checksum/
  26. pw_chrono/
  27. pw_chrono_embos/
  28. pw_chrono_freertos/
  29. pw_chrono_stl/
  30. pw_chrono_threadx/
  31. pw_chrono_zephyr/
  32. pw_cli/
  33. pw_compilation_testing/
  34. pw_console/
  35. pw_containers/
  36. pw_cpu_exception/
  37. pw_cpu_exception_cortex_m/
  38. pw_crypto/
  39. pw_digital_io/
  40. pw_docgen/
  41. pw_doctor/
  42. pw_env_setup/
  43. pw_file/
  44. pw_function/
  45. pw_fuzzer/
  46. pw_hdlc/
  47. pw_hex_dump/
  48. pw_i2c/
  49. pw_i2c_mcuxpresso/
  50. pw_ide/
  51. pw_interrupt/
  52. pw_interrupt_cortex_m/
  53. pw_interrupt_zephyr/
  54. pw_kvs/
  55. pw_libc/
  56. pw_log/
  57. pw_log_android/
  58. pw_log_basic/
  59. pw_log_null/
  60. pw_log_rpc/
  61. pw_log_string/
  62. pw_log_tokenized/
  63. pw_log_zephyr/
  64. pw_malloc/
  65. pw_malloc_freelist/
  66. pw_metric/
  67. pw_minimal_cpp_stdlib/
  68. pw_module/
  69. pw_multisink/
  70. pw_package/
  71. pw_persistent_ram/
  72. pw_polyfill/
  73. pw_preprocessor/
  74. pw_presubmit/
  75. pw_protobuf/
  76. pw_protobuf_compiler/
  77. pw_random/
  78. pw_result/
  79. pw_ring_buffer/
  80. pw_router/
  81. pw_rpc/
  82. pw_rust/
  83. pw_snapshot/
  84. pw_software_update/
  85. pw_span/
  86. pw_spi/
  87. pw_status/
  88. pw_stm32cube_build/
  89. pw_stream/
  90. pw_string/
  91. pw_symbolizer/
  92. pw_sync/
  93. pw_sync_baremetal/
  94. pw_sync_embos/
  95. pw_sync_freertos/
  96. pw_sync_stl/
  97. pw_sync_threadx/
  98. pw_sync_zephyr/
  99. pw_sys_io/
  100. pw_sys_io_arduino/
  101. pw_sys_io_baremetal_lm3s6965evb/
  102. pw_sys_io_baremetal_stm32f429/
  103. pw_sys_io_emcraft_sf2/
  104. pw_sys_io_mcuxpresso/
  105. pw_sys_io_stdio/
  106. pw_sys_io_stm32cube/
  107. pw_sys_io_zephyr/
  108. pw_system/
  109. pw_target_runner/
  110. pw_thread/
  111. pw_thread_embos/
  112. pw_thread_freertos/
  113. pw_thread_stl/
  114. pw_thread_threadx/
  115. pw_tls_client/
  116. pw_tls_client_boringssl/
  117. pw_tls_client_mbedtls/
  118. pw_tokenizer/
  119. pw_tool/
  120. pw_toolchain/
  121. pw_trace/
  122. pw_trace_tokenized/
  123. pw_transfer/
  124. pw_unit_test/
  125. pw_varint/
  126. pw_watch/
  127. pw_web/
  128. pw_work_queue/
  129. targets/
  130. third_party/
  131. ts/
  132. zephyr/
  133. .bazelignore
  134. .bazelrc
  135. .clang-format
  136. .clang-tidy
  137. .eslintrc.json
  138. .gitattributes
  139. .gitignore
  140. .gn
  141. .prettierrc.js
  142. .pylintrc
  143. activate.bat
  144. Android.bp
  145. AUTHORS
  146. bootstrap.bat
  147. bootstrap.sh
  148. BUILD.bazel
  149. BUILD.gn
  150. BUILDCONFIG.gn
  151. CMakeLists.txt
  152. jest.config.ts
  153. Kconfig.zephyr
  154. LICENSE
  155. modules.gni
  156. OWNERS
  157. package-lock.json
  158. package.json
  159. PIGWEED_MODULES
  160. PW_PLUGINS
  161. README.md
  162. rollup.config.js
  163. tsconfig.json
  164. WORKSPACE
README.md

Pigweed

Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.

For more information please see our website: https://pigweed.dev/.

Links