aboutsummaryrefslogtreecommitdiff
path: root/packages/gcc/12.2.0/0007-Support-picolibc-targets.patch
blob: 01dbba8766bfe639d4a2599898fa0c6faf863024 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
From 41b20e994970f0ae63fb3f49c6f89a0b2f06aecb Mon Sep 17 00:00:00 2001
From: Keith Packard <keithp@keithp.com>
Date: Sun, 12 Feb 2023 14:23:32 -0800
Subject: [PATCH 7/9] Support picolibc targets

Match *-picolibc-* and select picolibc as the default C library, plus continuing to use
the newlib-based logic for other configuration items.

Signed-off-by: Keith Packard <keithp@keithp.com>
---
 gcc/config.gcc | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/gcc/config.gcc b/gcc/config.gcc
index e294ff8fbc8..06af4057079 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1082,6 +1082,17 @@ case ${target} in
       ;;
   esac
   ;;
+*-picolibc-*)
+  # __cxa_atexit is provided.
+  default_use_cxa_atexit=yes
+  use_gcc_stdint=wrap
+  default_libc=LIBC_PICOLIBC
+  case "${with_newlib}-${with_headers}" in
+  no-no) use_gcc_stdint=provide ;;
+  *) ;;
+  esac
+  ;;
+
 *-*-elf|arc*-*-elf*)
   # Assume that newlib is being used and so __cxa_atexit is provided.
   default_use_cxa_atexit=yes
-- 
2.39.0