summaryrefslogblamecommitdiffstats
path: root/c/src/make/configure.in
blob: 52e87874d1175d1f9b87d46c8e89df10c892d7f6 (plain) (tree)
1
2
3
4
5
6
7
8
9








                                                                  
                   


                           






                                                    
                  




                       
                 





                           





                         
















                             











                                                          
                                 
                             
                                      
                                 
                           

                                
                                







































                                                                                         
                                


                                       
                                    


            
        
       

                  
                   

                         
                      
 
dnl Process this file with autoconf to produce a configure script.
dnl
dnl  $Id$

dnl
dnl This script configures the configuration files below make/
dnl

AC_PREREQ(2.13)
AC_INIT(bsp.cfg.in)
RTEMS_TOP(../../..)
AC_CONFIG_AUX_DIR(../../..)

RTEMS_CANONICAL_TARGET_CPU

AM_INIT_AUTOMAKE(rtems-c-src-make,$RTEMS_VERSION,no)
AM_MAINTAINER_MODE

RTEMS_ENABLE_MULTIPROCESSING
RTEMS_ENABLE_POSIX
RTEMS_ENABLE_ITRON
RTEMS_ENABLE_NETWORKING
RTEMS_ENABLE_RDBG
RTEMS_ENABLE_INLINES
RTEMS_ENABLE_CXX
RTEMS_ENABLE_GCC28
RTEMS_ENABLE_BARE

RTEMS_ENV_RTEMSBSP

dnl BEGIN configure.host.in

AC_PATH_PROG(CAT,cat)
AC_PATH_PROG(CP,cp)
AC_PATH_PROG(MV,mv)
AC_PATH_PROG(LN,ln)
AC_PROG_LN_S
AC_PATH_PROG(CHMOD,chmod)
AC_PATH_PROG(SORT,sort)
RTEMS_PATH_PERL

AC_PATH_PROG(TOUCH,touch)
AC_PATH_PROG(CMP,cmp)

AC_PATH_PROG(SED,sed)
AC_PATH_PROGS(M4,gm4 m4)

RTEMS_PATH_KSH

dnl BEGIN configure.target.in

RTEMS_CHECK_CPU
RTEMS_CANONICAL_HOST

RTEMS_PROJECT_ROOT

RTEMS_PROG_CC_FOR_TARGET

dnl check for g++
if test "$RTEMS_HAS_CPLUSPLUS" = "yes"; then
  RTEMS_PROG_CXX_FOR_TARGET
fi

RTEMS_CANONICALIZE_TOOLS

dnl if this is an i386, does gas have good code16 support?
RTEMS_I386_GAS_CODE16

RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP)
RTEMS_BSP_ALIAS(${RTEMS_BSP})
RTEMS_CHECK_MULTIPROCESSING(RTEMS_BSP)
RTEMS_CHECK_NETWORKING(RTEMS_BSP)
RTEMS_CHECK_RDBG(RTEMS_BSP)
RTEMS_CHECK_POSIX_API(RTEMS_BSP)
RTEMS_CHECK_CXX(RTEMS_BSP)
RTEMS_CHECK_ITRON_API(RTEMS_BSP)

AC_SUBST(rtems_cv_prog_cc_cross)
AC_SUBST(RTEMS_HAS_CPLUSPLUS)
AC_SUBST(RTEMS_USE_GCC272)
AC_SUBST(BARE_CPU_CFLAGS)
AC_SUBST(BARE_CPU_MODEL)
AC_SUBST(program_prefix)
AC_SUBST(CC_CFLAGS_DEFAULT)
AC_SUBST(CC_CFLAGS_DEBUG_V)
AC_SUBST(CC_CFLAGS_PROFILE_V)
AC_SUBST(CC_LDFLAGS_PROFILE_V)

# Collect the files needed to build a BSP
cfg_dir="${RTEMS_TOPdir}/make"
cfg_srcs=""
cfg_dsts=""
CUSTOM_CFG_FILES=""
f="${RTEMS_BSP}.cfg"
while test -n "$f"; do
  if test -r "${srcdir}/${cfg_dir}/custom/$f"; then
    cfg_srcs="$cfg_srcs ${cfg_dir}/custom/$f"
    cfg_dsts="$cfg_dsts custom/$f"
    CUSTOM_CFG_FILES="$CUSTOM_CFG_FILES $f"
    f=`grep "^include.*make/custom" ${srcdir}/${cfg_dir}/custom/$f \
    | sed \
      -e 's%^.*custom\/%%' \
      -e s%\$\(RTEMS_HOST\)%${RTEMS_HOST}% \
      -e 's%default\.cfg%%'`;
  else break; fi;
done
AC_SUBST(CUSTOM_CFG_FILES)

# Symlink the *.cfg files from the toplevel make directory into the build
# trees c/<bsp>/make subdirectories
AC_LINK_FILES($cfg_srcs,$cfg_dsts)
AC_LINK_FILES($cfg_dir/Templates/Makefile.lib,Templates/Makefile.lib)
AC_LINK_FILES($cfg_dir/Templates/Makefile.leaf,Templates/Makefile.leaf)
AC_LINK_FILES($cfg_dir/Templates/Makefile.dir,Templates/Makefile.dir)
AC_LINK_FILES($cfg_dir/compilers/gcc-target-default.cfg,compilers/gcc-target-default.cfg)
AC_LINK_FILES($cfg_dir/directory.cfg,directory.cfg)
AC_LINK_FILES(leaf.cfg,leaf.cfg)
AC_LINK_FILES($cfg_dir/lib.cfg,lib.cfg)
AC_LINK_FILES($cfg_dir/README,README)

# Explicitly list all Makefiles here
AC_OUTPUT( 
Makefile
Makefile.inc
host.cfg
bsp.cfg
custom/Makefile
custom/default.cfg
compilers/Makefile,
${MAKE} $RTEMS_BSP.cache,
MAKE=${MAKE-make}
RTEMS_BSP=${RTEMS_BSP}
)