From 9dc8ebf871c600d7186a490ceb00be0e5b99f0b5 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Tue, 13 Jul 2021 11:14:35 -0700 Subject: picolibc: Disable wchar_t use in libstdc++ Picolibc doesn't support wchar_t in stdio, so disable the use of these functions from libstdc++. Signed-off-by: Keith Packard diff --git a/scripts/build/companion_libs/340-picolibc.sh b/scripts/build/companion_libs/340-picolibc.sh index 525497a..cb96e71 100644 --- a/scripts/build/companion_libs/340-picolibc.sh +++ b/scripts/build/companion_libs/340-picolibc.sh @@ -40,6 +40,7 @@ do_cc_libstdcxx_picolibc() final_opts+=( "lang_list=c,c++" ) final_opts+=( "build_step=libstdcxx" ) final_opts+=( "extra_config+=('--enable-stdio=stdio_pure')" ) + final_opts+=( "extra_config+=('--disable-wchar_t')" ) if [ "${CT_LIBC_PICOLIBC_ENABLE_TARGET_OPTSPACE}" = "y" ]; then final_opts+=( "enable_optspace=yes" ) fi -- cgit v0.10.2-6-g49f6 From a35d90945949d43bfd4be9f789cd7474a1d03898 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Tue, 13 Jul 2021 11:15:39 -0700 Subject: picolibc: Add support for version 1.7.1 Since 1.6.2, picolibc has had two releases - 1.7 and 1.7.1. Here are the release notes from those versions. 1. Add __cxa_atexit implementation to 'picoexit' path as required by C++ 2. Fix lack of 'hh' support in integer-only tinystdio printf path. 3. Fix tinystdio __file flag initialization for C++ apps 1. Merge libc and libm into a single library. Having them split doesn't offer any advantages while requiring that applications add '-lm' to link successfully. Having them merged allows use of libm calls from libc code. 2. Add hex float format to *printf, *scanf and strto{d,f,ld}. This is required for C99 support. 3. Unify strto{d,f,ld} and *scanf floating point parsing code. This ensures that the library is consistent in how floats are parsed. 4. Make strto{d,f,ld} set errno to ERANGE on overflow/underflow, including when the result is a subnormal number. Signed-off-by: Keith Packard diff --git a/packages/picolibc/1.7.1/chksum b/packages/picolibc/1.7.1/chksum new file mode 100644 index 0000000..e20e9a9 --- /dev/null +++ b/packages/picolibc/1.7.1/chksum @@ -0,0 +1,4 @@ +md5 picolibc-1.7.1.tar.xz c35296fa0eeb625f6664ae80ea252b09 +sha1 picolibc-1.7.1.tar.xz 3b1948feee5d1c5325fbc81963e6d5480aa9b927 +sha256 picolibc-1.7.1.tar.xz 6301c22c385d299c4fbb36e23b55a4e65b7a14952ee62c8638a535063a310857 +sha512 picolibc-1.7.1.tar.xz 03bf635841e8f96e8a675162693f7275f907ae4dd97e51c962d969c2b9c721240625c0e7d9582a41804913c36c1db15844ccabd0926ceda67ffb169b29a5d5f6 diff --git a/packages/picolibc/1.7.1/version.desc b/packages/picolibc/1.7.1/version.desc new file mode 100644 index 0000000..e69de29 diff --git a/packages/picolibc/package.desc b/packages/picolibc/package.desc index 63d89c9..15206e6 100644 --- a/packages/picolibc/package.desc +++ b/packages/picolibc/package.desc @@ -1,6 +1,6 @@ origin='keithp.com' repository='git https://github.com/picolibc/picolibc.git' -milestones='1.4 1.5 1.6' +milestones='1.4 1.5 1.6 1.7' relevantpattern='*.*|.*. *.*|.' archive_formats='.tar.xz' mirrors='https://github.com/picolibc/picolibc/releases/download/${CT_PICOLIBC_VERSION}' -- cgit v0.10.2-6-g49f6