📄 aclocal.m4
字号:
(and sometimes confusing) to the casual installer], USE_MAINTAINER_MODE=$enableval, USE_MAINTAINER_MODE=no) AC_MSG_RESULT([$USE_MAINTAINER_MODE]) AM_CONDITIONAL(MAINTAINER_MODE, [test $USE_MAINTAINER_MODE = yes]) MAINT=$MAINTAINER_MODE_TRUE AC_SUBST(MAINT)dnl])AU_DEFUN([jm_MAINTAINER_MODE], [AM_MAINTAINER_MODE])AC_DEFUN([RTEMS_PROG_GNAT],[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])AC_REQUIRE([RTEMS_PROG_CC_FOR_TARGET])AC_ARG_VAR([GNATMAKE],[GNATMAKE compiler command])AC_ARG_VAR([ADAFLAGS],[ADA compiler flags])RTEMS_CHECK_TOOL([GNATMAKE],[gnatmake],[])AS_IF([test -z "$GNATMAKE"],[AC_MSG_ERROR([No GNATMAKE found])])AC_MSG_CHECKING([whether $GNATMAKE works])rm -f conftest.*cat >conftest.adb <<EOFprocedure conftest is begin null; end conftest;EOFAS_IF([$GNATMAKE -c conftest.adb 1>>config.log 2>&1], [HAVE_GNAT=yes], [HAVE_GNAT=no])AC_MSG_RESULT([$HAVE_GNAT])rm -f conftest.*])dnldnl $Id: prog-cc.m4,v 1.18.2.2 2004/08/18 07:23:00 ralf Exp $dnl dnl Check for target gccdnlAC_DEFUN([RTEMS_PROG_CC],[AC_BEFORE([$0], [AC_PROG_CPP])dnlAC_BEFORE([$0], [AC_PROG_CC])dnlAC_BEFORE([$0], [RTEMS_CANONICALIZE_TOOLS])dnl_RTEMS_FLAGS([CFLAGS], ["\$(CPU_CFLAGS) \$(RTEMS_CFLAGS_\$(VARIANT_V)_V) \$(CFLAGS_\$(VARIANT_V)_V) -g"])RTEMS_CHECK_TOOL(CC,gcc)test -z "$CC" && \ AC_MSG_ERROR([no acceptable cc found in \$PATH])AC_PROG_CCAC_PROG_CPPAM_CONDITIONAL(RTEMS_USE_GCC,test x"$GCC" = x"yes")])AC_DEFUN([RTEMS_PROG_CC_FOR_TARGET],[dnl check target ccRTEMS_PROG_CCdnl check if the compiler supports -isystemRTEMS_GCC_ISYSTEMdnl check if the target compiler may use --pipeRTEMS_GCC_PIPEtest "$rtems_cv_gcc_pipe" = "yes" && CC="$CC --pipe"dnl check if the compiler supports --specsRTEMS_GCC_SPECSif test "$GCC" = yes; thenRTEMS_CFLAGS="$RTEMS_CFLAGS -Wall"m4_if([$1],,[],[RTEMS_CFLAGS="$RTEMS_CFLAGS $1"])fiAS_IF([test x"$rtems_cv_gcc_isystem" = x"yes"],[ RTEMS_CPPFLAGS="-isystem \$(PROJECT_INCLUDE)"],[ RTEMS_CPPFLAGS="-I\$(PROJECT_INCLUDE)"])AC_SUBST(RTEMS_CPPFLAGS)])dnldnl $Id: canonicalize-tools.m4,v 1.16.2.1 2004/08/18 07:23:00 ralf Exp $dnldnl Set target toolsdnlAC_DEFUN([RTEMS_CANONICALIZE_TOOLS],[AC_REQUIRE([RTEMS_PROG_CC])dnldnl FIXME: What shall be done if these tools are not available? RTEMS_CHECK_TOOL(AR,ar,no) RTEMS_CHECK_TOOL(AS,as,no) RTEMS_CHECK_TOOL(LD,ld,no) RTEMS_CHECK_TOOL(NM,nm,no)dnl special treatment of ranlib RTEMS_CHECK_TOOL(RANLIB,ranlib,:)dnl NOTE: These may not be available if not using gnutools RTEMS_CHECK_TOOL(OBJCOPY,objcopy,no) RTEMS_CHECK_TOOL(SIZE,size,no) RTEMS_CHECK_TOOL(STRIP,strip,:)])dnl $Id: check-tool.m4,v 1.2.4.1 2004/08/18 07:23:00 ralf Exp $dnl RTEMS_CHECK_TOOL(VARIABLE, PROG-TO-CHECK-FOR[, VALUE-IF-NOT-FOUND [, PATH]])AC_DEFUN([RTEMS_CHECK_TOOL],[ AS_IF([test "x$build_alias" != "x$host_alias"], [rtems_tool_prefix=${ac_tool_prefix}]) AC_CHECK_PROG($1, ${rtems_tool_prefix}$2, ${rtems_tool_prefix}$2, $3, $4)])AC_DEFUN([_RTEMS_FLAGS],[AS_IF([test -n "[$]{$1}"], [RTEMS_$1=[$]{$1}], [RTEMS_$1=$2])AC_SUBST([RTEMS_$1])])dnldnl $Id: gcc-isystem.m4,v 1.1.2.2 2004/08/18 07:23:00 ralf Exp $dnldnl Check whether the gcc accepts -isystemdnlAC_DEFUN([RTEMS_GCC_ISYSTEM],[AC_REQUIRE([RTEMS_PROG_CC])AC_CACHE_CHECK(whether $CC accepts -isystem,rtems_cv_gcc_isystem,[rtems_cv_gcc_isystem=noif test x"$GCC" = x"yes"; thencat << EOF > conftest.hint conftest123();EOFcat << EOF > conftest.c#include <conftest.h>int conftest123() {}EOF if test -z "`${CC} -isystem./ -c conftest.c 2>&1`";then rtems_cv_gcc_isystem=yes fifirm -f conftest*])])dnldnl $Id: gcc-pipe.m4,v 1.8.6.1 2004/08/18 07:23:00 ralf Exp $dnldnl Check whether the target compiler accepts -pipednlAC_DEFUN([RTEMS_GCC_PIPE],[AC_REQUIRE([RTEMS_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST])AC_CACHE_CHECK(whether $CC accepts --pipe,rtems_cv_gcc_pipe,[rtems_cv_gcc_pipe=noif test x"$GCC" = x"yes"; then echo 'void f(){}' >conftest.c if test -z "`${CC} --pipe -c conftest.c 2>&1`";then rtems_cv_gcc_pipe=yes fi rm -f conftest*fi])])dnldnl $Id: gcc-specs.m4,v 1.5.6.1 2004/08/18 07:23:00 ralf Exp $dnldnl Check whether the target compiler accepts -specsdnlAC_DEFUN([RTEMS_GCC_SPECS],[AC_REQUIRE([RTEMS_PROG_CC])AC_CACHE_CHECK(whether $CC accepts -specs,rtems_cv_gcc_specs,[rtems_cv_gcc_specs=noif test x"$GCC" = x"yes"; then touch confspec echo 'void f(){}' >conftest.c if test -z "`${CC} -specs confspec -c conftest.c 2>&1`";then rtems_cv_gcc_specs=yes fifirm -f confspec conftest*])])dnl This provides configure definitions used for multilib supportdnl parts of these macros are derived from newlib-1.8.2's multilib supportAC_DEFUN([RTEMS_ENABLE_MULTILIB],[AC_ARG_ENABLE(multilib,AC_HELP_STRING([--enable-multilib],[build many library versions (default=no)]),[case "${enableval}" in yes) multilib=yes ;; no) multilib=no ;; *) AC_MSG_ERROR(bad value ${enableval} for multilib option) ;; esac], [multilib=no])dnlAM_CONDITIONAL(MULTILIB,test x"${multilib}" = x"yes")])dnl $Id: enable-multiprocessing.m4,v 1.6.2.1 2004/08/18 07:23:00 ralf Exp $AC_DEFUN([RTEMS_ENABLE_MULTIPROCESSING],[AC_ARG_ENABLE(multiprocessing,[AC_HELP_STRING([--enable-multiprocessing],[enable multiprocessing interface])],[case "${enable_multiprocessing}" in yes) ;; no) ;; *) AC_MSG_ERROR(bad value ${enableval} for enable-multiprocessing option) ;;esac],[enable_multiprocessing=no])])dnl $Id: env-rtemsbsp.m4,v 1.10.2.1 2004/08/18 07:23:00 ralf Exp $dnl Pass a single BSP via an environment variablednl used by per BSP configure scriptsAC_DEFUN([RTEMS_ENV_RTEMSBSP],[dnlAC_BEFORE([$0], [RTEMS_ENABLE_RTEMSBSP])dnlAC_BEFORE([$0], [RTEMS_PROJECT_ROOT])dnlAC_BEFORE([$0], [RTEMS_CHECK_CUSTOM_BSP])dnlAC_ARG_VAR([CPU_CFLAGS],[CFLAGS specifying CPU-dependent features])AC_ARG_VAR([CFLAGS_OPTIMIZE_V],[CFLAGS for building the OPTIMIZE variant])AC_ARG_VAR([CFLAGS_DEBUG_V],[CFLAGS for building the DEBUG variant])AC_ARG_VAR([CFLAGS_PROFILE_V],[CFLAGS for building the PROFILE variant])AC_ARG_VAR([RTEMS_BSP_FAMILY],[RTEMS's BSP directory])AC_ARG_VAR([RTEMS_CPU_MODEL],[RTEMS's cpu model])AC_ARG_VAR([RTEMS_BSP],[RTEMS_BSP to build])AC_MSG_CHECKING([for RTEMS_BSP])AC_CACHE_VAL(rtems_cv_RTEMS_BSP,[dnl test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP";])dnlif test -z "$rtems_cv_RTEMS_BSP"; then AC_MSG_ERROR([Missing RTEMS_BSP])fiRTEMS_BSP="$rtems_cv_RTEMS_BSP"AC_MSG_RESULT(${RTEMS_BSP})AC_SUBST(RTEMS_BSP)RTEMS_BSP_SPECS="-specs bsp_specs -qrtems"AC_SUBST(RTEMS_BSP_SPECS)GCC_SPECS="-B\$(PROJECT_ROOT)/lib/ -B\$(PROJECT_ROOT)/$RTEMS_BSP/lib/"AC_SUBST(GCC_SPECS)PROJECT_INCLUDE="\$(PROJECT_ROOT)/$RTEMS_BSP/lib/include"AC_SUBST(PROJECT_INCLUDE)PROJECT_RELEASE="\$(PROJECT_ROOT)/$RTEMS_BSP" AC_SUBST(PROJECT_RELEASE)RTEMS_ROOT="\$(PROJECT_ROOT)/c/$RTEMS_BSP"AC_SUBST(RTEMS_ROOT)RTEMS_ENABLE_BAREAC_SUBST(BARE_CPU_MODEL)AC_SUBST(BARE_CPU_CFLAGS)AM_CONDITIONAL([MULTILIB],[false])includedir="\${exec_prefix}/${RTEMS_BSP}/lib/include"libdir="\${exec_prefix}/${RTEMS_BSP}/lib"bsplibdir="\${exec_prefix}/${RTEMS_BSP}/lib"AC_SUBST(bsplibdir)])dnl $Id: enable-rtemsbsp.m4,v 1.12.2.1 2004/08/18 07:23:00 ralf Exp $dnl Override the set of BSPs to be built.dnl used by the toplevel configure scriptdnl RTEMS_ENABLE_RTEMSBSP(rtems_bsp_list)AC_DEFUN([RTEMS_ENABLE_RTEMSBSP],[AC_BEFORE([$0], [RTEMS_ENV_RTEMSBSP])AC_ARG_ENABLE(rtemsbsp,[AC_HELP_STRING([--enable-rtemsbsp="bsp1 bsp2 .."],[BSPs to include in build])],[case "${enableval}" in yes|no) AC_MSG_ERROR([missing argument to --enable-rtemsbsp="bsp1 bsp2"]);; *) $1=$enableval;;esac],[$1=""])])dnldnl $Id: project-root.m4,v 1.6.4.1 2004/08/18 07:23:00 ralf Exp $dnl dnldnl PROJECT_TOPdir .. relative path to the top of the build-treednl PROJECT_ROOT .. relative path to the top of the temporarydnl installation directory inside the build-treednl RTEMS_TOPdir .. relative path of a subpackage's configure.in to thednl toplevel configure.in of the source-treednl RTEMS_ROOT .. path to the top of a bsp's build directorydnl [Applied by custom/*.cfg, depredicated otherwise]dnlAC_DEFUN([RTEMS_PROJECT_ROOT],[dnlAC_REQUIRE([RTEMS_TOP])PACKHEX="\$(PROJECT_TOPdir)/tools/build/packhex"AC_SUBST(PACKHEX)])dnl $Id: check-custom-bsp.m4,v 1.1.2.1 2004/08/18 07:23:00 ralf Exp $AC_DEFUN([RTEMS_CHECK_CUSTOM_BSP],[AC_REQUIRE([RTEMS_TOP])AC_MSG_CHECKING([for make/custom/[$]$1.cfg])AS_IF([test -r "$srcdir/$RTEMS_TOPdir/make/custom/[$]$1.cfg"], [AC_MSG_RESULT([yes])], [AC_MSG_ERROR([no])])])AC_DEFUN([RTEMS_ENABLE_BARE],[AC_ARG_ENABLE(bare-cpu-cflags,[AC_HELP_STRING([--enable-bare-cpu-cflags],[specify a particular cpu cflag (bare bsp specific)])],[case "${enableval}" in no) BARE_CPU_CFLAGS="" ;; *) BARE_CPU_CFLAGS="${enableval}" ;;esac],[BARE_CPU_CFLAGS=""])AC_ARG_ENABLE(bare-cpu-model,[AC_HELP_STRING([--enable-bare-cpu-model],[specify a particular cpu model (bare bsp specific)])],[case "${enableval}" in no) BARE_CPU_MODEL="" ;; *) BARE_CPU_MODEL="${enableval}" ;;esac],[BARE_CPU_MODEL=""])])dnl $Id: check-cpu.m4,v 1.6.2.1 2004/08/18 07:23:00 ralf Exp $dnl check if RTEMS support a cpuAC_DEFUN([RTEMS_CHECK_CPU],[dnlAC_REQUIRE([RTEMS_TOP])AC_REQUIRE([RTEMS_CANONICAL_TARGET_CPU])# Is this a supported CPU?AC_MSG_CHECKING([if cpu $RTEMS_CPU is supported])# FIXME: Temporary hackif test -d "$srcdir/$RTEMS_TOPdir/cpukit/score/cpu/$RTEMS_CPU"; then AC_MSG_RESULT(yes)else AC_MSG_ERROR(no)fi])dnldnldnl $Id: check-multiprocessing.m4,v 1.11.4.1 2004/08/18 07:23:00 ralf Exp $dnlAC_DEFUN([RTEMS_CHECK_MULTIPROCESSING],[dnlAC_REQUIRE([RTEMS_ENABLE_MULTILIB])dnlAC_REQUIRE([RTEMS_ENV_RTEMSBSP])dnlAC_REQUIRE([RTEMS_TOP])dnlAC_REQUIRE([RTEMS_CHECK_CPU])dnlAC_REQUIRE([RTEMS_ENABLE_MULTIPROCESSING])dnlAC_REQUIRE([RTEMS_BSP_ALIAS])dnlAC_CACHE_CHECK([if wanting multiprocessing], [rtems_cv_want_multiprocessing], [ AS_IF([test x"$multilib" = x"no"], [# no cpukit rtems_cv_want_multiprocessing="$enable_multiprocessing" ],[#HACK: Should check for RTEMS_MULTIPROCESSING in cpuopts.h, instead rtems_cv_want_multiprocessing="$enable_multiprocessing" ]) ])AS_IF([test "$rtems_cv_want_multiprocessing" = "yes"],[ AC_CACHE_CHECK([whether BSP supports multiprocessing], [rtems_cv_HAS_MP],[ if test -d "$srcdir/${RTEMS_TOPdir}/c/src/lib/libbsp/${RTEMS_CPU}/${RTEMS_BSP_FAMILY}/shmsupp"; then rtems_cv_HAS_MP="yes" ; else rtems_cv_HAS_MP="no"; fi ])if test $rtems_cv_HAS_MP = "no"; thenAC_MSG_ERROR([multiprocessing requested but not supported])fi],[rtems_cv_HAS_MP="no";])AC_SUBST(HAS_MP,[$rtems_cv_HAS_MP])])dnldnl $Id: bsp-alias.m4,v 1.16.2.3 2005/10/05 19:31:20 joel Exp $dnl dnl _RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)dnl Internal subroutine to RTEMS_BSP_ALIASAC_DEFUN([_RTEMS_BSP_ALIAS],[# account for "aliased" bsps which share source code case $1 in simcpu32) $2=sim68000 ;; # BSVC CPU32 variant c3xsim) $2=c4xsim ;; # TI C3x Simulator in gdb mcp750) $2=motorola_powerpc ;; # Motorola PPC board variant mvme2100) $2=motorola_powerpc ;; # Motorola PPC board variant mvme2307) $2=motorola_powerpc ;; # Motorola PPC board variant mtx603e) $2=motorola_powerpc ;; # Motorola PPC board variant mvme162lx) $2=mvme162 ;; # m68k - mvme162 board variant gen68360_040) $2=gen68360 ;; # m68k - 68360 in companion mode p4600) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4600 p4650) $2=p4000 ;; # mips64orion - p4000 board w/IDT 4650 mbx8*) $2=mbx8xx ;; # MBX821/MBX860 board pc386dx) $2=pc386 ;; # i386 - PC w/o FPU pc486) $2=pc386 ;; # i386 - PC with i486DX pc586) $2=pc386 ;; # i386 - PC with Pentium pc686) $2=pc386 ;; # i386 - PC with PentiumPro pck6) $2=pc386 ;; # i386 - PC with K6 bare*) $2=bare ;; # EXP: bare-aliases sis) $2=erc32 ;; # ERC32 SIS simulator leon2) $2=leon2 ;; # leon with fpu leon3) $2=leon3 ;; # another leon variant simsh7032) $2=shsim ;; # SH7032 simulator simsh7045) $2=shsim ;; # SH7045 simulator *) $2=$1;; esac])dnl RTEMS_BSP_ALIAS(BSP_ALIAS,RTEMS_BSP_FAMILY)dnl convert a bsp alias $1 into its bsp directory RTEMS_BSP_FAMILYAC_DEFUN([RTEMS_BSP_ALIAS],[_RTEMS_BSP_ALIAS(m4_if([$1],,[$RTEMS_BSP],[$1]), m4_if([$2],,[RTEMS_BSP_FAMILY],[$2]))])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -