summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorJasmin Jessich <jasmin@anw.at>2015-08-30 22:11:27 (GMT)
committerJasmin Jessich <jasmin@anw.at>2015-09-01 02:08:17 (GMT)
commit521d232154c4de9cd7a046d0e03a872ab0a8d47a (patch)
tree21dfbbbe16c959f56ea35fd563fc64f26de68048 /config
parent094b5be8fd9b8a99636b802430eb4ae2edc37710 (diff)
Fix for issue #147:
Enable definition of "Use __cxa_atexit" for bare-metal systems, if the used libc does provide such a function. The libc configuration have to select LIBC_PROVIDES_CXA_ATEXIT. Signed-off-by: Jasmin Jessich <jasmin@anw.at>
Diffstat (limited to 'config')
-rw-r--r--config/cc/gcc.in.22
-rw-r--r--config/libc.in3
2 files changed, 4 insertions, 1 deletions
diff --git a/config/cc/gcc.in.2 b/config/cc/gcc.in.2
index fb19938..cbad638 100644
--- a/config/cc/gcc.in.2
+++ b/config/cc/gcc.in.2
@@ -165,7 +165,7 @@ config CC_CXA_ATEXIT
bool
prompt "Use __cxa_atexit"
default y
- depends on ! BARE_METAL
+ depends on ! BARE_METAL || LIBC_PROVIDES_CXA_ATEXIT
help
If you get the missing symbol "__cxa_atexit" when building C++ programs,
you might want to try disabling this option.
diff --git a/config/libc.in b/config/libc.in
index ca597c8..4cc7530 100644
--- a/config/libc.in
+++ b/config/libc.in
@@ -35,6 +35,9 @@ config LIBC_SUPPORT_THREADS_LT
config LIBC_SUPPORT_THREADS_NONE
bool
+config LIBC_PROVIDES_CXA_ATEXIT
+ bool
+
# C libraries should provide other values
config THREADS
string