diff options
Diffstat (limited to 'c/src')
-rw-r--r-- | c/src/ChangeLog | 5 | ||||
-rw-r--r-- | c/src/aclocal/gcc-weak.m4 | 19 | ||||
-rw-r--r-- | c/src/configure.ac | 2 |
3 files changed, 26 insertions, 0 deletions
diff --git a/c/src/ChangeLog b/c/src/ChangeLog index d93ad2e788..06b3616052 100644 --- a/c/src/ChangeLog +++ b/c/src/ChangeLog @@ -1,3 +1,8 @@ +2004-09-21 Ralf Corsepius <ralf_corsepius@rtems.org> + + * aclocal/gcc-weak.m4: New (Extracted from cpukit/configure.ac). + * configure.ac: Add RTEMS_CHECK_GCC_WEAK. + 2004-08-17 Ralf Corsepius <ralf_corsepius@rtems.org> * aclocal/ppc.m4 (RTEMS_PPC_EXCEPTIONS): Quote ac_popdir uses. diff --git a/c/src/aclocal/gcc-weak.m4 b/c/src/aclocal/gcc-weak.m4 new file mode 100644 index 0000000000..73cfb28e7e --- /dev/null +++ b/c/src/aclocal/gcc-weak.m4 @@ -0,0 +1,19 @@ +AC_DEFUN([RTEMS_CHECK_GCC_WEAK],[ +AC_CACHE_CHECK([whether $CC supports function __attribute__((weak))], +[rtems_cv_cc_attribute_weak],[ + AS_IF([test x"$GCC" = xyes],[ + save_CFLAGS=$CFLAGS + CFLAGS=-Werror]) + + AC_COMPILE_IFELSE([ + AC_LANG_PROGRAM( + [void myfunc(char c) __attribute__ ((weak)); + void myfunc(char c) {}], + [])], + [rtems_cv_cc_attribute_weak=yes], + [rtems_cv_cc_attribute_weak=no]) + + AS_IF([test x"$GCC" = xyes],[ + CFLAGS=$save_CFLAGS]) +]) +]) diff --git a/c/src/configure.ac b/c/src/configure.ac index 5df8cdd547..ef7bac0437 100644 --- a/c/src/configure.ac +++ b/c/src/configure.ac @@ -112,6 +112,8 @@ AM_PROG_CC_C_O RTEMS_PROG_CCAS RTEMS_CANONICALIZE_TOOLS +RTEMS_CHECK_GCC_WEAK + AC_SUBST(CUSTOM_CFG_FILES) AC_SUBST(cfg_dir) |