Copyright © 2018,2019 Keith Packard
Picolibc source comes from a variety of places and has a huge variety of copyright holders and license texts. While much of the code comes from newlib, none of the GPL-related bits are left in the repository, so all of the source code uses BSD-like licenses, a mixture of 2- and 3- clause BSD itself and a variety of other (mostly older) licenses with similar terms.
Picolibc inherited code for a lot of architectures from newlib, but at this point only has code to build for the following targets:
- ARM (32-bit only)
- i386 (Linux hosted, for testing)
- RISC-V (both 32- and 64- bit)
- x86_64 (Linux hosted, for testing)
Supporting architectures that already have newlib code requires:
- newlib/libc/machine/architecture/meson.build to build any architecture-specific libc bits
- newlib/libm/machine/architecture/meson.build to build any architecture-specific libm bits
- picocrt/machine/architecture source code and build bits if you need custom startup code for the architecture.
- cross-gcc-triple.txt to configure the meson cross-compilation mechanism to use the right tools
- do-architecture-configure to make testing the cross-compilation setup easier.