summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--cpukit/ChangeLog6
-rw-r--r--cpukit/libcsupport/src/newlibc_exit.c3
-rw-r--r--cpukit/score/src/threadhandler.c4
3 files changed, 11 insertions, 2 deletions
diff --git a/cpukit/ChangeLog b/cpukit/ChangeLog
index 25ad102034..2b07ea6158 100644
--- a/cpukit/ChangeLog
+++ b/cpukit/ChangeLog
@@ -1,5 +1,11 @@
2008-11-20 Joel Sherrill <joel.sherrill@oarcorp.com>
+ * libcsupport/src/newlibc_exit.c, score/src/threadhandler.c: Do not
+ think about running init/fini on AVR. We do not know what mechanism
+ it uses but this is not it.
+
+2008-11-20 Joel Sherrill <joel.sherrill@oarcorp.com>
+
PR 1306/cpukit
* posix/inline/rtems/posix/priority.inl: Eliminate hard coded numbers
in favor of existing macros.
diff --git a/cpukit/libcsupport/src/newlibc_exit.c b/cpukit/libcsupport/src/newlibc_exit.c
index f85ec42719..26213b688a 100644
--- a/cpukit/libcsupport/src/newlibc_exit.c
+++ b/cpukit/libcsupport/src/newlibc_exit.c
@@ -122,6 +122,9 @@ void libc_wrapup(void)
#if !defined(RTEMS_UNIX)
#define EXIT_SYMBOL _exit
+ #if defined(__AVR__)
+ #undef __USE_INIT_FINI__
+ #endif
#if defined(__USE_INIT_FINI__)
#if defined(__m32r__)
#define FINI_SYMBOL __fini
diff --git a/cpukit/score/src/threadhandler.c b/cpukit/score/src/threadhandler.c
index cc46f9801a..c93c7da0eb 100644
--- a/cpukit/score/src/threadhandler.c
+++ b/cpukit/score/src/threadhandler.c
@@ -30,8 +30,8 @@
#include <rtems/score/userext.h>
#include <rtems/score/wkspace.h>
-#if defined(__USE_INIT_FINI__)
-#include <stdlib.h> /* for atexit() */
+#if defined(__AVR__)
+ #undef __USE_INIT_FINI__
#endif
#if defined(__USE_INIT_FINI__)