mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-19 21:07:54 +00:00
picolibc: Drop obsolete versions
Drop versions that were marked as obsolete in the last release. Signed-off-by: Chris Packham <judge.packham@gmail.com>
This commit is contained in:
parent
7a66aae17c
commit
b9e57ebeec
@ -1,150 +0,0 @@
|
||||
From 2adb30bd8e64bf06fb5366585e305c28c4325e01 Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Tue, 3 Nov 2020 16:36:48 -0800
|
||||
Subject: [PATCH] tinystdio: Make ungetc buffer type purely
|
||||
architecture-specific
|
||||
|
||||
Instead of attempting to figure out what type this object should be
|
||||
based on compiler support for atomics, just make it 32-bits on RISC-V
|
||||
when using atomic ungetc, otherwise make it 16-bits, then select
|
||||
whether there are 'real' atomics based on compiler support for the
|
||||
chosen type, which may depend on the compiler options used to build
|
||||
the library.
|
||||
|
||||
This ensures that the picolibc ABI is consistent for each
|
||||
architecture.
|
||||
|
||||
This also removes the use of stdatomic.h from stdio.h, which isn't
|
||||
supported by C++.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
newlib/libc/tinystdio/exchange.c | 2 -
|
||||
newlib/libc/tinystdio/stdio.h | 39 +++++++++++++---------------------
|
||||
newlib/libc/tinystdio/stdio_private.h | 24 ++++++++++++++------
|
||||
3 files changed, 34 insertions(+), 31 deletions(-)
|
||||
|
||||
--- a/newlib/libc/tinystdio/exchange.c
|
||||
+++ b/newlib/libc/tinystdio/exchange.c
|
||||
@@ -39,7 +39,7 @@
|
||||
#if defined(ATOMIC_UNGETC) && !defined(PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP)
|
||||
|
||||
__ungetc_t
|
||||
-__picolibc_non_atomic_exchange_ungetc(__ungetc_store_t *p, __ungetc_t v)
|
||||
+__picolibc_non_atomic_exchange_ungetc(__ungetc_t *p, __ungetc_t v)
|
||||
{
|
||||
return __non_atomic_exchange_ungetc(p, v);
|
||||
}
|
||||
--- a/newlib/libc/tinystdio/stdio.h
|
||||
+++ b/newlib/libc/tinystdio/stdio.h
|
||||
@@ -224,38 +224,31 @@
|
||||
* elements of it beyond by using the official interfaces provided.
|
||||
*/
|
||||
|
||||
-/* Use 32-bit ungetc storage when doing atomic ungetc and when
|
||||
- * the platform has 4-byte swap intrinsics but not 2-byte swap
|
||||
- * intrinsics, as is the case for RISC-V processors. This increases
|
||||
- * the size of the __file struct by four bytes.
|
||||
- */
|
||||
-
|
||||
#ifdef ATOMIC_UNGETC
|
||||
-#include <stdatomic.h>
|
||||
-# ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4
|
||||
-
|
||||
-# define PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
-typedef atomic_uint_least32_t __ungetc_store_t;
|
||||
-typedef uint_least32_t __ungetc_t;
|
||||
-
|
||||
-# else
|
||||
-# ifdef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2
|
||||
+#ifdef __riscv
|
||||
+/*
|
||||
+ * Use 32-bit ungetc storage when doing atomic ungetc on RISC-V, which
|
||||
+ * has 4-byte swap intrinsics but not 2-byte swap intrinsics. This
|
||||
+ * increases the size of the __file struct by four bytes.
|
||||
+ */
|
||||
+#define __PICOLIBC_UNGETC_SIZE 4
|
||||
+#endif
|
||||
+#endif
|
||||
|
||||
-# define PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
-typedef atomic_uint_least16_t __ungetc_store_t;
|
||||
-typedef uint_least16_t __ungetc_t;
|
||||
+#ifndef __PICOLIBC_UNGETC_SIZE
|
||||
+#define __PICOLIBC_UNGETC_SIZE 2
|
||||
+#endif
|
||||
|
||||
-# endif
|
||||
-# endif
|
||||
+#if __PICOLIBC_UNGETC_SIZE == 4
|
||||
+typedef uint32_t __ungetc_t;
|
||||
#endif
|
||||
|
||||
-#ifndef PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
-typedef uint16_t __ungetc_store_t;
|
||||
+#if __PICOLIBC_UNGETC_SIZE == 2
|
||||
typedef uint16_t __ungetc_t;
|
||||
#endif
|
||||
|
||||
struct __file {
|
||||
- __ungetc_store_t unget; /* ungetc() buffer */
|
||||
+ __ungetc_t unget; /* ungetc() buffer */
|
||||
uint8_t flags; /* flags, see below */
|
||||
#define __SRD 0x0001 /* OK to read */
|
||||
#define __SWR 0x0002 /* OK to write */
|
||||
--- a/newlib/libc/tinystdio/stdio_private.h
|
||||
+++ b/newlib/libc/tinystdio/stdio_private.h
|
||||
@@ -141,7 +141,7 @@
|
||||
__atof_engine(uint32_t m10, int e10);
|
||||
|
||||
static inline uint16_t
|
||||
-__non_atomic_exchange_ungetc(__ungetc_store_t *p, __ungetc_t v)
|
||||
+__non_atomic_exchange_ungetc(__ungetc_t *p, __ungetc_t v)
|
||||
{
|
||||
__ungetc_t e = *p;
|
||||
*p = v;
|
||||
@@ -159,28 +159,38 @@
|
||||
|
||||
#ifdef ATOMIC_UNGETC
|
||||
|
||||
+#if __PICOLIBC_UNGETC_SIZE == 4 && defined (__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4)
|
||||
+#define PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
+#endif
|
||||
+
|
||||
+#if __PICOLIBC_UNGETC_SIZE == 2 && defined (__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2)
|
||||
+#define PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
+#endif
|
||||
+
|
||||
#ifdef PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP
|
||||
|
||||
/* Use built-in atomic functions if they exist */
|
||||
#include <stdatomic.h>
|
||||
static inline bool
|
||||
-__atomic_compare_exchange_ungetc(__ungetc_store_t *p, __ungetc_t d, __ungetc_t v)
|
||||
+__atomic_compare_exchange_ungetc(__ungetc_t *p, __ungetc_t d, __ungetc_t v)
|
||||
{
|
||||
- return atomic_compare_exchange_weak(p, &d, v);
|
||||
+ _Atomic __ungetc_t *pa = (_Atomic __ungetc_t *) p;
|
||||
+ return atomic_compare_exchange_weak(pa, &d, v);
|
||||
}
|
||||
static inline __ungetc_t
|
||||
-__atomic_exchange_ungetc(__ungetc_store_t *p, __ungetc_t v)
|
||||
+__atomic_exchange_ungetc(__ungetc_t *p, __ungetc_t v)
|
||||
{
|
||||
- return atomic_exchange_explicit(p, v, memory_order_relaxed);
|
||||
+ _Atomic __ungetc_t *pa = (_Atomic __ungetc_t *) p;
|
||||
+ return atomic_exchange_explicit(pa, v, memory_order_relaxed);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
bool
|
||||
-__atomic_compare_exchange_ungetc(__ungetc_store_t *p, __ungetc_t d, __ungetc_t v);
|
||||
+__atomic_compare_exchange_ungetc(__ungetc_t *p, __ungetc_t d, __ungetc_t v);
|
||||
|
||||
__ungetc_t
|
||||
-__atomic_exchange_ungetc(__ungetc_store_t *p, __ungetc_t v);
|
||||
+__atomic_exchange_ungetc(__ungetc_t *p, __ungetc_t v);
|
||||
|
||||
#endif /* PICOLIBC_HAVE_SYNC_COMPARE_AND_SWAP */
|
||||
|
@ -1,31 +0,0 @@
|
||||
From 9c39c93d4897c9ee1659dd6df7433d097a84be4a Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Wed, 4 Nov 2020 17:36:14 -0800
|
||||
Subject: [PATCH] Add ARM exception information to link rules
|
||||
|
||||
Place any ARM exeception information in ROM for C++ support.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
picolibc.ld | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
--- a/picolibc.ld
|
||||
+++ b/picolibc.ld
|
||||
@@ -94,6 +94,16 @@
|
||||
*(.got .got.*)
|
||||
} >flash AT>flash :text
|
||||
|
||||
+ .ARM.extab : {
|
||||
+ *(.ARM.extab* .gnu.linkonce.armextab.*)
|
||||
+ } >flash AT>flash :text
|
||||
+
|
||||
+ PROVIDE (__exidx_start = .);
|
||||
+ .ARM.exidx : {
|
||||
+ *(.ARM.exidx*)
|
||||
+ } >flash AT>flash :text
|
||||
+ PROVIDE(__exidx_end = .);
|
||||
+
|
||||
. = ALIGN(8);
|
||||
|
||||
.preinit_array : {
|
@ -1,26 +0,0 @@
|
||||
From 1f6b3ddcbba7432a5b2f1061f24297989d6ce791 Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Mon, 9 Nov 2020 13:02:44 -0800
|
||||
Subject: [PATCH] Add picolibc include directory to cc1plus spec
|
||||
|
||||
G++ doesn't use the cpp spec to add include directories, so we need to
|
||||
add the picolibc include directory to the cc1plus spec element as well
|
||||
as the cpp one. To make sure the libstdc++ headers can use
|
||||
GCC-provided header directories, so use -idirafter instead of -isystem.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
picolibc.specs.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/picolibc.specs.in
|
||||
+++ b/picolibc.specs.in
|
||||
@@ -10,7 +10,7 @@
|
||||
@TLSMODEL@ %(picolibc_cc1) @CC1_SPEC@
|
||||
|
||||
*cc1plus:
|
||||
-@TLSMODEL@ %(picolibc_cc1plus) @CC1_SPEC@ @CC1PLUS_SPEC@
|
||||
+-idirafter @INCLUDEDIR@ @TLSMODEL@ %(picolibc_cc1plus) @CC1_SPEC@ @CC1PLUS_SPEC@
|
||||
|
||||
*link:
|
||||
@SPECS_PRINTF@ -L@LIBDIR@/%M -L@LIBDIR@ %{!T:-Tpicolibc.ld} %(picolibc_link) --gc-sections @LINK_SPEC@
|
4
packages/picolibc/1.4.7/chksum
vendored
4
packages/picolibc/1.4.7/chksum
vendored
@ -1,4 +0,0 @@
|
||||
md5 picolibc-1.4.7.tar.xz 4df52b4441c2936b58c450be9235f8e9
|
||||
sha1 picolibc-1.4.7.tar.xz 22577e9006e605490e6e46c10635d64b7fe20225
|
||||
sha256 picolibc-1.4.7.tar.xz 6413815591733e0cf04fb8d8eb9c9652984f65f81b4fb2888d3ab988b5f24b91
|
||||
sha512 picolibc-1.4.7.tar.xz e6a249b3e6910f94aca1d235926fc2804a3e8460ebce460a3e116b07709b70db698eaff40ce9aaeaaaa3b9f2e7ad923b74d4f87fa80993b3252415f80e7988ec
|
1
packages/picolibc/1.4.7/version.desc
vendored
1
packages/picolibc/1.4.7/version.desc
vendored
@ -1 +0,0 @@
|
||||
obsolete='yes'
|
@ -1,25 +0,0 @@
|
||||
From 9d0640874425e9f3f265c9baff7a47139b25ea7d Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Thu, 14 Jan 2021 17:54:22 -0800
|
||||
Subject: [PATCH 1/2] libc: Remove #include <sys/select.h> from sys/types.h
|
||||
|
||||
picolibc's sys/select.h is likely to be replaced by the underlying
|
||||
operating system version (as it is on Zephyr). Don't include it from
|
||||
sys/types.h as that version may depend on other definitions in
|
||||
sys/types.h which haven't yet been defined.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
newlib/libc/include/sys/types.h | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
--- a/newlib/libc/include/sys/types.h
|
||||
+++ b/newlib/libc/include/sys/types.h
|
||||
@@ -75,7 +75,6 @@
|
||||
|
||||
#if __BSD_VISIBLE
|
||||
#include <machine/endian.h>
|
||||
-#include <sys/select.h>
|
||||
# define physadr physadr_t
|
||||
# define quad quad_t
|
||||
|
@ -1,70 +0,0 @@
|
||||
From 9df2d784439720abbf67fa96c6515a5c4a9f230a Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Thu, 14 Jan 2021 18:48:44 -0800
|
||||
Subject: [PATCH 2/2] tinystdio: Fix snprintf(buf, 0, ...) to not smash buffer
|
||||
|
||||
snprintf(buf, 0) should not write anything to the destination, not
|
||||
even a trailing '\0'. The tinystdio implementation had a signed
|
||||
comparison bug where this case would cause a null to be placed in the
|
||||
output buffer at the size of the data that would have been written.
|
||||
|
||||
Add a test to make sure snprintf respects the 'len' parameter
|
||||
correctly.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
newlib/libc/tinystdio/snprintf.c | 2 +-
|
||||
test/printf_scanf.c | 31 +++++++++++++++++++++++++++++++
|
||||
2 files changed, 32 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/newlib/libc/tinystdio/snprintf.c
|
||||
+++ b/newlib/libc/tinystdio/snprintf.c
|
||||
@@ -56,7 +56,7 @@
|
||||
i = vfprintf(&f.file, fmt, ap);
|
||||
va_end(ap);
|
||||
|
||||
- if (n >= 0 && i >= 0)
|
||||
+ if ((int) n >= 0 && i >= 0)
|
||||
s[i < n ? i : n] = 0;
|
||||
|
||||
return i;
|
||||
--- a/test/printf_scanf.c
|
||||
+++ b/test/printf_scanf.c
|
||||
@@ -96,6 +96,37 @@
|
||||
fflush(stdout);
|
||||
}
|
||||
#endif
|
||||
+
|
||||
+ /*
|
||||
+ * test snprintf to make sure it doesn't overwrite the specified buffer
|
||||
+ * length (even if that is zero)
|
||||
+ */
|
||||
+ for (x = 0; x <= 6; x++) {
|
||||
+ char tbuf[10] = "xxxxxxxxx";
|
||||
+ const char ref[10] = "xxxxxxxxx";
|
||||
+ int i = snprintf(tbuf, x, "%s", "123");
|
||||
+ int y = x <= 4 ? x : 4;
|
||||
+ if (i != 3) {
|
||||
+ printf("snprintf(tbuf, %d, \"%%s\", \"123\") return %d instead of %d\n",
|
||||
+ x, i, 3);
|
||||
+ errors++;
|
||||
+ }
|
||||
+ int l = strlen(tbuf);
|
||||
+ if (y > 0 && l != y - 1) {
|
||||
+ printf("returned buffer len want %d got %d\n", y - 1, l);
|
||||
+ errors++;
|
||||
+ }
|
||||
+ if (y > 0 && strncmp(tbuf, "123", y - 1) != 0) {
|
||||
+ strncpy(buf, "123", y - 1);
|
||||
+ buf[y-1] = '\0';
|
||||
+ printf("returned buffer want %s got %s\n", buf, tbuf);
|
||||
+ errors++;
|
||||
+ }
|
||||
+ if (memcmp(tbuf + y, ref + y, sizeof(tbuf) - y) != 0) {
|
||||
+ printf("tail of buf mangled %s\n", tbuf + y);
|
||||
+ errors++;
|
||||
+ }
|
||||
+ }
|
||||
for (x = 0; x < 32; x++) {
|
||||
unsigned int v = 0x12345678 >> x;
|
||||
unsigned int r;
|
@ -1,103 +0,0 @@
|
||||
From f0c62653bbcf68291a7dd621db367a9fef666183 Mon Sep 17 00:00:00 2001
|
||||
From: Keith Packard <keithp@keithp.com>
|
||||
Date: Sun, 24 Jan 2021 15:27:14 -0800
|
||||
Subject: [PATCH 3/3] libc: Expose wchar stdio prototypes even for TINY_STDIO
|
||||
|
||||
This makes libstdc++ happy when wrapping these names, even though they
|
||||
aren't actually available for appplications.
|
||||
|
||||
Signed-off-by: Keith Packard <keithp@keithp.com>
|
||||
---
|
||||
newlib/libc/include/wchar.h | 39 ++++++++++++++++++++-------------------
|
||||
1 file changed, 20 insertions(+), 19 deletions(-)
|
||||
|
||||
--- a/newlib/libc/include/wchar.h
|
||||
+++ b/newlib/libc/include/wchar.h
|
||||
@@ -217,8 +217,6 @@
|
||||
long double wcstold_l (const wchar_t *, wchar_t **, locale_t);
|
||||
#endif
|
||||
|
||||
-#ifndef TINY_STDIO
|
||||
-
|
||||
wint_t fgetwc (__FILE *);
|
||||
wchar_t *fgetws (wchar_t *__restrict, int, __FILE *__restrict);
|
||||
wint_t fputwc (wchar_t, __FILE *);
|
||||
@@ -232,6 +230,8 @@
|
||||
wint_t putwchar (wchar_t);
|
||||
wint_t ungetwc (wint_t wc, __FILE *);
|
||||
|
||||
+#ifndef TINY_STDIO
|
||||
+
|
||||
struct _reent;
|
||||
|
||||
wint_t _fgetwc_r (struct _reent *, __FILE *);
|
||||
@@ -253,6 +253,24 @@
|
||||
wint_t _putwchar_unlocked_r (struct _reent *, wchar_t);
|
||||
wint_t _ungetwc_r (struct _reent *, wint_t wc, __FILE *);
|
||||
|
||||
+int _fwprintf_r (struct _reent *, __FILE *, const wchar_t *, ...);
|
||||
+int _swprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, ...);
|
||||
+int _vfwprintf_r (struct _reent *, __FILE *, const wchar_t *, va_list);
|
||||
+int _vswprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, va_list);
|
||||
+int _vwprintf_r (struct _reent *, const wchar_t *, va_list);
|
||||
+int _wprintf_r (struct _reent *, const wchar_t *, ...);
|
||||
+
|
||||
+int _fwscanf_r (struct _reent *, __FILE *, const wchar_t *, ...);
|
||||
+int _swscanf_r (struct _reent *, const wchar_t *, const wchar_t *, ...);
|
||||
+int _vfwscanf_r (struct _reent *, __FILE *, const wchar_t *, va_list);
|
||||
+int _vswscanf_r (struct _reent *, const wchar_t *, const wchar_t *, va_list);
|
||||
+int _vwscanf_r (struct _reent *, const wchar_t *, va_list);
|
||||
+int _wscanf_r (struct _reent *, const wchar_t *, ...);
|
||||
+
|
||||
+__FILE *_open_wmemstream_r (struct _reent *, wchar_t **, size_t *);
|
||||
+
|
||||
+#endif
|
||||
+
|
||||
#if __GNU_VISIBLE
|
||||
wint_t fgetwc_unlocked (__FILE *);
|
||||
wchar_t *fgetws_unlocked (wchar_t *__restrict, int, __FILE *__restrict);
|
||||
@@ -267,7 +285,6 @@
|
||||
#if __POSIX_VISIBLE >= 200809
|
||||
__FILE *open_wmemstream (wchar_t **, size_t *);
|
||||
#endif
|
||||
-__FILE *_open_wmemstream_r (struct _reent *, wchar_t **, size_t *);
|
||||
|
||||
#if __ISO_C_VISIBLE >= 1999 || __XSI_VISIBLE >= 500
|
||||
int fwprintf (__FILE *__restrict, const wchar_t *__restrict, ...);
|
||||
@@ -281,13 +298,6 @@
|
||||
int wprintf (const wchar_t *__restrict, ...);
|
||||
#endif
|
||||
|
||||
-int _fwprintf_r (struct _reent *, __FILE *, const wchar_t *, ...);
|
||||
-int _swprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, ...);
|
||||
-int _vfwprintf_r (struct _reent *, __FILE *, const wchar_t *, va_list);
|
||||
-int _vswprintf_r (struct _reent *, wchar_t *, size_t, const wchar_t *, va_list);
|
||||
-int _vwprintf_r (struct _reent *, const wchar_t *, va_list);
|
||||
-int _wprintf_r (struct _reent *, const wchar_t *, ...);
|
||||
-
|
||||
#if __ISO_C_VISIBLE >= 1999 || __XSI_VISIBLE >= 500
|
||||
int fwscanf (__FILE *__restrict, const wchar_t *__restrict, ...);
|
||||
int swscanf (const wchar_t *__restrict,
|
||||
@@ -300,13 +310,6 @@
|
||||
int wscanf (const wchar_t *__restrict, ...);
|
||||
#endif
|
||||
|
||||
-int _fwscanf_r (struct _reent *, __FILE *, const wchar_t *, ...);
|
||||
-int _swscanf_r (struct _reent *, const wchar_t *, const wchar_t *, ...);
|
||||
-int _vfwscanf_r (struct _reent *, __FILE *, const wchar_t *, va_list);
|
||||
-int _vswscanf_r (struct _reent *, const wchar_t *, const wchar_t *, va_list);
|
||||
-int _vwscanf_r (struct _reent *, const wchar_t *, va_list);
|
||||
-int _wscanf_r (struct _reent *, const wchar_t *, ...);
|
||||
-
|
||||
#define getwc(fp) fgetwc(fp)
|
||||
#define putwc(wc,fp) fputwc((wc), (fp))
|
||||
#define getwchar() fgetwc(stdin)
|
||||
@@ -319,8 +322,6 @@
|
||||
#define putwchar_unlocked(wc) fputwc_unlocked((wc), stdout)
|
||||
#endif
|
||||
|
||||
-#endif /* !TINY_STDIO */
|
||||
-
|
||||
_END_STD_C
|
||||
|
||||
#if __SSP_FORTIFY_LEVEL > 0
|
4
packages/picolibc/1.5.1/chksum
vendored
4
packages/picolibc/1.5.1/chksum
vendored
@ -1,4 +0,0 @@
|
||||
md5 picolibc-1.5.1.tar.xz e2221b038181ae0c9f7b0bd3b1353d9e
|
||||
sha1 picolibc-1.5.1.tar.xz ad86b3f02fa7fc62563984f2c1a20ee8b4e566b9
|
||||
sha256 picolibc-1.5.1.tar.xz 06b34f34af4cef1be16e7d2e6de9f0c3aa9980dd7fd86c8b1b78331efbfa9db6
|
||||
sha512 picolibc-1.5.1.tar.xz 882ad8a20ab6dd8816a8b468834c3fcd66dd57f668f9fcb53e92b99c643377e15df2c37e80f6212c82d4ec63320575e0f7158c071edf5d8f66bb58aa4eecfd24
|
1
packages/picolibc/1.5.1/version.desc
vendored
1
packages/picolibc/1.5.1/version.desc
vendored
@ -1 +0,0 @@
|
||||
obsolete='yes'
|
4
packages/picolibc/1.6.2/chksum
vendored
4
packages/picolibc/1.6.2/chksum
vendored
@ -1,4 +0,0 @@
|
||||
md5 picolibc-1.6.2.tar.xz 12a90c1886fff1b3169e16e005396160
|
||||
sha1 picolibc-1.6.2.tar.xz 88e3aae511cbf86a7f095dfe387a0c5618fd697c
|
||||
sha256 picolibc-1.6.2.tar.xz d2bd17409f11e7c3bf72c4c244244e70e2086c640e700a7800c7fa3513cd9c4d
|
||||
sha512 picolibc-1.6.2.tar.xz 64ca47814c60e873989adc6ec33bfd94877ed78537a858f15f5795b0a5896a80fd900a2d54d6ad3241ef3da56b423181dc56fe4fa105951196ec71d0e0c6ece2
|
1
packages/picolibc/1.6.2/version.desc
vendored
1
packages/picolibc/1.6.2/version.desc
vendored
@ -1 +0,0 @@
|
||||
obsolete='yes'
|
Loading…
Reference in New Issue
Block a user