115 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			115 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
| 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}../../.."
 | |
|   else
 | |
|     libgloss_topdir="${srcdir}/${with_multisrctop}../.."
 | |
|   fi
 | |
| else
 | |
|   libgloss_topdir="${srcdir}/../.."
 | |
| fi
 | |
| AC_CONFIG_AUX_DIR($libgloss_topdir)
 | |
| 
 | |
| AC_CANONICAL_SYSTEM
 | |
| AC_ARG_PROGRAM
 | |
| 
 | |
| AC_PROG_INSTALL
 | |
| 
 | |
| # FIXME: We temporarily define our own version of AC_PROG_CC.  This is
 | |
| # copied from autoconf 2.12, but does not call AC_PROG_CC_WORKS.  We
 | |
| # are probably using a cross compiler, which will not be able to fully
 | |
| # link an executable.  This should really be fixed in autoconf
 | |
| # itself.
 | |
| 
 | |
| AC_DEFUN(LIB_AC_PROG_CC,
 | |
| [AC_BEFORE([$0], [AC_PROG_CPP])dnl
 | |
| AC_CHECK_PROG(CC, gcc, gcc)
 | |
| if test -z "$CC"; then
 | |
|   AC_CHECK_PROG(CC, cc, cc, , , /usr/ucb/cc)
 | |
|   test -z "$CC" && AC_MSG_ERROR([no acceptable cc found in \$PATH])
 | |
| fi
 | |
| 
 | |
| AC_PROG_CC_GNU
 | |
| 
 | |
| if test $ac_cv_prog_gcc = yes; then
 | |
|   GCC=yes
 | |
| dnl Check whether -g works, even if CFLAGS is set, in case the package
 | |
| dnl plays around with CFLAGS (such as to build both debugging and
 | |
| dnl normal versions of a library), tasteless as that idea is.
 | |
|   ac_test_CFLAGS="${CFLAGS+set}"
 | |
|   ac_save_CFLAGS="$CFLAGS"
 | |
|   CFLAGS=
 | |
|   AC_PROG_CC_G
 | |
|   if test "$ac_test_CFLAGS" = set; then
 | |
|     CFLAGS="$ac_save_CFLAGS"
 | |
|   elif test $ac_cv_prog_cc_g = yes; then
 | |
|     CFLAGS="-g -O2"
 | |
|   else
 | |
|     CFLAGS="-O2"
 | |
|   fi
 | |
| else
 | |
|   GCC=
 | |
|   test "${CFLAGS+set}" = set || CFLAGS="-g"
 | |
| fi
 | |
| ])
 | |
| 
 | |
| LIB_AC_PROG_CC
 | |
| AS=${AS-as}
 | |
| AC_SUBST(AS)
 | |
| AR=${AR-ar}
 | |
| AC_SUBST(AR)
 | |
| LD=${LD-ld}
 | |
| AC_SUBST(LD)
 | |
| AC_PROG_RANLIB
 | |
| 
 | |
| case "${target}" in
 | |
|   *-*-elf | *-*-eabi)
 | |
| 	objtype=elf-
 | |
| 	;;
 | |
|   *-*-coff)
 | |
| 	objtype=coff-
 | |
| 	;;
 | |
| esac
 | |
| 
 | |
| AC_SUBST(objtype)
 | |
| 
 | |
| host_makefile_frag=${srcdir}/../config/default.mh
 | |
| 
 | |
| dnl We have to assign the same value to other variables because autoconf
 | |
| dnl doesn't provide a mechanism to substitute a replacement keyword with
 | |
| dnl arbitrary data or pathnames.
 | |
| dnl
 | |
| host_makefile_frag_path=$host_makefile_frag
 | |
| AC_SUBST(host_makefile_frag_path)
 | |
| AC_SUBST_FILE(host_makefile_frag)
 | |
| 
 | |
| AC_OUTPUT(Makefile,
 | |
| . ${libgloss_topdir}/config-ml.in,
 | |
| srcdir=${srcdir}
 | |
| target=${target}
 | |
| ac_configure_args="${ac_configure_args} --enable-multilib"
 | |
| CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
 | |
| libgloss_topdir=${libgloss_topdir}
 | |
| )
 | |
| 
 |