diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 8ad246198..39e04d9c6 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,15 @@ +2014-06-09 DJ Delorie + + * configure.host (default_newlib_nano_malloc): New. + (msp430): Set it. + * configure.in (newlib_nano_malloc): Leave unset if not set by + the user. + * configure: Regenerate. + * libc/configure.in (NEWLIB_NANO_MALLOC): Set after running + configure.host. + (newlib_nano_malloc): Leave unset if not set by the user. + * libc/configure: Regenerate. + 2014-05-15 Daniel Cederman * libc/machine/sparc/setjmp.S (longjmp): Use register g1 instead of g6. diff --git a/newlib/configure b/newlib/configure index fa814c615..4d39bb5a1 100755 --- a/newlib/configure +++ b/newlib/configure @@ -2445,7 +2445,7 @@ if test "${enable_newlib_nano_malloc+set}" = set; then : esac fi else - newlib_nano_malloc=no + newlib_nano_malloc= fi # Check whether --enable-newlib-unbuf-stream-opt was given. diff --git a/newlib/configure.host b/newlib/configure.host index 1464ba84e..a78a20271 100644 --- a/newlib/configure.host +++ b/newlib/configure.host @@ -71,6 +71,7 @@ default_newlib_io_long_long=no default_newlib_io_long_double=no default_newlib_io_pos_args=no default_newlib_atexit_dynamic_alloc=yes +default_newlib_nano_malloc=no aext=a oext=o lpfx="lib_a-" @@ -229,6 +230,7 @@ case "${host_cpu}" in newlib_cflags="${newlib_cflags} -ffunction-sections -fdata-sections " newlib_cflags="${newlib_cflags} -mOs " machine_dir=msp430 + default_newlib_nano_malloc="yes" ;; mt*) machine_dir=mt @@ -843,6 +845,13 @@ if [ "x${newlib_atexit_dynamic_alloc}" = "x" ]; then fi fi +# Enable nano-malloc if requested. +if [ "x${newlib_nano_malloc}" = "x" ]; then + if [ ${default_newlib_nano_malloc} = "yes" ]; then + newlib_nano_malloc="yes"; + fi +fi + # Remove rpc headers if xdr_dir not specified if [ "x${xdr_dir}" = "x" ]; then noinclude="${noinclude} rpc/types.h rpc/xdr.h" diff --git a/newlib/configure.in b/newlib/configure.in index 908734413..32b8eac39 100644 --- a/newlib/configure.in +++ b/newlib/configure.in @@ -181,7 +181,7 @@ AC_ARG_ENABLE(newlib-nano-malloc, no) newlib_nano_malloc=no ;; *) AC_MSG_ERROR(bad value ${enableval} for newlib-nano-malloc option) ;; esac - fi], [newlib_nano_malloc=no])dnl + fi], [newlib_nano_malloc=])dnl dnl Support --disable-newlib-unbuf-stream-opt AC_ARG_ENABLE(newlib-unbuf-stream-opt, diff --git a/newlib/libc/configure b/newlib/libc/configure index f8185de55..074de7510 100755 --- a/newlib/libc/configure +++ b/newlib/libc/configure @@ -673,6 +673,8 @@ LIBTOOL OBJDUMP DLLTOOL SED +NEWLIB_NANO_MALLOC_FALSE +NEWLIB_NANO_MALLOC_TRUE sys_dir machine_dir libm_machine_dir @@ -749,8 +751,6 @@ build newlib_basedir MAY_SUPPLY_SYSCALLS_FALSE MAY_SUPPLY_SYSCALLS_TRUE -NEWLIB_NANO_MALLOC_FALSE -NEWLIB_NANO_MALLOC_TRUE target_alias host_alias build_alias @@ -2224,15 +2224,7 @@ if test "${enable_newlib_nano_malloc+set}" = set; then : *) as_fn_error $? "bad value ${enableval} for newlib-nano-malloc" "$LINENO" 5 ;; esac else - newlib_nano_malloc=no -fi - - if test x$newlib_nano_malloc = xyes; then - NEWLIB_NANO_MALLOC_TRUE= - NEWLIB_NANO_MALLOC_FALSE='#' -else - NEWLIB_NANO_MALLOC_TRUE='#' - NEWLIB_NANO_MALLOC_FALSE= + newlib_nano_malloc= fi @@ -3811,6 +3803,15 @@ OBJEXT=${oext} + if test x$newlib_nano_malloc = xyes; then + NEWLIB_NANO_MALLOC_TRUE= + NEWLIB_NANO_MALLOC_FALSE='#' +else + NEWLIB_NANO_MALLOC_TRUE='#' + NEWLIB_NANO_MALLOC_FALSE= +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } if ${ac_cv_path_SED+:} false; then : @@ -11500,7 +11501,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11503 "configure" +#line 11504 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11606,7 +11607,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11609 "configure" +#line 11610 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12219,10 +12220,6 @@ LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs -if test -z "${NEWLIB_NANO_MALLOC_TRUE}" && test -z "${NEWLIB_NANO_MALLOC_FALSE}"; then - as_fn_error $? "conditional \"NEWLIB_NANO_MALLOC\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${MAY_SUPPLY_SYSCALLS_TRUE}" && test -z "${MAY_SUPPLY_SYSCALLS_FALSE}"; then as_fn_error $? "conditional \"MAY_SUPPLY_SYSCALLS\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -12271,6 +12268,10 @@ if test -z "${USE_LIBTOOL_TRUE}" && test -z "${USE_LIBTOOL_FALSE}"; then as_fn_error $? "conditional \"USE_LIBTOOL\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi +if test -z "${NEWLIB_NANO_MALLOC_TRUE}" && test -z "${NEWLIB_NANO_MALLOC_FALSE}"; then + as_fn_error $? "conditional \"NEWLIB_NANO_MALLOC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 diff --git a/newlib/libc/configure.in b/newlib/libc/configure.in index 7ca0352da..8a6b81d85 100644 --- a/newlib/libc/configure.in +++ b/newlib/libc/configure.in @@ -24,11 +24,12 @@ AC_ARG_ENABLE(newlib_nano_malloc, yes) newlib_nano_malloc=yes ;; no) newlib_nano_malloc=no ;; *) AC_MSG_ERROR(bad value ${enableval} for newlib-nano-malloc) ;; - esac],[newlib_nano_malloc=no]) -AM_CONDITIONAL(NEWLIB_NANO_MALLOC, test x$newlib_nano_malloc = xyes) + esac],[newlib_nano_malloc=]) NEWLIB_CONFIGURE(..) +AM_CONDITIONAL(NEWLIB_NANO_MALLOC, test x$newlib_nano_malloc = xyes) + dnl We have to enable libtool after NEWLIB_CONFIGURE because if we try and dnl add it into NEWLIB_CONFIGURE, executable tests are made before the first dnl line of the macro which fail because appropriate LDFLAGS are not set.