From a8992cbacaad27d722805bf264f9f36b6d99e802 Mon Sep 17 00:00:00 2001 From: Jeff Johnston Date: Thu, 17 Jun 2004 19:33:27 +0000 Subject: [PATCH] 2004-06-17 Jeff Johnston * arm/configure.in: Check the value of newlib-may-supply-syscalls enablement variable to determine if crt0 should or should not be built. * arm/configure: Regenerated. * arm/Makefile.in: Changed to look at @BUILD_CRT0_TRUE@ and @BUILD_CRT0_FALSE@ variables set in configure to determine if crt0.o should be built and installed. --- libgloss/ChangeLog | 10 ++++++++++ libgloss/arm/Makefile.in | 6 ++++-- libgloss/arm/configure | 42 +++++++++++++++++++++++++++++---------- libgloss/arm/configure.in | 17 ++++++++++++++++ 4 files changed, 63 insertions(+), 12 deletions(-) diff --git a/libgloss/ChangeLog b/libgloss/ChangeLog index 047f2198d..778098689 100644 --- a/libgloss/ChangeLog +++ b/libgloss/ChangeLog @@ -1,3 +1,13 @@ +2004-06-17 Jeff Johnston + + * arm/configure.in: Check the value of newlib-may-supply-syscalls + enablement variable to determine if crt0 should or should not be + built. + * arm/configure: Regenerated. + * arm/Makefile.in: Changed to look at @BUILD_CRT0_TRUE@ and + @BUILD_CRT0_FALSE@ variables set in configure to determine + if crt0.o should be built and installed. + 2004-06-09 Toralf Lund * arm/crt0.S: Copied from newlib and it now also sets up stacks for diff --git a/libgloss/arm/Makefile.in b/libgloss/arm/Makefile.in index 7d5b0d99d..d7fee4dfb 100644 --- a/libgloss/arm/Makefile.in +++ b/libgloss/arm/Makefile.in @@ -47,8 +47,10 @@ OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \ then echo ${objroot}/../binutils/objcopy ; \ else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi` -CRT0 = crt0.o -CRT0_INSTALL = install-crt0 +@BUILD_CRT0_TRUE@CRT0 = crt0.o +@BUILD_CRT0_TRUE@CRT0_INSTALL = install-crt0 +@BUILD_CRT0_FALSE@CRT0 = +@BUILD_CRT0_FALSE@CRT0_INSTALL = REDBOOT_CRT0 = redboot-crt0.o REDBOOT_OBJS = redboot-syscalls.o diff --git a/libgloss/arm/configure b/libgloss/arm/configure index cc9a6e86a..d788cd167 100644 --- a/libgloss/arm/configure +++ b/libgloss/arm/configure @@ -11,6 +11,8 @@ ac_help= ac_default_prefix=/usr/local # Any additions from configure.in: +ac_help="$ac_help + --disable-newlib-supplied-syscalls disable newlib from supplying syscalls" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -522,6 +524,26 @@ fi +# Check whether --enable-newlib-supplied-syscalls or --disable-newlib-supplied-syscalls was given. +if test "${enable_newlib_supplied_syscalls+set}" = set; then + enableval="$enable_newlib_supplied_syscalls" + case "${enableval}" in + yes) newlib_may_supply_syscalls=yes ;; + no) newlib_may_supply_syscalls=no ;; + *) { echo "configure: error: bad value ${enableval} for newlib-supplied-syscalls option" 1>&2; exit 1; } ;; + esac +else + newlib_may_supply_syscalls=yes +fi + +if test "x$newlib_may_supply_syscalls" = "xyes"; then + BUILD_CRT0_TRUE= + BUILD_CRT0_FALSE='#' +else + BUILD_CRT0_TRUE='#' + BUILD_CRT0_FALSE= +fi + if test "$srcdir" = "." ; then if test "${with_target_subdir}" != "." ; then libgloss_topdir="${srcdir}/${with_multisrctop}../../.." @@ -579,7 +601,7 @@ else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; } fi echo $ac_n "checking host system type""... $ac_c" 1>&6 -echo "configure:583: checking host system type" >&5 +echo "configure:605: checking host system type" >&5 host_alias=$host case "$host_alias" in @@ -600,7 +622,7 @@ host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$ac_t""$host" 1>&6 echo $ac_n "checking target system type""... $ac_c" 1>&6 -echo "configure:604: checking target system type" >&5 +echo "configure:626: checking target system type" >&5 target_alias=$target case "$target_alias" in @@ -618,7 +640,7 @@ target_os=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$ac_t""$target" 1>&6 echo $ac_n "checking build system type""... $ac_c" 1>&6 -echo "configure:622: checking build system type" >&5 +echo "configure:644: checking build system type" >&5 build_alias=$build case "$build_alias" in @@ -672,7 +694,7 @@ test "$program_transform_name" = "" && program_transform_name="s,x,x," # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 -echo "configure:676: checking for a BSD compatible install" >&5 +echo "configure:698: checking for a BSD compatible install" >&5 if test -z "$INSTALL"; then if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -736,7 +758,7 @@ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:740: checking for $ac_word" >&5 +echo "configure:762: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -766,7 +788,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:770: checking for $ac_word" >&5 +echo "configure:792: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -815,7 +837,7 @@ fi fi echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:819: checking whether we are using GNU C" >&5 +echo "configure:841: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -824,7 +846,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:828: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:850: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -839,7 +861,7 @@ if test $ac_cv_prog_gcc = yes; then ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:843: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:865: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -875,7 +897,7 @@ LD=${LD-ld} # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:879: checking for $ac_word" >&5 +echo "configure:901: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else diff --git a/libgloss/arm/configure.in b/libgloss/arm/configure.in index 291d972c3..c3a5de1f5 100644 --- a/libgloss/arm/configure.in +++ b/libgloss/arm/configure.in @@ -2,6 +2,23 @@ dnl Process this file with autoconf to produce a configure script. AC_PREREQ(2.5)dnl AC_INIT(redboot-crt0.S) +dnl Support --disable-newlib-supplied-syscalls +AC_ARG_ENABLE(newlib-supplied-syscalls, +[ --disable-newlib-supplied-syscalls disable newlib from supplying syscalls], +[case "${enableval}" in + yes) newlib_may_supply_syscalls=yes ;; + no) newlib_may_supply_syscalls=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for newlib-supplied-syscalls option) ;; + esac], [newlib_may_supply_syscalls=yes])dnl + +if test "x$newlib_may_supply_syscalls" = "xyes"; then + BUILD_CRT0_TRUE= + BUILD_CRT0_FALSE='#' +else + BUILD_CRT0_TRUE='#' + BUILD_CRT0_FALSE= +fi + if test "$srcdir" = "." ; then if test "${with_target_subdir}" != "." ; then libgloss_topdir="${srcdir}/${with_multisrctop}../../.."