pw_arduino_build: Support Multiple Library Paths

- `--library-path` can take multiple paths in order of increasing
  precedence similar to Arduino IDE behavior. This is useful for
  including the 'libraries' directory included in an Arduino core
  and a separate user library folder.

- Remove serial wait loop from pw_sys_io_arduino

- Fix raised ValueError if arduino core install prefix is not
  relative to os.getcwd()

Change-Id: I6d68b319d2a6a4bfc6a7a599bf4c86f4bea96e39
Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/24840
Reviewed-by: Keir Mierle <keir@google.com>
Commit-Queue: Anthony DiGirolamo <tonymd@google.com>
diff --git a/pw_sys_io_arduino/sys_io_arduino.cc b/pw_sys_io_arduino/sys_io_arduino.cc
index de6c344..fbbc7bc 100644
--- a/pw_sys_io_arduino/sys_io_arduino.cc
+++ b/pw_sys_io_arduino/sys_io_arduino.cc
@@ -20,12 +20,7 @@
 #include "pw_preprocessor/compiler.h"
 #include "pw_sys_io/sys_io.h"
 
-extern "C" void pw_sys_io_Init() {
-  Serial.begin(115200);
-  // Wait for serial port to be available
-  while (!Serial) {
-  }
-}
+extern "C" void pw_sys_io_Init() { Serial.begin(115200); }
 
 namespace pw::sys_io {