From b62a92c804ea40e723864d1995edcb9075dd06c8 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Mon, 4 Oct 1999 18:20:14 +0000 Subject: Patch from Ralf Corsepius : The patch below actuallly consists of two patches: 1) moving librpc to c/src/librpc similar to what has been done to librtems++ 2) reworked configure scripts, many safety and dependency checks added to aclocal/*.m4 macros + configuration fixes. To apply: mkdir c/src/librpc mkdir c/src/librpc/src cp c/src/lib/librpc/*.c c/src/librpc/src cp c/src/lib/librpc/Makefile.in c/src/librpc/src mkdir c/src/librpc/include mkdir c/src/librpc/include/rpc cp c/src/lib/include/rpc/* c/src/librpc/include/rpc patch -p1 < ../rtems-rc-19990820-7.diff rm -rf c/src/lib/librpc rm -rf c/src/lib/include/rpc ./autogen The additional checks in aclocal/*m4 macros add rather restrictive, sometimes unnecessarily restrictive constraints on the sequence of how macros can be used in a configure.in script. Adding them has let my problems with some more complicated configuration options vanish. Apparently some macros had not been in the required order . ---- Now I still get some linking errors for some cpus and bsps, esp when linking cdtest, but also at other locations: e.g. this happens for mips64orion/p4600: # make[5]: Entering directory `/lfs/poseidon/users/rtems/src/multi/build/mips64orion-rtems/c/p4600/tests/samples/hello' /opt/rtems/bin/mips64orion-rtems-gcc --pipe -B../../../../../../p4600/lib/ -specs bsp_specs -qrtems -DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3 -mcpu=4600 -G0 -I../../../../../../p4600/lib/include/networking -g -Wall -ansi -fasm -O4 -fomit-frame-pointer -o o-p4600/hello.exe o-p4600/init.o ../../../../../../p4600/lib/no-dpmem.rel ../../../../../../p4600/lib/no-event.rel ../../../../../../p4600/lib/no-msg.rel ../../../../../../p4600/lib/no-mp.rel ../../../../../../p4600/lib/no-part.rel ../../../../../../p4600/lib/no-signal.rel ../../../../../../p4600/lib/no-timer.rel ../../../../../../p4600/lib/no-rtmon.rel /opt/rtems/mips64orion-rtems/lib/libc.a(dtoa.o): In function `_dtoa_r': /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol collect2: ld returned 1 exit status # mips64orion-rtems-gcc -v Reading specs from /opt/rtems/lib/gcc-lib/mips64orion-rtems/2.95.1/specs gcc version 2.95.1 19990816 (release) # mips64orion-rtems-ld -v GNU ld version 2.9.5 (with BFD 2.9.5) --- c/src/lib/Makefile.am | 5 +- c/src/lib/configure.in | 4 - c/src/lib/include/Makefile.am | 2 +- c/src/lib/libbsp/configure.in | 2 +- .../lib/libbsp/hppa1.1/simhppa/tools/configure.in | 2 +- c/src/lib/libbsp/i386/pc386/tools/configure.in | 2 +- c/src/lib/libbsp/i386/ts_386ex/tools/configure.in | 2 +- c/src/lib/libbsp/m68k/mvme162/tools/configure.in | 2 +- c/src/lib/libbsp/powerpc/psim/tools/configure.in | 2 +- c/src/lib/libbsp/sparc/erc32/tools/configure.in | 2 +- c/src/lib/libbsp/unix/posix/tools/configure.in | 2 +- c/src/lib/libchip/configure.in | 2 - c/src/lib/libcpu/configure.in | 2 - c/src/lib/libnetworking/configure.in | 2 - c/src/lib/librdbg/configure.in | 6 +- c/src/lib/librpc/Makefile.in | 57 - c/src/lib/librpc/aclocal.m4 | 653 ------ c/src/lib/librpc/configure | 2249 -------------------- c/src/lib/librpc/configure.in | 40 - c/src/lib/librpc/rpc_callmsg.c | 191 -- c/src/lib/librpc/rpc_prot.c | 271 --- c/src/lib/librpc/svc.c | 259 --- c/src/lib/librpc/svc_auth.c | 124 -- c/src/lib/librpc/svc_udp.c | 476 ----- c/src/lib/librpc/xdr.c | 578 ----- c/src/lib/librpc/xdr_array.c | 157 -- c/src/lib/librpc/xdr_mem.c | 185 -- c/src/lib/start/a29k/configure.in | 2 - c/src/lib/start/i960/configure.in | 2 - c/src/lib/start/m68k/configure.in | 1 - c/src/lib/start/mips64orion/configure.in | 1 - c/src/lib/start/sh/configure.in | 1 - 32 files changed, 14 insertions(+), 5272 deletions(-) delete mode 100644 c/src/lib/librpc/Makefile.in delete mode 100644 c/src/lib/librpc/aclocal.m4 delete mode 100644 c/src/lib/librpc/configure delete mode 100644 c/src/lib/librpc/configure.in delete mode 100644 c/src/lib/librpc/rpc_callmsg.c delete mode 100644 c/src/lib/librpc/rpc_prot.c delete mode 100644 c/src/lib/librpc/svc.c delete mode 100644 c/src/lib/librpc/svc_auth.c delete mode 100644 c/src/lib/librpc/svc_udp.c delete mode 100644 c/src/lib/librpc/xdr.c delete mode 100644 c/src/lib/librpc/xdr_array.c delete mode 100644 c/src/lib/librpc/xdr_mem.c (limited to 'c/src/lib') diff --git a/c/src/lib/Makefile.am b/c/src/lib/Makefile.am index ad2672815c..53b341ada8 100644 --- a/c/src/lib/Makefile.am +++ b/c/src/lib/Makefile.am @@ -6,10 +6,9 @@ AUTOMAKE_OPTIONS = foreign 1.4 ACLOCAL_AMFLAGS = -I $(RTEMS_TOPdir)/aclocal if HAS_NETWORKING -## We only build the networking and the rpc library +## We only build the networking library ## if HAS_NETWORKING was defined LIBNETWORKING = libnetworking -LIBRPC = librpc if HAS_RDBG LIBRDBG = librdbg @@ -22,7 +21,7 @@ LIBCHIP = libchip endif SUBDIRS = start include libmisc libc $(LIBNETWORKING) libcpu libbsp \ - $(LIBRPC) $(LIBRDBG) $(LIBCHIP) $(LIBHWAPI) wrapup + $(LIBRDBG) $(LIBCHIP) $(LIBHWAPI) wrapup include $(top_srcdir)/../../../automake/subdirs.am include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/lib/configure.in b/c/src/lib/configure.in index 51a8ca8e43..a8091e3a2a 100644 --- a/c/src/lib/configure.in +++ b/c/src/lib/configure.in @@ -37,8 +37,6 @@ RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) RTEMS_CHECK_MULTIPROCESSING(RTEMS_BSP) RTEMS_CHECK_NETWORKING(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - AM_CONDITIONAL(UNIX,test "$RTEMS_CPU" = "unix") # find all the CPU dependent library Makefiles @@ -48,7 +46,6 @@ AC_CONFIG_SUBDIRS(libbsp) # If the TCP/IP stack is enabled, then find all TCP/IP Makefiles if test "$HAS_NETWORKING" = "yes"; then cfg_subdirs="$cfg_subdirs libnetworking" - cfg_subdirs="$cfg_subdirs librpc" if test "$RTEMS_HAS_RDBG" = "yes"; then RTEMS_CHECK_RDBG(RTEMS_BSP) @@ -99,7 +96,6 @@ include/Makefile include/sys/Makefile include/motorola/Makefile include/zilog/Makefile -include/rpc/Makefile include/rdbg/Makefile include/rdbg/i386/Makefile include/rdbg/powerpc/Makefile diff --git a/c/src/lib/include/Makefile.am b/c/src/lib/include/Makefile.am index 1a3640a7ed..52a266c506 100644 --- a/c/src/lib/include/Makefile.am +++ b/c/src/lib/include/Makefile.am @@ -22,7 +22,7 @@ all-am: $(TMPINSTALL_FILES) debug-am: $(TMPINSTALL_FILES) profile-am: $(TMPINSTALL_FILES) -SUBDIRS = sys motorola zilog rpc rdbg +SUBDIRS = sys motorola zilog rdbg include $(top_srcdir)/../../../automake/subdirs.am include $(top_srcdir)/../../../automake/local.am diff --git a/c/src/lib/libbsp/configure.in b/c/src/lib/libbsp/configure.in index 6e07a7eee7..97e14ebbad 100644 --- a/c/src/lib/libbsp/configure.in +++ b/c/src/lib/libbsp/configure.in @@ -47,7 +47,7 @@ RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) # 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 -case ${RTEMS_BSP} in +case $bspdir in bare) bspcpudir= if test "X${BARE_CPU_CFLAGS}" = "X" ; then diff --git a/c/src/lib/libbsp/hppa1.1/simhppa/tools/configure.in b/c/src/lib/libbsp/hppa1.1/simhppa/tools/configure.in index 66a415848a..5ea7d6d9e6 100644 --- a/c/src/lib/libbsp/hppa1.1/simhppa/tools/configure.in +++ b/c/src/lib/libbsp/hppa1.1/simhppa/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(print_dump.c) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-hppa-simhppa-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/i386/pc386/tools/configure.in b/c/src/lib/libbsp/i386/pc386/tools/configure.in index 6a8920bcd1..ebed8e0411 100644 --- a/c/src/lib/libbsp/i386/pc386/tools/configure.in +++ b/c/src/lib/libbsp/i386/pc386/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(Spec.doc) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-i386-pc386-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/i386/ts_386ex/tools/configure.in b/c/src/lib/libbsp/i386/ts_386ex/tools/configure.in index 2fca229ae0..31cb42ee7c 100644 --- a/c/src/lib/libbsp/i386/ts_386ex/tools/configure.in +++ b/c/src/lib/libbsp/i386/ts_386ex/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(coff2bin) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-i386-ts_386ex-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/m68k/mvme162/tools/configure.in b/c/src/lib/libbsp/m68k/mvme162/tools/configure.in index 7b9c3d5eb4..2fb3b588a7 100644 --- a/c/src/lib/libbsp/m68k/mvme162/tools/configure.in +++ b/c/src/lib/libbsp/m68k/mvme162/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(sload.c) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-m68k-mvme162-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/powerpc/psim/tools/configure.in b/c/src/lib/libbsp/powerpc/psim/tools/configure.in index 1a598a1387..39fa2825ea 100644 --- a/c/src/lib/libbsp/powerpc/psim/tools/configure.in +++ b/c/src/lib/libbsp/powerpc/psim/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(psim) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-powerpc-psim-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/sparc/erc32/tools/configure.in b/c/src/lib/libbsp/sparc/erc32/tools/configure.in index 0aee4094fa..5fcc353a7d 100644 --- a/c/src/lib/libbsp/sparc/erc32/tools/configure.in +++ b/c/src/lib/libbsp/sparc/erc32/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(runtest.in) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-sparc-erc32-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libbsp/unix/posix/tools/configure.in b/c/src/lib/libbsp/unix/posix/tools/configure.in index db0f365fbc..0efb748365 100644 --- a/c/src/lib/libbsp/unix/posix/tools/configure.in +++ b/c/src/lib/libbsp/unix/posix/tools/configure.in @@ -3,9 +3,9 @@ dnl dnl $Id$ AC_INIT(runtest.in) +RTEMS_TOP(../../../../../../..) AC_CONFIG_AUX_DIR(../../../../../../..) -RTEMS_TOP(../../../../../../..) RTEMS_CANONICAL_TARGET_CPU AM_INIT_AUTOMAKE(rtems-lib-libbsp-unix-posix-tools,$RTEMS_VERSION,no) diff --git a/c/src/lib/libchip/configure.in b/c/src/lib/libchip/configure.in index 099d2ea84f..fc5a8b0895 100644 --- a/c/src/lib/libchip/configure.in +++ b/c/src/lib/libchip/configure.in @@ -29,8 +29,6 @@ RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) RTEMS_CHECK_NETWORKING(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - # pick up all the Makefiles in required parts of the tree if test "$RTEMS_CPU" = "unix"; then ## HACK: Suppress libchip for unix diff --git a/c/src/lib/libcpu/configure.in b/c/src/lib/libcpu/configure.in index db3e2435f7..1db1d37d0b 100644 --- a/c/src/lib/libcpu/configure.in +++ b/c/src/lib/libcpu/configure.in @@ -30,8 +30,6 @@ RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - # find all the CPU dependent library Makefiles RTEMS_CHECK_MAKEFILE($RTEMS_CPU) diff --git a/c/src/lib/libnetworking/configure.in b/c/src/lib/libnetworking/configure.in index c3fcbc37da..1eb5b5a1b6 100644 --- a/c/src/lib/libnetworking/configure.in +++ b/c/src/lib/libnetworking/configure.in @@ -30,8 +30,6 @@ RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) RTEMS_CHECK_NETWORKING(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - # try to explicitly list a Makefile here AC_OUTPUT( Makefile diff --git a/c/src/lib/librdbg/configure.in b/c/src/lib/librdbg/configure.in index 55817130a1..5871e06bfd 100644 --- a/c/src/lib/librdbg/configure.in +++ b/c/src/lib/librdbg/configure.in @@ -15,6 +15,7 @@ AC_PROG_INSTALL AM_MAINTAINER_MODE RTEMS_ENABLE_NETWORKING +RTEMS_ENABLE_RDBG RTEMS_ENABLE_LIBCDIR RTEMS_ENABLE_BARE @@ -40,10 +41,9 @@ if test "$AWK" = "no"; then fi RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_CHECK_NETWORKING(RTEMS_BSP) -RTEMS_CHECK_RDBG(RTEMS_BSP) - RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) +RTEMS_CHECK_NETWORKING(RTEMS_BSP) +RTEMS_CHECK_RDBG(bspdir) # Try to explicitly list a Makefile here AC_OUTPUT( diff --git a/c/src/lib/librpc/Makefile.in b/c/src/lib/librpc/Makefile.in deleted file mode 100644 index 3cc74fa309..0000000000 --- a/c/src/lib/librpc/Makefile.in +++ /dev/null @@ -1,57 +0,0 @@ -# -# $Id$ -# - -@SET_MAKE@ -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -top_builddir = . - -RTEMS_ROOT = @RTEMS_ROOT@ -PROJECT_ROOT = @PROJECT_ROOT@ - -VPATH = @srcdir@ - -LIBNAME = librpc.a -LIB = ${ARCH}/${LIBNAME} - -# C and C++ source names, if any, go here -- minus the .c or .cc -C_PIECES = rpc_callmsg rpc_prot svc svc_auth svc_udp xdr xdr_array xdr_mem -C_FILES = $(C_PIECES:%=%.c) -C_O_FILES = $(C_PIECES:%=${ARCH}/%.o) - -SRCS = $(C_FILES) -OBJS = $(C_O_FILES) - -include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg -include $(RTEMS_ROOT)/make/lib.cfg - -INSTALL_CHANGE = @INSTALL_CHANGE@ - -# -# Add local stuff here using += -# - -DEFINES += -CPPFLAGS += -CFLAGS += $(LIBC_DEFINES) - -# -# Add your list of files to delete here. The config files -# already know how to delete some stuff, so you may want -# to just run 'make clean' first to see what gets missed. -# 'make clobber' already includes 'make clean' -# - -CLEAN_ADDITIONS += $(LIB) -CLOBBER_ADDITIONS += - -all: ${ARCH} $(LIB) - $(INSTALL_VARIANT) -m 644 ${LIB} $(PROJECT_RELEASE)/lib - -$(LIB): $(SRCS) ${OBJS} - $(make-library) - -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - cd $(top_builddir) \ - && CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status diff --git a/c/src/lib/librpc/aclocal.m4 b/c/src/lib/librpc/aclocal.m4 deleted file mode 100644 index 7258e6dff1..0000000000 --- a/c/src/lib/librpc/aclocal.m4 +++ /dev/null @@ -1,653 +0,0 @@ -dnl aclocal.m4 generated automatically by aclocal 1.4a - -dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -dnl This file is free software; the Free Software Foundation -dnl gives unlimited permission to copy and/or distribute it, -dnl with or without modifications, as long as this notice is preserved. - -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY, to the extent permitted by law; without -dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A -dnl PARTICULAR PURPOSE. - -dnl $Id$ - -dnl -dnl RTEMS_TOP($1) -dnl -dnl $1 .. relative path from this configure.in to the toplevel configure.in -dnl -AC_DEFUN(RTEMS_TOP, -[dnl -AC_ARG_WITH(target-subdir, -[ --with-target-subdir=DIR], -TARGET_SUBDIR="$withval", -TARGET_SUBDIR=".") - -RTEMS_TOPdir="$1"; -AC_SUBST(RTEMS_TOPdir) - -dnl Determine RTEMS Version string from the VERSION file -dnl Hopefully, Joel never changes its format ;- -AC_MSG_CHECKING([for RTEMS Version]) -if test -r "${srcdir}/${RTEMS_TOPdir}/VERSION"; then -changequote(,)dnl -RTEMS_VERSION=`grep Version ${srcdir}/${RTEMS_TOPdir}/VERSION | \ -sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'` -changequote([,])dnl -else -AC_MSG_ERROR(Unable to find ${RTEMS_TOPdir}/VERSION) -fi -if test -z "$RTEMS_VERSION"; then -AC_MSG_ERROR(Unable to determine version) -fi -AC_MSG_RESULT($RTEMS_VERSION) -])dnl - -dnl -dnl $Id$ -dnl - -dnl canonicalize target cpu -dnl NOTE: Most rtems targets do not fullfil autoconf's -dnl target naming conventions "processor-vendor-os" -dnl Therefore autoconf's AC_CANONICAL_TARGET will fail for them -dnl and we have to fix it for rtems ourselves - -AC_DEFUN(RTEMS_CANONICAL_TARGET_CPU, -[ -AC_CANONICAL_SYSTEM -AC_MSG_CHECKING(rtems target cpu) -changequote(,)dnl -case "${target}" in - # hpux unix port should go here - i[3456]86-go32-rtems*) - RTEMS_CPU=i386 - ;; - i[3456]86-pc-linux*) # unix "simulator" port - RTEMS_CPU=unix - ;; - i[3456]86-*freebsd2*) # unix "simulator" port - RTEMS_CPU=unix - ;; - no_cpu-*rtems*) - RTEMS_CPU=no_cpu - ;; - sparc-sun-solaris*) # unix "simulator" port - RTEMS_CPU=unix - ;; - *) - RTEMS_CPU=`echo $target | sed 's%^\([^-]*\)-\(.*\)$%\1%'` - ;; -esac -changequote([,])dnl -AC_SUBST(RTEMS_CPU) -AC_MSG_RESULT($RTEMS_CPU) -]) - -# Add --enable-maintainer-mode option to configure. -# From Jim Meyering - -# serial 1 - -AC_DEFUN(AM_MAINTAINER_MODE, -[AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) - dnl maintainer-mode is disabled by default - AC_ARG_ENABLE(maintainer-mode, -[ --enable-maintainer-mode enable make rules and dependencies not useful - (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 -] -) - -# Define a conditional. - -AC_DEFUN(AM_CONDITIONAL, -[AC_SUBST($1_TRUE) -AC_SUBST($1_FALSE) -if $2; then - $1_TRUE= - $1_FALSE='#' -else - $1_TRUE='#' - $1_FALSE= -fi]) - -dnl $Id$ - -AC_DEFUN(RTEMS_ENABLE_NETWORKING, -[ -AC_ARG_ENABLE(networking, -[ --enable-networking enable TCP/IP stack], -[case "${enableval}" in - yes) RTEMS_HAS_NETWORKING=yes ;; - no) RTEMS_HAS_NETWORKING=no ;; - *) AC_MSG_ERROR(bad value ${enableval} for enable-networking option) ;; -esac],[RTEMS_HAS_NETWORKING=yes]) -AC_SUBST(RTEMS_HAS_NETWORKING)dnl -]) - -dnl $Id$ - -AC_DEFUN(RTEMS_ENABLE_LIBCDIR, -[ -AC_ARG_ENABLE(libcdir, -[ --enable-libcdir=directory set the directory for the C library], -[ RTEMS_LIBC_DIR="${enableval}" ; \ -test -d ${enableval} || AC_MSG_ERROR("$enableval is not a directory" ) ] ) -AC_SUBST(RTEMS_LIBC_DIR)dnl -]) - -AC_DEFUN(RTEMS_ENABLE_BARE, -[ -AC_ARG_ENABLE(bare-cpu-cflags, -[ --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, -[ --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$ - -dnl Override the set of BSPs to be built. -dnl used by the toplevel configure script -dnl RTEMS_ENABLE_RTEMSBSP(rtems_bsp_list) -AC_DEFUN(RTEMS_ENABLE_RTEMSBSP, -[ -AC_ARG_ENABLE(rtemsbsp, -[ --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=""]) -]) - -dnl Pass a single BSP via an environment variable -dnl used by per BSP configure scripts -AC_DEFUN(RTEMS_ENV_RTEMSBSP, -[dnl -AC_MSG_CHECKING([for RTEMS_BSP]) -AC_CACHE_VAL(rtems_cv_RTEMS_BSP, -[dnl - test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP"; -])dnl -if test -z "$rtems_cv_RTEMS_BSP"; then - AC_MSG_ERROR([Missing RTEMS_BSP]) -fi -RTEMS_BSP="$rtems_cv_RTEMS_BSP" -AC_MSG_RESULT(${RTEMS_BSP}) -AC_SUBST(RTEMS_BSP) -]) - -dnl $Id$ - -dnl check if RTEMS support a cpu -AC_DEFUN(RTEMS_CHECK_CPU, -[dnl -AC_REQUIRE([RTEMS_TOP]) -AC_REQUIRE([RTEMS_CANONICAL_TARGET_CPU]) -# Is this a supported CPU? -AC_MSG_CHECKING([if cpu $RTEMS_CPU is supported]) -if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then - AC_MSG_RESULT(yes) -else - AC_MSG_ERROR(no) -fi -])dnl - - -dnl $Id$ - -AC_DEFUN(RTEMS_CANONICAL_HOST, -[dnl -AC_REQUIRE([AC_CANONICAL_HOST]) -RTEMS_HOST=$host_os -changequote(,)dnl -case "${target}" in - # hpux unix port should go here - i[3456]86-pc-linux*) # unix "simulator" port - RTEMS_HOST=Linux - ;; - i[3456]86-*freebsd2*) # unix "simulator" port - RTEMS_HOST=FreeBSD - ;; - sparc-sun-solaris*) # unix "simulator" port - RTEMS_HOST=Solaris - ;; - *) - ;; -esac -changequote([,])dnl -AC_SUBST(RTEMS_HOST) -])dnl - -dnl -dnl $Id$ -dnl - -AC_DEFUN(RTEMS_PROJECT_ROOT, -[dnl -AC_REQUIRE([RTEMS_TOP]) -if test "$TARGET_SUBDIR" = "." ; then -PROJECT_ROOT=$RTEMS_TOPdir/'$(top_builddir)'; -else -PROJECT_ROOT=../$RTEMS_TOPdir/'$(top_builddir)' -fi -AC_SUBST(PROJECT_ROOT) - -RTEMS_ROOT=$RTEMS_TOPdir/'$(top_builddir)'/c/$RTEMS_BSP -AC_SUBST(RTEMS_ROOT) - -INSTALL_CHANGE="\$(KSH) \$(PROJECT_ROOT)/tools/build/install-if-change" -AC_SUBST(INSTALL_CHANGE) - -PACKHEX="\$(PROJECT_ROOT)/tools/build/packhex" -AC_SUBST(PACKHEX) -]) - - -dnl -dnl $Id$ -dnl -dnl Check for target gcc -dnl -dnl 98/05/20 Ralf Corsepius (corsepiu@faw.uni-ulm.de) -dnl Completely reworked - -AC_DEFUN(RTEMS_PROG_CC, -[ -AC_BEFORE([$0], [AC_PROG_CPP])dnl -AC_BEFORE([$0], [AC_PROG_CC])dnl -AC_REQUIRE([RTEMS_TOOL_PREFIX])dnl - -dnl Only accept gcc and cc -dnl NOTE: This might be too restrictive for native compilation -AC_PATH_PROGS(CC_FOR_TARGET, "$program_prefix"gcc "$program_prefix"cc ) -test -z "$CC_FOR_TARGET" \ - && AC_MSG_ERROR([no acceptable cc found in \$PATH]) - -dnl backup -rtems_save_CC=$CC -rtems_save_CFLAGS=$CFLAGS - -dnl temporarily set CC -CC=$CC_FOR_TARGET - -AC_PROG_CC_WORKS -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 - -rtems_cv_prog_gcc=$ac_cv_prog_gcc -rtems_cv_prog_cc_g=$ac_cv_prog_cc_g -rtems_cv_prog_cc_works=$ac_cv_prog_cc_works -rtems_cv_prog_cc_cross=$ac_cv_prog_cc_cross - -dnl restore initial values -CC=$rtems_save_CC -CFLAGS=$rtems_save_CFLAGS - -unset ac_cv_prog_gcc -unset ac_cv_prog_cc_g -unset ac_cv_prog_cc_works -unset ac_cv_prog_cc_cross -]) - -AC_DEFUN(RTEMS_PROG_CC_FOR_TARGET, -[ -dnl check target cc -RTEMS_PROG_CC -dnl check if the compiler supports --specs -RTEMS_GCC_SPECS -dnl check if the target compiler may use --pipe -RTEMS_GCC_PIPE -dnl check if the compiler supports --specs if gcc28 is requested -if test "$RTEMS_USE_GCC272" != "yes" ; then - if test "$rtems_cv_gcc_specs" = "no"; then - AC_MSG_WARN([*** disabling --enable-gcc28]) - RTEMS_USE_GCC272=yes - fi -fi -test "$rtems_cv_gcc_pipe" = "yes" && CC_FOR_TARGET="$CC_FOR_TARGET --pipe" - -dnl FIXME: HACK for egcs/cygwin mixing '\\' and '/' in gcc -print-* -case $host_os in -*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;; -*) ;; -esac -AC_SUBST(GCCSED) -]) - -dnl -dnl $Id$ -dnl -dnl Set program_prefix -dnl -dnl 98/05/20 Ralf Corsepius (corsepiu@faw.uni-ulm.de) -dnl Extracted from configure - -AC_DEFUN(RTEMS_TOOL_PREFIX, -[AC_REQUIRE([AC_CANONICAL_TARGET])dnl -AC_REQUIRE([AC_CANONICAL_BUILD])dnl - -changequote(,)dnl -if [ "${program_prefix}" = "NONE" ] ; then - if [ "${target}" = "${host}" ] ; then - program_prefix= - else - program_prefix=${target}- - fi -fi -changequote([,])dnl -]) - -dnl -dnl $Id$ -dnl -dnl Check whether the target compiler accepts -specs -dnl -dnl 98/02/11 Ralf Corsepius corsepiu@faw.uni-ulm.de -dnl - -AC_DEFUN(RTEMS_GCC_SPECS, -[AC_REQUIRE([RTEMS_PROG_CC]) -AC_CACHE_CHECK(whether $CC_FOR_TARGET accepts -specs,rtems_cv_gcc_specs, -[ -rtems_cv_gcc_specs=no -if test "$rtems_cv_prog_gcc" = "yes"; then - touch confspec - echo 'void f(){}' >conftest.c - if test -z "`${CC_FOR_TARGET} -specs confspec -c conftest.c 2>&1`";then - rtems_cv_gcc_specs=yes - fi -fi -rm -f confspec conftest* -])]) - -dnl -dnl $Id$ -dnl -dnl Check whether the target compiler accepts -pipe -dnl -dnl 98/02/11 Ralf Corsepius corsepiu@faw.uni-ulm.de -dnl - -AC_DEFUN(RTEMS_GCC_PIPE, -[AC_REQUIRE([RTEMS_PROG_CC]) -AC_REQUIRE([AC_CANONICAL_HOST]) -AC_CACHE_CHECK(whether $CC_FOR_TARGET accepts --pipe,rtems_cv_gcc_pipe, -[ -rtems_cv_gcc_pipe=no -if test "$rtems_cv_prog_gcc" = "yes"; then -case "$host_os" in - cygwin*) - ;; - *) - echo 'void f(){}' >conftest.c - if test -z "`${CC_FOR_TARGET} --pipe -c conftest.c 2>&1`";then - rtems_cv_gcc_pipe=yes - fi - rm -f conftest* - ;; -esac -fi -]) -]) - -dnl -dnl $Id$ -dnl -dnl Set target tools -dnl -dnl 98/06/23 Ralf Corsepius (corsepiu@faw.uni-ulm.de) -dnl fixing cache/environment variable handling -dnl adding checks for cygwin/egcs '\\'-bug -dnl adding checks for ranlib/ar -s problem -dnl -dnl 98/02/12 Ralf Corsepius (corsepiu@faw.uni-ulm.de) -dnl - -AC_DEFUN(RTEMS_GCC_PRINT, -[ case $host_os in - *cygwin*) - dnl FIXME: Hack for cygwin/egcs reporting mixed '\\' and '/' - dnl Should be removed once cygwin/egcs reports '/' only - $1=`$CC_FOR_TARGET --print-prog-name=$2 | sed -e 's%\\\\%/%g' ` - ;; - *) - $1=`$CC_FOR_TARGET --print-prog-name=$2` - ;; - esac -]) - -AC_DEFUN(RTEMS_PATH_TOOL, -[ -AC_MSG_CHECKING([target's $2]) -AC_CACHE_VAL(ac_cv_path_$1,:) -AC_MSG_RESULT([$ac_cv_path_$1]) - -if test -n "$ac_cv_path_$1"; then - dnl retrieve the value from the cache - $1=$ac_cv_path_$1 -else - dnl the cache was not set - if test -z "[$]$1" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - RTEMS_GCC_PRINT($1,$2) - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - AC_MSG_CHECKING([whether environment variable $1 is an absolute path]) - case "[$]$1" in - /*) # valid - AC_MSG_RESULT("yes") - ;; - *) # invalid for AC_PATH_PROG - AC_MSG_RESULT("no") - AC_MSG_ERROR([***] - [Environment variable $1 should either] - [be unset (preferred) or contain an absolute path]) - ;; - esac - fi - - AC_PATH_PROG($1,"$program_prefix"$2,$3) -fi -]) - -AC_DEFUN(RTEMS_CANONICALIZE_TOOLS, -[AC_REQUIRE([RTEMS_PROG_CC])dnl - -dnl FIXME: What shall be done if these tools are not available? - RTEMS_PATH_TOOL(AR_FOR_TARGET,ar,no) - RTEMS_PATH_TOOL(AS_FOR_TARGET,as,no) - RTEMS_PATH_TOOL(LD_FOR_TARGET,ld,no) - RTEMS_PATH_TOOL(NM_FOR_TARGET,nm,no) - -dnl special treatment of ranlib - RTEMS_PATH_TOOL(RANLIB_FOR_TARGET,ranlib,no) - if test "$RANLIB_FOR_TARGET" = "no"; then - # ranlib wasn't found; check if ar -s is available - RTEMS_AR_FOR_TARGET_S - if test $rtems_cv_AR_FOR_TARGET_S = "yes" ; then - dnl override RANLIB_FOR_TARGET's cache - ac_cv_path_RANLIB_FOR_TARGET="$AR_FOR_TARGET -s" - RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET - else - AC_MSG_ERROR([***] - [Can't figure out how to build a library index] - [Neither ranlib nor ar -s seem to be available] ) - fi - fi - -dnl NOTE: These may not be available if not using gnutools - RTEMS_PATH_TOOL(OBJCOPY_FOR_TARGET,objcopy,no) - RTEMS_PATH_TOOL(SIZE_FOR_TARGET,size,no) - RTEMS_PATH_TOOL(STRIP_FOR_TARGET,strip,no) -]) - -dnl -dnl $Id$ -dnl - -AC_DEFUN(RTEMS_AR_FOR_TARGET_S, -[ -AC_CACHE_CHECK(whether $AR_FOR_TARGET -s works, -rtems_cv_AR_FOR_TARGET_S, -[ -cat > conftest.$ac_ext <&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - eval "enable_${ac_feature}=no" ;; - - -enable-* | --enable-*) - ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; } - fi - ac_feature=`echo $ac_feature| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "enable_${ac_feature}='$ac_optarg'" ;; - - -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ - | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ - | --exec | --exe | --ex) - ac_prev=exec_prefix ;; - -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ - | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ - | --exec=* | --exe=* | --ex=*) - exec_prefix="$ac_optarg" ;; - - -gas | --gas | --ga | --g) - # Obsolete; use --with-gas. - with_gas=yes ;; - - -help | --help | --hel | --he) - # Omit some internal or obsolete options to make the list less imposing. - # This message is too long to be a string in the A/UX 3.1 sh. - cat << EOF -Usage: configure [options] [host] -Options: [defaults in brackets after descriptions] -Configuration: - --cache-file=FILE cache test results in FILE - --help print this message - --no-create do not create output files - --quiet, --silent do not print \`checking...' messages - --version print the version of autoconf that created configure -Directory and file names: - --prefix=PREFIX install architecture-independent files in PREFIX - [$ac_default_prefix] - --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX - [same as prefix] - --bindir=DIR user executables in DIR [EPREFIX/bin] - --sbindir=DIR system admin executables in DIR [EPREFIX/sbin] - --libexecdir=DIR program executables in DIR [EPREFIX/libexec] - --datadir=DIR read-only architecture-independent data in DIR - [PREFIX/share] - --sysconfdir=DIR read-only single-machine data in DIR [PREFIX/etc] - --sharedstatedir=DIR modifiable architecture-independent data in DIR - [PREFIX/com] - --localstatedir=DIR modifiable single-machine data in DIR [PREFIX/var] - --libdir=DIR object code libraries in DIR [EPREFIX/lib] - --includedir=DIR C header files in DIR [PREFIX/include] - --oldincludedir=DIR C header files for non-gcc in DIR [/usr/include] - --infodir=DIR info documentation in DIR [PREFIX/info] - --mandir=DIR man documentation in DIR [PREFIX/man] - --srcdir=DIR find the sources in DIR [configure dir or ..] - --program-prefix=PREFIX prepend PREFIX to installed program names - --program-suffix=SUFFIX append SUFFIX to installed program names - --program-transform-name=PROGRAM - run sed PROGRAM on installed program names -EOF - cat << EOF -Host type: - --build=BUILD configure for building on BUILD [BUILD=HOST] - --host=HOST configure for HOST [guessed] - --target=TARGET configure for TARGET [TARGET=HOST] -Features and packages: - --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) - --enable-FEATURE[=ARG] include FEATURE [ARG=yes] - --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] - --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --x-includes=DIR X include files are in DIR - --x-libraries=DIR X library files are in DIR -EOF - if test -n "$ac_help"; then - echo "--enable and --with options recognized:$ac_help" - fi - exit 0 ;; - - -host | --host | --hos | --ho) - ac_prev=host ;; - -host=* | --host=* | --hos=* | --ho=*) - host="$ac_optarg" ;; - - -includedir | --includedir | --includedi | --included | --include \ - | --includ | --inclu | --incl | --inc) - ac_prev=includedir ;; - -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ - | --includ=* | --inclu=* | --incl=* | --inc=*) - includedir="$ac_optarg" ;; - - -infodir | --infodir | --infodi | --infod | --info | --inf) - ac_prev=infodir ;; - -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) - infodir="$ac_optarg" ;; - - -libdir | --libdir | --libdi | --libd) - ac_prev=libdir ;; - -libdir=* | --libdir=* | --libdi=* | --libd=*) - libdir="$ac_optarg" ;; - - -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ - | --libexe | --libex | --libe) - ac_prev=libexecdir ;; - -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ - | --libexe=* | --libex=* | --libe=*) - libexecdir="$ac_optarg" ;; - - -localstatedir | --localstatedir | --localstatedi | --localstated \ - | --localstate | --localstat | --localsta | --localst \ - | --locals | --local | --loca | --loc | --lo) - ac_prev=localstatedir ;; - -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ - | --localstate=* | --localstat=* | --localsta=* | --localst=* \ - | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) - localstatedir="$ac_optarg" ;; - - -mandir | --mandir | --mandi | --mand | --man | --ma | --m) - ac_prev=mandir ;; - -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) - mandir="$ac_optarg" ;; - - -nfp | --nfp | --nf) - # Obsolete; use --without-fp. - with_fp=no ;; - - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) - no_create=yes ;; - - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) - no_recursion=yes ;; - - -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ - | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ - | --oldin | --oldi | --old | --ol | --o) - ac_prev=oldincludedir ;; - -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ - | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ - | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) - oldincludedir="$ac_optarg" ;; - - -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) - ac_prev=prefix ;; - -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) - prefix="$ac_optarg" ;; - - -program-prefix | --program-prefix | --program-prefi | --program-pref \ - | --program-pre | --program-pr | --program-p) - ac_prev=program_prefix ;; - -program-prefix=* | --program-prefix=* | --program-prefi=* \ - | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) - program_prefix="$ac_optarg" ;; - - -program-suffix | --program-suffix | --program-suffi | --program-suff \ - | --program-suf | --program-su | --program-s) - ac_prev=program_suffix ;; - -program-suffix=* | --program-suffix=* | --program-suffi=* \ - | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) - program_suffix="$ac_optarg" ;; - - -program-transform-name | --program-transform-name \ - | --program-transform-nam | --program-transform-na \ - | --program-transform-n | --program-transform- \ - | --program-transform | --program-transfor \ - | --program-transfo | --program-transf \ - | --program-trans | --program-tran \ - | --progr-tra | --program-tr | --program-t) - ac_prev=program_transform_name ;; - -program-transform-name=* | --program-transform-name=* \ - | --program-transform-nam=* | --program-transform-na=* \ - | --program-transform-n=* | --program-transform-=* \ - | --program-transform=* | --program-transfor=* \ - | --program-transfo=* | --program-transf=* \ - | --program-trans=* | --program-tran=* \ - | --progr-tra=* | --program-tr=* | --program-t=*) - program_transform_name="$ac_optarg" ;; - - -q | -quiet | --quiet | --quie | --qui | --qu | --q \ - | -silent | --silent | --silen | --sile | --sil) - silent=yes ;; - - -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) - ac_prev=sbindir ;; - -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ - | --sbi=* | --sb=*) - sbindir="$ac_optarg" ;; - - -sharedstatedir | --sharedstatedir | --sharedstatedi \ - | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ - | --sharedst | --shareds | --shared | --share | --shar \ - | --sha | --sh) - ac_prev=sharedstatedir ;; - -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ - | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ - | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ - | --sha=* | --sh=*) - sharedstatedir="$ac_optarg" ;; - - -site | --site | --sit) - ac_prev=site ;; - -site=* | --site=* | --sit=*) - site="$ac_optarg" ;; - - -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) - ac_prev=srcdir ;; - -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) - srcdir="$ac_optarg" ;; - - -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ - | --syscon | --sysco | --sysc | --sys | --sy) - ac_prev=sysconfdir ;; - -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ - | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) - sysconfdir="$ac_optarg" ;; - - -target | --target | --targe | --targ | --tar | --ta | --t) - ac_prev=target ;; - -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) - target="$ac_optarg" ;; - - -v | -verbose | --verbose | --verbos | --verbo | --verb) - verbose=yes ;; - - -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.13" - exit 0 ;; - - -with-* | --with-*) - ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - case "$ac_option" in - *=*) ;; - *) ac_optarg=yes ;; - esac - eval "with_${ac_package}='$ac_optarg'" ;; - - -without-* | --without-*) - ac_package=`echo $ac_option|sed -e 's/-*without-//'` - # Reject names that are not valid shell variable names. - if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then - { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; } - fi - ac_package=`echo $ac_package| sed 's/-/_/g'` - eval "with_${ac_package}=no" ;; - - --x) - # Obsolete; use --with-x. - with_x=yes ;; - - -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ - | --x-incl | --x-inc | --x-in | --x-i) - ac_prev=x_includes ;; - -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ - | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) - x_includes="$ac_optarg" ;; - - -x-libraries | --x-libraries | --x-librarie | --x-librari \ - | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) - ac_prev=x_libraries ;; - -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ - | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) - x_libraries="$ac_optarg" ;; - - -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; } - ;; - - *) - if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then - echo "configure: warning: $ac_option: invalid host type" 1>&2 - fi - if test "x$nonopt" != xNONE; then - { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } - fi - nonopt="$ac_option" - ;; - - esac -done - -if test -n "$ac_prev"; then - { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; } -fi - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -# File descriptor usage: -# 0 standard input -# 1 file creation -# 2 errors and warnings -# 3 some systems may open it to /dev/tty -# 4 used on the Kubota Titan -# 6 checking for... messages and results -# 5 compiler messages saved in config.log -if test "$silent" = yes; then - exec 6>/dev/null -else - exec 6>&1 -fi -exec 5>./config.log - -echo "\ -This file contains any messages produced by compilers while -running configure, to aid debugging if configure makes a mistake. -" 1>&5 - -# Strip out --no-create and --no-recursion so they do not pile up. -# Also quote any args containing shell metacharacters. -ac_configure_args= -for ac_arg -do - case "$ac_arg" in - -no-create | --no-create | --no-creat | --no-crea | --no-cre \ - | --no-cr | --no-c) ;; - -no-recursion | --no-recursion | --no-recursio | --no-recursi \ - | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;; - *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*) - ac_configure_args="$ac_configure_args '$ac_arg'" ;; - *) ac_configure_args="$ac_configure_args $ac_arg" ;; - esac -done - -# NLS nuisances. -# Only set these to C if already set. These must not be set unconditionally -# because not all systems understand e.g. LANG=C (notably SCO). -# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'! -# Non-C LC_CTYPE values break the ctype check. -if test "${LANG+set}" = set; then LANG=C; export LANG; fi -if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi -if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi -if test "${LC_CTYPE+set}" = set; then LC_CTYPE=C; export LC_CTYPE; fi - -# confdefs.h avoids OS command line length limits that DEFS can exceed. -rm -rf conftest* confdefs.h -# AIX cpp loses on an empty file, so make sure it contains at least a newline. -echo > confdefs.h - -# A filename unique to this package, relative to the directory that -# configure is in, which we can look for to find out if srcdir is correct. -ac_unique_file=xdr.c - -# Find the source files, if location was not specified. -if test -z "$srcdir"; then - ac_srcdir_defaulted=yes - # Try the directory containing this script, then its parent. - ac_prog=$0 - ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'` - test "x$ac_confdir" = "x$ac_prog" && ac_confdir=. - srcdir=$ac_confdir - if test ! -r $srcdir/$ac_unique_file; then - srcdir=.. - fi -else - ac_srcdir_defaulted=no -fi -if test ! -r $srcdir/$ac_unique_file; then - if test "$ac_srcdir_defaulted" = yes; then - { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; } - else - { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; } - fi -fi -srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'` - -# Prefer explicitly selected file to automatically selected ones. -if test -z "$CONFIG_SITE"; then - if test "x$prefix" != xNONE; then - CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" - else - CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" - fi -fi -for ac_site_file in $CONFIG_SITE; do - if test -r "$ac_site_file"; then - echo "loading site script $ac_site_file" - . "$ac_site_file" - fi -done - -if test -r "$cache_file"; then - echo "loading cache $cache_file" - . $cache_file -else - echo "creating cache $cache_file" - > $cache_file -fi - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -ac_exeext= -ac_objext=o -if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then - # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu. - if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then - ac_n= ac_c=' -' ac_t=' ' - else - ac_n=-n ac_c= ac_t= - fi -else - ac_n= ac_c='\c' ac_t= -fi - - -# Check whether --with-target-subdir or --without-target-subdir was given. -if test "${with_target_subdir+set}" = set; then - withval="$with_target_subdir" - TARGET_SUBDIR="$withval" -else - TARGET_SUBDIR="." -fi - - -RTEMS_TOPdir="../../../.."; - - -echo $ac_n "checking for RTEMS Version""... $ac_c" 1>&6 -echo "configure:553: checking for RTEMS Version" >&5 -if test -r "${srcdir}/${RTEMS_TOPdir}/VERSION"; then -RTEMS_VERSION=`grep Version ${srcdir}/${RTEMS_TOPdir}/VERSION | \ -sed -e 's%RTEMS[ ]*Version[ ]*\(.*\)[ ]*%\1%g'` -else -{ echo "configure: error: Unable to find ${RTEMS_TOPdir}/VERSION" 1>&2; exit 1; } -fi -if test -z "$RTEMS_VERSION"; then -{ echo "configure: error: Unable to determine version" 1>&2; exit 1; } -fi -echo "$ac_t""$RTEMS_VERSION" 1>&6 - -ac_aux_dir= -for ac_dir in ../../../.. $srcdir/../../../..; do - if test -f $ac_dir/install-sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f $ac_dir/install.sh; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - fi -done -if test -z "$ac_aux_dir"; then - { echo "configure: error: can not find install-sh or install.sh in ../../../.. $srcdir/../../../.." 1>&2; exit 1; } -fi -ac_config_guess=$ac_aux_dir/config.guess -ac_config_sub=$ac_aux_dir/config.sub -ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - - - - -# Do some error checking and defaulting for the host and target type. -# The inputs are: -# configure --host=HOST --target=TARGET --build=BUILD NONOPT -# -# The rules are: -# 1. You are not allowed to specify --host, --target, and nonopt at the -# same time. -# 2. Host defaults to nonopt. -# 3. If nonopt is not specified, then host defaults to the current host, -# as determined by config.guess. -# 4. Target and build default to nonopt. -# 5. If nonopt is not specified, then target and build default to host. - -# The aliases save the names the user supplied, while $host etc. -# will get canonicalized. -case $host---$target---$nonopt in -NONE---*---* | *---NONE---* | *---*---NONE) ;; -*) { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; } ;; -esac - - -# Make sure we can run config.sub. -if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then : -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:614: checking host system type" >&5 - -host_alias=$host -case "$host_alias" in -NONE) - case $nonopt in - NONE) - if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then : - else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; } - fi ;; - *) host_alias=$nonopt ;; - esac ;; -esac - -host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias` -host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -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:635: checking target system type" >&5 - -target_alias=$target -case "$target_alias" in -NONE) - case $nonopt in - NONE) target_alias=$host_alias ;; - *) target_alias=$nonopt ;; - esac ;; -esac - -target=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $target_alias` -target_cpu=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -target_vendor=`echo $target | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -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:653: checking build system type" >&5 - -build_alias=$build -case "$build_alias" in -NONE) - case $nonopt in - NONE) build_alias=$host_alias ;; - *) build_alias=$nonopt ;; - esac ;; -esac - -build=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $build_alias` -build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` -build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` -build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` -echo "$ac_t""$build" 1>&6 - -test "$host_alias" != "$target_alias" && - test "$program_prefix$program_suffix$program_transform_name" = \ - NONENONEs,x,x, && - program_prefix=${target_alias}- - -echo $ac_n "checking rtems target cpu""... $ac_c" 1>&6 -echo "configure:676: checking rtems target cpu" >&5 -case "${target}" in - # hpux unix port should go here - i[3456]86-go32-rtems*) - RTEMS_CPU=i386 - ;; - i[3456]86-pc-linux*) # unix "simulator" port - RTEMS_CPU=unix - ;; - i[3456]86-*freebsd2*) # unix "simulator" port - RTEMS_CPU=unix - ;; - no_cpu-*rtems*) - RTEMS_CPU=no_cpu - ;; - sparc-sun-solaris*) # unix "simulator" port - RTEMS_CPU=unix - ;; - *) - RTEMS_CPU=`echo $target | sed 's%^\([^-]*\)-\(.*\)$%\1%'` - ;; -esac - -echo "$ac_t""$RTEMS_CPU" 1>&6 - - -echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 -echo "configure:703: checking whether ${MAKE-make} sets \${MAKE}" >&5 -set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` -if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - cat > conftestmake <<\EOF -all: - @echo 'ac_maketemp="${MAKE}"' -EOF -# GNU make sometimes prints "make[1]: Entering...", which would confuse us. -eval `${MAKE-make} -f conftestmake 2>/dev/null | grep temp=` -if test -n "$ac_maketemp"; then - eval ac_cv_prog_make_${ac_make}_set=yes -else - eval ac_cv_prog_make_${ac_make}_set=no -fi -rm -f conftestmake -fi -if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then - echo "$ac_t""yes" 1>&6 - SET_MAKE= -else - echo "$ac_t""no" 1>&6 - SET_MAKE="MAKE=${MAKE-make}" -fi - -# Find a good install program. We prefer a C program (faster), -# so one script is as good as another. But avoid the broken or -# incompatible versions: -# SysV /etc/install, /usr/sbin/install -# SunOS /usr/etc/install -# IRIX /sbin/install -# AIX /bin/install -# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag -# AFS /usr/afsws/bin/install, which mishandles nonexistent args -# 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:741: 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 -else - IFS="${IFS= }"; ac_save_IFS="$IFS"; IFS=":" - for ac_dir in $PATH; do - # Account for people who put trailing slashes in PATH elements. - case "$ac_dir/" in - /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;; - *) - # OSF1 and SCO ODT 3.0 have their own names for install. - # Don't use installbsd from OSF since it installs stuff as root - # by default. - for ac_prog in ginstall scoinst install; do - if test -f $ac_dir/$ac_prog; then - if test $ac_prog = install && - grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then - # AIX install. It has an incompatible calling convention. - : - else - ac_cv_path_install="$ac_dir/$ac_prog -c" - break 2 - fi - fi - done - ;; - esac - done - IFS="$ac_save_IFS" - -fi - if test "${ac_cv_path_install+set}" = set; then - INSTALL="$ac_cv_path_install" - else - # As a last resort, use the slow shell script. We don't cache a - # path for INSTALL within a source directory, because that will - # break other packages using the cache if that directory is - # removed, or if the path is relative. - INSTALL="$ac_install_sh" - fi -fi -echo "$ac_t""$INSTALL" 1>&6 - -# Use test -z because SunOS4 sh mishandles braces in ${var-val}. -# It thinks the first close brace ends the variable substitution. -test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' - -test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}' - -test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - -# AM_INIT_AUTOMAKE(rtems-c-src-lib-librpc,$RTEMS_VERSION,no) -echo $ac_n "checking whether to enable maintainer-specific portions of Makefiles""... $ac_c" 1>&6 -echo "configure:795: checking whether to enable maintainer-specific portions of Makefiles" >&5 - # Check whether --enable-maintainer-mode or --disable-maintainer-mode was given. -if test "${enable_maintainer_mode+set}" = set; then - enableval="$enable_maintainer_mode" - USE_MAINTAINER_MODE=$enableval -else - USE_MAINTAINER_MODE=no -fi - - echo "$ac_t""$USE_MAINTAINER_MODE" 1>&6 - - -if test $USE_MAINTAINER_MODE = yes; then - MAINTAINER_MODE_TRUE= - MAINTAINER_MODE_FALSE='#' -else - MAINTAINER_MODE_TRUE='#' - MAINTAINER_MODE_FALSE= -fi - MAINT=$MAINTAINER_MODE_TRUE - - - - -# Check whether --enable-networking or --disable-networking was given. -if test "${enable_networking+set}" = set; then - enableval="$enable_networking" - case "${enableval}" in - yes) RTEMS_HAS_NETWORKING=yes ;; - no) RTEMS_HAS_NETWORKING=no ;; - *) { echo "configure: error: bad value ${enableval} for enable-networking option" 1>&2; exit 1; } ;; -esac -else - RTEMS_HAS_NETWORKING=yes -fi - - - -# Check whether --enable-libcdir or --disable-libcdir was given. -if test "${enable_libcdir+set}" = set; then - enableval="$enable_libcdir" - RTEMS_LIBC_DIR="${enableval}" ; \ -test -d ${enableval} || { echo "configure: error: "$enableval is not a directory" " 1>&2; exit 1; } -fi - - - -# Check whether --enable-bare-cpu-cflags or --disable-bare-cpu-cflags was given. -if test "${enable_bare_cpu_cflags+set}" = set; then - enableval="$enable_bare_cpu_cflags" - case "${enableval}" in - no) BARE_CPU_CFLAGS="" ;; - *) BARE_CPU_CFLAGS="${enableval}" ;; -esac -else - BARE_CPU_CFLAGS="" -fi - - -# Check whether --enable-bare-cpu-model or --disable-bare-cpu-model was given. -if test "${enable_bare_cpu_model+set}" = set; then - enableval="$enable_bare_cpu_model" - case "${enableval}" in - no) BARE_CPU_MODEL="" ;; - *) BARE_CPU_MODEL="${enableval}" ;; -esac -else - BARE_CPU_MODEL="" -fi - - - -echo $ac_n "checking for RTEMS_BSP""... $ac_c" 1>&6 -echo "configure:868: checking for RTEMS_BSP" >&5 -if eval "test \"`echo '$''{'rtems_cv_RTEMS_BSP'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - test -n "${RTEMS_BSP}" && rtems_cv_RTEMS_BSP="$RTEMS_BSP"; - -fi -if test -z "$rtems_cv_RTEMS_BSP"; then - { echo "configure: error: Missing RTEMS_BSP" 1>&2; exit 1; } -fi -RTEMS_BSP="$rtems_cv_RTEMS_BSP" -echo "$ac_t""${RTEMS_BSP}" 1>&6 - - - - - -# Is this a supported CPU? -echo $ac_n "checking if cpu $RTEMS_CPU is supported""... $ac_c" 1>&6 -echo "configure:887: checking if cpu $RTEMS_CPU is supported" >&5 -if test -d "$srcdir/$RTEMS_TOPdir/c/src/exec/score/cpu/$RTEMS_CPU"; then - echo "$ac_t""yes" 1>&6 -else - { echo "configure: error: no" 1>&2; exit 1; } -fi - - -RTEMS_HOST=$host_os -case "${target}" in - # hpux unix port should go here - i[3456]86-pc-linux*) # unix "simulator" port - RTEMS_HOST=Linux - ;; - i[3456]86-*freebsd2*) # unix "simulator" port - RTEMS_HOST=FreeBSD - ;; - sparc-sun-solaris*) # unix "simulator" port - RTEMS_HOST=Solaris - ;; - *) - ;; -esac - - - - -if test "$TARGET_SUBDIR" = "." ; then -PROJECT_ROOT=$RTEMS_TOPdir/'$(top_builddir)'; -else -PROJECT_ROOT=../$RTEMS_TOPdir/'$(top_builddir)' -fi - - -RTEMS_ROOT=$RTEMS_TOPdir/'$(top_builddir)'/c/$RTEMS_BSP - - -INSTALL_CHANGE="\$(KSH) \$(PROJECT_ROOT)/tools/build/install-if-change" - - -PACKHEX="\$(PROJECT_ROOT)/tools/build/packhex" - - - - -if [ "${program_prefix}" = "NONE" ] ; then - if [ "${target}" = "${host}" ] ; then - program_prefix= - else - program_prefix=${target}- - fi -fi - - - - -for ac_prog in "$program_prefix"gcc "$program_prefix"cc -do -# Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:948: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_CC_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$CC_FOR_TARGET" in - /*) - ac_cv_path_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_CC_FOR_TARGET="$CC_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_CC_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - ;; -esac -fi -CC_FOR_TARGET="$ac_cv_path_CC_FOR_TARGET" -if test -n "$CC_FOR_TARGET"; then - echo "$ac_t""$CC_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -test -n "$CC_FOR_TARGET" && break -done - -test -z "$CC_FOR_TARGET" \ - && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; } - -rtems_save_CC=$CC -rtems_save_CFLAGS=$CFLAGS - -CC=$CC_FOR_TARGET - -echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:992: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 - -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -cat > conftest.$ac_ext << EOF - -#line 1003 "configure" -#include "confdefs.h" - -main(){return(0);} -EOF -if { (eval echo configure:1008: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - ac_cv_prog_cc_works=yes - # If we can't run a trivial program, we are probably using a cross compiler. - if (./conftest; exit) 2>/dev/null; then - ac_cv_prog_cc_cross=no - else - ac_cv_prog_cc_cross=yes - fi -else - echo "configure: failed program was:" >&5 - cat conftest.$ac_ext >&5 - ac_cv_prog_cc_works=no -fi -rm -fr conftest* -ac_ext=c -# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -ac_cpp='$CPP $CPPFLAGS' -ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -cross_compiling=$ac_cv_prog_cc_cross - -echo "$ac_t""$ac_cv_prog_cc_works" 1>&6 -if test $ac_cv_prog_cc_works = no; then - { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } -fi -echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:1034: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 -echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 -cross_compiling=$ac_cv_prog_cc_cross - -echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:1039: 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 - cat > conftest.c <&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes -else - ac_cv_prog_gcc=no -fi -fi - -echo "$ac_t""$ac_cv_prog_gcc" 1>&6 - -if test $ac_cv_prog_gcc = yes; then - GCC=yes - ac_test_CFLAGS="${CFLAGS+set}" - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:1063: 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 - echo 'void f(){}' > conftest.c -if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then - ac_cv_prog_cc_g=yes -else - ac_cv_prog_cc_g=no -fi -rm -f conftest* - -fi - -echo "$ac_t""$ac_cv_prog_cc_g" 1>&6 - 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 - -rtems_cv_prog_gcc=$ac_cv_prog_gcc -rtems_cv_prog_cc_g=$ac_cv_prog_cc_g -rtems_cv_prog_cc_works=$ac_cv_prog_cc_works -rtems_cv_prog_cc_cross=$ac_cv_prog_cc_cross - -CC=$rtems_save_CC -CFLAGS=$rtems_save_CFLAGS - -unset ac_cv_prog_gcc -unset ac_cv_prog_cc_g -unset ac_cv_prog_cc_works -unset ac_cv_prog_cc_cross - - -echo $ac_n "checking whether $CC_FOR_TARGET accepts -specs""... $ac_c" 1>&6 -echo "configure:1105: checking whether $CC_FOR_TARGET accepts -specs" >&5 -if eval "test \"`echo '$''{'rtems_cv_gcc_specs'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - -rtems_cv_gcc_specs=no -if test "$rtems_cv_prog_gcc" = "yes"; then - touch confspec - echo 'void f(){}' >conftest.c - if test -z "`${CC_FOR_TARGET} -specs confspec -c conftest.c 2>&1`";then - rtems_cv_gcc_specs=yes - fi -fi -rm -f confspec conftest* - -fi - -echo "$ac_t""$rtems_cv_gcc_specs" 1>&6 - - -echo $ac_n "checking whether $CC_FOR_TARGET accepts --pipe""... $ac_c" 1>&6 -echo "configure:1126: checking whether $CC_FOR_TARGET accepts --pipe" >&5 -if eval "test \"`echo '$''{'rtems_cv_gcc_pipe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - -rtems_cv_gcc_pipe=no -if test "$rtems_cv_prog_gcc" = "yes"; then -case "$host_os" in - cygwin*) - ;; - *) - echo 'void f(){}' >conftest.c - if test -z "`${CC_FOR_TARGET} --pipe -c conftest.c 2>&1`";then - rtems_cv_gcc_pipe=yes - fi - rm -f conftest* - ;; -esac -fi - -fi - -echo "$ac_t""$rtems_cv_gcc_pipe" 1>&6 - -if test "$RTEMS_USE_GCC272" != "yes" ; then - if test "$rtems_cv_gcc_specs" = "no"; then - echo "configure: warning: *** disabling --enable-gcc28" 1>&2 - RTEMS_USE_GCC272=yes - fi -fi -test "$rtems_cv_gcc_pipe" = "yes" && CC_FOR_TARGET="$CC_FOR_TARGET --pipe" - -case $host_os in -*cygwin*) GCCSED="| sed 's%\\\\%/%g'" ;; -*) ;; -esac - - - - -echo $ac_n "checking target's ar""... $ac_c" 1>&6 -echo "configure:1167: checking target's ar" >&5 -if eval "test \"`echo '$''{'ac_cv_path_AR_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_AR_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_AR_FOR_TARGET"; then - AR_FOR_TARGET=$ac_cv_path_AR_FOR_TARGET -else - if test -z "$AR_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - AR_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ar | sed -e 's%\\\\%/%g' ` - ;; - *) - AR_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ar` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable AR_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1200: checking whether environment variable AR_FOR_TARGET is an absolute path" >&5 - case "$AR_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable AR_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"ar", so it can be a program name with args. -set dummy "$program_prefix"ar; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1217: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_AR_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$AR_FOR_TARGET" in - /*) - ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_AR_FOR_TARGET="$AR_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_AR_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_AR_FOR_TARGET" && ac_cv_path_AR_FOR_TARGET="no" - ;; -esac -fi -AR_FOR_TARGET="$ac_cv_path_AR_FOR_TARGET" -if test -n "$AR_FOR_TARGET"; then - echo "$ac_t""$AR_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - -echo $ac_n "checking target's as""... $ac_c" 1>&6 -echo "configure:1254: checking target's as" >&5 -if eval "test \"`echo '$''{'ac_cv_path_AS_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_AS_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_AS_FOR_TARGET"; then - AS_FOR_TARGET=$ac_cv_path_AS_FOR_TARGET -else - if test -z "$AS_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - AS_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=as | sed -e 's%\\\\%/%g' ` - ;; - *) - AS_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=as` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable AS_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1287: checking whether environment variable AS_FOR_TARGET is an absolute path" >&5 - case "$AS_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable AS_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"as", so it can be a program name with args. -set dummy "$program_prefix"as; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1304: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_AS_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$AS_FOR_TARGET" in - /*) - ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_AS_FOR_TARGET="$AS_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_AS_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_AS_FOR_TARGET" && ac_cv_path_AS_FOR_TARGET="no" - ;; -esac -fi -AS_FOR_TARGET="$ac_cv_path_AS_FOR_TARGET" -if test -n "$AS_FOR_TARGET"; then - echo "$ac_t""$AS_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - -echo $ac_n "checking target's ld""... $ac_c" 1>&6 -echo "configure:1341: checking target's ld" >&5 -if eval "test \"`echo '$''{'ac_cv_path_LD_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_LD_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_LD_FOR_TARGET"; then - LD_FOR_TARGET=$ac_cv_path_LD_FOR_TARGET -else - if test -z "$LD_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - LD_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ld | sed -e 's%\\\\%/%g' ` - ;; - *) - LD_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ld` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable LD_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1374: checking whether environment variable LD_FOR_TARGET is an absolute path" >&5 - case "$LD_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable LD_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"ld", so it can be a program name with args. -set dummy "$program_prefix"ld; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1391: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_LD_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$LD_FOR_TARGET" in - /*) - ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_LD_FOR_TARGET="$LD_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_LD_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_LD_FOR_TARGET" && ac_cv_path_LD_FOR_TARGET="no" - ;; -esac -fi -LD_FOR_TARGET="$ac_cv_path_LD_FOR_TARGET" -if test -n "$LD_FOR_TARGET"; then - echo "$ac_t""$LD_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - -echo $ac_n "checking target's nm""... $ac_c" 1>&6 -echo "configure:1428: checking target's nm" >&5 -if eval "test \"`echo '$''{'ac_cv_path_NM_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_NM_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_NM_FOR_TARGET"; then - NM_FOR_TARGET=$ac_cv_path_NM_FOR_TARGET -else - if test -z "$NM_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - NM_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=nm | sed -e 's%\\\\%/%g' ` - ;; - *) - NM_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=nm` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable NM_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1461: checking whether environment variable NM_FOR_TARGET is an absolute path" >&5 - case "$NM_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable NM_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"nm", so it can be a program name with args. -set dummy "$program_prefix"nm; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1478: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_NM_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$NM_FOR_TARGET" in - /*) - ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_NM_FOR_TARGET="$NM_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_NM_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_NM_FOR_TARGET" && ac_cv_path_NM_FOR_TARGET="no" - ;; -esac -fi -NM_FOR_TARGET="$ac_cv_path_NM_FOR_TARGET" -if test -n "$NM_FOR_TARGET"; then - echo "$ac_t""$NM_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - - -echo $ac_n "checking target's ranlib""... $ac_c" 1>&6 -echo "configure:1516: checking target's ranlib" >&5 -if eval "test \"`echo '$''{'ac_cv_path_RANLIB_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_RANLIB_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_RANLIB_FOR_TARGET"; then - RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET -else - if test -z "$RANLIB_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - RANLIB_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ranlib | sed -e 's%\\\\%/%g' ` - ;; - *) - RANLIB_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=ranlib` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable RANLIB_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1549: checking whether environment variable RANLIB_FOR_TARGET is an absolute path" >&5 - case "$RANLIB_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable RANLIB_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"ranlib", so it can be a program name with args. -set dummy "$program_prefix"ranlib; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1566: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_RANLIB_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$RANLIB_FOR_TARGET" in - /*) - ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_RANLIB_FOR_TARGET="$RANLIB_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_RANLIB_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_RANLIB_FOR_TARGET" && ac_cv_path_RANLIB_FOR_TARGET="no" - ;; -esac -fi -RANLIB_FOR_TARGET="$ac_cv_path_RANLIB_FOR_TARGET" -if test -n "$RANLIB_FOR_TARGET"; then - echo "$ac_t""$RANLIB_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - if test "$RANLIB_FOR_TARGET" = "no"; then - # ranlib wasn't found; check if ar -s is available - -echo $ac_n "checking whether $AR_FOR_TARGET -s works""... $ac_c" 1>&6 -echo "configure:1605: checking whether $AR_FOR_TARGET -s works" >&5 -if eval "test \"`echo '$''{'rtems_cv_AR_FOR_TARGET_S'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - -cat > conftest.$ac_ext <&5; (eval $ac_try) 2>&5; }; } \ - && { ac_try='$AR_FOR_TARGET -sr conftest.a conftest.o'; { (eval echo configure:1615: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } \ - && test -s conftest.a ; \ -then - rtems_cv_AR_FOR_TARGET_S="yes" -else - rtems_cv_AR_FOR_TARGET_S="no" -fi - rm -f conftest* - -fi - -echo "$ac_t""$rtems_cv_AR_FOR_TARGET_S" 1>&6 - - if test $rtems_cv_AR_FOR_TARGET_S = "yes" ; then - ac_cv_path_RANLIB_FOR_TARGET="$AR_FOR_TARGET -s" - RANLIB_FOR_TARGET=$ac_cv_path_RANLIB_FOR_TARGET - else - { echo "configure: error: *** - Can't figure out how to build a library index - Neither ranlib nor ar -s seem to be available " 1>&2; exit 1; } - fi - fi - - -echo $ac_n "checking target's objcopy""... $ac_c" 1>&6 -echo "configure:1640: checking target's objcopy" >&5 -if eval "test \"`echo '$''{'ac_cv_path_OBJCOPY_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_OBJCOPY_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_OBJCOPY_FOR_TARGET"; then - OBJCOPY_FOR_TARGET=$ac_cv_path_OBJCOPY_FOR_TARGET -else - if test -z "$OBJCOPY_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - OBJCOPY_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=objcopy | sed -e 's%\\\\%/%g' ` - ;; - *) - OBJCOPY_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=objcopy` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable OBJCOPY_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1673: checking whether environment variable OBJCOPY_FOR_TARGET is an absolute path" >&5 - case "$OBJCOPY_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable OBJCOPY_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"objcopy", so it can be a program name with args. -set dummy "$program_prefix"objcopy; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1690: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_OBJCOPY_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$OBJCOPY_FOR_TARGET" in - /*) - ac_cv_path_OBJCOPY_FOR_TARGET="$OBJCOPY_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_OBJCOPY_FOR_TARGET="$OBJCOPY_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_OBJCOPY_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_OBJCOPY_FOR_TARGET" && ac_cv_path_OBJCOPY_FOR_TARGET="no" - ;; -esac -fi -OBJCOPY_FOR_TARGET="$ac_cv_path_OBJCOPY_FOR_TARGET" -if test -n "$OBJCOPY_FOR_TARGET"; then - echo "$ac_t""$OBJCOPY_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - -echo $ac_n "checking target's size""... $ac_c" 1>&6 -echo "configure:1727: checking target's size" >&5 -if eval "test \"`echo '$''{'ac_cv_path_SIZE_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_SIZE_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_SIZE_FOR_TARGET"; then - SIZE_FOR_TARGET=$ac_cv_path_SIZE_FOR_TARGET -else - if test -z "$SIZE_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - SIZE_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=size | sed -e 's%\\\\%/%g' ` - ;; - *) - SIZE_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=size` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable SIZE_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1760: checking whether environment variable SIZE_FOR_TARGET is an absolute path" >&5 - case "$SIZE_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable SIZE_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"size", so it can be a program name with args. -set dummy "$program_prefix"size; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1777: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_SIZE_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$SIZE_FOR_TARGET" in - /*) - ac_cv_path_SIZE_FOR_TARGET="$SIZE_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_SIZE_FOR_TARGET="$SIZE_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_SIZE_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_SIZE_FOR_TARGET" && ac_cv_path_SIZE_FOR_TARGET="no" - ;; -esac -fi -SIZE_FOR_TARGET="$ac_cv_path_SIZE_FOR_TARGET" -if test -n "$SIZE_FOR_TARGET"; then - echo "$ac_t""$SIZE_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - -echo $ac_n "checking target's strip""... $ac_c" 1>&6 -echo "configure:1814: checking target's strip" >&5 -if eval "test \"`echo '$''{'ac_cv_path_STRIP_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - : -fi - -echo "$ac_t""$ac_cv_path_STRIP_FOR_TARGET" 1>&6 - -if test -n "$ac_cv_path_STRIP_FOR_TARGET"; then - STRIP_FOR_TARGET=$ac_cv_path_STRIP_FOR_TARGET -else - if test -z "$STRIP_FOR_TARGET" ; then - if test "$rtems_cv_prog_gcc" = "yes"; then - # We are using gcc, ask it about its tool - # NOTE: Necessary if gcc was configured to use the target's - # native tools or uses prefixes for gnutools (e.g. gas instead of as) - case $host_os in - *cygwin*) - STRIP_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=strip | sed -e 's%\\\\%/%g' ` - ;; - *) - STRIP_FOR_TARGET=`$CC_FOR_TARGET --print-prog-name=strip` - ;; - esac - - fi - else - # The user set an environment variable. - # Check whether it is an absolute path, otherwise AC_PATH_PROG - # will override the environment variable, which isn't what the user - # intends - echo $ac_n "checking whether environment variable STRIP_FOR_TARGET is an absolute path""... $ac_c" 1>&6 -echo "configure:1847: checking whether environment variable STRIP_FOR_TARGET is an absolute path" >&5 - case "$STRIP_FOR_TARGET" in - /*) # valid - echo "$ac_t"""yes"" 1>&6 - ;; - *) # invalid for AC_PATH_PROG - echo "$ac_t"""no"" 1>&6 - { echo "configure: error: *** - Environment variable STRIP_FOR_TARGET should either - be unset (preferred) or contain an absolute path" 1>&2; exit 1; } - ;; - esac - fi - - # Extract the first word of ""$program_prefix"strip", so it can be a program name with args. -set dummy "$program_prefix"strip; ac_word=$2 -echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1864: checking for $ac_word" >&5 -if eval "test \"`echo '$''{'ac_cv_path_STRIP_FOR_TARGET'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$STRIP_FOR_TARGET" in - /*) - ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a path. - ;; - ?:/*) - ac_cv_path_STRIP_FOR_TARGET="$STRIP_FOR_TARGET" # Let the user override the test with a dos path. - ;; - *) - IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" - ac_dummy="$PATH" - for ac_dir in $ac_dummy; do - test -z "$ac_dir" && ac_dir=. - if test -f $ac_dir/$ac_word; then - ac_cv_path_STRIP_FOR_TARGET="$ac_dir/$ac_word" - break - fi - done - IFS="$ac_save_ifs" - test -z "$ac_cv_path_STRIP_FOR_TARGET" && ac_cv_path_STRIP_FOR_TARGET="no" - ;; -esac -fi -STRIP_FOR_TARGET="$ac_cv_path_STRIP_FOR_TARGET" -if test -n "$STRIP_FOR_TARGET"; then - echo "$ac_t""$STRIP_FOR_TARGET" 1>&6 -else - echo "$ac_t""no" 1>&6 -fi - -fi - - - -echo $ac_n "checking for make/custom/$RTEMS_BSP.cfg""... $ac_c" 1>&6 -echo "configure:1902: checking for make/custom/$RTEMS_BSP.cfg" >&5 -if test -r "$srcdir/$RTEMS_TOPdir/make/custom/$RTEMS_BSP.cfg"; then - echo "$ac_t""yes" 1>&6 -else - { echo "configure: error: no" 1>&2; exit 1; } -fi - -echo $ac_n "checking whether BSP supports networking""... $ac_c" 1>&6 -echo "configure:1910: checking whether BSP supports networking" >&5 -if eval "test \"`echo '$''{'rtems_cv_HAS_NETWORKING'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -else - case "$RTEMS_CPU" in - unix*) - rtems_cv_HAS_NETWORKING="no" - ;; - *) - if test "${RTEMS_HAS_NETWORKING}" = "yes"; then - rtems_cv_HAS_NETWORKING="yes"; - else - rtems_cv_HAS_NETWORKING="disabled"; - fi - ;; - esac -fi - -echo "$ac_t""$rtems_cv_HAS_NETWORKING" 1>&6 -if test "$rtems_cv_HAS_NETWORKING" = "yes"; then - HAS_NETWORKING="yes"; -else - HAS_NETWORKING="no"; -fi - - - - # account for "aliased" bsps which share source code - case ${RTEMS_BSP} in - mvme162lx) bspdir=mvme162 ;; # mvme162 board variant - gen68360_040) bspdir=gen68360 ;; # 68360 in companion mode - go32_p5) bspdir=go32 ;; # go32 on Pentium class CPU - p4600) bspdir=p4000 ;; # p4000 board with IDT 4600 - p4650) bspdir=p4000 ;; # p4000 board with IDT 4650 - *) bspdir=${RTEMS_BSP};; - esac - - -# try to explicitly list a Makefile here -trap '' 1 2 15 -cat > confcache <<\EOF -# This file is a shell script that caches the results of configure -# tests run on this system so they can be shared between configure -# scripts and configure runs. It is not useful on other systems. -# If it contains results you don't want to keep, you may remove or edit it. -# -# By default, configure uses ./config.cache as the cache file, -# creating it if it does not exist already. You can give configure -# the --cache-file=FILE option to use a different cache file; that is -# what configure does when it calls configure scripts in -# subdirectories, so they share the cache. -# Giving --cache-file=/dev/null disables caching, for debugging configure. -# config.status only pays attention to the cache file if you give it the -# --recheck option to rerun configure. -# -EOF -# The following way of writing the cache mishandles newlines in values, -# but we know of no workaround that is simple, portable, and efficient. -# So, don't put newlines in cache variables' values. -# Ultrix sh set writes to stderr and can't be redirected directly, -# and sets the high bit in the cache file unless we assign to the vars. -(set) 2>&1 | - case `(ac_space=' '; set | grep ac_space) 2>&1` in - *ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote substitution - # turns \\\\ into \\, and sed turns \\ into \). - sed -n \ - -e "s/'/'\\\\''/g" \ - -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" - ;; - *) - # `set' quotes correctly as required by POSIX, so do not add quotes. - sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; - esac >> confcache -if cmp -s $cache_file confcache; then - : -else - if test -w $cache_file; then - echo "updating cache $cache_file" - cat confcache > $cache_file - else - echo "not updating unwritable cache $cache_file" - fi -fi -rm -f confcache - -trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 - -test "x$prefix" = xNONE && prefix=$ac_default_prefix -# Let make expand exec_prefix. -test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' - -# Any assignment to VPATH causes Sun make to only execute -# the first set of double-colon rules, so remove it if not needed. -# If there is a colon in the path, we need to keep it. -if test "x$srcdir" = x.; then - ac_vpsub='/^[ ]*VPATH[ ]*=[^:]*$/d' -fi - -trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15 - -# Transform confdefs.h into DEFS. -# Protect against shell expansion while executing Makefile rules. -# Protect against Makefile macro expansion. -cat > conftest.defs <<\EOF -s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g -s%[ `~#$^&*(){}\\|;'"<>?]%\\&%g -s%\[%\\&%g -s%\]%\\&%g -s%\$%$$%g -EOF -DEFS=`sed -f conftest.defs confdefs.h | tr '\012' ' '` -rm -f conftest.defs - - -# Without the "./", some shells look in PATH for config.status. -: ${CONFIG_STATUS=./config.status} - -echo creating $CONFIG_STATUS -rm -f $CONFIG_STATUS -cat > $CONFIG_STATUS </dev/null | sed 1q`: -# -# $0 $ac_configure_args -# -# Compiler output produced by configure, useful for debugging -# configure, is in ./config.log if it exists. - -ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]" -for ac_option -do - case "\$ac_option" in - -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) - echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" - exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; - -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.13" - exit 0 ;; - -help | --help | --hel | --he | --h) - echo "\$ac_cs_usage"; exit 0 ;; - *) echo "\$ac_cs_usage"; exit 1 ;; - esac -done - -ac_given_srcdir=$srcdir -ac_given_INSTALL="$INSTALL" - -trap 'rm -fr `echo "Makefile -" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15 -EOF -cat >> $CONFIG_STATUS < conftest.subs <<\\CEOF -$ac_vpsub -$extrasub -s%@SHELL@%$SHELL%g -s%@CFLAGS@%$CFLAGS%g -s%@CPPFLAGS@%$CPPFLAGS%g -s%@CXXFLAGS@%$CXXFLAGS%g -s%@FFLAGS@%$FFLAGS%g -s%@DEFS@%$DEFS%g -s%@LDFLAGS@%$LDFLAGS%g -s%@LIBS@%$LIBS%g -s%@exec_prefix@%$exec_prefix%g -s%@prefix@%$prefix%g -s%@program_transform_name@%$program_transform_name%g -s%@bindir@%$bindir%g -s%@sbindir@%$sbindir%g -s%@libexecdir@%$libexecdir%g -s%@datadir@%$datadir%g -s%@sysconfdir@%$sysconfdir%g -s%@sharedstatedir@%$sharedstatedir%g -s%@localstatedir@%$localstatedir%g -s%@libdir@%$libdir%g -s%@includedir@%$includedir%g -s%@oldincludedir@%$oldincludedir%g -s%@infodir@%$infodir%g -s%@mandir@%$mandir%g -s%@RTEMS_TOPdir@%$RTEMS_TOPdir%g -s%@host@%$host%g -s%@host_alias@%$host_alias%g -s%@host_cpu@%$host_cpu%g -s%@host_vendor@%$host_vendor%g -s%@host_os@%$host_os%g -s%@target@%$target%g -s%@target_alias@%$target_alias%g -s%@target_cpu@%$target_cpu%g -s%@target_vendor@%$target_vendor%g -s%@target_os@%$target_os%g -s%@build@%$build%g -s%@build_alias@%$build_alias%g -s%@build_cpu@%$build_cpu%g -s%@build_vendor@%$build_vendor%g -s%@build_os@%$build_os%g -s%@RTEMS_CPU@%$RTEMS_CPU%g -s%@SET_MAKE@%$SET_MAKE%g -s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g -s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g -s%@INSTALL_DATA@%$INSTALL_DATA%g -s%@MAINTAINER_MODE_TRUE@%$MAINTAINER_MODE_TRUE%g -s%@MAINTAINER_MODE_FALSE@%$MAINTAINER_MODE_FALSE%g -s%@MAINT@%$MAINT%g -s%@RTEMS_HAS_NETWORKING@%$RTEMS_HAS_NETWORKING%g -s%@RTEMS_LIBC_DIR@%$RTEMS_LIBC_DIR%g -s%@RTEMS_BSP@%$RTEMS_BSP%g -s%@RTEMS_HOST@%$RTEMS_HOST%g -s%@PROJECT_ROOT@%$PROJECT_ROOT%g -s%@RTEMS_ROOT@%$RTEMS_ROOT%g -s%@INSTALL_CHANGE@%$INSTALL_CHANGE%g -s%@PACKHEX@%$PACKHEX%g -s%@CC_FOR_TARGET@%$CC_FOR_TARGET%g -s%@GCCSED@%$GCCSED%g -s%@AR_FOR_TARGET@%$AR_FOR_TARGET%g -s%@AS_FOR_TARGET@%$AS_FOR_TARGET%g -s%@LD_FOR_TARGET@%$LD_FOR_TARGET%g -s%@NM_FOR_TARGET@%$NM_FOR_TARGET%g -s%@RANLIB_FOR_TARGET@%$RANLIB_FOR_TARGET%g -s%@OBJCOPY_FOR_TARGET@%$OBJCOPY_FOR_TARGET%g -s%@SIZE_FOR_TARGET@%$SIZE_FOR_TARGET%g -s%@STRIP_FOR_TARGET@%$STRIP_FOR_TARGET%g -s%@HAS_NETWORKING@%$HAS_NETWORKING%g - -CEOF -EOF - -cat >> $CONFIG_STATUS <<\EOF - -# Split the substitutions into bite-sized pieces for seds with -# small command number limits, like on Digital OSF/1 and HP-UX. -ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script. -ac_file=1 # Number of current file. -ac_beg=1 # First line for current file. -ac_end=$ac_max_sed_cmds # Line after last line for current file. -ac_more_lines=: -ac_sed_cmds="" -while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file - else - sed "${ac_end}q" conftest.subs > conftest.s$ac_file - fi - if test ! -s conftest.s$ac_file; then - ac_more_lines=false - rm -f conftest.s$ac_file - else - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f conftest.s$ac_file" - else - ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file" - fi - ac_file=`expr $ac_file + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_cmds` - fi -done -if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat -fi -EOF - -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF -for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case "$ac_file" in - *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'` - ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; - *) ac_file_in="${ac_file}.in" ;; - esac - - # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories. - - # Remove last slash and all that follows it. Not all systems have dirname. - ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'` - if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then - # The file is in a subdirectory. - test ! -d "$ac_dir" && mkdir "$ac_dir" - ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`" - # A "../" for each directory in $ac_dir_suffix. - ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'` - else - ac_dir_suffix= ac_dots= - fi - - case "$ac_given_srcdir" in - .) srcdir=. - if test -z "$ac_dots"; then top_srcdir=. - else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;; - /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;; - *) # Relative path. - srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix" - top_srcdir="$ac_dots$ac_given_srcdir" ;; - esac - - case "$ac_given_INSTALL" in - [/$]*) INSTALL="$ac_given_INSTALL" ;; - *) INSTALL="$ac_dots$ac_given_INSTALL" ;; - esac - - echo creating "$ac_file" - rm -f "$ac_file" - configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure." - case "$ac_file" in - *Makefile*) ac_comsub="1i\\ -# $configure_input" ;; - *) ac_comsub= ;; - esac - - ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"` - sed -e "$ac_comsub -s%@configure_input@%$configure_input%g -s%@srcdir@%$srcdir%g -s%@top_srcdir@%$top_srcdir%g -s%@INSTALL@%$INSTALL%g -" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file -fi; done -rm -f conftest.s* - -EOF -cat >> $CONFIG_STATUS <> $CONFIG_STATUS <<\EOF - -exit 0 -EOF -chmod +x $CONFIG_STATUS -rm -fr confdefs* $ac_clean_files -test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1 - diff --git a/c/src/lib/librpc/configure.in b/c/src/lib/librpc/configure.in deleted file mode 100644 index 365163d9de..0000000000 --- a/c/src/lib/librpc/configure.in +++ /dev/null @@ -1,40 +0,0 @@ -dnl Process this file with autoconf to produce a configure script. -dnl -dnl $Id$ - -AC_PREREQ(2.13) -AC_INIT(xdr.c) -RTEMS_TOP(../../../..) -AC_CONFIG_AUX_DIR(../../../..) - -RTEMS_CANONICAL_TARGET_CPU - -AC_PROG_MAKE_SET -AC_PROG_INSTALL -# AM_INIT_AUTOMAKE(rtems-c-src-lib-librpc,$RTEMS_VERSION,no) -AM_MAINTAINER_MODE - -RTEMS_ENABLE_NETWORKING -RTEMS_ENABLE_LIBCDIR -RTEMS_ENABLE_BARE - -RTEMS_ENV_RTEMSBSP - -RTEMS_CHECK_CPU -RTEMS_CANONICAL_HOST - -RTEMS_PROJECT_ROOT - -dnl check target cc -RTEMS_PROG_CC_FOR_TARGET -RTEMS_CANONICALIZE_TOOLS - -RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_CHECK_NETWORKING(RTEMS_BSP) - -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - -# try to explicitly list a Makefile here -AC_OUTPUT( -Makefile -) diff --git a/c/src/lib/librpc/rpc_callmsg.c b/c/src/lib/librpc/rpc_callmsg.c deleted file mode 100644 index 4f95254e82..0000000000 --- a/c/src/lib/librpc/rpc_callmsg.c +++ /dev/null @@ -1,191 +0,0 @@ -/* @(#)rpc_callmsg.c 2.1 88/07/29 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)rpc_callmsg.c 1.4 87/08/11 Copyr 1984 Sun Micro"; -#endif - -/* - * rpc_callmsg.c - * - * Copyright (C) 1984, Sun Microsystems, Inc. - * - */ - -#include /* bcopy */ -#include - -bool_t xdr_opaque_auth (register XDR *xdrs, register struct - opaque_auth *ap); -/* - * XDR a call message - */ -bool_t -xdr_callmsg(xdrs, cmsg) - register XDR *xdrs; - register struct rpc_msg *cmsg; -{ - register long *buf; - register struct opaque_auth *oa; - - if (xdrs->x_op == XDR_ENCODE) { - if (cmsg->rm_call.cb_cred.oa_length > MAX_AUTH_BYTES) { - return (FALSE); - } - if (cmsg->rm_call.cb_verf.oa_length > MAX_AUTH_BYTES) { - return (FALSE); - } - buf = XDR_INLINE(xdrs, 8 * BYTES_PER_XDR_UNIT - + RNDUP(cmsg->rm_call.cb_cred.oa_length) - + 2 * BYTES_PER_XDR_UNIT - + RNDUP(cmsg->rm_call.cb_verf.oa_length)); - if (buf != NULL) { - IXDR_PUT_LONG(buf, cmsg->rm_xid); - IXDR_PUT_ENUM(buf, cmsg->rm_direction); - if (cmsg->rm_direction != CALL) { - return (FALSE); - } - IXDR_PUT_LONG(buf, cmsg->rm_call.cb_rpcvers); - if (cmsg->rm_call.cb_rpcvers != RPC_MSG_VERSION) { - return (FALSE); - } - IXDR_PUT_LONG(buf, cmsg->rm_call.cb_prog); - IXDR_PUT_LONG(buf, cmsg->rm_call.cb_vers); - IXDR_PUT_LONG(buf, cmsg->rm_call.cb_proc); - oa = &cmsg->rm_call.cb_cred; - IXDR_PUT_ENUM(buf, oa->oa_flavor); - IXDR_PUT_LONG(buf, oa->oa_length); - if (oa->oa_length) { - bcopy(oa->oa_base, (caddr_t)buf, oa->oa_length); - buf += RNDUP(oa->oa_length) / sizeof (long); - } - oa = &cmsg->rm_call.cb_verf; - IXDR_PUT_ENUM(buf, oa->oa_flavor); - IXDR_PUT_LONG(buf, oa->oa_length); - if (oa->oa_length) { - bcopy(oa->oa_base, (caddr_t)buf, oa->oa_length); - /* no real need.... - buf += RNDUP(oa->oa_length) / sizeof (long); - */ - } - return (TRUE); - } - } - if (xdrs->x_op == XDR_DECODE) { - buf = XDR_INLINE(xdrs, 8 * BYTES_PER_XDR_UNIT); - if (buf != NULL) { - cmsg->rm_xid = IXDR_GET_LONG(buf); - cmsg->rm_direction = IXDR_GET_ENUM(buf, enum msg_type); - if (cmsg->rm_direction != CALL) { - return (FALSE); - } - cmsg->rm_call.cb_rpcvers = IXDR_GET_LONG(buf); - if (cmsg->rm_call.cb_rpcvers != RPC_MSG_VERSION) { - return (FALSE); - } - cmsg->rm_call.cb_prog = IXDR_GET_LONG(buf); - cmsg->rm_call.cb_vers = IXDR_GET_LONG(buf); - cmsg->rm_call.cb_proc = IXDR_GET_LONG(buf); - oa = &cmsg->rm_call.cb_cred; - oa->oa_flavor = IXDR_GET_ENUM(buf, enum_t); - oa->oa_length = IXDR_GET_LONG(buf); - if (oa->oa_length) { - if (oa->oa_length > MAX_AUTH_BYTES) { - return (FALSE); - } - if (oa->oa_base == NULL) { - oa->oa_base = (caddr_t) - mem_alloc(oa->oa_length); - } - buf = XDR_INLINE(xdrs, RNDUP(oa->oa_length)); - if (buf == NULL) { - if (xdr_opaque(xdrs, oa->oa_base, - oa->oa_length) == FALSE) { - return (FALSE); - } - } else { - bcopy((caddr_t)buf, oa->oa_base, - oa->oa_length); - /* no real need.... - buf += RNDUP(oa->oa_length) / - sizeof (long); - */ - } - } - oa = &cmsg->rm_call.cb_verf; - buf = XDR_INLINE(xdrs, 2 * BYTES_PER_XDR_UNIT); - if (buf == NULL) { - if (xdr_enum(xdrs, &oa->oa_flavor) == FALSE || - xdr_u_int(xdrs, &oa->oa_length) == FALSE) { - return (FALSE); - } - } else { - oa->oa_flavor = IXDR_GET_ENUM(buf, enum_t); - oa->oa_length = IXDR_GET_LONG(buf); - } - if (oa->oa_length) { - if (oa->oa_length > MAX_AUTH_BYTES) { - return (FALSE); - } - if (oa->oa_base == NULL) { - oa->oa_base = (caddr_t) - mem_alloc(oa->oa_length); - } - buf = XDR_INLINE(xdrs, RNDUP(oa->oa_length)); - if (buf == NULL) { - if (xdr_opaque(xdrs, oa->oa_base, - oa->oa_length) == FALSE) { - return (FALSE); - } - } else { - bcopy((caddr_t)buf, oa->oa_base, - oa->oa_length); - /* no real need... - buf += RNDUP(oa->oa_length) / - sizeof (long); - */ - } - } - return (TRUE); - } - } - if ( - xdr_u_long(xdrs, &(cmsg->rm_xid)) && - xdr_enum(xdrs, (enum_t *)&(cmsg->rm_direction)) && - (cmsg->rm_direction == CALL) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_rpcvers)) && - (cmsg->rm_call.cb_rpcvers == RPC_MSG_VERSION) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_prog)) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_vers)) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_proc)) && - xdr_opaque_auth(xdrs, &(cmsg->rm_call.cb_cred)) ) - return (xdr_opaque_auth(xdrs, &(cmsg->rm_call.cb_verf))); - return (FALSE); -} - diff --git a/c/src/lib/librpc/rpc_prot.c b/c/src/lib/librpc/rpc_prot.c deleted file mode 100644 index 8d2fde7116..0000000000 --- a/c/src/lib/librpc/rpc_prot.c +++ /dev/null @@ -1,271 +0,0 @@ -/* @(#)rpc_prot.c 2.3 88/08/07 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - */ - -/* - * rpc_prot.c - */ - -#include - -/* * * * * * * * * * * * * * XDR Authentication * * * * * * * * * * * */ - -struct opaque_auth _null_auth; - -/* - * XDR an opaque authentication struct - * (see auth.h) - */ -bool_t -xdr_opaque_auth(xdrs, ap) - register XDR *xdrs; - register struct opaque_auth *ap; -{ - - if (xdr_enum(xdrs, &(ap->oa_flavor))) - return (xdr_bytes(xdrs, &ap->oa_base, - &ap->oa_length, MAX_AUTH_BYTES)); - return (FALSE); -} - -/* - * XDR a DES block - */ -bool_t -xdr_des_block(xdrs, blkp) - register XDR *xdrs; - register des_block *blkp; -{ - return (xdr_opaque(xdrs, (caddr_t)blkp, sizeof(des_block))); -} - -/* * * * * * * * * * * * * * XDR RPC MESSAGE * * * * * * * * * * * * * * * */ - -/* - * XDR the MSG_ACCEPTED part of a reply message union - */ -bool_t -xdr_accepted_reply(xdrs, ar) - register XDR *xdrs; - register struct accepted_reply *ar; -{ - - /* personalized union, rather than calling xdr_union */ - if (! xdr_opaque_auth(xdrs, &(ar->ar_verf))) - return (FALSE); - if (! xdr_enum(xdrs, (enum_t *)&(ar->ar_stat))) - return (FALSE); - switch (ar->ar_stat) { - - case SUCCESS: - return ((*(ar->ar_results.proc))(xdrs, ar->ar_results.where)); - - case PROG_MISMATCH: - if (! xdr_u_long(xdrs, &(ar->ar_vers.low))) - return (FALSE); - return (xdr_u_long(xdrs, &(ar->ar_vers.high))); - default: - break; - } - return (TRUE); /* TRUE => open ended set of problems */ -} - -/* - * XDR the MSG_DENIED part of a reply message union - */ -bool_t -xdr_rejected_reply(xdrs, rr) - register XDR *xdrs; - register struct rejected_reply *rr; -{ - - /* personalized union, rather than calling xdr_union */ - if (! xdr_enum(xdrs, (enum_t *)&(rr->rj_stat))) - return (FALSE); - switch (rr->rj_stat) { - - case RPC_MISMATCH: - if (! xdr_u_long(xdrs, &(rr->rj_vers.low))) - return (FALSE); - return (xdr_u_long(xdrs, &(rr->rj_vers.high))); - - case AUTH_ERROR: - return (xdr_enum(xdrs, (enum_t *)&(rr->rj_why))); - } - return (FALSE); -} - -static struct xdr_discrim reply_dscrm[3] = { - { (int)MSG_ACCEPTED, xdr_accepted_reply }, - { (int)MSG_DENIED, xdr_rejected_reply }, - { __dontcare__, NULL_xdrproc_t } }; - -/* - * XDR a reply message - */ -bool_t -xdr_replymsg(xdrs, rmsg) - register XDR *xdrs; - register struct rpc_msg *rmsg; -{ - if ( - xdr_u_long(xdrs, &(rmsg->rm_xid)) && - xdr_enum(xdrs, (enum_t *)&(rmsg->rm_direction)) && - (rmsg->rm_direction == REPLY) ) - return (xdr_union(xdrs, (enum_t *)&(rmsg->rm_reply.rp_stat), - (caddr_t)&(rmsg->rm_reply.ru), reply_dscrm, NULL_xdrproc_t)); - return (FALSE); -} - - -/* - * Serializes the "static part" of a call message header. - * The fields include: rm_xid, rm_direction, rpcvers, prog, and vers. - * The rm_xid is not really static, but the user can easily munge on the fly. - */ -bool_t -xdr_callhdr(xdrs, cmsg) - register XDR *xdrs; - register struct rpc_msg *cmsg; -{ - - cmsg->rm_direction = CALL; - cmsg->rm_call.cb_rpcvers = RPC_MSG_VERSION; - if ( - (xdrs->x_op == XDR_ENCODE) && - xdr_u_long(xdrs, &(cmsg->rm_xid)) && - xdr_enum(xdrs, (enum_t *)&(cmsg->rm_direction)) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_rpcvers)) && - xdr_u_long(xdrs, &(cmsg->rm_call.cb_prog)) ) - return (xdr_u_long(xdrs, &(cmsg->rm_call.cb_vers))); - return (FALSE); -} - -/* ************************** Client utility routine ************* */ - -static void -accepted(acpt_stat, error) - register enum accept_stat acpt_stat; - register struct rpc_err *error; -{ - - switch (acpt_stat) { - - case PROG_UNAVAIL: - error->re_status = RPC_PROGUNAVAIL; - return; - - case PROG_MISMATCH: - error->re_status = RPC_PROGVERSMISMATCH; - return; - - case PROC_UNAVAIL: - error->re_status = RPC_PROCUNAVAIL; - return; - - case GARBAGE_ARGS: - error->re_status = RPC_CANTDECODEARGS; - return; - - case SYSTEM_ERR: - error->re_status = RPC_SYSTEMERROR; - return; - - case SUCCESS: - error->re_status = RPC_SUCCESS; - return; - } - /* something's wrong, but we don't know what ... */ - error->re_status = RPC_FAILED; - error->re_lb.s1 = (long)MSG_ACCEPTED; - error->re_lb.s2 = (long)acpt_stat; -} - -static void -rejected(rjct_stat, error) - register enum reject_stat rjct_stat; - register struct rpc_err *error; -{ - - switch (rjct_stat) { - - case RPC_VERSMISMATCH: - error->re_status = RPC_VERSMISMATCH; - return; - - case AUTH_ERROR: - error->re_status = RPC_AUTHERROR; - return; - - default: - break; - } - /* something's wrong, but we don't know what ... */ - error->re_status = RPC_FAILED; - error->re_lb.s1 = (long)MSG_DENIED; - error->re_lb.s2 = (long)rjct_stat; -} - -/* - * given a reply message, fills in the error - */ -void -_seterr_reply(msg, error) - register struct rpc_msg *msg; - register struct rpc_err *error; -{ - - /* optimized for normal, SUCCESSful case */ - switch (msg->rm_reply.rp_stat) { - - case MSG_ACCEPTED: - if (msg->acpted_rply.ar_stat == SUCCESS) { - error->re_status = RPC_SUCCESS; - return; - }; - accepted(msg->acpted_rply.ar_stat, error); - break; - - case MSG_DENIED: - rejected(msg->rjcted_rply.rj_stat, error); - break; - - default: - error->re_status = RPC_FAILED; - error->re_lb.s1 = (long)(msg->rm_reply.rp_stat); - break; - } - switch (error->re_status) { - - case RPC_VERSMISMATCH: - error->re_vers.low = msg->rjcted_rply.rj_vers.low; - error->re_vers.high = msg->rjcted_rply.rj_vers.high; - break; - - case RPC_AUTHERROR: - error->re_why = msg->rjcted_rply.rj_why; - break; - - case RPC_PROGVERSMISMATCH: - error->re_vers.low = msg->acpted_rply.ar_vers.low; - error->re_vers.high = msg->acpted_rply.ar_vers.high; - break; - - default: - break; - } -} diff --git a/c/src/lib/librpc/svc.c b/c/src/lib/librpc/svc.c deleted file mode 100644 index c4ccb46aa5..0000000000 --- a/c/src/lib/librpc/svc.c +++ /dev/null @@ -1,259 +0,0 @@ -/* @(#)svc.c 2.4 88/08/11 4.0 RPCSRC; from 1.44 88/02/08 SMI */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)svc.c 1.41 87/10/13 Copyr 1984 Sun Micro"; -#endif - -/* - * svc.c, Server-side remote procedure call interface. - * - * There are two sets of procedures here. The xprt routines are - * for handling transport handles. The svc routines handle the - * list of service routines. - * - * Copyright (C) 1984, Sun Microsystems, Inc. - */ - -#include -#include -#include - -#define RQCRED_SIZE 400 /* this size is excessive */ - -/* ******************* REPLY GENERATION ROUTINES ************ */ - -/* - * Send a reply to an rpc request - */ -bool_t -svc_sendreply(xprt, xdr_results, xdr_location) - register SVCXPRT *xprt; - xdrproc_t xdr_results; - caddr_t xdr_location; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = SUCCESS; - rply.acpted_rply.ar_results.where = xdr_location; - rply.acpted_rply.ar_results.proc = xdr_results; - return (SVC_REPLY(xprt, &rply)); -} - -/* - * No procedure error reply - */ -void -svcerr_noproc(xprt) - register SVCXPRT *xprt; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = PROC_UNAVAIL; - SVC_REPLY(xprt, &rply); -} - -/* - * Can't decode args error reply - */ -void -svcerr_decode(xprt) - register SVCXPRT *xprt; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = GARBAGE_ARGS; - SVC_REPLY(xprt, &rply); -} - -/* - * Some system error - */ -void -svcerr_systemerr(xprt) - register SVCXPRT *xprt; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = SYSTEM_ERR; - SVC_REPLY(xprt, &rply); -} - -/* - * Authentication error reply - */ -void -svcerr_auth(xprt, why) - SVCXPRT *xprt; - enum auth_stat why; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_DENIED; - rply.rjcted_rply.rj_stat = AUTH_ERROR; - rply.rjcted_rply.rj_why = why; - SVC_REPLY(xprt, &rply); -} - -/* - * Auth too weak error reply - */ -void -svcerr_weakauth(xprt) - SVCXPRT *xprt; -{ - - svcerr_auth(xprt, AUTH_TOOWEAK); -} - -/* - * Program unavailable error reply - */ -void -svcerr_noprog(xprt) - register SVCXPRT *xprt; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = PROG_UNAVAIL; - SVC_REPLY(xprt, &rply); -} - -/* - * Program version mismatch error reply - */ -void -svcerr_progvers(xprt, low_vers, high_vers) - register SVCXPRT *xprt; - u_long low_vers; - u_long high_vers; -{ - struct rpc_msg rply; - - rply.rm_direction = REPLY; - rply.rm_reply.rp_stat = MSG_ACCEPTED; - rply.acpted_rply.ar_verf = xprt->xp_verf; - rply.acpted_rply.ar_stat = PROG_MISMATCH; - rply.acpted_rply.ar_vers.low = low_vers; - rply.acpted_rply.ar_vers.high = high_vers; - SVC_REPLY(xprt, &rply); -} - - void -svc_processrequest(xprt, prog, vers, dispatch) - SVCXPRT *xprt; - u_long prog; - u_long vers; - void (*dispatch)(); -{ - struct rpc_msg msg; - int prog_found = FALSE; - u_long low_vers = 0; /* dummy init */ - u_long high_vers = 0; /* dummy init */ - struct svc_req r; - /*static char cred_area[2*MAX_AUTH_BYTES + RQCRED_SIZE];*/ - char *cred_area; - - cred_area = (char *)malloc(2*MAX_AUTH_BYTES + RQCRED_SIZE); - msg.rm_call.cb_cred.oa_base = cred_area; - msg.rm_call.cb_verf.oa_base = &(cred_area[MAX_AUTH_BYTES]); - r.rq_clntcred = &(cred_area[2*MAX_AUTH_BYTES]); - - if (SVC_RECV(xprt, &msg)) { - - /* now find the exported program and call it */ - /* register struct svc_callout *s; */ - enum auth_stat why; - - r.rq_xprt = xprt; - r.rq_prog = msg.rm_call.cb_prog; - r.rq_vers = msg.rm_call.cb_vers; - r.rq_proc = msg.rm_call.cb_proc; - r.rq_cred = msg.rm_call.cb_cred; - - /* first authenticate the message */ - if ((why= _authenticate(&r, &msg)) != AUTH_OK) { - svcerr_auth(xprt, why); - free(cred_area); - return; - } - - /* now match message with a registered service*/ - prog_found = FALSE; - low_vers = 0 - 1; - high_vers = 0; - if (prog == r.rq_prog) { - if (vers == r.rq_vers) { - (*dispatch)(&r, xprt); - free(cred_area); - return; - } /* found correct version */ - prog_found = TRUE; - if (vers < low_vers) - low_vers = vers; - if (vers > high_vers) - high_vers = vers; - } /* found correct program */ - } - /* - * if we got here, the program or version - * is not served ... - */ - if (prog_found) { - svcerr_progvers(xprt, - low_vers, high_vers); - } else { - svcerr_noprog(xprt); - } - - free(cred_area); - -} - -/* stubs for solaris rpcgen */ -/*int _rpcsvccount; -int _rpcsvcstate; -int _SERVED; -*/ diff --git a/c/src/lib/librpc/svc_auth.c b/c/src/lib/librpc/svc_auth.c deleted file mode 100644 index e1943ace8f..0000000000 --- a/c/src/lib/librpc/svc_auth.c +++ /dev/null @@ -1,124 +0,0 @@ - -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)svc_auth.c 2.1 88/08/07 4.0 RPCSRC; from 1.19 87/08/11 Copyr 1984 Sun Micro"; -#endif -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ - -/* - * svc_auth_nodes.c, Server-side rpc authenticator interface, - * *WITHOUT* DES authentication. - * - * Copyright (C) 1984, Sun Microsystems, Inc. - */ - -#include - -/* - * svcauthsw is the bdevsw of server side authentication. - * - * Server side authenticators are called from authenticate by - * using the client auth struct flavor field to index into svcauthsw. - * The server auth flavors must implement a routine that looks - * like: - * - * enum auth_stat - * flavorx_auth(rqst, msg) - * register struct svc_req *rqst; - * register struct rpc_msg *msg; - * - */ - -enum auth_stat _svcauth_null(); /* no authentication */ -enum auth_stat _svcauth_unix(); /* unix style (uid, gids) */ -enum auth_stat _svcauth_short(); /* short hand unix style */ - -static struct { - enum auth_stat (*authenticator)(); -} svcauthsw[] = { - { - _svcauth_null, /* AUTH_NULL */ -#ifdef MR - _svcauth_unix, /* AUTH_UNIX */ - _svcauth_short /* AUTH_SHORT */ -#endif - } -}; - -#ifdef MR -#define AUTH_MAX 2 /* HIGHEST AUTH NUMBER */ -#else -#define AUTH_MAX 0 /* HIGHEST AUTH NUMBER */ -#endif - - -/* - * The call rpc message, msg has been obtained from the wire. The msg contains - * the raw form of credentials and verifiers. authenticate returns AUTH_OK - * if the msg is successfully authenticated. If AUTH_OK then the routine also - * does the following things: - * set rqst->rq_xprt->verf to the appropriate response verifier; - * sets rqst->rq_client_cred to the "cooked" form of the credentials. - * - * NB: rqst->rq_cxprt->verf must be pre-alloctaed; - * its length is set appropriately. - * - * The caller still owns and is responsible for msg->u.cmb.cred and - * msg->u.cmb.verf. The authentication system retains ownership of - * rqst->rq_client_cred, the cooked credentials. - * - * There is an assumption that any flavour less than AUTH_NULL is - * invalid. - */ -enum auth_stat -_authenticate(rqst, msg) - register struct svc_req *rqst; - struct rpc_msg *msg; -{ - register int cred_flavor; - - rqst->rq_cred = msg->rm_call.cb_cred; - rqst->rq_xprt->xp_verf.oa_flavor = _null_auth.oa_flavor; - rqst->rq_xprt->xp_verf.oa_length = 0; - cred_flavor = rqst->rq_cred.oa_flavor; - if ((cred_flavor <= AUTH_MAX) && (cred_flavor >= AUTH_NULL)) { - return ((*(svcauthsw[cred_flavor].authenticator))(rqst, msg)); - } - - return (AUTH_REJECTEDCRED); -} - -enum auth_stat -_svcauth_null(/*rqst, msg*/) - /*struct svc_req *rqst; - struct rpc_msg *msg;*/ -{ - - return (AUTH_OK); -} diff --git a/c/src/lib/librpc/svc_udp.c b/c/src/lib/librpc/svc_udp.c deleted file mode 100644 index 70e874335b..0000000000 --- a/c/src/lib/librpc/svc_udp.c +++ /dev/null @@ -1,476 +0,0 @@ -/* @(#)svc_udp.c 2.2 88/07/29 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)svc_udp.c 1.24 87/08/11 Copyr 1984 Sun Micro"; -#endif - -/* - * svc_udp.c, - * Server side for UDP/IP based RPC. (Does some caching in the hopes of - * achieving execute-at-most-once semantics.) - * - * Copyright (C) 1984, Sun Microsystems, Inc. - */ - -/* - * Adapted for rgdb specifi purposes. - * Modifications are under #ifndef NO_RGDB. - */ - -#include /* printf */ -#include /* free */ -#include /* bzero, bcmp */ -#include -#include - -#define rpc_buffer(xprt) ((xprt)->xp_p1) -#define MAX(a, b) ((a > b) ? a : b) - -static bool_t svcudp_recv(); -static bool_t svcudp_reply(); -static enum xprt_stat svcudp_stat(); -static bool_t svcudp_getargs(); -static bool_t svcudp_freeargs(); -static void svcudp_destroy(); -static int cache_get(); -static void cache_set(); - -static struct xp_ops svcudp_op = { - svcudp_recv, - svcudp_stat, - svcudp_getargs, - svcudp_reply, - svcudp_freeargs, - svcudp_destroy -}; - -extern int errno; - -/* - * kept in xprt->xp_p2 - */ -struct svcudp_data { - u_int su_iosz; /* byte size of send.recv buffer */ - u_long su_xid; /* transaction id */ - XDR su_xdrs; /* XDR handle */ - char su_verfbody[MAX_AUTH_BYTES]; /* verifier body */ - char * su_cache; /* cached data, NULL if no cache */ -}; -#define su_data(xprt) ((struct svcudp_data *)(xprt->xp_p2)) - -/* - * Usage: - * xprt = svcudp_create(sock); - * - * If sock<0 then a socket is created, else sock is used. - * If the socket, sock is not bound to a port then svcudp_create - * binds it to an arbitrary port. In any (successful) case, - * xprt->xp_sock is the registered socket number and xprt->xp_port is the - * associated port number. - * Once *xprt is initialized, it is registered as a transporter; - * see (svc.h, xprt_register). - * The routines returns NULL if a problem occurred. - */ -SVCXPRT * -svcudp_bufcreate(sock, sendsz, recvsz) - register int sock; - u_int sendsz, recvsz; -{ - register SVCXPRT *xprt; - register struct svcudp_data *su; - struct sockaddr_in addr; - int len = sizeof(struct sockaddr_in); - - if (sock == RPC_ANYSOCK) { - (void)printf - ("svcudp_create: socket should be created and bound\n"); - return ((SVCXPRT *) NULL); - } - - if (getsockname(sock, (struct sockaddr *)&addr, &len) != 0) { - (void)printf("svcudp_create - cannot getsockname"); - return ((SVCXPRT *)NULL); - } - - xprt = (SVCXPRT *)mem_alloc(sizeof(SVCXPRT)); - - if (xprt == NULL) { - (void)printf("svcudp_create: out of memory\n"); - return (NULL); - } - su = (struct svcudp_data *)mem_alloc(sizeof(*su)); - if (su == NULL) { - (void)printf("svcudp_create: out of memory\n"); - return (NULL); - } - su->su_iosz = ((MAX(sendsz, recvsz) + 3) / 4) * 4; - if ((rpc_buffer(xprt) = (caddr_t) mem_alloc(su->su_iosz)) == NULL) { - (void)printf("svcudp_create: out of memory\n"); - return (NULL); - } - xdrmem_create( - &(su->su_xdrs), rpc_buffer(xprt), su->su_iosz, XDR_DECODE); - su->su_cache = NULL; - xprt->xp_p2 = (caddr_t)su; - xprt->xp_verf.oa_base = su->su_verfbody; - xprt->xp_ops = &svcudp_op; - xprt->xp_port = ntohs(addr.sin_port); - xprt->xp_sock = sock; - return (xprt); -} - -SVCXPRT * -svcudp_create(sock) - int sock; -{ - -/* return(svcudp_bufcreate(sock, UDPMSGSIZE, UDPMSGSIZE));*/ - return(svcudp_bufcreate(sock, 1500, 1500)); -} - -static enum xprt_stat -svcudp_stat(xprt) - SVCXPRT *xprt; -{ - - return (XPRT_IDLE); -} - -static bool_t -svcudp_recv(xprt, msg) - register SVCXPRT *xprt; - struct rpc_msg *msg; -{ - register struct svcudp_data *su = su_data(xprt); - register XDR *xdrs = &(su->su_xdrs); - register int rlen; - char *reply; - u_long replylen; - - again: - xprt->xp_addrlen = sizeof(struct sockaddr_in); - rlen = recvfrom(xprt->xp_sock, rpc_buffer(xprt), (int) su->su_iosz, - 0, (struct sockaddr *)&(xprt->xp_raddr), &(xprt->xp_addrlen)); - if (rlen == -1 /* && errno == EINTR */) - goto again; - if (rlen < 4*sizeof(u_long)) - return (FALSE); - xdrs->x_op = XDR_DECODE; - XDR_SETPOS(xdrs, 0); - if (! xdr_callmsg(xdrs, msg)) - return (FALSE); - su->su_xid = msg->rm_xid; - if (su->su_cache != NULL) { - if (cache_get(xprt, msg, &reply, &replylen)) { - (void) sendto(xprt->xp_sock, reply, (int) replylen, 0, - (struct sockaddr *) &xprt->xp_raddr, xprt->xp_addrlen); - return (FALSE); - } - } - return (TRUE); -} - -static bool_t -svcudp_reply(xprt, msg) - register SVCXPRT *xprt; - struct rpc_msg *msg; -{ - register struct svcudp_data *su = su_data(xprt); - register XDR *xdrs = &(su->su_xdrs); - register int slen; - register bool_t stat = FALSE; - - xdrs->x_op = XDR_ENCODE; - XDR_SETPOS(xdrs, 0); - msg->rm_xid = su->su_xid; - if (xdr_replymsg(xdrs, msg)) { - slen = (int)XDR_GETPOS(xdrs); - if (sendto(xprt->xp_sock, rpc_buffer(xprt), slen, 0, - (struct sockaddr *)&(xprt->xp_raddr), xprt->xp_addrlen) - == slen) { - stat = TRUE; - if (su->su_cache && slen >= 0) { - cache_set(xprt, (u_long) slen); - } - } - } - return (stat); -} - -static bool_t -svcudp_getargs(xprt, xdr_args, args_ptr) - SVCXPRT *xprt; - xdrproc_t xdr_args; - caddr_t args_ptr; -{ - - return ((*xdr_args)(&(su_data(xprt)->su_xdrs), args_ptr)); -} - -static bool_t -svcudp_freeargs(xprt, xdr_args, args_ptr) - SVCXPRT *xprt; - xdrproc_t xdr_args; - caddr_t args_ptr; -{ - register XDR *xdrs = &(su_data(xprt)->su_xdrs); - - xdrs->x_op = XDR_FREE; - return ((*xdr_args)(xdrs, args_ptr)); -} - -static void -svcudp_destroy(xprt) - register SVCXPRT *xprt; -{ - register struct svcudp_data *su = su_data(xprt); -/* - xprt_unregister(xprt); - (void)close(xprt->xp_sock); -*/ - XDR_DESTROY(&(su->su_xdrs)); - mem_free(rpc_buffer(xprt), su->su_iosz); - mem_free((caddr_t)su, sizeof(struct svcudp_data)); - mem_free((caddr_t)xprt, sizeof(SVCXPRT)); -} - - -/***********this could be a separate file*********************/ - -/* - * Fifo cache for udp server - * Copies pointers to reply buffers into fifo cache - * Buffers are sent again if retransmissions are detected. - */ - -#define SPARSENESS 4 /* 75% sparse */ - -#define CACHE_PERROR(msg) \ - (void) printf("%s\n", msg) - -#define ALLOC(type, size) \ - (type *) mem_alloc((unsigned) (sizeof(type) * (size))) - -#define BZERO(addr, type, size) \ - bzero((char *) addr, sizeof(type) * (int) (size)) - -/* - * An entry in the cache - */ -typedef struct cache_node *cache_ptr; -struct cache_node { - /* - * Index into cache is xid, proc, vers, prog and address - */ - u_long cache_xid; - u_long cache_proc; - u_long cache_vers; - u_long cache_prog; - struct sockaddr_in cache_addr; - /* - * The cached reply and length - */ - char * cache_reply; - u_long cache_replylen; - /* - * Next node on the list, if there is a collision - */ - cache_ptr cache_next; -}; - - - -/* - * The entire cache - */ -struct udp_cache { - u_long uc_size; /* size of cache */ - cache_ptr *uc_entries; /* hash table of entries in cache */ - cache_ptr *uc_fifo; /* fifo list of entries in cache */ - u_long uc_nextvictim; /* points to next victim in fifo list */ - u_long uc_prog; /* saved program number */ - u_long uc_vers; /* saved version number */ - u_long uc_proc; /* saved procedure number */ - struct sockaddr_in uc_addr; /* saved caller's address */ -}; - - -/* - * the hashing function - */ -#define CACHE_LOC(transp, xid) \ - (xid % (SPARSENESS*((struct udp_cache *) su_data(transp)->su_cache)->uc_size)) - - -/* - * Enable use of the cache. - * Note: there is no disable. - */ - int -svcudp_enablecache(transp, size) - SVCXPRT *transp; - u_long size; -{ - struct svcudp_data *su = su_data(transp); - struct udp_cache *uc; - - if (su->su_cache != NULL) { - CACHE_PERROR("enablecache: cache already enabled"); - return(0); - } - uc = ALLOC(struct udp_cache, 1); - if (uc == NULL) { - CACHE_PERROR("enablecache: could not allocate cache"); - return(0); - } - uc->uc_size = size; - uc->uc_nextvictim = 0; - uc->uc_entries = ALLOC(cache_ptr, size * SPARSENESS); - if (uc->uc_entries == NULL) { - CACHE_PERROR("enablecache: could not allocate cache data"); - return(0); - } - BZERO(uc->uc_entries, cache_ptr, size * SPARSENESS); - uc->uc_fifo = ALLOC(cache_ptr, size); - if (uc->uc_fifo == NULL) { - CACHE_PERROR("enablecache: could not allocate cache fifo"); - return(0); - } - BZERO(uc->uc_fifo, cache_ptr, size); - su->su_cache = (char *) uc; - return(1); -} - - -/* - * Set an entry in the cache - */ -static void -cache_set(xprt, replylen) - SVCXPRT *xprt; - u_long replylen; -{ - register cache_ptr victim; - register cache_ptr *vicp; - register struct svcudp_data *su = su_data(xprt); - struct udp_cache *uc = (struct udp_cache *) su->su_cache; - u_int loc; - char *newbuf; - - /* - * Find space for the new entry, either by - * reusing an old entry, or by mallocing a new one - */ - victim = uc->uc_fifo[uc->uc_nextvictim]; - if (victim != NULL) { - loc = CACHE_LOC(xprt, victim->cache_xid); - for (vicp = &uc->uc_entries[loc]; - *vicp != NULL && *vicp != victim; - vicp = &(*vicp)->cache_next) - ; - if (*vicp == NULL) { - CACHE_PERROR("cache_set: victim not found"); - return; - } - *vicp = victim->cache_next; /* remote from cache */ - newbuf = victim->cache_reply; - } else { - victim = ALLOC(struct cache_node, 1); - if (victim == NULL) { - CACHE_PERROR("cache_set: victim alloc failed"); - return; - } - newbuf = (char*) mem_alloc(su->su_iosz); - if (newbuf == NULL) { - CACHE_PERROR("cache_set: could not allocate new rpc_buffer"); - return; - } - } - - /* - * Store it away - */ - victim->cache_replylen = replylen; - victim->cache_reply = rpc_buffer(xprt); - rpc_buffer(xprt) = newbuf; - xdrmem_create(&(su->su_xdrs), rpc_buffer(xprt), su->su_iosz, XDR_ENCODE); - victim->cache_xid = su->su_xid; - victim->cache_proc = uc->uc_proc; - victim->cache_vers = uc->uc_vers; - victim->cache_prog = uc->uc_prog; - victim->cache_addr = uc->uc_addr; - loc = CACHE_LOC(xprt, victim->cache_xid); - victim->cache_next = uc->uc_entries[loc]; - uc->uc_entries[loc] = victim; - uc->uc_fifo[uc->uc_nextvictim++] = victim; - uc->uc_nextvictim %= uc->uc_size; -} - -/* - * Try to get an entry from the cache - * return 1 if found, 0 if not found - */ -static int -cache_get(xprt, msg, replyp, replylenp) - SVCXPRT *xprt; - struct rpc_msg *msg; - char **replyp; - u_long *replylenp; -{ - u_int loc; - register cache_ptr ent; - register struct svcudp_data *su = su_data(xprt); - register struct udp_cache *uc = (struct udp_cache *) su->su_cache; - -# define EQADDR(a1, a2) (bcmp((char*)&a1, (char*)&a2, sizeof(a1)) == 0) - - loc = CACHE_LOC(xprt, su->su_xid); - for (ent = uc->uc_entries[loc]; ent != NULL; ent = ent->cache_next) { - if (ent->cache_xid == su->su_xid && - ent->cache_proc == uc->uc_proc && - ent->cache_vers == uc->uc_vers && - ent->cache_prog == uc->uc_prog && - EQADDR(ent->cache_addr, uc->uc_addr)) { - *replyp = ent->cache_reply; - *replylenp = ent->cache_replylen; - return(1); - } - } - /* - * Failed to find entry - * Remember a few things so we can do a set later - */ - uc->uc_proc = msg->rm_call.cb_proc; - uc->uc_vers = msg->rm_call.cb_vers; - uc->uc_prog = msg->rm_call.cb_prog; - uc->uc_addr = xprt->xp_raddr; - return(0); -} - diff --git a/c/src/lib/librpc/xdr.c b/c/src/lib/librpc/xdr.c deleted file mode 100644 index cc8caf7785..0000000000 --- a/c/src/lib/librpc/xdr.c +++ /dev/null @@ -1,578 +0,0 @@ -/* @(#)xdr.c 2.1 88/07/29 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)xdr.c 1.35 87/08/12"; -#endif - -/* - * xdr.c, Generic XDR routines implementation. - * - * Copyright (C) 1986, Sun Microsystems, Inc. - * - * These are the "generic" xdr routines used to serialize and de-serialize - * most common data items. See xdr.h for more info on the interface to - * xdr. - */ - -#include -#include -#include -#include - -/* - * constants specific to the xdr "protocol" - */ -#define XDR_FALSE ((long) 0) -#define XDR_TRUE ((long) 1) -#define LASTUNSIGNED ((u_int) 0-1) - -/* - * for unit alignment - */ -static char xdr_zero[BYTES_PER_XDR_UNIT] = { 0, 0, 0, 0 }; - -/* - * Free a data structure using XDR - * Not a filter, but a convenient utility nonetheless - */ -void -xdr_free(proc, objp) - xdrproc_t proc; - char *objp; -{ - XDR x; - - x.x_op = XDR_FREE; - (*proc)(&x, objp); -} - -/* - * XDR nothing - */ -bool_t -xdr_void(/* xdrs, addr */) - /* XDR *xdrs; */ - /* caddr_t addr; */ -{ - - return (TRUE); -} - -/* - * XDR integers - */ -bool_t -xdr_int(xdrs, ip) - XDR *xdrs; - int *ip; -{ - -#ifdef lint - (void) (xdr_short(xdrs, (short *)ip)); - return (xdr_long(xdrs, (long *)ip)); -#else - if (sizeof (int) == sizeof (long)) { - return (xdr_long(xdrs, (long *)ip)); - } else { - return (xdr_short(xdrs, (short *)ip)); - } -#endif -} - -/* - * XDR unsigned integers - */ -bool_t -xdr_u_int(xdrs, up) - XDR *xdrs; - u_int *up; -{ - -#ifdef lint - (void) (xdr_short(xdrs, (short *)up)); - return (xdr_u_long(xdrs, (u_long *)up)); -#else - if (sizeof (u_int) == sizeof (u_long)) { - return (xdr_u_long(xdrs, (u_long *)up)); - } else { - return (xdr_short(xdrs, (short *)up)); - } -#endif -} - -/* - * XDR long integers - * same as xdr_u_long - open coded to save a proc call! - */ -bool_t -xdr_long(xdrs, lp) - register XDR *xdrs; - long *lp; -{ - - if (xdrs->x_op == XDR_ENCODE) - return (XDR_PUTLONG(xdrs, lp)); - - if (xdrs->x_op == XDR_DECODE) - return (XDR_GETLONG(xdrs, lp)); - - if (xdrs->x_op == XDR_FREE) - return (TRUE); - - return (FALSE); -} - -/* - * XDR unsigned long integers - * same as xdr_long - open coded to save a proc call! - */ -bool_t -xdr_u_long(xdrs, ulp) - register XDR *xdrs; - u_long *ulp; -{ - - if (xdrs->x_op == XDR_DECODE) - return (XDR_GETLONG(xdrs, (long *)ulp)); - if (xdrs->x_op == XDR_ENCODE) - return (XDR_PUTLONG(xdrs, (long *)ulp)); - if (xdrs->x_op == XDR_FREE) - return (TRUE); - return (FALSE); -} - -/* - * XDR short integers - */ -bool_t -xdr_short(xdrs, sp) - register XDR *xdrs; - short *sp; -{ - long l; - - switch (xdrs->x_op) { - - case XDR_ENCODE: - l = (long) *sp; - return (XDR_PUTLONG(xdrs, &l)); - - case XDR_DECODE: - if (!XDR_GETLONG(xdrs, &l)) { - return (FALSE); - } - *sp = (short) l; - return (TRUE); - - case XDR_FREE: - return (TRUE); - } - return (FALSE); -} - -/* - * XDR unsigned short integers - */ -bool_t -xdr_u_short(xdrs, usp) - register XDR *xdrs; - u_short *usp; -{ - u_long l; - - switch (xdrs->x_op) { - - case XDR_ENCODE: - l = (u_long) *usp; - return (XDR_PUTLONG(xdrs, &l)); - - case XDR_DECODE: - if (!XDR_GETLONG(xdrs, &l)) { - return (FALSE); - } - *usp = (u_short) l; - return (TRUE); - - case XDR_FREE: - return (TRUE); - } - return (FALSE); -} - - -/* - * XDR a char - */ -bool_t -xdr_char(xdrs, cp) - XDR *xdrs; - char *cp; -{ - int i; - - i = (*cp); - if (!xdr_int(xdrs, &i)) { - return (FALSE); - } - *cp = i; - return (TRUE); -} - -/* - * XDR an unsigned char - */ -bool_t -xdr_u_char(xdrs, cp) - XDR *xdrs; - char *cp; -{ - u_int u; - - u = (*cp); - if (!xdr_u_int(xdrs, &u)) { - return (FALSE); - } - *cp = u; - return (TRUE); -} - -/* - * XDR booleans - */ -bool_t -xdr_bool(xdrs, bp) - register XDR *xdrs; - bool_t *bp; -{ - long lb; - - switch (xdrs->x_op) { - - case XDR_ENCODE: - lb = *bp ? XDR_TRUE : XDR_FALSE; - return (XDR_PUTLONG(xdrs, &lb)); - - case XDR_DECODE: - if (!XDR_GETLONG(xdrs, &lb)) { - return (FALSE); - } - *bp = (lb == XDR_FALSE) ? FALSE : TRUE; - return (TRUE); - - case XDR_FREE: - return (TRUE); - } - return (FALSE); -} - -/* - * XDR enumerations - */ -bool_t -xdr_enum(xdrs, ep) - XDR *xdrs; - enum_t *ep; -{ -#ifndef lint - enum sizecheck { SIZEVAL }; /* used to find the size of an enum */ - - /* - * enums are treated as ints - */ - if (sizeof (enum sizecheck) == sizeof (long)) { - return (xdr_long(xdrs, (long *)ep)); - } else if (sizeof (enum sizecheck) == sizeof (short)) { - return (xdr_short(xdrs, (short *)ep)); - } else { - return (FALSE); - } -#else - (void) (xdr_short(xdrs, (short *)ep)); - return (xdr_long(xdrs, (long *)ep)); -#endif -} - -/* - * XDR opaque data - * Allows the specification of a fixed size sequence of opaque bytes. - * cp points to the opaque object and cnt gives the byte length. - */ -bool_t -xdr_opaque(xdrs, cp, cnt) - register XDR *xdrs; - caddr_t cp; - register u_int cnt; -{ - register u_int rndup; - static int crud[BYTES_PER_XDR_UNIT]; - - /* - * if no data we are done - */ - if (cnt == 0) - return (TRUE); - - /* - * round byte count to full xdr units - */ - rndup = cnt % BYTES_PER_XDR_UNIT; - if (rndup > 0) - rndup = BYTES_PER_XDR_UNIT - rndup; - - if (xdrs->x_op == XDR_DECODE) { - if (!XDR_GETBYTES(xdrs, cp, cnt)) { - return (FALSE); - } - if (rndup == 0) - return (TRUE); - return (XDR_GETBYTES(xdrs, crud, rndup)); - } - - if (xdrs->x_op == XDR_ENCODE) { - if (!XDR_PUTBYTES(xdrs, cp, cnt)) { - return (FALSE); - } - if (rndup == 0) - return (TRUE); - return (XDR_PUTBYTES(xdrs, xdr_zero, rndup)); - } - - if (xdrs->x_op == XDR_FREE) { - return (TRUE); - } - - return (FALSE); -} - -/* - * XDR counted bytes - * *cpp is a pointer to the bytes, *sizep is the count. - * If *cpp is NULL maxsize bytes are allocated - */ -bool_t -xdr_bytes(xdrs, cpp, sizep, maxsize) - register XDR *xdrs; - char **cpp; - register u_int *sizep; - u_int maxsize; -{ - register char *sp = *cpp; /* sp is the actual string pointer */ - register u_int nodesize; - - /* - * first deal with the length since xdr bytes are counted - */ - if (! xdr_u_int(xdrs, sizep)) { - return (FALSE); - } - nodesize = *sizep; - if ((nodesize > maxsize) && (xdrs->x_op != XDR_FREE)) { - return (FALSE); - } - - /* - * now deal with the actual bytes - */ - switch (xdrs->x_op) { - - case XDR_DECODE: - if (nodesize == 0) { - return (TRUE); - } - if (sp == NULL) { - *cpp = sp = (char *)mem_alloc(nodesize); - } - if (sp == NULL) { - (void) printf("xdr_bytes: out of memory\n"); - return (FALSE); - } - /* fall into ... */ - - case XDR_ENCODE: - return (xdr_opaque(xdrs, sp, nodesize)); - - case XDR_FREE: - if (sp != NULL) { - mem_free(sp, nodesize); - *cpp = NULL; - } - return (TRUE); - } - return (FALSE); -} - -/* - * Implemented here due to commonality of the object. - */ -bool_t -xdr_netobj(xdrs, np) - XDR *xdrs; - struct netobj *np; -{ - - return (xdr_bytes(xdrs, &np->n_bytes, &np->n_len, MAX_NETOBJ_SZ)); -} - -/* - * XDR a descriminated union - * Support routine for discriminated unions. - * You create an array of xdrdiscrim structures, terminated with - * an entry with a null procedure pointer. The routine gets - * the discriminant value and then searches the array of xdrdiscrims - * looking for that value. It calls the procedure given in the xdrdiscrim - * to handle the discriminant. If there is no specific routine a default - * routine may be called. - * If there is no specific or default routine an error is returned. - */ -bool_t -xdr_union(xdrs, dscmp, unp, choices, dfault) - register XDR *xdrs; - enum_t *dscmp; /* enum to decide which arm to work on */ - char *unp; /* the union itself */ - struct xdr_discrim *choices; /* [value, xdr proc] for each arm */ - xdrproc_t dfault; /* default xdr routine */ -{ - register enum_t dscm; - - /* - * we deal with the discriminator; it's an enum - */ - if (! xdr_enum(xdrs, dscmp)) { - return (FALSE); - } - dscm = *dscmp; - - /* - * search choices for a value that matches the discriminator. - * if we find one, execute the xdr routine for that value. - */ - for (; choices->proc != NULL_xdrproc_t; choices++) { - if (choices->value == dscm) - return ((*(choices->proc))(xdrs, unp, LASTUNSIGNED)); - } - - /* - * no match - execute the default xdr routine if there is one - */ - return ((dfault == NULL_xdrproc_t) ? FALSE : - (*dfault)(xdrs, unp, LASTUNSIGNED)); -} - - -/* - * Non-portable xdr primitives. - * Care should be taken when moving these routines to new architectures. - */ - - -/* - * XDR null terminated ASCII strings - * xdr_string deals with "C strings" - arrays of bytes that are - * terminated by a NULL character. The parameter cpp references a - * pointer to storage; If the pointer is null, then the necessary - * storage is allocated. The last parameter is the max allowed length - * of the string as specified by a protocol. - */ -bool_t -xdr_string(xdrs, cpp, maxsize) - register XDR *xdrs; - char **cpp; - u_int maxsize; -{ - register char *sp = *cpp; /* sp is the actual string pointer */ - u_int size; - u_int nodesize; - - /* - * first deal with the length since xdr strings are counted-strings - */ - switch (xdrs->x_op) { - case XDR_FREE: - if (sp == NULL) { - return(TRUE); /* already free */ - } - /* fall through... */ - case XDR_ENCODE: - size = strlen(sp); - break; - default: - break; - } - if (! xdr_u_int(xdrs, &size)) { - return (FALSE); - } - if (size > maxsize) { - return (FALSE); - } - nodesize = size + 1; - - /* - * now deal with the actual bytes - */ - switch (xdrs->x_op) { - - case XDR_DECODE: - if (nodesize == 0) { - return (TRUE); - } - if (sp == NULL) - *cpp = sp = (char *)mem_alloc(nodesize); - if (sp == NULL) { - (void) printf("xdr_string: out of memory\n"); - return (FALSE); - } - sp[size] = 0; - /* fall into ... */ - - case XDR_ENCODE: - return (xdr_opaque(xdrs, sp, size)); - - case XDR_FREE: - mem_free(sp, nodesize); - *cpp = NULL; - return (TRUE); - } - return (FALSE); -} - -/* - * Wrapper for xdr_string that can be called directly from - * routines like clnt_call - */ -bool_t -xdr_wrapstring(xdrs, cpp) - XDR *xdrs; - char **cpp; -{ - if (xdr_string(xdrs, cpp, LASTUNSIGNED)) { - return (TRUE); - } - return (FALSE); -} diff --git a/c/src/lib/librpc/xdr_array.c b/c/src/lib/librpc/xdr_array.c deleted file mode 100644 index b3cd21f2f4..0000000000 --- a/c/src/lib/librpc/xdr_array.c +++ /dev/null @@ -1,157 +0,0 @@ -/* @(#)xdr_array.c 2.1 88/07/29 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)xdr_array.c 1.10 87/08/11 Copyr 1984 Sun Micro"; -#endif - -/* - * xdr_array.c, Generic XDR routines impelmentation. - * - * Copyright (C) 1984, Sun Microsystems, Inc. - * - * These are the "non-trivial" xdr primitives used to serialize and de-serialize - * arrays. See xdr.h for more info on the interface to xdr. - */ - - -#include /* printf */ -#include /* bcmp */ -#include /* free */ -#include -#include - -#define LASTUNSIGNED ((u_int)0-1) - - -/* - * XDR an array of arbitrary elements - * *addrp is a pointer to the array, *sizep is the number of elements. - * If addrp is NULL (*sizep * elsize) bytes are allocated. - * elsize is the size (in bytes) of each element, and elproc is the - * xdr procedure to call to handle each element of the array. - */ -bool_t -xdr_array(xdrs, addrp, sizep, maxsize, elsize, elproc) - register XDR *xdrs; - caddr_t *addrp; /* array pointer */ - u_int *sizep; /* number of elements */ - u_int maxsize; /* max numberof elements */ - u_int elsize; /* size in bytes of each element */ - xdrproc_t elproc; /* xdr routine to handle each element */ -{ - register u_int i; - register caddr_t target = *addrp; - register u_int c; /* the actual element count */ - register bool_t stat = TRUE; - register u_int nodesize; - - /* like strings, arrays are really counted arrays */ - if (! xdr_u_int(xdrs, sizep)) { - return (FALSE); - } - c = *sizep; - if ((c > maxsize) && (xdrs->x_op != XDR_FREE)) { - return (FALSE); - } - nodesize = c * elsize; - - /* - * if we are deserializing, we may need to allocate an array. - * We also save time by checking for a null array if we are freeing. - */ - if (target == NULL) - switch (xdrs->x_op) { - case XDR_DECODE: - if (c == 0) - return (TRUE); - *addrp = target = mem_alloc(nodesize); - if (target == NULL) { - (void) printf( - "xdr_array: out of memory\n"); - return (FALSE); - } - bzero(target, nodesize); - break; - - case XDR_FREE: - return (TRUE); - default: - break; - } - - /* - * now we xdr each element of array - */ - for (i = 0; (i < c) && stat; i++) { - stat = (*elproc)(xdrs, target, LASTUNSIGNED); - target += elsize; - } - - /* - * the array may need freeing - */ - if (xdrs->x_op == XDR_FREE) { - mem_free(*addrp, nodesize); - *addrp = NULL; - } - return (stat); -} - -/* - * xdr_vector(): - * - * XDR a fixed length array. Unlike variable-length arrays, - * the storage of fixed length arrays is static and unfreeable. - * > basep: base of the array - * > size: size of the array - * > elemsize: size of each element - * > xdr_elem: routine to XDR each element - */ -bool_t -xdr_vector(xdrs, basep, nelem, elemsize, xdr_elem) - register XDR *xdrs; - register char *basep; - register u_int nelem; - register u_int elemsize; - register xdrproc_t xdr_elem; -{ - register u_int i; - register char *elptr; - - elptr = basep; - for (i = 0; i < nelem; i++) { - if (! (*xdr_elem)(xdrs, elptr, LASTUNSIGNED)) { - return(FALSE); - } - elptr += elemsize; - } - return(TRUE); -} - diff --git a/c/src/lib/librpc/xdr_mem.c b/c/src/lib/librpc/xdr_mem.c deleted file mode 100644 index 280451a349..0000000000 --- a/c/src/lib/librpc/xdr_mem.c +++ /dev/null @@ -1,185 +0,0 @@ -/* @(#)xdr_mem.c 2.1 88/07/29 4.0 RPCSRC */ -/* - * Sun RPC is a product of Sun Microsystems, Inc. and is provided for - * unrestricted use provided that this legend is included on all tape - * media and as a part of the software program in whole or part. Users - * may copy or modify Sun RPC without charge, but are not authorized - * to license or distribute it to anyone else except as part of a product or - * program developed by the user. - * - * SUN RPC IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING THE - * WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR - * PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. - * - * Sun RPC is provided with no support and without any obligation on the - * part of Sun Microsystems, Inc. to assist in its use, correction, - * modification or enhancement. - * - * SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE - * INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY SUN RPC - * OR ANY PART THEREOF. - * - * In no event will Sun Microsystems, Inc. be liable for any lost revenue - * or profits or other special, indirect and consequential damages, even if - * Sun has been advised of the possibility of such damages. - * - * Sun Microsystems, Inc. - * 2550 Garcia Avenue - * Mountain View, California 94043 - */ -#if !defined(lint) && defined(SCCSIDS) -static char sccsid[] = "@(#)xdr_mem.c 1.19 87/08/11 Copyr 1984 Sun Micro"; -#endif - -/* - * xdr_mem.h, XDR implementation using memory buffers. - * - * Copyright (C) 1984, Sun Microsystems, Inc. - * - * If you have some data to be interpreted as external data representation - * or to be converted to external data representation in a memory buffer, - * then this is the package for you. - * - */ - - -#include /* bcopy */ -#include -#include -#include - -static bool_t xdrmem_getlong(); -static bool_t xdrmem_putlong(); -static bool_t xdrmem_getbytes(); -static bool_t xdrmem_putbytes(); -static u_int xdrmem_getpos(); -static bool_t xdrmem_setpos(); -static long * xdrmem_inline(); -static void xdrmem_destroy(); - -static struct xdr_ops xdrmem_ops = { - xdrmem_getlong, - xdrmem_putlong, - xdrmem_getbytes, - xdrmem_putbytes, - xdrmem_getpos, - xdrmem_setpos, - xdrmem_inline, - xdrmem_destroy -}; - -/* - * The procedure xdrmem_create initializes a stream descriptor for a - * memory buffer. - */ -void -xdrmem_create(xdrs, addr, size, op) - register XDR *xdrs; - caddr_t addr; - u_int size; - enum xdr_op op; -{ - - xdrs->x_op = op; - xdrs->x_ops = &xdrmem_ops; - xdrs->x_private = xdrs->x_base = addr; - xdrs->x_handy = size; -} - -static void -xdrmem_destroy(/*xdrs*/) - /*XDR *xdrs;*/ -{ -} - -static bool_t -xdrmem_getlong(xdrs, lp) - register XDR *xdrs; - long *lp; -{ - - if ((xdrs->x_handy -= sizeof(long)) < 0) - return (FALSE); - *lp = (long)ntohl((u_long)(*((long *)(xdrs->x_private)))); - xdrs->x_private += sizeof(long); - return (TRUE); -} - -static bool_t -xdrmem_putlong(xdrs, lp) - register XDR *xdrs; - long *lp; -{ - - if ((xdrs->x_handy -= sizeof(long)) < 0) - return (FALSE); - *(long *)xdrs->x_private = (long)htonl((u_long)(*lp)); - xdrs->x_private += sizeof(long); - return (TRUE); -} - -static bool_t -xdrmem_getbytes(xdrs, addr, len) - register XDR *xdrs; - caddr_t addr; - register u_int len; -{ - - if ((xdrs->x_handy -= len) < 0) - return (FALSE); - bcopy(xdrs->x_private, addr, len); - xdrs->x_private += len; - return (TRUE); -} - -static bool_t -xdrmem_putbytes(xdrs, addr, len) - register XDR *xdrs; - caddr_t addr; - register u_int len; -{ - - if ((xdrs->x_handy -= len) < 0) - return (FALSE); - bcopy(addr, xdrs->x_private, len); - xdrs->x_private += len; - return (TRUE); -} - -static u_int -xdrmem_getpos(xdrs) - register XDR *xdrs; -{ - - return ((u_int)xdrs->x_private - (u_int)xdrs->x_base); -} - -static bool_t -xdrmem_setpos(xdrs, pos) - register XDR *xdrs; - u_int pos; -{ - register caddr_t newaddr = xdrs->x_base + pos; - register caddr_t lastaddr = xdrs->x_private + xdrs->x_handy; - - if ((long)newaddr > (long)lastaddr) - return (FALSE); - xdrs->x_private = newaddr; - xdrs->x_handy = (int)lastaddr - (int)newaddr; - return (TRUE); -} - -static long * -xdrmem_inline(xdrs, len) - register XDR *xdrs; - int len; -{ - long *buf = 0; - - if (xdrs->x_handy >= len) { - xdrs->x_handy -= len; - buf = (long *) xdrs->x_private; - xdrs->x_private += len; - } - return (buf); -} diff --git a/c/src/lib/start/a29k/configure.in b/c/src/lib/start/a29k/configure.in index 0a43508ad2..208d245f76 100644 --- a/c/src/lib/start/a29k/configure.in +++ b/c/src/lib/start/a29k/configure.in @@ -29,8 +29,6 @@ RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - # try to explicitly list a Makefile here AC_OUTPUT( Makefile diff --git a/c/src/lib/start/i960/configure.in b/c/src/lib/start/i960/configure.in index 7904482351..0ae4136f02 100644 --- a/c/src/lib/start/i960/configure.in +++ b/c/src/lib/start/i960/configure.in @@ -29,8 +29,6 @@ RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) - # try to explicitly list a Makefile here AC_OUTPUT( Makefile diff --git a/c/src/lib/start/m68k/configure.in b/c/src/lib/start/m68k/configure.in index 07938c8818..9b025fa356 100644 --- a/c/src/lib/start/m68k/configure.in +++ b/c/src/lib/start/m68k/configure.in @@ -28,7 +28,6 @@ RTEMS_PROG_CC_FOR_TARGET RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) # try to explicitly list a Makefile here AC_OUTPUT( diff --git a/c/src/lib/start/mips64orion/configure.in b/c/src/lib/start/mips64orion/configure.in index 143f8f71ac..3befd1a55a 100644 --- a/c/src/lib/start/mips64orion/configure.in +++ b/c/src/lib/start/mips64orion/configure.in @@ -28,7 +28,6 @@ RTEMS_PROG_CC_FOR_TARGET RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) # try to explicitly list a Makefile here AC_OUTPUT( diff --git a/c/src/lib/start/sh/configure.in b/c/src/lib/start/sh/configure.in index 4e6bd9ca09..73579a97bc 100644 --- a/c/src/lib/start/sh/configure.in +++ b/c/src/lib/start/sh/configure.in @@ -28,7 +28,6 @@ RTEMS_PROG_CC_FOR_TARGET RTEMS_CANONICALIZE_TOOLS RTEMS_CHECK_CUSTOM_BSP(RTEMS_BSP) -RTEMS_BSP_ALIAS(${RTEMS_BSP},bspdir) # try to explicitly list a Makefile here AC_OUTPUT( -- cgit v1.2.3