## Process this file with autoconf to produce a configure script. ## ## $Id$ AC_PREREQ(2.59) AC_INIT([rtems-c-src],[_RTEMS_VERSION],[rtems-bugs@rtems.com]) AC_CONFIG_SRCDIR([optman]) RTEMS_TOP(../..) RTEMS_ENABLE_CXX RTEMS_ENABLE_NETWORKING RTEMS_ENABLE_RDBG RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE([no-define subdir-objects no-exeext foreign 1.9]) AM_MAINTAINER_MODE RTEMS_ENABLE_MULTILIB RTEMS_ENABLE_MULTIPROCESSING RTEMS_ENV_RTEMSBSP AC_ARG_ENABLE(rpcgen, [AS_HELP_STRING([--enable-rpcgen],[rebuild rpcgen-generated sources])], [case "${enable_rpcgen}" in yes) enable_rpcgen=yes ;; no) enable_rpcgen=no ;; *) enable_rpcgen=no ;; esac],[enable_rpcgen=no]) RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) RTEMS_CHECK_NETWORKING(RTEMS_BSP) RTEMS_CHECK_POSIX_API(RTEMS_BSP) AC_CHECK_PROG(RPCGEN,rpcgen,rpcgen) AC_PROG_AWK AC_MSG_NOTICE([setting up make/custom]) AS_MKDIR_P([make/custom]) AM_SET_DEPDIR test -d ${DEPDIR} || mkdir ${DEPDIR} rm -f ${DEPDIR}/cfg.P echo "# Do not edit - automatically generated by" > ${DEPDIR}/cfg.P echo "# $0" >> ${DEPDIR}/cfg.P # Collect and copy the BSP's make/custom/*.cfg files from the toplevel make # directory into the build tree's /make/custom subdirectories CUSTOM_CFG_FILES= f="${RTEMS_BSP}.cfg" while test -n "$f"; do cfg_file= _RTEMS_CHECK_CUSTOM_BSP([$f],cfg_file) if test -n "${cfg_file}"; then cp ${cfg_file} make/custom/$f echo "make/custom/$f: ${cfg_file}" >> ${DEPDIR}/cfg.P echo " cp ${cfg_file} make/custom/$f" >> ${DEPDIR}/cfg.P CUSTOM_CFG_FILES="$CUSTOM_CFG_FILES make/custom/$f" f=`grep "^include.*make/custom" ${cfg_file} \ | sed \ -e 's%^.*custom\/%%' \ -e s%\$\(RTEMS_HOST\)%${RTEMS_HOST}% \ -e 's%default\.cfg%%'`; else break; fi; done cp ${srcdir}/make/custom/default.cfg.in make/custom/default.cfg AC_MSG_NOTICE([creating make/${RTEMS_BSP}.cache]) ${MAKE-make} -f ${srcdir}/make/bsp.mak \ RTEMS_BSP=${RTEMS_BSP} \ RTEMS_HOST=${RTEMS_HOST} \ RTEMS_ROOT=. make/${RTEMS_BSP}.cache # Read back the cache AC_CACHE_CHECK([for RTEMS_CPU_MODEL], [ac_cv_env_RTEMS_CPU_MODEL], [. ./make/${RTEMS_BSP}.cache]) RTEMS_CPU_MODEL=$ac_cv_env_RTEMS_CPU_MODEL AC_SUBST(RTEMS_CPU_MODEL) test -n "${RTEMS_CPU_MODEL}" && \ ac_configure_args="$ac_configure_args 'RTEMS_CPU_MODEL=${RTEMS_CPU_MODEL}'" AC_CACHE_CHECK([for RTEMS_BSP_FAMILY],[ac_cv_env_RTEMS_BSP_FAMILY], [. ./make/${RTEMS_BSP}.cache]) RTEMS_BSP_FAMILY=$ac_cv_env_RTEMS_BSP_FAMILY AC_SUBST(RTEMS_BSP_FAMILY) test -n "${RTEMS_BSP_FAMILY}" && \ ac_configure_args="$ac_configure_args 'RTEMS_BSP_FAMILY=${RTEMS_BSP_FAMILY}'" AC_CACHE_CHECK([for CPU_CFLAGS],[ac_cv_env_CPU_CFLAGS], [. ./make/${RTEMS_BSP}.cache]) CPU_CFLAGS=$ac_cv_env_CPU_CFLAGS test -n "${CPU_CFLAGS}" && \ ac_configure_args="$ac_configure_args 'CPU_CFLAGS=${CPU_CFLAGS}'" AC_CACHE_CHECK([for CFLAGS_OPTIMIZE_V],[ac_cv_env_CFLAGS_OPTIMIZE_V], [. ./make/${RTEMS_BSP}.cache]) CFLAGS_OPTIMIZE_V=$ac_cv_env_CFLAGS_OPTIMIZE_V test -n "${CFLAGS_OPTIMIZE_V}" && \ ac_configure_args="$ac_configure_args 'CFLAGS_OPTIMIZE_V=${CFLAGS_OPTIMIZE_V}'" RTEMS_PROG_CC_FOR_TARGET AM_PROG_CC_C_O RTEMS_PROG_CCAS RTEMS_CANONICALIZE_TOOLS AS_IF([test "$HAS_NETWORKING" = "yes"],[ AS_IF([test "$RTEMS_HAS_RDBG" = "yes"],[ RTEMS_CHECK_RDBG(RTEMS_BSP) ]) ]) RTEMS_CHECK_GCC_WEAK AC_SUBST(CUSTOM_CFG_FILES) AC_SUBST(cfg_dir) RTEMS_CHECK_MULTIPROCESSING BSP_SUBDIRS= ## Configure ${srcdir}/../../cpukit as cpukit/ if multilibs are disabled RTEMS_BSP_CONFIG_SUBDIR( [cpukit],[../../cpukit], ['--with-project-root=${with_project_root}../$RTEMS_BSP/' \ '--includedir=${exec_prefix}/${RTEMS_BSP}/lib/include' \ '--libdir=${exec_prefix}/${RTEMS_BSP}/lib' \ 'CFLAGS="${CFLAGS}"' \ ], [test x"$multilib" = xno]) ## Note: the order of the directories below is essential AC_CONFIG_SUBDIRS([make]) BSP_SUBDIRS="$BSP_SUBDIRS make" RTEMS_CPU_SUBDIRS(lib/libcpu) if test -d "${srcdir}/lib/libcpu/${RTEMS_CPU}"; then libcpu_cpu_subdir="${RTEMS_CPU}" else libcpu_cpu_subdir= fi AC_SUBST(libcpu_cpu_subdir) # Is there code where there should be for this BSP? # The bare bsp is a special case as it is not under the RTEMS_CPU path if test "$RTEMS_BSP_FAMILY" = bare ; then AC_CONFIG_SUBDIRS([lib/libbsp/bare]) AC_SUBST(libbsp_cpu_subdir,bare) else RTEMS_CPU_SUBDIRS([lib/libbsp]) AC_SUBST(libbsp_cpu_subdir,$RTEMS_CPU) fi BSP_SUBDIRS="$BSP_SUBDIRS lib" BSP_SUBDIRS="$BSP_SUBDIRS libchip" BSP_SUBDIRS="$BSP_SUBDIRS libnetworking" BSP_SUBDIRS="$BSP_SUBDIRS librdbg" AS_IF([test "$RTEMS_HAS_CPLUSPLUS" = "yes"],[ AC_CONFIG_SUBDIRS([librtems++]) BSP_SUBDIRS="$BSP_SUBDIRS librtems++" ]) BSP_SUBDIRS="$BSP_SUBDIRS support" BSP_SUBDIRS="$BSP_SUBDIRS ada" BSP_SUBDIRS="$BSP_SUBDIRS wrapup" BSP_SUBDIRS="$BSP_SUBDIRS optman" AC_ARG_ENABLE([ada], [AS_HELP_STRING(--enable-ada,enable ada support)], [case "${enable_ada}" in yes) ;; no) ;; *) AC_MSG_ERROR(bad value ${enable_ada} for --enable-ada) ;; esac],[enable_ada=no]) RTEMS_BSP_CONFIG_SUBDIR( [ada-tests],[ada-tests], ['--enable-rtems-root=../' \ '--with-project-root=${with_project_root}../' \ '--with-project-top=${with_project_top}../' \ '--enable-rtemsbsp=$RTEMS_BSP' \ ], [test x"$enable_tests" = xyes && test x"$enable_ada" = xyes]) RTEMS_BSP_CONFIG_SUBDIR( [testsuites],[../../testsuites], ['--enable-rtems-root=../' \ '--with-project-root=${with_project_root}../' \ '--with-project-top=${with_project_top}../' \ '--enable-rtemsbsp=$RTEMS_BSP' \ 'CFLAGS="${CFLAGS}"' \ ], [test x"$enable_tests" != x"no"]) AC_SUBST([BSP_SUBDIRS],[$BSP_SUBDIRS]) AS_IF([test "$host_cpu" = sparc],[ AC_DEFINE_UNQUOTED([CPU_U32_FIX],[1], [whether to enable ipalignment work-around]) ]) AM_CONDITIONAL([HAS_NETWORKING],[test "$HAS_NETWORKING" = "yes"]) # FIXME: This is sick AM_CONDITIONAL([HAS_RDBG],[test "$HAS_RDBG" = "yes"]) AM_CONDITIONAL([HAS_RDBG_i386],[test "$HAS_RDBG" = "yes" \ && test $RTEMS_CPU = "i386"]) AM_CONDITIONAL([HAS_RDBG_m68k],[test "$HAS_RDBG" = "yes" \ && test $RTEMS_CPU = "m68k"]) AM_CONDITIONAL([HAS_RDBG_powerpc],[test "$HAS_RDBG" = "yes" \ && test $RTEMS_CPU = "powerpc"]) AM_CONDITIONAL(HAS_POSIX,test "$HAS_POSIX_API" = "yes") # The posix bsp doesn't support libchip # FIXME: We should use a feature based check, here AM_CONDITIONAL([LIBCHIP],[test "$RTEMS_BSP_FAMILY" != "posix"]) # The bare bsp doesn't have libbsp.a # FIXME: We should use a feature based check, here AM_CONDITIONAL([HAS_LIBBSP],[test "$RTEMS_BSP_FAMILY" != "bare"]) AM_CONDITIONAL([MULTILIB],[test x"${enable_multilib}" = x"yes"]) AM_CONDITIONAL([RPCTOOLS],[test "$RPCGEN" = rpcgen \ && test -n "$AWK" \ && test "$enable_rpcgen" = yes]) AM_CONDITIONAL(RTEMS_ADA,[test x"$enable_ada" = x"yes" \ && test x"$rtems_cv_HAS_POSIX_API" = x"yes"]) RTEMS_PROJECT_ROOT AC_PATH_PROG([AMPOLISH3],[ampolish3],[]) AM_CONDITIONAL([AMPOLISH3],[test x"$USE_MAINTAINER_MODE" = x"yes" \ && test -n "$AMPOLISH3"]) # Explicitly list all Makefiles here AC_CONFIG_FILES([Makefile], [${MAKE} make/${RTEMS_BSP}.cache], [RTEMS_BSP=${RTEMS_BSP} MAKE=${MAKE}]) AC_CONFIG_FILES([ support/Makefile libnetworking/Makefile libnetworking/pppd/Makefile libnetworking/rtems_telnetd/Makefile librdbg/Makefile libchip/Makefile optman/Makefile lib/Makefile lib/libcpu/Makefile lib/libbsp/Makefile ada/Makefile wrapup/Makefile ]) AC_OUTPUT