mirror of
https://github.com/devkitPro/buildscripts.git
synced 2026-04-08 10:15:27 -05:00
7895 lines
221 KiB
Diff
7895 lines
221 KiB
Diff
diff --git a/libgloss/configure b/libgloss/configure
|
||
index 90a0522..99fe5ad 100755
|
||
--- a/libgloss/configure
|
||
+++ b/libgloss/configure
|
||
@@ -2589,6 +2589,8 @@ if test "${config_libnosys}" = "true"; then
|
||
|
||
fi
|
||
|
||
+subdirs="$subdirs libsysbase"
|
||
+
|
||
DEPDIR="${am__leading_dot}deps"
|
||
|
||
ac_config_commands="$ac_config_commands depfiles"
|
||
diff --git a/libgloss/configure.in b/libgloss/configure.in
|
||
index d1b3b34..58c54d6 100644
|
||
--- a/libgloss/configure.in
|
||
+++ b/libgloss/configure.in
|
||
@@ -2,6 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
|
||
AC_PREREQ(2.59)
|
||
AC_INIT([libgloss],[LIBGLOSS_VERSION])
|
||
AC_CONFIG_SRCDIR([libnosys])
|
||
+AC_CONFIG_SRCDIR([libsysbase])
|
||
|
||
if test "${enable_shared}" = "yes" ; then
|
||
echo "Shared libraries not supported for cross compiling, ignored"
|
||
@@ -33,6 +34,9 @@ config_testsuite=true
|
||
dnl indicates whether to run configure within the libnosys subdirectory
|
||
config_libnosys=true
|
||
|
||
+dnl indicates whether to run configure within the libsysbase subdirectory
|
||
+config_libsysbase=true
|
||
+
|
||
case "${target}" in
|
||
aarch64*-*-*)
|
||
AC_CONFIG_SUBDIRS(aarch64)
|
||
@@ -185,6 +189,10 @@ if test "${config_libnosys}" = "true"; then
|
||
AC_CONFIG_SUBDIRS([libnosys])
|
||
fi
|
||
|
||
+if test "${config_libsysbase}" = "true"; then
|
||
+ AC_CONFIG_SUBDIRS([libsysbase])
|
||
+fi
|
||
+
|
||
LIB_AC_PROG_CC
|
||
AS=${AS-as}
|
||
AC_SUBST(AS)
|
||
diff --git a/libgloss/libsysbase/Makefile.in b/libgloss/libsysbase/Makefile.in
|
||
new file mode 100644
|
||
index 0000000..2a02eb0
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/Makefile.in
|
||
@@ -0,0 +1,148 @@
|
||
+# Copyright (c) 1998 Cygnus Support
|
||
+#
|
||
+# The authors hereby grant permission to use, copy, modify, distribute,
|
||
+# and license this software and its documentation for any purpose, provided
|
||
+# that existing copyright notices are retained in all copies and that this
|
||
+# notice is included verbatim in any distributions. No written agreement,
|
||
+# license, or royalty fee is required for any of the authorized uses.
|
||
+# Modifications to this software may be copyrighted by their authors
|
||
+# and need not follow the licensing terms described here, provided that
|
||
+# the new terms are clearly indicated on the first page of each file where
|
||
+# they apply.
|
||
+
|
||
+DESTDIR =
|
||
+VPATH = @srcdir@
|
||
+srcdir = @srcdir@
|
||
+objdir = .
|
||
+srcroot = $(srcdir)/../..
|
||
+objroot = $(objdir)/../..
|
||
+
|
||
+prefix = @prefix@
|
||
+exec_prefix = @exec_prefix@
|
||
+
|
||
+host_alias = @host_alias@
|
||
+target_alias = @target_alias@
|
||
+program_transform_name = @program_transform_name@
|
||
+
|
||
+bindir = @bindir@
|
||
+libdir = @libdir@
|
||
+tooldir = $(exec_prefix)/$(target_alias)
|
||
+
|
||
+# Multilib support variables.
|
||
+# TOP is used instead of MULTI{BUILD,SRC}TOP.
|
||
+MULTIDIRS =
|
||
+MULTISUBDIR =
|
||
+MULTIDO = true
|
||
+MULTICLEAN = true
|
||
+
|
||
+INSTALL = @INSTALL@
|
||
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||
+INSTALL_DATA = @INSTALL_DATA@
|
||
+
|
||
+SHELL = /bin/sh
|
||
+
|
||
+CC = @CC@
|
||
+
|
||
+#AS = @AS@
|
||
+AS = `if [ -f ${objroot}/../gas/as.new ] ; \
|
||
+ then echo ${objroot}/../gas/as.new ; \
|
||
+ else echo as ; fi`
|
||
+
|
||
+AR = @AR@
|
||
+
|
||
+#LD = @LD@
|
||
+LD = `if [ -f ${objroot}/../ld/ld.new ] ; \
|
||
+ then echo ${objroot}/../ld/ld.new ; \
|
||
+ else echo ld ; fi`
|
||
+
|
||
+RANLIB = @RANLIB@
|
||
+
|
||
+OBJDUMP = `if [ -f ${objroot}/../binutils/objdump ] ; \
|
||
+ then echo ${objroot}/../binutils/objdump ; \
|
||
+ else t='$(program_transform_name)'; echo objdump | sed -e $$t ; fi`
|
||
+OBJCOPY = `if [ -f ${objroot}/../binutils/objcopy ] ; \
|
||
+ then echo ${objroot}/../binutils/objcopy ; \
|
||
+ else t='$(program_transform_name)'; echo objcopy | sed -e $$t ; fi`
|
||
+
|
||
+# object files needed
|
||
+OBJS = abort.o iosupport.o close.o environ.o execve.o fork.o fstat.o getpid.o gettod.o \
|
||
+ isatty.o kill.o link.o lseek.o open.o read.o sbrk.o stat.o times.o \
|
||
+ unlink.o wait.o write.o _exit.o malloc_vars.o \
|
||
+ chdir.o mkdir.o rename.o build_argv.o statvfs.o \
|
||
+ flock.o syscall_support.o handle_manager.o truncate.o ftruncate.o dirent.o fsync.o \
|
||
+ fchmod.o chmod.o rmdir.o
|
||
+
|
||
+# Object files specific to particular targets.
|
||
+EVALOBJS = ${OBJS}
|
||
+
|
||
+GCC_LDFLAGS = `if [ -d ${objroot}/../gcc ] ; \
|
||
+ then echo -L${objroot}/../gcc ; fi`
|
||
+
|
||
+OUTPUTS = libsysbase.a
|
||
+
|
||
+NEWLIB_CFLAGS = `if [ -d ${objroot}/newlib ]; then echo -I${objroot}/newlib/targ-include -I${srcroot}/newlib/libc/include; fi`
|
||
+NEWLIB_LDFLAGS = `if [ -d ${objroot}/newlib ]; then echo -B${objroot}/newlib/ -L${objroot}/newlib/; fi`
|
||
+
|
||
+INCLUDES = -I. -I$(srcdir)/..
|
||
+# Note that when building the library, ${MULTILIB} is not the way multilib
|
||
+# options are passed; they're passed in $(CFLAGS).
|
||
+CFLAGS_FOR_TARGET = ${MULTILIB} ${INCLUDES} ${NEWLIB_CFLAGS}
|
||
+LDFLAGS_FOR_TARGET = ${MULTILIB} ${NEWLIB_LDFLAGS}
|
||
+AR_FLAGS = qc
|
||
+
|
||
+.c.o:
|
||
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $<
|
||
+
|
||
+.C.o:
|
||
+ $(CC) $(CFLAGS_FOR_TARGET) -O2 $(INCLUDES) -c $(CFLAGS) $<
|
||
+.s.o:
|
||
+ $(AS) $(ASFLAGS_FOR_TARGET) $(INCLUDES) $(ASFLAGS) -o $*.o $<
|
||
+
|
||
+#
|
||
+# GCC knows to run the preprocessor on .S files before it assembles them.
|
||
+#
|
||
+.S.o:
|
||
+ $(CC) $(CFLAGS_FOR_TARGET) $(INCLUDES) $(CFLAGS) -c $<
|
||
+
|
||
+#
|
||
+# this is a bogus target that'll produce an assembler from the
|
||
+# C source with the right compiler options. this is so we can
|
||
+# track down code generation or debug symbol bugs.
|
||
+#
|
||
+.c.s:
|
||
+ $(CC) $(CFLAGS_FOR_TARGET) -S $(INCLUDES) $(CFLAGS) $<
|
||
+
|
||
+all: ${OUTPUTS}
|
||
+
|
||
+#
|
||
+# here's where we build the library for each target
|
||
+#
|
||
+
|
||
+libsysbase.a: $(EVALOBJS)
|
||
+ ${AR} ${ARFLAGS} $@ $(EVALOBJS)
|
||
+ ${RANLIB} $@
|
||
+
|
||
+doc:
|
||
+
|
||
+clean mostlyclean:
|
||
+ rm -f $(OUTPUTS) *.i *~ *.o *-test *.srec *.dis *.map *.x
|
||
+
|
||
+distclean maintainer-clean realclean: clean
|
||
+ rm -f Makefile config.status $(OUTPUTS)
|
||
+
|
||
+.PHONY: install info install-info clean-info
|
||
+install:
|
||
+ @for outputs in ${OUTPUTS}; do\
|
||
+ mkdir -p $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||
+ $(INSTALL_PROGRAM) $${outputs} $(DESTDIR)$(tooldir)/lib${MULTISUBDIR}; \
|
||
+ done
|
||
+
|
||
+info:
|
||
+install-info:
|
||
+clean-info:
|
||
+
|
||
+Makefile: Makefile.in config.status @host_makefile_frag_path@
|
||
+ $(SHELL) config.status
|
||
+
|
||
+config.status: configure
|
||
+ $(SHELL) config.status --recheck
|
||
diff --git a/libgloss/libsysbase/_exit.c b/libgloss/libsysbase/_exit.c
|
||
new file mode 100644
|
||
index 0000000..502d6fb
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/_exit.c
|
||
@@ -0,0 +1,19 @@
|
||
+/* Stub version of _exit. */
|
||
+
|
||
+#include <limits.h>
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+_VOID
|
||
+_DEFUN (_exit, (rc),
|
||
+ int rc)
|
||
+{
|
||
+
|
||
+ if ( __syscalls.exit ) {
|
||
+ __syscalls.exit(rc);
|
||
+ }
|
||
+
|
||
+ while(1);
|
||
+}
|
||
diff --git a/libgloss/libsysbase/abort.c b/libgloss/libsysbase/abort.c
|
||
new file mode 100644
|
||
index 0000000..9272e22
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/abort.c
|
||
@@ -0,0 +1,8 @@
|
||
+#include <stdlib.h>
|
||
+#include <unistd.h>
|
||
+
|
||
+void abort(void) {
|
||
+ write (2, "Abort called.\n", sizeof("Abort called.\n")-1);
|
||
+ _exit (1);
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/acconfig.h b/libgloss/libsysbase/acconfig.h
|
||
new file mode 100644
|
||
index 0000000..200ea78
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/acconfig.h
|
||
@@ -0,0 +1,29 @@
|
||
+/* Name of package. */
|
||
+#undef PACKAGE
|
||
+
|
||
+/* Version of package. */
|
||
+#undef VERSION
|
||
+
|
||
+/* Missing syscall names */
|
||
+#undef MISSING_SYSCALL_NAMES
|
||
+
|
||
+/* Reentrant syscalls */
|
||
+#undef REENTRANT_SYSCALLS_PROVIDED
|
||
+
|
||
+/* Using ELF format */
|
||
+#undef HAVE_ELF
|
||
+
|
||
+/* Using GNU LD */
|
||
+#undef HAVE_GNU_LD
|
||
+
|
||
+/* .previous directive allowed */
|
||
+#undef HAVE_ASM_PREVIOUS_DIRECTIVE
|
||
+
|
||
+/* .pushsection/.popsection directives allowed */
|
||
+#undef HAVE_ASM_POPSECTION_DIRECTIVE
|
||
+
|
||
+/* support for section attributes */
|
||
+#undef HAVE_SECTION_ATTRIBUTES
|
||
+
|
||
+/* symbol prefix */
|
||
+#undef __SYMBOL_PREFIX
|
||
diff --git a/libgloss/libsysbase/aclocal.m4 b/libgloss/libsysbase/aclocal.m4
|
||
new file mode 100644
|
||
index 0000000..b6cdfae
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/aclocal.m4
|
||
@@ -0,0 +1,344 @@
|
||
+# generated automatically by aclocal 1.9.5 -*- Autoconf -*-
|
||
+
|
||
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
|
||
+# 2005 Free Software Foundation, Inc.
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+# This program is distributed in the hope that it will be useful,
|
||
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||
+# PARTICULAR PURPOSE.
|
||
+
|
||
+# AM_CONDITIONAL -*- Autoconf -*-
|
||
+
|
||
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
|
||
+# Free Software Foundation, Inc.
|
||
+#
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+# serial 7
|
||
+
|
||
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
|
||
+# -------------------------------------
|
||
+# Define a conditional.
|
||
+AC_DEFUN([AM_CONDITIONAL],
|
||
+[AC_PREREQ(2.52)dnl
|
||
+ ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
|
||
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
|
||
+AC_SUBST([$1_TRUE])
|
||
+AC_SUBST([$1_FALSE])
|
||
+if $2; then
|
||
+ $1_TRUE=
|
||
+ $1_FALSE='#'
|
||
+else
|
||
+ $1_TRUE='#'
|
||
+ $1_FALSE=
|
||
+fi
|
||
+AC_CONFIG_COMMANDS_PRE(
|
||
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
|
||
+ AC_MSG_ERROR([[conditional "$1" was never defined.
|
||
+Usually this means the macro was only invoked conditionally.]])
|
||
+fi])])
|
||
+
|
||
+
|
||
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||
+# Free Software Foundation, Inc.
|
||
+#
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+# serial 8
|
||
+
|
||
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
|
||
+# written in clear, in which case automake, when reading aclocal.m4,
|
||
+# will think it sees a *use*, and therefore will trigger all it's
|
||
+# C support machinery. Also note that it means that autoscan, seeing
|
||
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
|
||
+
|
||
+
|
||
+# _AM_DEPENDENCIES(NAME)
|
||
+# ----------------------
|
||
+# See how the compiler implements dependency checking.
|
||
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
|
||
+# We try a few techniques and use that to set a single cache variable.
|
||
+#
|
||
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
|
||
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
|
||
+# dependency, and given that the user is not expected to run this macro,
|
||
+# just rely on AC_PROG_CC.
|
||
+AC_DEFUN([_AM_DEPENDENCIES],
|
||
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
|
||
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
|
||
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
|
||
+AC_REQUIRE([AM_DEP_TRACK])dnl
|
||
+
|
||
+ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
|
||
+ [$1], CXX, [depcc="$CXX" am_compiler_list=],
|
||
+ [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
|
||
+ [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
|
||
+ [depcc="$$1" am_compiler_list=])
|
||
+
|
||
+AC_CACHE_CHECK([dependency style of $depcc],
|
||
+ [am_cv_$1_dependencies_compiler_type],
|
||
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
|
||
+ # We make a subdir and do the tests there. Otherwise we can end up
|
||
+ # making bogus files that we don't know about and never remove. For
|
||
+ # instance it was reported that on HP-UX the gcc test will end up
|
||
+ # making a dummy file named `D' -- because `-MD' means `put the output
|
||
+ # in D'.
|
||
+ mkdir conftest.dir
|
||
+ # Copy depcomp to subdir because otherwise we won't find it if we're
|
||
+ # using a relative directory.
|
||
+ cp "$am_depcomp" conftest.dir
|
||
+ cd conftest.dir
|
||
+ # We will build objects and dependencies in a subdirectory because
|
||
+ # it helps to detect inapplicable dependency modes. For instance
|
||
+ # both Tru64's cc and ICC support -MD to output dependencies as a
|
||
+ # side effect of compilation, but ICC will put the dependencies in
|
||
+ # the current directory while Tru64 will put them in the object
|
||
+ # directory.
|
||
+ mkdir sub
|
||
+
|
||
+ am_cv_$1_dependencies_compiler_type=none
|
||
+ if test "$am_compiler_list" = ""; then
|
||
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
|
||
+ fi
|
||
+ for depmode in $am_compiler_list; do
|
||
+ # Setup a source with many dependencies, because some compilers
|
||
+ # like to wrap large dependency lists on column 80 (with \), and
|
||
+ # we should not choose a depcomp mode which is confused by this.
|
||
+ #
|
||
+ # We need to recreate these files for each test, as the compiler may
|
||
+ # overwrite some of them when testing with obscure command lines.
|
||
+ # This happens at least with the AIX C compiler.
|
||
+ : > sub/conftest.c
|
||
+ for i in 1 2 3 4 5 6; do
|
||
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
|
||
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
|
||
+ # Solaris 8's {/usr,}/bin/sh.
|
||
+ touch sub/conftst$i.h
|
||
+ done
|
||
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
|
||
+
|
||
+ case $depmode in
|
||
+ nosideeffect)
|
||
+ # after this tag, mechanisms are not by side-effect, so they'll
|
||
+ # only be used when explicitly requested
|
||
+ if test "x$enable_dependency_tracking" = xyes; then
|
||
+ continue
|
||
+ else
|
||
+ break
|
||
+ fi
|
||
+ ;;
|
||
+ none) break ;;
|
||
+ esac
|
||
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
|
||
+ # mode. It turns out that the SunPro C++ compiler does not properly
|
||
+ # handle `-M -o', and we need to detect this.
|
||
+ if depmode=$depmode \
|
||
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
|
||
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
|
||
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
|
||
+ >/dev/null 2>conftest.err &&
|
||
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
|
||
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||
+ # icc doesn't choke on unknown options, it will just issue warnings
|
||
+ # or remarks (even with -Werror). So we grep stderr for any message
|
||
+ # that says an option was ignored or not supported.
|
||
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
|
||
+ # icc: Command line warning: ignoring option '-M'; no argument required
|
||
+ # The diagnosis changed in icc 8.0:
|
||
+ # icc: Command line remark: option '-MP' not supported
|
||
+ if (grep 'ignoring option' conftest.err ||
|
||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||
+ am_cv_$1_dependencies_compiler_type=$depmode
|
||
+ break
|
||
+ fi
|
||
+ fi
|
||
+ done
|
||
+
|
||
+ cd ..
|
||
+ rm -rf conftest.dir
|
||
+else
|
||
+ am_cv_$1_dependencies_compiler_type=none
|
||
+fi
|
||
+])
|
||
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
|
||
+AM_CONDITIONAL([am__fastdep$1], [
|
||
+ test "x$enable_dependency_tracking" != xno \
|
||
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
|
||
+])
|
||
+
|
||
+
|
||
+# AM_SET_DEPDIR
|
||
+# -------------
|
||
+# Choose a directory name for dependency files.
|
||
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
|
||
+AC_DEFUN([AM_SET_DEPDIR],
|
||
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
|
||
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
|
||
+])
|
||
+
|
||
+
|
||
+# AM_DEP_TRACK
|
||
+# ------------
|
||
+AC_DEFUN([AM_DEP_TRACK],
|
||
+[AC_ARG_ENABLE(dependency-tracking,
|
||
+[ --disable-dependency-tracking speeds up one-time build
|
||
+ --enable-dependency-tracking do not reject slow dependency extractors])
|
||
+if test "x$enable_dependency_tracking" != xno; then
|
||
+ am_depcomp="$ac_aux_dir/depcomp"
|
||
+ AMDEPBACKSLASH='\'
|
||
+fi
|
||
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
|
||
+AC_SUBST([AMDEPBACKSLASH])
|
||
+])
|
||
+
|
||
+# Generate code to set up dependency tracking. -*- Autoconf -*-
|
||
+
|
||
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
|
||
+# Free Software Foundation, Inc.
|
||
+#
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+#serial 3
|
||
+
|
||
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
|
||
+# ------------------------------
|
||
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||
+[for mf in $CONFIG_FILES; do
|
||
+ # Strip MF so we end up with the name of the file.
|
||
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
|
||
+ # Check whether this is an Automake generated Makefile or not.
|
||
+ # We used to match only the files named `Makefile.in', but
|
||
+ # some people rename them; so instead we look at the file content.
|
||
+ # Grep'ing the first line is not enough: some people post-process
|
||
+ # each Makefile.in and add a new line on top of each file to say so.
|
||
+ # So let's grep whole file.
|
||
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
|
||
+ dirpart=`AS_DIRNAME("$mf")`
|
||
+ else
|
||
+ continue
|
||
+ fi
|
||
+ # Extract the definition of DEPDIR, am__include, and am__quote
|
||
+ # from the Makefile without running `make'.
|
||
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
|
||
+ test -z "$DEPDIR" && continue
|
||
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
|
||
+ test -z "am__include" && continue
|
||
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
|
||
+ # When using ansi2knr, U may be empty or an underscore; expand it
|
||
+ U=`sed -n 's/^U = //p' < "$mf"`
|
||
+ # Find all dependency output files, they are included files with
|
||
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
|
||
+ # simplest approach to changing $(DEPDIR) to its actual value in the
|
||
+ # expansion.
|
||
+ for file in `sed -n "
|
||
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
|
||
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
||
+ # Make sure the directory exists.
|
||
+ test -f "$dirpart/$file" && continue
|
||
+ fdir=`AS_DIRNAME(["$file"])`
|
||
+ AS_MKDIR_P([$dirpart/$fdir])
|
||
+ # echo "creating $dirpart/$file"
|
||
+ echo '# dummy' > "$dirpart/$file"
|
||
+ done
|
||
+done
|
||
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
|
||
+
|
||
+
|
||
+# AM_OUTPUT_DEPENDENCY_COMMANDS
|
||
+# -----------------------------
|
||
+# This macro should only be invoked once -- use via AC_REQUIRE.
|
||
+#
|
||
+# This code is only required when automatic dependency tracking
|
||
+# is enabled. FIXME. This creates each `.P' file that we will
|
||
+# need in order to bootstrap the dependency handling code.
|
||
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||
+[AC_CONFIG_COMMANDS([depfiles],
|
||
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
|
||
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
|
||
+])
|
||
+
|
||
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
|
||
+#
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+# serial 2
|
||
+
|
||
+# Check whether the underlying file-system supports filenames
|
||
+# with a leading dot. For instance MS-DOS doesn't.
|
||
+AC_DEFUN([AM_SET_LEADING_DOT],
|
||
+[rm -rf .tst 2>/dev/null
|
||
+mkdir .tst 2>/dev/null
|
||
+if test -d .tst; then
|
||
+ am__leading_dot=.
|
||
+else
|
||
+ am__leading_dot=_
|
||
+fi
|
||
+rmdir .tst 2>/dev/null
|
||
+AC_SUBST([am__leading_dot])])
|
||
+
|
||
+# Check to see how 'make' treats includes. -*- Autoconf -*-
|
||
+
|
||
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
|
||
+#
|
||
+# This file is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy and/or distribute it,
|
||
+# with or without modifications, as long as this notice is preserved.
|
||
+
|
||
+# serial 3
|
||
+
|
||
+# AM_MAKE_INCLUDE()
|
||
+# -----------------
|
||
+# Check to see how make treats includes.
|
||
+AC_DEFUN([AM_MAKE_INCLUDE],
|
||
+[am_make=${MAKE-make}
|
||
+cat > confinc << 'END'
|
||
+am__doit:
|
||
+ @echo done
|
||
+.PHONY: am__doit
|
||
+END
|
||
+# If we don't find an include directive, just comment out the code.
|
||
+AC_MSG_CHECKING([for style of include used by $am_make])
|
||
+am__include="#"
|
||
+am__quote=
|
||
+_am_result=none
|
||
+# First try GNU make style include.
|
||
+echo "include confinc" > confmf
|
||
+# We grep out `Entering directory' and `Leaving directory'
|
||
+# messages which can occur if `w' ends up in MAKEFLAGS.
|
||
+# In particular we don't look at `^make:' because GNU make might
|
||
+# be invoked under some other name (usually "gmake"), in which
|
||
+# case it prints its new name instead of `make'.
|
||
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
|
||
+ am__include=include
|
||
+ am__quote=
|
||
+ _am_result=GNU
|
||
+fi
|
||
+# Now try BSD make style include.
|
||
+if test "$am__include" = "#"; then
|
||
+ echo '.include "confinc"' > confmf
|
||
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
|
||
+ am__include=.include
|
||
+ am__quote="\""
|
||
+ _am_result=BSD
|
||
+ fi
|
||
+fi
|
||
+AC_SUBST([am__include])
|
||
+AC_SUBST([am__quote])
|
||
+AC_MSG_RESULT([$_am_result])
|
||
+rm -f confinc confmf
|
||
+])
|
||
+
|
||
+m4_include([../acinclude.m4])
|
||
diff --git a/libgloss/libsysbase/build_argv.c b/libgloss/libsysbase/build_argv.c
|
||
new file mode 100644
|
||
index 0000000..79d2006
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/build_argv.c
|
||
@@ -0,0 +1,31 @@
|
||
+struct __argv {
|
||
+ int argvMagic;
|
||
+ char *commandLine;
|
||
+ int length;
|
||
+ int argc;
|
||
+ char **argv;
|
||
+ char **endARGV;
|
||
+};
|
||
+
|
||
+
|
||
+void build_argv (struct __argv* argstruct ) {
|
||
+
|
||
+ char *data = argstruct->commandLine;
|
||
+ int len = argstruct->length;
|
||
+
|
||
+ char** argv = (char**)(((int)data + len + sizeof(char **)) & ~(sizeof(char **)-1));
|
||
+ char* end = data + len - 1;
|
||
+ int argCount = 0;
|
||
+
|
||
+ do {
|
||
+ argv[argCount++] = data; // Add next arg to argv list
|
||
+ while (*(data) && data < end) data++; // Move to next NULL delimiter
|
||
+ data++; // Move to one after the NULL delimiter
|
||
+ } while (data < end);
|
||
+
|
||
+ *end = '\0'; // Force NULL terminator for last arg
|
||
+
|
||
+ argstruct->argv = argv;
|
||
+ argstruct->argc = argCount;
|
||
+ argstruct->endARGV = &argv[argCount];
|
||
+}
|
||
diff --git a/libgloss/libsysbase/chdir.c b/libgloss/libsysbase/chdir.c
|
||
new file mode 100644
|
||
index 0000000..2a0fa03
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/chdir.c
|
||
@@ -0,0 +1,201 @@
|
||
+#include <unistd.h>
|
||
+#include <limits.h>
|
||
+#include <reent.h>
|
||
+#include <string.h>
|
||
+#include <errno.h>
|
||
+#include <stdlib.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <sys/param.h>
|
||
+
|
||
+/* CWD always start with "/" */
|
||
+static char _current_working_directory [PATH_MAX] = "/";
|
||
+static char temp_cwd [PATH_MAX];
|
||
+
|
||
+#define DIRECTORY_SEPARATOR_CHAR '/'
|
||
+const char DIRECTORY_SEPARATOR[] = "/";
|
||
+const char DIRECTORY_THIS[] = ".";
|
||
+const char DIRECTORY_PARENT[] = "..";
|
||
+
|
||
+int _concatenate_path (struct _reent *r, char *path, const char *extra, int maxLength) {
|
||
+ char *pathEnd;
|
||
+ int pathLength;
|
||
+ const char *extraEnd;
|
||
+ int extraSize;
|
||
+
|
||
+ pathLength = strnlen (path, maxLength);
|
||
+
|
||
+ /* assumes path ends in a directory separator */
|
||
+ if (pathLength >= maxLength) {
|
||
+ r->_errno = ENAMETOOLONG;
|
||
+ return -1;
|
||
+ }
|
||
+ pathEnd = path + pathLength;
|
||
+ if (pathEnd[-1] != DIRECTORY_SEPARATOR_CHAR) {
|
||
+ pathEnd[0] = DIRECTORY_SEPARATOR_CHAR;
|
||
+ pathEnd += 1;
|
||
+ }
|
||
+
|
||
+ extraEnd = extra;
|
||
+
|
||
+ /* If the extra bit starts with a slash, start at root */
|
||
+ if (extra[0] == DIRECTORY_SEPARATOR_CHAR) {
|
||
+ pathEnd = strchr (path, DIRECTORY_SEPARATOR_CHAR) + 1;
|
||
+ pathEnd[0] = '\0';
|
||
+ }
|
||
+ do {
|
||
+ /* Advance past any separators in extra */
|
||
+ while (extra[0] == DIRECTORY_SEPARATOR_CHAR) {
|
||
+ extra += 1;
|
||
+ }
|
||
+
|
||
+ /* Grab the next directory name from extra */
|
||
+ extraEnd = strchr (extra, DIRECTORY_SEPARATOR_CHAR);
|
||
+ if (extraEnd == NULL) {
|
||
+ extraEnd = strrchr (extra, '\0');
|
||
+ } else {
|
||
+ extraEnd += 1;
|
||
+ }
|
||
+
|
||
+ extraSize = (extraEnd - extra);
|
||
+ if (extraSize == 0) {
|
||
+ break;
|
||
+ }
|
||
+
|
||
+ if ((strncmp (extra, DIRECTORY_THIS, sizeof(DIRECTORY_THIS) - 1) == 0)
|
||
+ && ((extra[sizeof(DIRECTORY_THIS)-1] == DIRECTORY_SEPARATOR_CHAR)
|
||
+ ||(extra[sizeof(DIRECTORY_THIS)-1] == '\0')))
|
||
+ {
|
||
+ /* Don't copy anything */
|
||
+ } else if ((strncmp (extra, DIRECTORY_PARENT, sizeof(DIRECTORY_PARENT) - 1) == 0)
|
||
+ && ((extra[sizeof(DIRECTORY_PARENT)-1] == DIRECTORY_SEPARATOR_CHAR)
|
||
+ ||(extra[sizeof(DIRECTORY_PARENT)-1] == '\0')))
|
||
+ {
|
||
+ /* Go up one level of in the path */
|
||
+ if (pathEnd[-1] == DIRECTORY_SEPARATOR_CHAR) {
|
||
+ // Remove trailing separator
|
||
+ pathEnd[-1] = '\0';
|
||
+ }
|
||
+ pathEnd = strrchr (path, DIRECTORY_SEPARATOR_CHAR);
|
||
+ if (pathEnd == NULL) {
|
||
+ /* Can't go up any higher, return false */
|
||
+ r->_errno = ENOENT;
|
||
+ return -1;
|
||
+ }
|
||
+ pathLength = pathEnd - path;
|
||
+ pathEnd += 1;
|
||
+ } else {
|
||
+ pathLength += extraSize;
|
||
+ if (pathLength >= maxLength) {
|
||
+ r->_errno = ENAMETOOLONG;
|
||
+ return -1;
|
||
+ }
|
||
+ /* Copy the next part over */
|
||
+ strncpy (pathEnd, extra, extraSize);
|
||
+ pathEnd += extraSize;
|
||
+ }
|
||
+ pathEnd[0] = '\0';
|
||
+ extra += extraSize;
|
||
+ } while (extraSize != 0);
|
||
+
|
||
+ if (pathEnd[-1] != DIRECTORY_SEPARATOR_CHAR) {
|
||
+ pathEnd[0] = DIRECTORY_SEPARATOR_CHAR;
|
||
+ pathEnd[1] = 0;
|
||
+ pathEnd += 1;
|
||
+ }
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+int chdir (const char *path) {
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ int dev;
|
||
+ const char *pathPosition;
|
||
+
|
||
+ /* Make sure the path is short enough */
|
||
+ if (strnlen (path, PATH_MAX) >= PATH_MAX) {
|
||
+ r->_errno = ENAMETOOLONG;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ if (strchr (path, ':') != NULL) {
|
||
+ strncpy (temp_cwd, path, PATH_MAX);
|
||
+ /* Move path past device name */
|
||
+ path = strchr (path, ':') + 1;
|
||
+ } else {
|
||
+ strncpy (temp_cwd, _current_working_directory, PATH_MAX);
|
||
+ }
|
||
+
|
||
+ pathPosition = strchr (temp_cwd , ':');
|
||
+
|
||
+ if (pathPosition == NULL) {
|
||
+ pathPosition = temp_cwd;
|
||
+ } else {
|
||
+ pathPosition++;
|
||
+ }
|
||
+
|
||
+ /* Make sure the path starts in the root directory */
|
||
+ if (pathPosition[0] != DIRECTORY_SEPARATOR_CHAR) {
|
||
+ r->_errno = ENOENT;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ /* Concatenate the path to the CWD */
|
||
+ if (_concatenate_path (r, temp_cwd, path, PATH_MAX) == -1) {
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ /* Get device from path name */
|
||
+ dev = FindDevice(temp_cwd);
|
||
+
|
||
+ if (dev < 0) {
|
||
+ r->_errno = ENODEV;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+
|
||
+ if ( devoptab_list[dev]->chdir_r == NULL) {
|
||
+ r->_errno = ENOSYS;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ /* Try changing directories on the device */
|
||
+ if (devoptab_list[dev]->chdir_r (r, temp_cwd) == -1) {
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ /* Since it worked, set the new CWD and default device */
|
||
+ setDefaultDevice(dev);
|
||
+ strncpy (_current_working_directory, temp_cwd, PATH_MAX);
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+char *getcwd(char *buf, size_t size) {
|
||
+
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ if (size == 0) {
|
||
+ if (buf != NULL) {
|
||
+ r->_errno = EINVAL;
|
||
+ return NULL;
|
||
+ }
|
||
+ buf = malloc(PATH_MAX);
|
||
+ size = PATH_MAX;
|
||
+ }
|
||
+
|
||
+ if (buf == NULL) {
|
||
+ r->_errno = EINVAL;
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ if ( size < (strnlen (_current_working_directory, PATH_MAX) + 1)) {
|
||
+ r->_errno = ERANGE;
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ strncpy (buf, _current_working_directory, size);
|
||
+
|
||
+ return buf;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/chmod.c b/libgloss/libsysbase/chmod.c
|
||
new file mode 100644
|
||
index 0000000..ce79a2c
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/chmod.c
|
||
@@ -0,0 +1,30 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/types.h>
|
||
+#include <sys/stat.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+int chmod(const char *path, mode_t mode) {
|
||
+ int ret,dev;
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ /* Get device from path name */
|
||
+ dev = FindDevice(path);
|
||
+
|
||
+ if (dev < 0) {
|
||
+ r->_errno = ENODEV;
|
||
+ ret = -1;
|
||
+ } else {
|
||
+ if (devoptab_list[dev]->chmod_r == NULL) {
|
||
+ r->_errno=ENOSYS;
|
||
+ } else {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->chmod_r(r,path,mode);
|
||
+ }
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/close.c b/libgloss/libsysbase/close.c
|
||
new file mode 100644
|
||
index 0000000..d3563fb
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/close.c
|
||
@@ -0,0 +1,49 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN(_close_r,(ptr,fileDesc),
|
||
+ struct _reent *ptr _AND
|
||
+ int fileDesc) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN(_close,(fileDesc),
|
||
+ int fileDesc) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+
|
||
+ if(fileDesc!=-1) {
|
||
+
|
||
+ __handle *handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( handle != NULL) {
|
||
+ dev = handle->device;
|
||
+ handle->refcount--;
|
||
+ if (handle->refcount == 0 ) {
|
||
+
|
||
+ if(devoptab_list[dev]->close_r) {
|
||
+ ptr->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->close_r(ptr,handle->fileStruct);
|
||
+ }
|
||
+ else
|
||
+ ret = 0;
|
||
+
|
||
+ __release_handle(fileDesc);
|
||
+ } else {
|
||
+ ret = 0;
|
||
+ }
|
||
+
|
||
+ }
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/config.h.in b/libgloss/libsysbase/config.h.in
|
||
new file mode 100644
|
||
index 0000000..48ce950
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/config.h.in
|
||
@@ -0,0 +1,25 @@
|
||
+/* config.h.in. Generated automatically from configure.in by autoheader. */
|
||
+
|
||
+/* Missing syscall names */
|
||
+#undef MISSING_SYSCALL_NAMES
|
||
+
|
||
+/* Reentrant syscalls */
|
||
+#undef REENTRANT_SYSCALLS_PROVIDED
|
||
+
|
||
+/* Using ELF format */
|
||
+#undef HAVE_ELF
|
||
+
|
||
+/* Using GNU LD */
|
||
+#undef HAVE_GNU_LD
|
||
+
|
||
+/* .previous directive allowed */
|
||
+#undef HAVE_ASM_PREVIOUS_DIRECTIVE
|
||
+
|
||
+/* .pushsection/.popsection directives allowed */
|
||
+#undef HAVE_ASM_POPSECTION_DIRECTIVE
|
||
+
|
||
+/* support for section attributes */
|
||
+#undef HAVE_SECTION_ATTRIBUTES
|
||
+
|
||
+/* symbol prefix */
|
||
+#undef __SYMBOL_PREFIX
|
||
diff --git a/libgloss/libsysbase/configure b/libgloss/libsysbase/configure
|
||
new file mode 100755
|
||
index 0000000..874eec1
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/configure
|
||
@@ -0,0 +1,4158 @@
|
||
+#! /bin/sh
|
||
+# Guess values for system-dependent variables and create Makefiles.
|
||
+# Generated by GNU Autoconf 2.69.
|
||
+#
|
||
+#
|
||
+# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
|
||
+#
|
||
+#
|
||
+# This configure script is free software; the Free Software Foundation
|
||
+# gives unlimited permission to copy, distribute and modify it.
|
||
+## -------------------- ##
|
||
+## M4sh Initialization. ##
|
||
+## -------------------- ##
|
||
+
|
||
+# Be more Bourne compatible
|
||
+DUALCASE=1; export DUALCASE # for MKS sh
|
||
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
|
||
+ emulate sh
|
||
+ NULLCMD=:
|
||
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
|
||
+ # is contrary to our usage. Disable this feature.
|
||
+ alias -g '${1+"$@"}'='"$@"'
|
||
+ setopt NO_GLOB_SUBST
|
||
+else
|
||
+ case `(set -o) 2>/dev/null` in #(
|
||
+ *posix*) :
|
||
+ set -o posix ;; #(
|
||
+ *) :
|
||
+ ;;
|
||
+esac
|
||
+fi
|
||
+
|
||
+
|
||
+as_nl='
|
||
+'
|
||
+export as_nl
|
||
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
|
||
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
|
||
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
|
||
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
|
||
+# Prefer a ksh shell builtin over an external printf program on Solaris,
|
||
+# but without wasting forks for bash or zsh.
|
||
+if test -z "$BASH_VERSION$ZSH_VERSION" \
|
||
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
|
||
+ as_echo='print -r --'
|
||
+ as_echo_n='print -rn --'
|
||
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
|
||
+ as_echo='printf %s\n'
|
||
+ as_echo_n='printf %s'
|
||
+else
|
||
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
|
||
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
|
||
+ as_echo_n='/usr/ucb/echo -n'
|
||
+ else
|
||
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
|
||
+ as_echo_n_body='eval
|
||
+ arg=$1;
|
||
+ case $arg in #(
|
||
+ *"$as_nl"*)
|
||
+ expr "X$arg" : "X\\(.*\\)$as_nl";
|
||
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
|
||
+ esac;
|
||
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
|
||
+ '
|
||
+ export as_echo_n_body
|
||
+ as_echo_n='sh -c $as_echo_n_body as_echo'
|
||
+ fi
|
||
+ export as_echo_body
|
||
+ as_echo='sh -c $as_echo_body as_echo'
|
||
+fi
|
||
+
|
||
+# The user is always right.
|
||
+if test "${PATH_SEPARATOR+set}" != set; then
|
||
+ PATH_SEPARATOR=:
|
||
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
|
||
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
|
||
+ PATH_SEPARATOR=';'
|
||
+ }
|
||
+fi
|
||
+
|
||
+
|
||
+# IFS
|
||
+# We need space, tab and new line, in precisely that order. Quoting is
|
||
+# there to prevent editors from complaining about space-tab.
|
||
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
|
||
+# splitting by setting IFS to empty value.)
|
||
+IFS=" "" $as_nl"
|
||
+
|
||
+# Find who we are. Look in the path if we contain no directory separator.
|
||
+as_myself=
|
||
+case $0 in #((
|
||
+ *[\\/]* ) as_myself=$0 ;;
|
||
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+ ;;
|
||
+esac
|
||
+# We did not find ourselves, most probably we were run as `sh COMMAND'
|
||
+# in which case we are not to be found in the path.
|
||
+if test "x$as_myself" = x; then
|
||
+ as_myself=$0
|
||
+fi
|
||
+if test ! -f "$as_myself"; then
|
||
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
|
||
+ exit 1
|
||
+fi
|
||
+
|
||
+# Unset variables that we do not need and which cause bugs (e.g. in
|
||
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
|
||
+# suppresses any "Segmentation fault" message there. '((' could
|
||
+# trigger a bug in pdksh 5.2.14.
|
||
+for as_var in BASH_ENV ENV MAIL MAILPATH
|
||
+do eval test x\${$as_var+set} = xset \
|
||
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
|
||
+done
|
||
+PS1='$ '
|
||
+PS2='> '
|
||
+PS4='+ '
|
||
+
|
||
+# NLS nuisances.
|
||
+LC_ALL=C
|
||
+export LC_ALL
|
||
+LANGUAGE=C
|
||
+export LANGUAGE
|
||
+
|
||
+# CDPATH.
|
||
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
|
||
+
|
||
+# Use a proper internal environment variable to ensure we don't fall
|
||
+ # into an infinite loop, continuously re-executing ourselves.
|
||
+ if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
|
||
+ _as_can_reexec=no; export _as_can_reexec;
|
||
+ # We cannot yet assume a decent shell, so we have to provide a
|
||
+# neutralization value for shells without unset; and this also
|
||
+# works around shells that cannot unset nonexistent variables.
|
||
+# Preserve -v and -x to the replacement shell.
|
||
+BASH_ENV=/dev/null
|
||
+ENV=/dev/null
|
||
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
|
||
+case $- in # ((((
|
||
+ *v*x* | *x*v* ) as_opts=-vx ;;
|
||
+ *v* ) as_opts=-v ;;
|
||
+ *x* ) as_opts=-x ;;
|
||
+ * ) as_opts= ;;
|
||
+esac
|
||
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
|
||
+# Admittedly, this is quite paranoid, since all the known shells bail
|
||
+# out after a failed `exec'.
|
||
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
|
||
+as_fn_exit 255
|
||
+ fi
|
||
+ # We don't want this to propagate to other subprocesses.
|
||
+ { _as_can_reexec=; unset _as_can_reexec;}
|
||
+if test "x$CONFIG_SHELL" = x; then
|
||
+ as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
|
||
+ emulate sh
|
||
+ NULLCMD=:
|
||
+ # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
|
||
+ # is contrary to our usage. Disable this feature.
|
||
+ alias -g '\${1+\"\$@\"}'='\"\$@\"'
|
||
+ setopt NO_GLOB_SUBST
|
||
+else
|
||
+ case \`(set -o) 2>/dev/null\` in #(
|
||
+ *posix*) :
|
||
+ set -o posix ;; #(
|
||
+ *) :
|
||
+ ;;
|
||
+esac
|
||
+fi
|
||
+"
|
||
+ as_required="as_fn_return () { (exit \$1); }
|
||
+as_fn_success () { as_fn_return 0; }
|
||
+as_fn_failure () { as_fn_return 1; }
|
||
+as_fn_ret_success () { return 0; }
|
||
+as_fn_ret_failure () { return 1; }
|
||
+
|
||
+exitcode=0
|
||
+as_fn_success || { exitcode=1; echo as_fn_success failed.; }
|
||
+as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
|
||
+as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
|
||
+as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
|
||
+if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
|
||
+
|
||
+else
|
||
+ exitcode=1; echo positional parameters were not saved.
|
||
+fi
|
||
+test x\$exitcode = x0 || exit 1
|
||
+test -x / || exit 1"
|
||
+ as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
|
||
+ as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
|
||
+ eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
|
||
+ test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1"
|
||
+ if (eval "$as_required") 2>/dev/null; then :
|
||
+ as_have_required=yes
|
||
+else
|
||
+ as_have_required=no
|
||
+fi
|
||
+ if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
|
||
+
|
||
+else
|
||
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+as_found=false
|
||
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ as_found=:
|
||
+ case $as_dir in #(
|
||
+ /*)
|
||
+ for as_base in sh bash ksh sh5; do
|
||
+ # Try only shells that exist, to save several forks.
|
||
+ as_shell=$as_dir/$as_base
|
||
+ if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
|
||
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
|
||
+ CONFIG_SHELL=$as_shell as_have_required=yes
|
||
+ if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
|
||
+ break 2
|
||
+fi
|
||
+fi
|
||
+ done;;
|
||
+ esac
|
||
+ as_found=false
|
||
+done
|
||
+$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
|
||
+ { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
|
||
+ CONFIG_SHELL=$SHELL as_have_required=yes
|
||
+fi; }
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+
|
||
+ if test "x$CONFIG_SHELL" != x; then :
|
||
+ export CONFIG_SHELL
|
||
+ # We cannot yet assume a decent shell, so we have to provide a
|
||
+# neutralization value for shells without unset; and this also
|
||
+# works around shells that cannot unset nonexistent variables.
|
||
+# Preserve -v and -x to the replacement shell.
|
||
+BASH_ENV=/dev/null
|
||
+ENV=/dev/null
|
||
+(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
|
||
+case $- in # ((((
|
||
+ *v*x* | *x*v* ) as_opts=-vx ;;
|
||
+ *v* ) as_opts=-v ;;
|
||
+ *x* ) as_opts=-x ;;
|
||
+ * ) as_opts= ;;
|
||
+esac
|
||
+exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
|
||
+# Admittedly, this is quite paranoid, since all the known shells bail
|
||
+# out after a failed `exec'.
|
||
+$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
|
||
+exit 255
|
||
+fi
|
||
+
|
||
+ if test x$as_have_required = xno; then :
|
||
+ $as_echo "$0: This script requires a shell more modern than all"
|
||
+ $as_echo "$0: the shells that I found on your system."
|
||
+ if test x${ZSH_VERSION+set} = xset ; then
|
||
+ $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
|
||
+ $as_echo "$0: be upgraded to zsh 4.3.4 or later."
|
||
+ else
|
||
+ $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
|
||
+$0: including any error possibly output before this
|
||
+$0: message. Then install a modern shell, or manually run
|
||
+$0: the script under such a shell if you do have one."
|
||
+ fi
|
||
+ exit 1
|
||
+fi
|
||
+fi
|
||
+fi
|
||
+SHELL=${CONFIG_SHELL-/bin/sh}
|
||
+export SHELL
|
||
+# Unset more variables known to interfere with behavior of common tools.
|
||
+CLICOLOR_FORCE= GREP_OPTIONS=
|
||
+unset CLICOLOR_FORCE GREP_OPTIONS
|
||
+
|
||
+## --------------------- ##
|
||
+## M4sh Shell Functions. ##
|
||
+## --------------------- ##
|
||
+# as_fn_unset VAR
|
||
+# ---------------
|
||
+# Portably unset VAR.
|
||
+as_fn_unset ()
|
||
+{
|
||
+ { eval $1=; unset $1;}
|
||
+}
|
||
+as_unset=as_fn_unset
|
||
+
|
||
+# as_fn_set_status STATUS
|
||
+# -----------------------
|
||
+# Set $? to STATUS, without forking.
|
||
+as_fn_set_status ()
|
||
+{
|
||
+ return $1
|
||
+} # as_fn_set_status
|
||
+
|
||
+# as_fn_exit STATUS
|
||
+# -----------------
|
||
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
|
||
+as_fn_exit ()
|
||
+{
|
||
+ set +e
|
||
+ as_fn_set_status $1
|
||
+ exit $1
|
||
+} # as_fn_exit
|
||
+
|
||
+# as_fn_mkdir_p
|
||
+# -------------
|
||
+# Create "$as_dir" as a directory, including parents if necessary.
|
||
+as_fn_mkdir_p ()
|
||
+{
|
||
+
|
||
+ case $as_dir in #(
|
||
+ -*) as_dir=./$as_dir;;
|
||
+ esac
|
||
+ test -d "$as_dir" || eval $as_mkdir_p || {
|
||
+ as_dirs=
|
||
+ while :; do
|
||
+ case $as_dir in #(
|
||
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
|
||
+ *) as_qdir=$as_dir;;
|
||
+ esac
|
||
+ as_dirs="'$as_qdir' $as_dirs"
|
||
+ as_dir=`$as_dirname -- "$as_dir" ||
|
||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$as_dir" : 'X\(//\)[^/]' \| \
|
||
+ X"$as_dir" : 'X\(//\)$' \| \
|
||
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$as_dir" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ test -d "$as_dir" && break
|
||
+ done
|
||
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
|
||
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
|
||
+
|
||
+
|
||
+} # as_fn_mkdir_p
|
||
+
|
||
+# as_fn_executable_p FILE
|
||
+# -----------------------
|
||
+# Test if FILE is an executable regular file.
|
||
+as_fn_executable_p ()
|
||
+{
|
||
+ test -f "$1" && test -x "$1"
|
||
+} # as_fn_executable_p
|
||
+# as_fn_append VAR VALUE
|
||
+# ----------------------
|
||
+# Append the text in VALUE to the end of the definition contained in VAR. Take
|
||
+# advantage of any shell optimizations that allow amortized linear growth over
|
||
+# repeated appends, instead of the typical quadratic growth present in naive
|
||
+# implementations.
|
||
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
|
||
+ eval 'as_fn_append ()
|
||
+ {
|
||
+ eval $1+=\$2
|
||
+ }'
|
||
+else
|
||
+ as_fn_append ()
|
||
+ {
|
||
+ eval $1=\$$1\$2
|
||
+ }
|
||
+fi # as_fn_append
|
||
+
|
||
+# as_fn_arith ARG...
|
||
+# ------------------
|
||
+# Perform arithmetic evaluation on the ARGs, and store the result in the
|
||
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
|
||
+# must be portable across $(()) and expr.
|
||
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
|
||
+ eval 'as_fn_arith ()
|
||
+ {
|
||
+ as_val=$(( $* ))
|
||
+ }'
|
||
+else
|
||
+ as_fn_arith ()
|
||
+ {
|
||
+ as_val=`expr "$@" || test $? -eq 1`
|
||
+ }
|
||
+fi # as_fn_arith
|
||
+
|
||
+
|
||
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
|
||
+# ----------------------------------------
|
||
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
|
||
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
|
||
+# script with STATUS, using 1 if that was 0.
|
||
+as_fn_error ()
|
||
+{
|
||
+ as_status=$1; test $as_status -eq 0 && as_status=1
|
||
+ if test "$4"; then
|
||
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
|
||
+ fi
|
||
+ $as_echo "$as_me: error: $2" >&2
|
||
+ as_fn_exit $as_status
|
||
+} # as_fn_error
|
||
+
|
||
+if expr a : '\(a\)' >/dev/null 2>&1 &&
|
||
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
|
||
+ as_expr=expr
|
||
+else
|
||
+ as_expr=false
|
||
+fi
|
||
+
|
||
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
|
||
+ as_basename=basename
|
||
+else
|
||
+ as_basename=false
|
||
+fi
|
||
+
|
||
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
|
||
+ as_dirname=dirname
|
||
+else
|
||
+ as_dirname=false
|
||
+fi
|
||
+
|
||
+as_me=`$as_basename -- "$0" ||
|
||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
|
||
+ X"$0" : 'X\(//\)$' \| \
|
||
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X/"$0" |
|
||
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\/\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\/\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+
|
||
+# Avoid depending upon Character Ranges.
|
||
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
|
||
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
|
||
+as_cr_digits='0123456789'
|
||
+as_cr_alnum=$as_cr_Letters$as_cr_digits
|
||
+
|
||
+
|
||
+ as_lineno_1=$LINENO as_lineno_1a=$LINENO
|
||
+ as_lineno_2=$LINENO as_lineno_2a=$LINENO
|
||
+ eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
|
||
+ test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
|
||
+ # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
|
||
+ sed -n '
|
||
+ p
|
||
+ /[$]LINENO/=
|
||
+ ' <$as_myself |
|
||
+ sed '
|
||
+ s/[$]LINENO.*/&-/
|
||
+ t lineno
|
||
+ b
|
||
+ :lineno
|
||
+ N
|
||
+ :loop
|
||
+ s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
|
||
+ t loop
|
||
+ s/-\n.*//
|
||
+ ' >$as_me.lineno &&
|
||
+ chmod +x "$as_me.lineno" ||
|
||
+ { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
|
||
+
|
||
+ # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
|
||
+ # already done that, so ensure we don't try to do so again and fall
|
||
+ # in an infinite loop. This has already happened in practice.
|
||
+ _as_can_reexec=no; export _as_can_reexec
|
||
+ # Don't try to exec as it changes $[0], causing all sort of problems
|
||
+ # (the dirname of $[0] is not the place where we might find the
|
||
+ # original and so on. Autoconf is especially sensitive to this).
|
||
+ . "./$as_me.lineno"
|
||
+ # Exit status is that of the last command.
|
||
+ exit
|
||
+}
|
||
+
|
||
+ECHO_C= ECHO_N= ECHO_T=
|
||
+case `echo -n x` in #(((((
|
||
+-n*)
|
||
+ case `echo 'xy\c'` in
|
||
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
|
||
+ xy) ECHO_C='\c';;
|
||
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
|
||
+ ECHO_T=' ';;
|
||
+ esac;;
|
||
+*)
|
||
+ ECHO_N='-n';;
|
||
+esac
|
||
+
|
||
+rm -f conf$$ conf$$.exe conf$$.file
|
||
+if test -d conf$$.dir; then
|
||
+ rm -f conf$$.dir/conf$$.file
|
||
+else
|
||
+ rm -f conf$$.dir
|
||
+ mkdir conf$$.dir 2>/dev/null
|
||
+fi
|
||
+if (echo >conf$$.file) 2>/dev/null; then
|
||
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
|
||
+ as_ln_s='ln -s'
|
||
+ # ... but there are two gotchas:
|
||
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
|
||
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
|
||
+ # In both cases, we have to default to `cp -pR'.
|
||
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
|
||
+ as_ln_s='cp -pR'
|
||
+ elif ln conf$$.file conf$$ 2>/dev/null; then
|
||
+ as_ln_s=ln
|
||
+ else
|
||
+ as_ln_s='cp -pR'
|
||
+ fi
|
||
+else
|
||
+ as_ln_s='cp -pR'
|
||
+fi
|
||
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
|
||
+rmdir conf$$.dir 2>/dev/null
|
||
+
|
||
+if mkdir -p . 2>/dev/null; then
|
||
+ as_mkdir_p='mkdir -p "$as_dir"'
|
||
+else
|
||
+ test -d ./-p && rmdir ./-p
|
||
+ as_mkdir_p=false
|
||
+fi
|
||
+
|
||
+as_test_x='test -x'
|
||
+as_executable_p=as_fn_executable_p
|
||
+
|
||
+# Sed expression to map a string onto a valid CPP name.
|
||
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
|
||
+
|
||
+# Sed expression to map a string onto a valid variable name.
|
||
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
|
||
+
|
||
+
|
||
+test -n "$DJDIR" || exec 7<&0 </dev/null
|
||
+exec 6>&1
|
||
+
|
||
+# Name of the host.
|
||
+# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
|
||
+# so uname gets run too.
|
||
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
|
||
+
|
||
+#
|
||
+# Initializations.
|
||
+#
|
||
+ac_default_prefix=/usr/local
|
||
+ac_clean_files=
|
||
+ac_config_libobj_dir=.
|
||
+LIBOBJS=
|
||
+cross_compiling=no
|
||
+subdirs=
|
||
+MFLAGS=
|
||
+MAKEFLAGS=
|
||
+
|
||
+# Identity of this package.
|
||
+PACKAGE_NAME=
|
||
+PACKAGE_TARNAME=
|
||
+PACKAGE_VERSION=
|
||
+PACKAGE_STRING=
|
||
+PACKAGE_BUGREPORT=
|
||
+PACKAGE_URL=
|
||
+
|
||
+ac_unique_file="close.c"
|
||
+ac_subst_vars='LTLIBOBJS
|
||
+LIBOBJS
|
||
+host_makefile_frag_path
|
||
+CCASFLAGS
|
||
+CCAS
|
||
+RANLIB
|
||
+LD
|
||
+AR
|
||
+AS
|
||
+am__fastdepCC_FALSE
|
||
+am__fastdepCC_TRUE
|
||
+CCDEPMODE
|
||
+AMDEPBACKSLASH
|
||
+AMDEP_FALSE
|
||
+AMDEP_TRUE
|
||
+am__quote
|
||
+am__include
|
||
+DEPDIR
|
||
+am__leading_dot
|
||
+CC
|
||
+INSTALL_DATA
|
||
+INSTALL_SCRIPT
|
||
+INSTALL_PROGRAM
|
||
+target_os
|
||
+target_vendor
|
||
+target_cpu
|
||
+target
|
||
+host_os
|
||
+host_vendor
|
||
+host_cpu
|
||
+host
|
||
+build_os
|
||
+build_vendor
|
||
+build_cpu
|
||
+build
|
||
+target_alias
|
||
+host_alias
|
||
+build_alias
|
||
+LIBS
|
||
+ECHO_T
|
||
+ECHO_N
|
||
+ECHO_C
|
||
+DEFS
|
||
+mandir
|
||
+localedir
|
||
+libdir
|
||
+psdir
|
||
+pdfdir
|
||
+dvidir
|
||
+htmldir
|
||
+infodir
|
||
+docdir
|
||
+oldincludedir
|
||
+includedir
|
||
+localstatedir
|
||
+sharedstatedir
|
||
+sysconfdir
|
||
+datadir
|
||
+datarootdir
|
||
+libexecdir
|
||
+sbindir
|
||
+bindir
|
||
+program_transform_name
|
||
+prefix
|
||
+exec_prefix
|
||
+PACKAGE_URL
|
||
+PACKAGE_BUGREPORT
|
||
+PACKAGE_STRING
|
||
+PACKAGE_VERSION
|
||
+PACKAGE_TARNAME
|
||
+PACKAGE_NAME
|
||
+PATH_SEPARATOR
|
||
+SHELL'
|
||
+ac_subst_files='host_makefile_frag'
|
||
+ac_user_opts='
|
||
+enable_option_checking
|
||
+enable_dependency_tracking
|
||
+'
|
||
+ ac_precious_vars='build_alias
|
||
+host_alias
|
||
+target_alias
|
||
+CCAS
|
||
+CCASFLAGS'
|
||
+
|
||
+
|
||
+# Initialize some variables set by options.
|
||
+ac_init_help=
|
||
+ac_init_version=false
|
||
+ac_unrecognized_opts=
|
||
+ac_unrecognized_sep=
|
||
+# The variables have the same names as the options, with
|
||
+# dashes changed to underlines.
|
||
+cache_file=/dev/null
|
||
+exec_prefix=NONE
|
||
+no_create=
|
||
+no_recursion=
|
||
+prefix=NONE
|
||
+program_prefix=NONE
|
||
+program_suffix=NONE
|
||
+program_transform_name=s,x,x,
|
||
+silent=
|
||
+site=
|
||
+srcdir=
|
||
+verbose=
|
||
+x_includes=NONE
|
||
+x_libraries=NONE
|
||
+
|
||
+# Installation directory options.
|
||
+# These are left unexpanded so users can "make install exec_prefix=/foo"
|
||
+# and all the variables that are supposed to be based on exec_prefix
|
||
+# by default will actually change.
|
||
+# Use braces instead of parens because sh, perl, etc. also accept them.
|
||
+# (The list follows the same order as the GNU Coding Standards.)
|
||
+bindir='${exec_prefix}/bin'
|
||
+sbindir='${exec_prefix}/sbin'
|
||
+libexecdir='${exec_prefix}/libexec'
|
||
+datarootdir='${prefix}/share'
|
||
+datadir='${datarootdir}'
|
||
+sysconfdir='${prefix}/etc'
|
||
+sharedstatedir='${prefix}/com'
|
||
+localstatedir='${prefix}/var'
|
||
+includedir='${prefix}/include'
|
||
+oldincludedir='/usr/include'
|
||
+docdir='${datarootdir}/doc/${PACKAGE}'
|
||
+infodir='${datarootdir}/info'
|
||
+htmldir='${docdir}'
|
||
+dvidir='${docdir}'
|
||
+pdfdir='${docdir}'
|
||
+psdir='${docdir}'
|
||
+libdir='${exec_prefix}/lib'
|
||
+localedir='${datarootdir}/locale'
|
||
+mandir='${datarootdir}/man'
|
||
+
|
||
+ac_prev=
|
||
+ac_dashdash=
|
||
+for ac_option
|
||
+do
|
||
+ # If the previous option needs an argument, assign it.
|
||
+ if test -n "$ac_prev"; then
|
||
+ eval $ac_prev=\$ac_option
|
||
+ ac_prev=
|
||
+ continue
|
||
+ fi
|
||
+
|
||
+ case $ac_option in
|
||
+ *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
|
||
+ *=) ac_optarg= ;;
|
||
+ *) ac_optarg=yes ;;
|
||
+ esac
|
||
+
|
||
+ # Accept the important Cygnus configure options, so we can diagnose typos.
|
||
+
|
||
+ case $ac_dashdash$ac_option in
|
||
+ --)
|
||
+ ac_dashdash=yes ;;
|
||
+
|
||
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
|
||
+ ac_prev=bindir ;;
|
||
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
|
||
+ bindir=$ac_optarg ;;
|
||
+
|
||
+ -build | --build | --buil | --bui | --bu)
|
||
+ ac_prev=build_alias ;;
|
||
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
|
||
+ build_alias=$ac_optarg ;;
|
||
+
|
||
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
|
||
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
|
||
+ ac_prev=cache_file ;;
|
||
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
|
||
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
|
||
+ cache_file=$ac_optarg ;;
|
||
+
|
||
+ --config-cache | -C)
|
||
+ cache_file=config.cache ;;
|
||
+
|
||
+ -datadir | --datadir | --datadi | --datad)
|
||
+ ac_prev=datadir ;;
|
||
+ -datadir=* | --datadir=* | --datadi=* | --datad=*)
|
||
+ datadir=$ac_optarg ;;
|
||
+
|
||
+ -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
|
||
+ | --dataroo | --dataro | --datar)
|
||
+ ac_prev=datarootdir ;;
|
||
+ -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
|
||
+ | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
|
||
+ datarootdir=$ac_optarg ;;
|
||
+
|
||
+ -disable-* | --disable-*)
|
||
+ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
|
||
+ # Reject names that are not valid shell variable names.
|
||
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||
+ as_fn_error $? "invalid feature name: $ac_useropt"
|
||
+ ac_useropt_orig=$ac_useropt
|
||
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||
+ case $ac_user_opts in
|
||
+ *"
|
||
+"enable_$ac_useropt"
|
||
+"*) ;;
|
||
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
|
||
+ ac_unrecognized_sep=', ';;
|
||
+ esac
|
||
+ eval enable_$ac_useropt=no ;;
|
||
+
|
||
+ -docdir | --docdir | --docdi | --doc | --do)
|
||
+ ac_prev=docdir ;;
|
||
+ -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
|
||
+ docdir=$ac_optarg ;;
|
||
+
|
||
+ -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
|
||
+ ac_prev=dvidir ;;
|
||
+ -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
|
||
+ dvidir=$ac_optarg ;;
|
||
+
|
||
+ -enable-* | --enable-*)
|
||
+ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
|
||
+ # Reject names that are not valid shell variable names.
|
||
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||
+ as_fn_error $? "invalid feature name: $ac_useropt"
|
||
+ ac_useropt_orig=$ac_useropt
|
||
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||
+ case $ac_user_opts in
|
||
+ *"
|
||
+"enable_$ac_useropt"
|
||
+"*) ;;
|
||
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
|
||
+ ac_unrecognized_sep=', ';;
|
||
+ esac
|
||
+ eval enable_$ac_useropt=\$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 | -h)
|
||
+ ac_init_help=long ;;
|
||
+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
|
||
+ ac_init_help=recursive ;;
|
||
+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
|
||
+ ac_init_help=short ;;
|
||
+
|
||
+ -host | --host | --hos | --ho)
|
||
+ ac_prev=host_alias ;;
|
||
+ -host=* | --host=* | --hos=* | --ho=*)
|
||
+ host_alias=$ac_optarg ;;
|
||
+
|
||
+ -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
|
||
+ ac_prev=htmldir ;;
|
||
+ -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
|
||
+ | --ht=*)
|
||
+ htmldir=$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 ;;
|
||
+
|
||
+ -localedir | --localedir | --localedi | --localed | --locale)
|
||
+ ac_prev=localedir ;;
|
||
+ -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
|
||
+ localedir=$ac_optarg ;;
|
||
+
|
||
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
|
||
+ | --localstate | --localstat | --localsta | --localst | --locals)
|
||
+ ac_prev=localstatedir ;;
|
||
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
|
||
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
|
||
+ 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 | -n)
|
||
+ 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 ;;
|
||
+
|
||
+ -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
|
||
+ ac_prev=pdfdir ;;
|
||
+ -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
|
||
+ pdfdir=$ac_optarg ;;
|
||
+
|
||
+ -psdir | --psdir | --psdi | --psd | --ps)
|
||
+ ac_prev=psdir ;;
|
||
+ -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
|
||
+ psdir=$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_alias ;;
|
||
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
|
||
+ target_alias=$ac_optarg ;;
|
||
+
|
||
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
|
||
+ verbose=yes ;;
|
||
+
|
||
+ -version | --version | --versio | --versi | --vers | -V)
|
||
+ ac_init_version=: ;;
|
||
+
|
||
+ -with-* | --with-*)
|
||
+ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
|
||
+ # Reject names that are not valid shell variable names.
|
||
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||
+ as_fn_error $? "invalid package name: $ac_useropt"
|
||
+ ac_useropt_orig=$ac_useropt
|
||
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||
+ case $ac_user_opts in
|
||
+ *"
|
||
+"with_$ac_useropt"
|
||
+"*) ;;
|
||
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
|
||
+ ac_unrecognized_sep=', ';;
|
||
+ esac
|
||
+ eval with_$ac_useropt=\$ac_optarg ;;
|
||
+
|
||
+ -without-* | --without-*)
|
||
+ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
|
||
+ # Reject names that are not valid shell variable names.
|
||
+ expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
|
||
+ as_fn_error $? "invalid package name: $ac_useropt"
|
||
+ ac_useropt_orig=$ac_useropt
|
||
+ ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
|
||
+ case $ac_user_opts in
|
||
+ *"
|
||
+"with_$ac_useropt"
|
||
+"*) ;;
|
||
+ *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
|
||
+ ac_unrecognized_sep=', ';;
|
||
+ esac
|
||
+ eval with_$ac_useropt=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 ;;
|
||
+
|
||
+ -*) as_fn_error $? "unrecognized option: \`$ac_option'
|
||
+Try \`$0 --help' for more information"
|
||
+ ;;
|
||
+
|
||
+ *=*)
|
||
+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
|
||
+ # Reject names that are not valid shell variable names.
|
||
+ case $ac_envvar in #(
|
||
+ '' | [0-9]* | *[!_$as_cr_alnum]* )
|
||
+ as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
|
||
+ esac
|
||
+ eval $ac_envvar=\$ac_optarg
|
||
+ export $ac_envvar ;;
|
||
+
|
||
+ *)
|
||
+ # FIXME: should be removed in autoconf 3.0.
|
||
+ $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
|
||
+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
|
||
+ $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
|
||
+ : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
|
||
+ ;;
|
||
+
|
||
+ esac
|
||
+done
|
||
+
|
||
+if test -n "$ac_prev"; then
|
||
+ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
|
||
+ as_fn_error $? "missing argument to $ac_option"
|
||
+fi
|
||
+
|
||
+if test -n "$ac_unrecognized_opts"; then
|
||
+ case $enable_option_checking in
|
||
+ no) ;;
|
||
+ fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
|
||
+ *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
|
||
+ esac
|
||
+fi
|
||
+
|
||
+# Check all directory arguments for consistency.
|
||
+for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
|
||
+ datadir sysconfdir sharedstatedir localstatedir includedir \
|
||
+ oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
|
||
+ libdir localedir mandir
|
||
+do
|
||
+ eval ac_val=\$$ac_var
|
||
+ # Remove trailing slashes.
|
||
+ case $ac_val in
|
||
+ */ )
|
||
+ ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
|
||
+ eval $ac_var=\$ac_val;;
|
||
+ esac
|
||
+ # Be sure to have absolute directory names.
|
||
+ case $ac_val in
|
||
+ [\\/$]* | ?:[\\/]* ) continue;;
|
||
+ NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
|
||
+ esac
|
||
+ as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
|
||
+done
|
||
+
|
||
+# There might be people who depend on the old broken behavior: `$host'
|
||
+# used to hold the argument of --host etc.
|
||
+# FIXME: To remove some day.
|
||
+build=$build_alias
|
||
+host=$host_alias
|
||
+target=$target_alias
|
||
+
|
||
+# FIXME: To remove some day.
|
||
+if test "x$host_alias" != x; then
|
||
+ if test "x$build_alias" = x; then
|
||
+ cross_compiling=maybe
|
||
+ elif test "x$build_alias" != "x$host_alias"; then
|
||
+ cross_compiling=yes
|
||
+ fi
|
||
+fi
|
||
+
|
||
+ac_tool_prefix=
|
||
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
|
||
+
|
||
+test "$silent" = yes && exec 6>/dev/null
|
||
+
|
||
+
|
||
+ac_pwd=`pwd` && test -n "$ac_pwd" &&
|
||
+ac_ls_di=`ls -di .` &&
|
||
+ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
|
||
+ as_fn_error $? "working directory cannot be determined"
|
||
+test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
|
||
+ as_fn_error $? "pwd does not report name of working directory"
|
||
+
|
||
+
|
||
+# 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 the parent directory.
|
||
+ ac_confdir=`$as_dirname -- "$as_myself" ||
|
||
+$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$as_myself" : 'X\(//\)[^/]' \| \
|
||
+ X"$as_myself" : 'X\(//\)$' \| \
|
||
+ X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$as_myself" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ 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
|
||
+ test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
|
||
+ as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
|
||
+fi
|
||
+ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
|
||
+ac_abs_confdir=`(
|
||
+ cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
|
||
+ pwd)`
|
||
+# When building in place, set srcdir=.
|
||
+if test "$ac_abs_confdir" = "$ac_pwd"; then
|
||
+ srcdir=.
|
||
+fi
|
||
+# Remove unnecessary trailing slashes from srcdir.
|
||
+# Double slashes in file names in object file debugging info
|
||
+# mess up M-x gdb in Emacs.
|
||
+case $srcdir in
|
||
+*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
|
||
+esac
|
||
+for ac_var in $ac_precious_vars; do
|
||
+ eval ac_env_${ac_var}_set=\${${ac_var}+set}
|
||
+ eval ac_env_${ac_var}_value=\$${ac_var}
|
||
+ eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
|
||
+ eval ac_cv_env_${ac_var}_value=\$${ac_var}
|
||
+done
|
||
+
|
||
+#
|
||
+# Report the --help message.
|
||
+#
|
||
+if test "$ac_init_help" = "long"; then
|
||
+ # 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 <<_ACEOF
|
||
+\`configure' configures this package to adapt to many kinds of systems.
|
||
+
|
||
+Usage: $0 [OPTION]... [VAR=VALUE]...
|
||
+
|
||
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
|
||
+VAR=VALUE. See below for descriptions of some of the useful variables.
|
||
+
|
||
+Defaults for the options are specified in brackets.
|
||
+
|
||
+Configuration:
|
||
+ -h, --help display this help and exit
|
||
+ --help=short display options specific to this package
|
||
+ --help=recursive display the short help of all the included packages
|
||
+ -V, --version display version information and exit
|
||
+ -q, --quiet, --silent do not print \`checking ...' messages
|
||
+ --cache-file=FILE cache test results in FILE [disabled]
|
||
+ -C, --config-cache alias for \`--cache-file=config.cache'
|
||
+ -n, --no-create do not create output files
|
||
+ --srcdir=DIR find the sources in DIR [configure dir or \`..']
|
||
+
|
||
+Installation directories:
|
||
+ --prefix=PREFIX install architecture-independent files in PREFIX
|
||
+ [$ac_default_prefix]
|
||
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
|
||
+ [PREFIX]
|
||
+
|
||
+By default, \`make install' will install all the files in
|
||
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
|
||
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
|
||
+for instance \`--prefix=\$HOME'.
|
||
+
|
||
+For better control, use the options below.
|
||
+
|
||
+Fine tuning of the installation directories:
|
||
+ --bindir=DIR user executables [EPREFIX/bin]
|
||
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
|
||
+ --libexecdir=DIR program executables [EPREFIX/libexec]
|
||
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
|
||
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
|
||
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
|
||
+ --libdir=DIR object code libraries [EPREFIX/lib]
|
||
+ --includedir=DIR C header files [PREFIX/include]
|
||
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
|
||
+ --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
|
||
+ --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
|
||
+ --infodir=DIR info documentation [DATAROOTDIR/info]
|
||
+ --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
|
||
+ --mandir=DIR man documentation [DATAROOTDIR/man]
|
||
+ --docdir=DIR documentation root [DATAROOTDIR/doc/PACKAGE]
|
||
+ --htmldir=DIR html documentation [DOCDIR]
|
||
+ --dvidir=DIR dvi documentation [DOCDIR]
|
||
+ --pdfdir=DIR pdf documentation [DOCDIR]
|
||
+ --psdir=DIR ps documentation [DOCDIR]
|
||
+_ACEOF
|
||
+
|
||
+ cat <<\_ACEOF
|
||
+
|
||
+Program names:
|
||
+ --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
|
||
+
|
||
+System types:
|
||
+ --build=BUILD configure for building on BUILD [guessed]
|
||
+ --host=HOST cross-compile to build programs to run on HOST [BUILD]
|
||
+ --target=TARGET configure for building compilers for TARGET [HOST]
|
||
+_ACEOF
|
||
+fi
|
||
+
|
||
+if test -n "$ac_init_help"; then
|
||
+
|
||
+ cat <<\_ACEOF
|
||
+
|
||
+Optional Features:
|
||
+ --disable-option-checking ignore unrecognized --enable/--with options
|
||
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
||
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||
+ --disable-dependency-tracking speeds up one-time build
|
||
+ --enable-dependency-tracking do not reject slow dependency extractors
|
||
+
|
||
+Some influential environment variables:
|
||
+ CCAS assembler compiler command (defaults to CC)
|
||
+ CCASFLAGS assembler compiler flags (defaults to CFLAGS)
|
||
+
|
||
+Use these variables to override the choices made by `configure' or to help
|
||
+it to find libraries and programs with nonstandard names/locations.
|
||
+
|
||
+Report bugs to the package provider.
|
||
+_ACEOF
|
||
+ac_status=$?
|
||
+fi
|
||
+
|
||
+if test "$ac_init_help" = "recursive"; then
|
||
+ # If there are subdirs, report their specific --help.
|
||
+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
|
||
+ test -d "$ac_dir" ||
|
||
+ { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
|
||
+ continue
|
||
+ ac_builddir=.
|
||
+
|
||
+case "$ac_dir" in
|
||
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
|
||
+*)
|
||
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
|
||
+ # A ".." for each directory in $ac_dir_suffix.
|
||
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
|
||
+ case $ac_top_builddir_sub in
|
||
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
|
||
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
|
||
+ esac ;;
|
||
+esac
|
||
+ac_abs_top_builddir=$ac_pwd
|
||
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
|
||
+# for backward compatibility:
|
||
+ac_top_builddir=$ac_top_build_prefix
|
||
+
|
||
+case $srcdir in
|
||
+ .) # We are building in place.
|
||
+ ac_srcdir=.
|
||
+ ac_top_srcdir=$ac_top_builddir_sub
|
||
+ ac_abs_top_srcdir=$ac_pwd ;;
|
||
+ [\\/]* | ?:[\\/]* ) # Absolute name.
|
||
+ ac_srcdir=$srcdir$ac_dir_suffix;
|
||
+ ac_top_srcdir=$srcdir
|
||
+ ac_abs_top_srcdir=$srcdir ;;
|
||
+ *) # Relative name.
|
||
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
|
||
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
|
||
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
|
||
+esac
|
||
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
|
||
+
|
||
+ cd "$ac_dir" || { ac_status=$?; continue; }
|
||
+ # Check for guested configure.
|
||
+ if test -f "$ac_srcdir/configure.gnu"; then
|
||
+ echo &&
|
||
+ $SHELL "$ac_srcdir/configure.gnu" --help=recursive
|
||
+ elif test -f "$ac_srcdir/configure"; then
|
||
+ echo &&
|
||
+ $SHELL "$ac_srcdir/configure" --help=recursive
|
||
+ else
|
||
+ $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
|
||
+ fi || ac_status=$?
|
||
+ cd "$ac_pwd" || { ac_status=$?; break; }
|
||
+ done
|
||
+fi
|
||
+
|
||
+test -n "$ac_init_help" && exit $ac_status
|
||
+if $ac_init_version; then
|
||
+ cat <<\_ACEOF
|
||
+configure
|
||
+generated by GNU Autoconf 2.69
|
||
+
|
||
+Copyright (C) 2012 Free Software Foundation, Inc.
|
||
+This configure script is free software; the Free Software Foundation
|
||
+gives unlimited permission to copy, distribute and modify it.
|
||
+_ACEOF
|
||
+ exit
|
||
+fi
|
||
+
|
||
+## ------------------------ ##
|
||
+## Autoconf initialization. ##
|
||
+## ------------------------ ##
|
||
+
|
||
+# ac_fn_c_try_compile LINENO
|
||
+# --------------------------
|
||
+# Try to compile conftest.$ac_ext, and return whether this succeeded.
|
||
+ac_fn_c_try_compile ()
|
||
+{
|
||
+ as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||
+ rm -f conftest.$ac_objext
|
||
+ if { { ac_try="$ac_compile"
|
||
+case "(($ac_try" in
|
||
+ *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
|
||
+ *) ac_try_echo=$ac_try;;
|
||
+esac
|
||
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
|
||
+$as_echo "$ac_try_echo"; } >&5
|
||
+ (eval "$ac_compile") 2>conftest.err
|
||
+ ac_status=$?
|
||
+ if test -s conftest.err; then
|
||
+ grep -v '^ *+' conftest.err >conftest.er1
|
||
+ cat conftest.er1 >&5
|
||
+ mv -f conftest.er1 conftest.err
|
||
+ fi
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; } && {
|
||
+ test -z "$ac_c_werror_flag" ||
|
||
+ test ! -s conftest.err
|
||
+ } && test -s conftest.$ac_objext; then :
|
||
+ ac_retval=0
|
||
+else
|
||
+ $as_echo "$as_me: failed program was:" >&5
|
||
+sed 's/^/| /' conftest.$ac_ext >&5
|
||
+
|
||
+ ac_retval=1
|
||
+fi
|
||
+ eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
|
||
+ as_fn_set_status $ac_retval
|
||
+
|
||
+} # ac_fn_c_try_compile
|
||
+cat >config.log <<_ACEOF
|
||
+This file contains any messages produced by compilers while
|
||
+running configure, to aid debugging if configure makes a mistake.
|
||
+
|
||
+It was created by $as_me, which was
|
||
+generated by GNU Autoconf 2.69. Invocation command line was
|
||
+
|
||
+ $ $0 $@
|
||
+
|
||
+_ACEOF
|
||
+exec 5>>config.log
|
||
+{
|
||
+cat <<_ASUNAME
|
||
+## --------- ##
|
||
+## Platform. ##
|
||
+## --------- ##
|
||
+
|
||
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
|
||
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
|
||
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
|
||
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
|
||
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
|
||
+
|
||
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
|
||
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
|
||
+
|
||
+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
|
||
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
|
||
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
|
||
+/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
|
||
+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
|
||
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
|
||
+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
|
||
+
|
||
+_ASUNAME
|
||
+
|
||
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ $as_echo "PATH: $as_dir"
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+} >&5
|
||
+
|
||
+cat >&5 <<_ACEOF
|
||
+
|
||
+
|
||
+## ----------- ##
|
||
+## Core tests. ##
|
||
+## ----------- ##
|
||
+
|
||
+_ACEOF
|
||
+
|
||
+
|
||
+# Keep a trace of the command line.
|
||
+# Strip out --no-create and --no-recursion so they do not pile up.
|
||
+# Strip out --silent because we don't want to record it for future runs.
|
||
+# Also quote any args containing shell meta-characters.
|
||
+# Make two passes to allow for proper duplicate-argument suppression.
|
||
+ac_configure_args=
|
||
+ac_configure_args0=
|
||
+ac_configure_args1=
|
||
+ac_must_keep_next=false
|
||
+for ac_pass in 1 2
|
||
+do
|
||
+ for ac_arg
|
||
+ do
|
||
+ case $ac_arg in
|
||
+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
|
||
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
|
||
+ | -silent | --silent | --silen | --sile | --sil)
|
||
+ continue ;;
|
||
+ *\'*)
|
||
+ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
|
||
+ esac
|
||
+ case $ac_pass in
|
||
+ 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
|
||
+ 2)
|
||
+ as_fn_append ac_configure_args1 " '$ac_arg'"
|
||
+ if test $ac_must_keep_next = true; then
|
||
+ ac_must_keep_next=false # Got value, back to normal.
|
||
+ else
|
||
+ case $ac_arg in
|
||
+ *=* | --config-cache | -C | -disable-* | --disable-* \
|
||
+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
|
||
+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
|
||
+ | -with-* | --with-* | -without-* | --without-* | --x)
|
||
+ case "$ac_configure_args0 " in
|
||
+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
|
||
+ esac
|
||
+ ;;
|
||
+ -* ) ac_must_keep_next=true ;;
|
||
+ esac
|
||
+ fi
|
||
+ as_fn_append ac_configure_args " '$ac_arg'"
|
||
+ ;;
|
||
+ esac
|
||
+ done
|
||
+done
|
||
+{ ac_configure_args0=; unset ac_configure_args0;}
|
||
+{ ac_configure_args1=; unset ac_configure_args1;}
|
||
+
|
||
+# When interrupted or exit'd, cleanup temporary files, and complete
|
||
+# config.log. We remove comments because anyway the quotes in there
|
||
+# would cause problems or look ugly.
|
||
+# WARNING: Use '\'' to represent an apostrophe within the trap.
|
||
+# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
|
||
+trap 'exit_status=$?
|
||
+ # Save into config.log some information that might help in debugging.
|
||
+ {
|
||
+ echo
|
||
+
|
||
+ $as_echo "## ---------------- ##
|
||
+## Cache variables. ##
|
||
+## ---------------- ##"
|
||
+ echo
|
||
+ # The following way of writing the cache mishandles newlines in values,
|
||
+(
|
||
+ for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
|
||
+ eval ac_val=\$$ac_var
|
||
+ case $ac_val in #(
|
||
+ *${as_nl}*)
|
||
+ case $ac_var in #(
|
||
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
|
||
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
|
||
+ esac
|
||
+ case $ac_var in #(
|
||
+ _ | IFS | as_nl) ;; #(
|
||
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
|
||
+ *) { eval $ac_var=; unset $ac_var;} ;;
|
||
+ esac ;;
|
||
+ esac
|
||
+ done
|
||
+ (set) 2>&1 |
|
||
+ case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
|
||
+ *${as_nl}ac_space=\ *)
|
||
+ sed -n \
|
||
+ "s/'\''/'\''\\\\'\'''\''/g;
|
||
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
|
||
+ ;; #(
|
||
+ *)
|
||
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
|
||
+ ;;
|
||
+ esac |
|
||
+ sort
|
||
+)
|
||
+ echo
|
||
+
|
||
+ $as_echo "## ----------------- ##
|
||
+## Output variables. ##
|
||
+## ----------------- ##"
|
||
+ echo
|
||
+ for ac_var in $ac_subst_vars
|
||
+ do
|
||
+ eval ac_val=\$$ac_var
|
||
+ case $ac_val in
|
||
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
|
||
+ esac
|
||
+ $as_echo "$ac_var='\''$ac_val'\''"
|
||
+ done | sort
|
||
+ echo
|
||
+
|
||
+ if test -n "$ac_subst_files"; then
|
||
+ $as_echo "## ------------------- ##
|
||
+## File substitutions. ##
|
||
+## ------------------- ##"
|
||
+ echo
|
||
+ for ac_var in $ac_subst_files
|
||
+ do
|
||
+ eval ac_val=\$$ac_var
|
||
+ case $ac_val in
|
||
+ *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
|
||
+ esac
|
||
+ $as_echo "$ac_var='\''$ac_val'\''"
|
||
+ done | sort
|
||
+ echo
|
||
+ fi
|
||
+
|
||
+ if test -s confdefs.h; then
|
||
+ $as_echo "## ----------- ##
|
||
+## confdefs.h. ##
|
||
+## ----------- ##"
|
||
+ echo
|
||
+ cat confdefs.h
|
||
+ echo
|
||
+ fi
|
||
+ test "$ac_signal" != 0 &&
|
||
+ $as_echo "$as_me: caught signal $ac_signal"
|
||
+ $as_echo "$as_me: exit $exit_status"
|
||
+ } >&5
|
||
+ rm -f core *.core core.conftest.* &&
|
||
+ rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
|
||
+ exit $exit_status
|
||
+' 0
|
||
+for ac_signal in 1 2 13 15; do
|
||
+ trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
|
||
+done
|
||
+ac_signal=0
|
||
+
|
||
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
|
||
+rm -f -r conftest* confdefs.h
|
||
+
|
||
+$as_echo "/* confdefs.h */" > confdefs.h
|
||
+
|
||
+# Predefined preprocessor variables.
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_NAME "$PACKAGE_NAME"
|
||
+_ACEOF
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
|
||
+_ACEOF
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
|
||
+_ACEOF
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_STRING "$PACKAGE_STRING"
|
||
+_ACEOF
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
|
||
+_ACEOF
|
||
+
|
||
+cat >>confdefs.h <<_ACEOF
|
||
+#define PACKAGE_URL "$PACKAGE_URL"
|
||
+_ACEOF
|
||
+
|
||
+
|
||
+# Let the site file select an alternate cache file if it wants to.
|
||
+# Prefer an explicitly selected file to automatically selected ones.
|
||
+ac_site_file1=NONE
|
||
+ac_site_file2=NONE
|
||
+if test -n "$CONFIG_SITE"; then
|
||
+ # We do not want a PATH search for config.site.
|
||
+ case $CONFIG_SITE in #((
|
||
+ -*) ac_site_file1=./$CONFIG_SITE;;
|
||
+ */*) ac_site_file1=$CONFIG_SITE;;
|
||
+ *) ac_site_file1=./$CONFIG_SITE;;
|
||
+ esac
|
||
+elif test "x$prefix" != xNONE; then
|
||
+ ac_site_file1=$prefix/share/config.site
|
||
+ ac_site_file2=$prefix/etc/config.site
|
||
+else
|
||
+ ac_site_file1=$ac_default_prefix/share/config.site
|
||
+ ac_site_file2=$ac_default_prefix/etc/config.site
|
||
+fi
|
||
+for ac_site_file in "$ac_site_file1" "$ac_site_file2"
|
||
+do
|
||
+ test "x$ac_site_file" = xNONE && continue
|
||
+ if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
|
||
+$as_echo "$as_me: loading site script $ac_site_file" >&6;}
|
||
+ sed 's/^/| /' "$ac_site_file" >&5
|
||
+ . "$ac_site_file" \
|
||
+ || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||
+as_fn_error $? "failed to load site script $ac_site_file
|
||
+See \`config.log' for more details" "$LINENO" 5; }
|
||
+ fi
|
||
+done
|
||
+
|
||
+if test -r "$cache_file"; then
|
||
+ # Some versions of bash will fail to source /dev/null (special files
|
||
+ # actually), so we avoid doing that. DJGPP emulates it as a regular file.
|
||
+ if test /dev/null != "$cache_file" && test -f "$cache_file"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
|
||
+$as_echo "$as_me: loading cache $cache_file" >&6;}
|
||
+ case $cache_file in
|
||
+ [\\/]* | ?:[\\/]* ) . "$cache_file";;
|
||
+ *) . "./$cache_file";;
|
||
+ esac
|
||
+ fi
|
||
+else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
|
||
+$as_echo "$as_me: creating cache $cache_file" >&6;}
|
||
+ >$cache_file
|
||
+fi
|
||
+
|
||
+# Check that the precious variables saved in the cache have kept the same
|
||
+# value.
|
||
+ac_cache_corrupted=false
|
||
+for ac_var in $ac_precious_vars; do
|
||
+ eval ac_old_set=\$ac_cv_env_${ac_var}_set
|
||
+ eval ac_new_set=\$ac_env_${ac_var}_set
|
||
+ eval ac_old_val=\$ac_cv_env_${ac_var}_value
|
||
+ eval ac_new_val=\$ac_env_${ac_var}_value
|
||
+ case $ac_old_set,$ac_new_set in
|
||
+ set,)
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
|
||
+$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
|
||
+ ac_cache_corrupted=: ;;
|
||
+ ,set)
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
|
||
+$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
|
||
+ ac_cache_corrupted=: ;;
|
||
+ ,);;
|
||
+ *)
|
||
+ if test "x$ac_old_val" != "x$ac_new_val"; then
|
||
+ # differences in whitespace do not lead to failure.
|
||
+ ac_old_val_w=`echo x $ac_old_val`
|
||
+ ac_new_val_w=`echo x $ac_new_val`
|
||
+ if test "$ac_old_val_w" != "$ac_new_val_w"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
|
||
+$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
|
||
+ ac_cache_corrupted=:
|
||
+ else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
|
||
+$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
|
||
+ eval $ac_var=\$ac_old_val
|
||
+ fi
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
|
||
+$as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
|
||
+$as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
|
||
+ fi;;
|
||
+ esac
|
||
+ # Pass precious variables to config.status.
|
||
+ if test "$ac_new_set" = set; then
|
||
+ case $ac_new_val in
|
||
+ *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
|
||
+ *) ac_arg=$ac_var=$ac_new_val ;;
|
||
+ esac
|
||
+ case " $ac_configure_args " in
|
||
+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
|
||
+ *) as_fn_append ac_configure_args " '$ac_arg'" ;;
|
||
+ esac
|
||
+ fi
|
||
+done
|
||
+if $ac_cache_corrupted; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
|
||
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
|
||
+$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
|
||
+ as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
|
||
+fi
|
||
+## -------------------- ##
|
||
+## Main body of script. ##
|
||
+## -------------------- ##
|
||
+
|
||
+ac_ext=c
|
||
+ac_cpp='$CPP $CPPFLAGS'
|
||
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
|
||
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
|
||
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
|
||
+
|
||
+
|
||
+ac_config_headers="$ac_config_headers config.h"
|
||
+
|
||
+
|
||
+if test "${enable_shared}" = "yes" ; then
|
||
+ echo "Shared libraries not supported for cross compiling, ignored"
|
||
+fi
|
||
+
|
||
+if test "$srcdir" = "." ; then
|
||
+ if test "${with_target_subdir}" != "." ; then
|
||
+ libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
|
||
+ else
|
||
+ libgloss_topdir="${srcdir}/${with_multisrctop}../.."
|
||
+ fi
|
||
+else
|
||
+ libgloss_topdir="${srcdir}/../.."
|
||
+fi
|
||
+ac_aux_dir=
|
||
+for ac_dir in $libgloss_topdir "$srcdir"/$libgloss_topdir; 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
|
||
+ elif test -f "$ac_dir/shtool"; then
|
||
+ ac_aux_dir=$ac_dir
|
||
+ ac_install_sh="$ac_aux_dir/shtool install -c"
|
||
+ break
|
||
+ fi
|
||
+done
|
||
+if test -z "$ac_aux_dir"; then
|
||
+ as_fn_error $? "cannot find install-sh, install.sh, or shtool in $libgloss_topdir \"$srcdir\"/$libgloss_topdir" "$LINENO" 5
|
||
+fi
|
||
+
|
||
+# These three variables are undocumented and unsupported,
|
||
+# and are intended to be withdrawn in a future Autoconf release.
|
||
+# They can cause serious problems if a builder's source tree is in a directory
|
||
+# whose full name contains unusual characters.
|
||
+ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
|
||
+ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
|
||
+ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
|
||
+
|
||
+
|
||
+
|
||
+# Make sure we can run config.sub.
|
||
+$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
|
||
+ as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
|
||
+$as_echo_n "checking build system type... " >&6; }
|
||
+if ${ac_cv_build+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ ac_build_alias=$build_alias
|
||
+test "x$ac_build_alias" = x &&
|
||
+ ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
|
||
+test "x$ac_build_alias" = x &&
|
||
+ as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
|
||
+ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
|
||
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
|
||
+
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
|
||
+$as_echo "$ac_cv_build" >&6; }
|
||
+case $ac_cv_build in
|
||
+*-*-*) ;;
|
||
+*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
|
||
+esac
|
||
+build=$ac_cv_build
|
||
+ac_save_IFS=$IFS; IFS='-'
|
||
+set x $ac_cv_build
|
||
+shift
|
||
+build_cpu=$1
|
||
+build_vendor=$2
|
||
+shift; shift
|
||
+# Remember, the first character of IFS is used to create $*,
|
||
+# except with old shells:
|
||
+build_os=$*
|
||
+IFS=$ac_save_IFS
|
||
+case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
|
||
+
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
|
||
+$as_echo_n "checking host system type... " >&6; }
|
||
+if ${ac_cv_host+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test "x$host_alias" = x; then
|
||
+ ac_cv_host=$ac_cv_build
|
||
+else
|
||
+ ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
|
||
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
|
||
+fi
|
||
+
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
|
||
+$as_echo "$ac_cv_host" >&6; }
|
||
+case $ac_cv_host in
|
||
+*-*-*) ;;
|
||
+*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
|
||
+esac
|
||
+host=$ac_cv_host
|
||
+ac_save_IFS=$IFS; IFS='-'
|
||
+set x $ac_cv_host
|
||
+shift
|
||
+host_cpu=$1
|
||
+host_vendor=$2
|
||
+shift; shift
|
||
+# Remember, the first character of IFS is used to create $*,
|
||
+# except with old shells:
|
||
+host_os=$*
|
||
+IFS=$ac_save_IFS
|
||
+case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
|
||
+
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
|
||
+$as_echo_n "checking target system type... " >&6; }
|
||
+if ${ac_cv_target+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test "x$target_alias" = x; then
|
||
+ ac_cv_target=$ac_cv_host
|
||
+else
|
||
+ ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
|
||
+ as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
|
||
+fi
|
||
+
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
|
||
+$as_echo "$ac_cv_target" >&6; }
|
||
+case $ac_cv_target in
|
||
+*-*-*) ;;
|
||
+*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
|
||
+esac
|
||
+target=$ac_cv_target
|
||
+ac_save_IFS=$IFS; IFS='-'
|
||
+set x $ac_cv_target
|
||
+shift
|
||
+target_cpu=$1
|
||
+target_vendor=$2
|
||
+shift; shift
|
||
+# Remember, the first character of IFS is used to create $*,
|
||
+# except with old shells:
|
||
+target_os=$*
|
||
+IFS=$ac_save_IFS
|
||
+case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
|
||
+
|
||
+
|
||
+# The aliases save the names the user supplied, while $host etc.
|
||
+# will get canonicalized.
|
||
+test -n "$target_alias" &&
|
||
+ test "$program_prefix$program_suffix$program_transform_name" = \
|
||
+ NONENONEs,x,x, &&
|
||
+ program_prefix=${target_alias}-
|
||
+
|
||
+test "$program_prefix" != NONE &&
|
||
+ program_transform_name="s&^&$program_prefix&;$program_transform_name"
|
||
+# Use a double $ so make ignores it.
|
||
+test "$program_suffix" != NONE &&
|
||
+ program_transform_name="s&\$&$program_suffix&;$program_transform_name"
|
||
+# Double any \ or $.
|
||
+# By default was `s,x,x', remove it if useless.
|
||
+ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
|
||
+program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
|
||
+
|
||
+
|
||
+# 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
|
||
+# AmigaOS /C/install, which installs bootblocks on floppy discs
|
||
+# 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"
|
||
+# OS/2's system install, which has a completely different semantic
|
||
+# ./install, which can be erroneously created by make from ./install.sh.
|
||
+# Reject install programs that cannot install multiple files.
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
|
||
+$as_echo_n "checking for a BSD-compatible install... " >&6; }
|
||
+if test -z "$INSTALL"; then
|
||
+if ${ac_cv_path_install+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ # Account for people who put trailing slashes in PATH elements.
|
||
+case $as_dir/ in #((
|
||
+ ./ | .// | /[cC]/* | \
|
||
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
|
||
+ ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
|
||
+ /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
|
||
+ for ac_exec_ext in '' $ac_executable_extensions; do
|
||
+ if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
|
||
+ if test $ac_prog = install &&
|
||
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
|
||
+ # AIX install. It has an incompatible calling convention.
|
||
+ :
|
||
+ elif test $ac_prog = install &&
|
||
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
|
||
+ # program-specific install script used by HP pwplus--don't use.
|
||
+ :
|
||
+ else
|
||
+ rm -rf conftest.one conftest.two conftest.dir
|
||
+ echo one > conftest.one
|
||
+ echo two > conftest.two
|
||
+ mkdir conftest.dir
|
||
+ if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
|
||
+ test -s conftest.one && test -s conftest.two &&
|
||
+ test -s conftest.dir/conftest.one &&
|
||
+ test -s conftest.dir/conftest.two
|
||
+ then
|
||
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
|
||
+ break 3
|
||
+ fi
|
||
+ fi
|
||
+ fi
|
||
+ done
|
||
+ done
|
||
+ ;;
|
||
+esac
|
||
+
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+rm -rf conftest.one conftest.two conftest.dir
|
||
+
|
||
+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. Don't cache a
|
||
+ # value for INSTALL within a source directory, because that will
|
||
+ # break other packages using the cache if that directory is
|
||
+ # removed, or if the value is a relative name.
|
||
+ INSTALL=$ac_install_sh
|
||
+ fi
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
|
||
+$as_echo "$INSTALL" >&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}'
|
||
+
|
||
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
|
||
+
|
||
+
|
||
+$as_echo "#define HAVE_GNU_LD 1" >>confdefs.h
|
||
+
|
||
+case "${target}" in
|
||
+ *-*-cygwin*)
|
||
+ ;;
|
||
+ a29k-amd-udi)
|
||
+ ;;
|
||
+ arc-*-*)
|
||
+ ;;
|
||
+ arm*-*-*)
|
||
+ ;;
|
||
+ bfin-*-*)
|
||
+ ;;
|
||
+ cris-*-* | crisv32-*-*)
|
||
+ ;;
|
||
+ d10v*)
|
||
+ ;;
|
||
+ h8300*-*-*)
|
||
+ ;;
|
||
+ h8500-*-*)
|
||
+ ;;
|
||
+ i345686-*-sco*)
|
||
+ ;;
|
||
+ lm32-*-*)
|
||
+ ;;
|
||
+ m32r-*-*)
|
||
+ ;;
|
||
+ mn10?00-*-*)
|
||
+ ;;
|
||
+ powerpc-*-eabi)
|
||
+ $as_echo "#define REENTRANT_SYSCALLS_PROVIDED 1" >>confdefs.h
|
||
+
|
||
+ ;;
|
||
+ powerpcle-*-pe)
|
||
+ ;;
|
||
+ sh*-*-*)
|
||
+ ;;
|
||
+ sparc-sun-sunos*)
|
||
+ ;;
|
||
+ sparc64-*-*)
|
||
+ ;;
|
||
+ v850*-*-*)
|
||
+ ;;
|
||
+ w65-*-*)
|
||
+ ;;
|
||
+ xstormy16-*-*)
|
||
+ ;;
|
||
+ z8k-*-*)
|
||
+ ;;
|
||
+ *)
|
||
+ $as_echo "#define MISSING_SYSCALL_NAMES 1" >>confdefs.h
|
||
+
|
||
+ ;;
|
||
+esac
|
||
+
|
||
+case "${target}" in
|
||
+ *-*-elf)
|
||
+ $as_echo "#define HAVE_ELF 1" >>confdefs.h
|
||
+
|
||
+
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for .previous assembler directive" >&5
|
||
+$as_echo_n "checking for .previous assembler directive... " >&6; }
|
||
+if ${libc_cv_asm_previous_directive+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ libc_cv_asm_previous_directive=no
|
||
+ cat > conftest.s <<EOF
|
||
+.section foo_section
|
||
+.previous
|
||
+EOF
|
||
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; }; then
|
||
+ libc_cv_asm_previous_directive=yes
|
||
+ fi
|
||
+ rm -f conftest*
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_previous_directive" >&5
|
||
+$as_echo "$libc_cv_asm_previous_directive" >&6; }
|
||
+
|
||
+ if test "x${libc_cv_asm_previous_directive}" = "xyes"; then
|
||
+ $as_echo "#define HAVE_ASM_PREVIOUS_DIRECTIVE 1" >>confdefs.h
|
||
+
|
||
+ fi
|
||
+
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for .popsection assembler directive" >&5
|
||
+$as_echo_n "checking for .popsection assembler directive... " >&6; }
|
||
+if ${libc_cv_asm_popsection_directive+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ libc_cv_asm_popsection_directive=no
|
||
+ cat > conftest.s <<EOF
|
||
+.pushsection foo_section
|
||
+.popsection
|
||
+EOF
|
||
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; }; then
|
||
+ libc_cv_asm_popsection_directive=yes
|
||
+ fi
|
||
+ rm -f conftest*
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_asm_popsection_directive" >&5
|
||
+$as_echo "$libc_cv_asm_popsection_directive" >&6; }
|
||
+
|
||
+ if test "x${libc_cv_asm_popsection_directive}" = "xyes"; then
|
||
+ $as_echo "#define HAVE_ASM_POPSECTION_DIRECTIVE 1" >>confdefs.h
|
||
+
|
||
+ fi
|
||
+
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for section attributes" >&5
|
||
+$as_echo_n "checking for section attributes... " >&6; }
|
||
+if ${libc_cv_section_attributes+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ libc_cv_section_attributes=no
|
||
+ cat > conftest.c <<EOF
|
||
+int secttest __attribute__ ((section (".gnu.warning.secttest"))) = 10;
|
||
+int main() {}
|
||
+EOF
|
||
+ if { ac_try='${CC-cc} -c $CFLAGS conftest.c 1>&5'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; }; then
|
||
+ libc_cv_section_attributes=yes
|
||
+ fi
|
||
+ rm -f conftest*
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_section_attributes" >&5
|
||
+$as_echo "$libc_cv_section_attributes" >&6; }
|
||
+ if test "x${libc_cv_section_attributes}" = "xyes"; then
|
||
+ $as_echo "#define HAVE_SECTION_ATTRIBUTES 1" >>confdefs.h
|
||
+
|
||
+ fi
|
||
+ ;;
|
||
+esac
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for symbol prefix" >&5
|
||
+$as_echo_n "checking for symbol prefix... " >&6; }
|
||
+if ${libc_cv_symbol_prefix+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ cat > conftest.c <<\EOF
|
||
+foo () { }
|
||
+EOF
|
||
+libc_cv_symbol_prefix=none
|
||
+if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo" > /dev/null'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; };
|
||
+then
|
||
+ libc_cv_symbol_prefix='$'
|
||
+else
|
||
+ if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "_foo" > /dev/null'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; };
|
||
+ then
|
||
+ libc_cv_symbol_prefix=_
|
||
+ fi
|
||
+fi
|
||
+rm -f conftest*
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libc_cv_symbol_prefix" >&5
|
||
+$as_echo "$libc_cv_symbol_prefix" >&6; }
|
||
+if test $libc_cv_symbol_prefix != none; then
|
||
+ cat >>confdefs.h <<_ACEOF
|
||
+#define __SYMBOL_PREFIX "$libc_cv_symbol_prefix"
|
||
+_ACEOF
|
||
+
|
||
+else
|
||
+ $as_echo "#define __SYMBOL_PREFIX \"\"" >>confdefs.h
|
||
+
|
||
+fi
|
||
+
|
||
+rm -rf .tst 2>/dev/null
|
||
+mkdir .tst 2>/dev/null
|
||
+if test -d .tst; then
|
||
+ am__leading_dot=.
|
||
+else
|
||
+ am__leading_dot=_
|
||
+fi
|
||
+rmdir .tst 2>/dev/null
|
||
+
|
||
+DEPDIR="${am__leading_dot}deps"
|
||
+
|
||
+ac_config_commands="$ac_config_commands depfiles"
|
||
+
|
||
+
|
||
+am_make=${MAKE-make}
|
||
+cat > confinc << 'END'
|
||
+am__doit:
|
||
+ @echo done
|
||
+.PHONY: am__doit
|
||
+END
|
||
+# If we don't find an include directive, just comment out the code.
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
|
||
+$as_echo_n "checking for style of include used by $am_make... " >&6; }
|
||
+am__include="#"
|
||
+am__quote=
|
||
+_am_result=none
|
||
+# First try GNU make style include.
|
||
+echo "include confinc" > confmf
|
||
+# We grep out `Entering directory' and `Leaving directory'
|
||
+# messages which can occur if `w' ends up in MAKEFLAGS.
|
||
+# In particular we don't look at `^make:' because GNU make might
|
||
+# be invoked under some other name (usually "gmake"), in which
|
||
+# case it prints its new name instead of `make'.
|
||
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
|
||
+ am__include=include
|
||
+ am__quote=
|
||
+ _am_result=GNU
|
||
+fi
|
||
+# Now try BSD make style include.
|
||
+if test "$am__include" = "#"; then
|
||
+ echo '.include "confinc"' > confmf
|
||
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
|
||
+ am__include=.include
|
||
+ am__quote="\""
|
||
+ _am_result=BSD
|
||
+ fi
|
||
+fi
|
||
+
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
|
||
+$as_echo "$_am_result" >&6; }
|
||
+rm -f confinc confmf
|
||
+
|
||
+# Check whether --enable-dependency-tracking was given.
|
||
+if test "${enable_dependency_tracking+set}" = set; then :
|
||
+ enableval=$enable_dependency_tracking;
|
||
+fi
|
||
+
|
||
+if test "x$enable_dependency_tracking" != xno; then
|
||
+ am_depcomp="$ac_aux_dir/depcomp"
|
||
+ AMDEPBACKSLASH='\'
|
||
+fi
|
||
+
|
||
+
|
||
+if test "x$enable_dependency_tracking" != xno; then
|
||
+ AMDEP_TRUE=
|
||
+ AMDEP_FALSE='#'
|
||
+else
|
||
+ AMDEP_TRUE='#'
|
||
+ AMDEP_FALSE=
|
||
+fi
|
||
+
|
||
+
|
||
+
|
||
+# Extract the first word of "gcc", so it can be a program name with args.
|
||
+set dummy gcc; ac_word=$2
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||
+$as_echo_n "checking for $ac_word... " >&6; }
|
||
+if ${ac_cv_prog_CC+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test -n "$CC"; then
|
||
+ ac_cv_prog_CC="$CC" # Let the user override the test.
|
||
+else
|
||
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ for ac_exec_ext in '' $ac_executable_extensions; do
|
||
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||
+ ac_cv_prog_CC="gcc"
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||
+ break 2
|
||
+ fi
|
||
+done
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+fi
|
||
+fi
|
||
+CC=$ac_cv_prog_CC
|
||
+if test -n "$CC"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||
+$as_echo "$CC" >&6; }
|
||
+else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||
+$as_echo "no" >&6; }
|
||
+fi
|
||
+
|
||
+
|
||
+
|
||
+depcc="$CC" am_compiler_list=
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
|
||
+$as_echo_n "checking dependency style of $depcc... " >&6; }
|
||
+if ${am_cv_CC_dependencies_compiler_type+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
|
||
+ # We make a subdir and do the tests there. Otherwise we can end up
|
||
+ # making bogus files that we don't know about and never remove. For
|
||
+ # instance it was reported that on HP-UX the gcc test will end up
|
||
+ # making a dummy file named `D' -- because `-MD' means `put the output
|
||
+ # in D'.
|
||
+ mkdir conftest.dir
|
||
+ # Copy depcomp to subdir because otherwise we won't find it if we're
|
||
+ # using a relative directory.
|
||
+ cp "$am_depcomp" conftest.dir
|
||
+ cd conftest.dir
|
||
+ # We will build objects and dependencies in a subdirectory because
|
||
+ # it helps to detect inapplicable dependency modes. For instance
|
||
+ # both Tru64's cc and ICC support -MD to output dependencies as a
|
||
+ # side effect of compilation, but ICC will put the dependencies in
|
||
+ # the current directory while Tru64 will put them in the object
|
||
+ # directory.
|
||
+ mkdir sub
|
||
+
|
||
+ am_cv_CC_dependencies_compiler_type=none
|
||
+ if test "$am_compiler_list" = ""; then
|
||
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
|
||
+ fi
|
||
+ for depmode in $am_compiler_list; do
|
||
+ # Setup a source with many dependencies, because some compilers
|
||
+ # like to wrap large dependency lists on column 80 (with \), and
|
||
+ # we should not choose a depcomp mode which is confused by this.
|
||
+ #
|
||
+ # We need to recreate these files for each test, as the compiler may
|
||
+ # overwrite some of them when testing with obscure command lines.
|
||
+ # This happens at least with the AIX C compiler.
|
||
+ : > sub/conftest.c
|
||
+ for i in 1 2 3 4 5 6; do
|
||
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
|
||
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
|
||
+ # Solaris 8's {/usr,}/bin/sh.
|
||
+ touch sub/conftst$i.h
|
||
+ done
|
||
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
|
||
+
|
||
+ case $depmode in
|
||
+ nosideeffect)
|
||
+ # after this tag, mechanisms are not by side-effect, so they'll
|
||
+ # only be used when explicitly requested
|
||
+ if test "x$enable_dependency_tracking" = xyes; then
|
||
+ continue
|
||
+ else
|
||
+ break
|
||
+ fi
|
||
+ ;;
|
||
+ none) break ;;
|
||
+ esac
|
||
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
|
||
+ # mode. It turns out that the SunPro C++ compiler does not properly
|
||
+ # handle `-M -o', and we need to detect this.
|
||
+ if depmode=$depmode \
|
||
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
|
||
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
|
||
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
|
||
+ >/dev/null 2>conftest.err &&
|
||
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
|
||
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
|
||
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
|
||
+ # icc doesn't choke on unknown options, it will just issue warnings
|
||
+ # or remarks (even with -Werror). So we grep stderr for any message
|
||
+ # that says an option was ignored or not supported.
|
||
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
|
||
+ # icc: Command line warning: ignoring option '-M'; no argument required
|
||
+ # The diagnosis changed in icc 8.0:
|
||
+ # icc: Command line remark: option '-MP' not supported
|
||
+ if (grep 'ignoring option' conftest.err ||
|
||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
|
||
+ am_cv_CC_dependencies_compiler_type=$depmode
|
||
+ break
|
||
+ fi
|
||
+ fi
|
||
+ done
|
||
+
|
||
+ cd ..
|
||
+ rm -rf conftest.dir
|
||
+else
|
||
+ am_cv_CC_dependencies_compiler_type=none
|
||
+fi
|
||
+
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
|
||
+$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
|
||
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
|
||
+
|
||
+
|
||
+
|
||
+if
|
||
+ test "x$enable_dependency_tracking" != xno \
|
||
+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
|
||
+ am__fastdepCC_TRUE=
|
||
+ am__fastdepCC_FALSE='#'
|
||
+else
|
||
+ am__fastdepCC_TRUE='#'
|
||
+ am__fastdepCC_FALSE=
|
||
+fi
|
||
+
|
||
+
|
||
+if test -z "$CC"; then
|
||
+ # Extract the first word of "cc", so it can be a program name with args.
|
||
+set dummy cc; ac_word=$2
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||
+$as_echo_n "checking for $ac_word... " >&6; }
|
||
+if ${ac_cv_prog_CC+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test -n "$CC"; then
|
||
+ ac_cv_prog_CC="$CC" # Let the user override the test.
|
||
+else
|
||
+ ac_prog_rejected=no
|
||
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ for ac_exec_ext in '' $ac_executable_extensions; do
|
||
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
|
||
+ ac_prog_rejected=yes
|
||
+ continue
|
||
+ fi
|
||
+ ac_cv_prog_CC="cc"
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||
+ break 2
|
||
+ fi
|
||
+done
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+if test $ac_prog_rejected = yes; then
|
||
+ # We found a bogon in the path, so make sure we never use it.
|
||
+ set dummy $ac_cv_prog_CC
|
||
+ shift
|
||
+ if test $# != 0; then
|
||
+ # We chose a different compiler from the bogus one.
|
||
+ # However, it has the same basename, so the bogon will be chosen
|
||
+ # first if we set CC to just the basename; use the full file name.
|
||
+ shift
|
||
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
|
||
+ fi
|
||
+fi
|
||
+fi
|
||
+fi
|
||
+CC=$ac_cv_prog_CC
|
||
+if test -n "$CC"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
|
||
+$as_echo "$CC" >&6; }
|
||
+else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||
+$as_echo "no" >&6; }
|
||
+fi
|
||
+
|
||
+
|
||
+ test -z "$CC" && as_fn_error $? "no acceptable cc found in \$PATH" "$LINENO" 5
|
||
+fi
|
||
+
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using GNU C" >&5
|
||
+$as_echo_n "checking whether we are using GNU C... " >&6; }
|
||
+if ${ac_cv_c_compiler_gnu+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ cat > conftest.c <<EOF
|
||
+#ifdef __GNUC__
|
||
+ yes;
|
||
+#endif
|
||
+EOF
|
||
+if { ac_try='${CC-cc} -E conftest.c'
|
||
+ { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5
|
||
+ (eval $ac_try) 2>&5
|
||
+ ac_status=$?
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
|
||
+ test $ac_status = 0; }; } | egrep yes >/dev/null 2>&1; then
|
||
+ ac_cv_c_compiler_gnu=yes
|
||
+else
|
||
+ ac_cv_c_compiler_gnu=no
|
||
+fi
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
|
||
+$as_echo "$ac_cv_c_compiler_gnu" >&6; }
|
||
+
|
||
+if test $ac_cv_c_compiler_gnu = yes; then
|
||
+ GCC=yes
|
||
+ ac_test_CFLAGS="${CFLAGS+set}"
|
||
+ ac_save_CFLAGS="$CFLAGS"
|
||
+ CFLAGS=
|
||
+ ac_test_CFLAGS=${CFLAGS+set}
|
||
+ac_save_CFLAGS=$CFLAGS
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
|
||
+$as_echo_n "checking whether $CC accepts -g... " >&6; }
|
||
+if ${ac_cv_prog_cc_g+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ ac_save_c_werror_flag=$ac_c_werror_flag
|
||
+ ac_c_werror_flag=yes
|
||
+ ac_cv_prog_cc_g=no
|
||
+ CFLAGS="-g"
|
||
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||
+/* end confdefs.h. */
|
||
+
|
||
+int
|
||
+main ()
|
||
+{
|
||
+
|
||
+ ;
|
||
+ return 0;
|
||
+}
|
||
+_ACEOF
|
||
+if ac_fn_c_try_compile "$LINENO"; then :
|
||
+ ac_cv_prog_cc_g=yes
|
||
+else
|
||
+ CFLAGS=""
|
||
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||
+/* end confdefs.h. */
|
||
+
|
||
+int
|
||
+main ()
|
||
+{
|
||
+
|
||
+ ;
|
||
+ return 0;
|
||
+}
|
||
+_ACEOF
|
||
+if ac_fn_c_try_compile "$LINENO"; then :
|
||
+
|
||
+else
|
||
+ ac_c_werror_flag=$ac_save_c_werror_flag
|
||
+ CFLAGS="-g"
|
||
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||
+/* end confdefs.h. */
|
||
+
|
||
+int
|
||
+main ()
|
||
+{
|
||
+
|
||
+ ;
|
||
+ return 0;
|
||
+}
|
||
+_ACEOF
|
||
+if ac_fn_c_try_compile "$LINENO"; then :
|
||
+ ac_cv_prog_cc_g=yes
|
||
+fi
|
||
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||
+fi
|
||
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||
+fi
|
||
+rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
|
||
+ ac_c_werror_flag=$ac_save_c_werror_flag
|
||
+fi
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
|
||
+$as_echo "$ac_cv_prog_cc_g" >&6; }
|
||
+if test "$ac_test_CFLAGS" = set; then
|
||
+ CFLAGS=$ac_save_CFLAGS
|
||
+elif test $ac_cv_prog_cc_g = yes; then
|
||
+ if test "$GCC" = yes; then
|
||
+ CFLAGS="-g -O2"
|
||
+ else
|
||
+ CFLAGS="-g"
|
||
+ fi
|
||
+else
|
||
+ if test "$GCC" = yes; then
|
||
+ CFLAGS="-O2"
|
||
+ else
|
||
+ CFLAGS=
|
||
+ fi
|
||
+fi
|
||
+ 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
|
||
+
|
||
+AS=${AS-as}
|
||
+
|
||
+AR=${AR-ar}
|
||
+
|
||
+LD=${LD-ld}
|
||
+
|
||
+if test -n "$ac_tool_prefix"; then
|
||
+ # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
|
||
+set dummy ${ac_tool_prefix}ranlib; ac_word=$2
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||
+$as_echo_n "checking for $ac_word... " >&6; }
|
||
+if ${ac_cv_prog_RANLIB+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test -n "$RANLIB"; then
|
||
+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
|
||
+else
|
||
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ for ac_exec_ext in '' $ac_executable_extensions; do
|
||
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||
+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||
+ break 2
|
||
+ fi
|
||
+done
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+fi
|
||
+fi
|
||
+RANLIB=$ac_cv_prog_RANLIB
|
||
+if test -n "$RANLIB"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
|
||
+$as_echo "$RANLIB" >&6; }
|
||
+else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||
+$as_echo "no" >&6; }
|
||
+fi
|
||
+
|
||
+
|
||
+fi
|
||
+if test -z "$ac_cv_prog_RANLIB"; then
|
||
+ ac_ct_RANLIB=$RANLIB
|
||
+ # Extract the first word of "ranlib", so it can be a program name with args.
|
||
+set dummy ranlib; ac_word=$2
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
|
||
+$as_echo_n "checking for $ac_word... " >&6; }
|
||
+if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
|
||
+ $as_echo_n "(cached) " >&6
|
||
+else
|
||
+ if test -n "$ac_ct_RANLIB"; then
|
||
+ ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
|
||
+else
|
||
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ for ac_exec_ext in '' $ac_executable_extensions; do
|
||
+ if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||
+ ac_cv_prog_ac_ct_RANLIB="ranlib"
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||
+ break 2
|
||
+ fi
|
||
+done
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+fi
|
||
+fi
|
||
+ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
|
||
+if test -n "$ac_ct_RANLIB"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
|
||
+$as_echo "$ac_ct_RANLIB" >&6; }
|
||
+else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
|
||
+$as_echo "no" >&6; }
|
||
+fi
|
||
+
|
||
+ if test "x$ac_ct_RANLIB" = x; then
|
||
+ RANLIB=":"
|
||
+ else
|
||
+ case $cross_compiling:$ac_tool_warned in
|
||
+yes:)
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
|
||
+$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
|
||
+ac_tool_warned=yes ;;
|
||
+esac
|
||
+ RANLIB=$ac_ct_RANLIB
|
||
+ fi
|
||
+else
|
||
+ RANLIB="$ac_cv_prog_RANLIB"
|
||
+fi
|
||
+
|
||
+# By default we simply use the C compiler to build assembly code.
|
||
+
|
||
+test "${CCAS+set}" = set || CCAS=$CC
|
||
+test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS
|
||
+
|
||
+
|
||
+
|
||
+
|
||
+host_makefile_frag=${srcdir}/../config/default.mh
|
||
+
|
||
+host_makefile_frag_path=$host_makefile_frag
|
||
+
|
||
+
|
||
+
|
||
+ac_config_files="$ac_config_files Makefile"
|
||
+
|
||
+cat >confcache <<\_ACEOF
|
||
+# 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, see configure's option --config-cache.
|
||
+# It is not useful on other systems. If it contains results you don't
|
||
+# want to keep, you may remove or edit it.
|
||
+#
|
||
+# config.status only pays attention to the cache file if you give it
|
||
+# the --recheck option to rerun configure.
|
||
+#
|
||
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
|
||
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
|
||
+# following values.
|
||
+
|
||
+_ACEOF
|
||
+
|
||
+# The following way of writing the cache mishandles newlines in values,
|
||
+# but we know of no workaround that is simple, portable, and efficient.
|
||
+# So, we kill variables containing newlines.
|
||
+# 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.
|
||
+(
|
||
+ for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
|
||
+ eval ac_val=\$$ac_var
|
||
+ case $ac_val in #(
|
||
+ *${as_nl}*)
|
||
+ case $ac_var in #(
|
||
+ *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
|
||
+$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
|
||
+ esac
|
||
+ case $ac_var in #(
|
||
+ _ | IFS | as_nl) ;; #(
|
||
+ BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
|
||
+ *) { eval $ac_var=; unset $ac_var;} ;;
|
||
+ esac ;;
|
||
+ esac
|
||
+ done
|
||
+
|
||
+ (set) 2>&1 |
|
||
+ case $as_nl`(ac_space=' '; set) 2>&1` in #(
|
||
+ *${as_nl}ac_space=\ *)
|
||
+ # `set' does not quote correctly, so add quotes: double-quote
|
||
+ # substitution turns \\\\ into \\, and sed turns \\ into \.
|
||
+ sed -n \
|
||
+ "s/'/'\\\\''/g;
|
||
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
|
||
+ ;; #(
|
||
+ *)
|
||
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
|
||
+ sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
|
||
+ ;;
|
||
+ esac |
|
||
+ sort
|
||
+) |
|
||
+ sed '
|
||
+ /^ac_cv_env_/b end
|
||
+ t clear
|
||
+ :clear
|
||
+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
|
||
+ t end
|
||
+ s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
|
||
+ :end' >>confcache
|
||
+if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
|
||
+ if test -w "$cache_file"; then
|
||
+ if test "x$cache_file" != "x/dev/null"; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
|
||
+$as_echo "$as_me: updating cache $cache_file" >&6;}
|
||
+ if test ! -f "$cache_file" || test -h "$cache_file"; then
|
||
+ cat confcache >"$cache_file"
|
||
+ else
|
||
+ case $cache_file in #(
|
||
+ */* | ?:*)
|
||
+ mv -f confcache "$cache_file"$$ &&
|
||
+ mv -f "$cache_file"$$ "$cache_file" ;; #(
|
||
+ *)
|
||
+ mv -f confcache "$cache_file" ;;
|
||
+ esac
|
||
+ fi
|
||
+ fi
|
||
+ else
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
|
||
+$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
|
||
+ fi
|
||
+fi
|
||
+rm -f confcache
|
||
+
|
||
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
|
||
+# Let make expand exec_prefix.
|
||
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
|
||
+
|
||
+DEFS=-DHAVE_CONFIG_H
|
||
+
|
||
+ac_libobjs=
|
||
+ac_ltlibobjs=
|
||
+U=
|
||
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
|
||
+ # 1. Remove the extension, and $U if already installed.
|
||
+ ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
|
||
+ ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
|
||
+ # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
|
||
+ # will be set to the directory where LIBOBJS objects are built.
|
||
+ as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
|
||
+ as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
|
||
+done
|
||
+LIBOBJS=$ac_libobjs
|
||
+
|
||
+LTLIBOBJS=$ac_ltlibobjs
|
||
+
|
||
+
|
||
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
|
||
+ as_fn_error $? "conditional \"AMDEP\" was never defined.
|
||
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||
+fi
|
||
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
|
||
+ as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
|
||
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
|
||
+fi
|
||
+
|
||
+: "${CONFIG_STATUS=./config.status}"
|
||
+ac_write_fail=0
|
||
+ac_clean_files_save=$ac_clean_files
|
||
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
|
||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
|
||
+$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
|
||
+as_write_fail=0
|
||
+cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
|
||
+#! $SHELL
|
||
+# Generated by $as_me.
|
||
+# Run this file to recreate the current configuration.
|
||
+# Compiler output produced by configure, useful for debugging
|
||
+# configure, is in config.log if it exists.
|
||
+
|
||
+debug=false
|
||
+ac_cs_recheck=false
|
||
+ac_cs_silent=false
|
||
+
|
||
+SHELL=\${CONFIG_SHELL-$SHELL}
|
||
+export SHELL
|
||
+_ASEOF
|
||
+cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
|
||
+## -------------------- ##
|
||
+## M4sh Initialization. ##
|
||
+## -------------------- ##
|
||
+
|
||
+# Be more Bourne compatible
|
||
+DUALCASE=1; export DUALCASE # for MKS sh
|
||
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
|
||
+ emulate sh
|
||
+ NULLCMD=:
|
||
+ # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
|
||
+ # is contrary to our usage. Disable this feature.
|
||
+ alias -g '${1+"$@"}'='"$@"'
|
||
+ setopt NO_GLOB_SUBST
|
||
+else
|
||
+ case `(set -o) 2>/dev/null` in #(
|
||
+ *posix*) :
|
||
+ set -o posix ;; #(
|
||
+ *) :
|
||
+ ;;
|
||
+esac
|
||
+fi
|
||
+
|
||
+
|
||
+as_nl='
|
||
+'
|
||
+export as_nl
|
||
+# Printing a long string crashes Solaris 7 /usr/bin/printf.
|
||
+as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
|
||
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
|
||
+as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
|
||
+# Prefer a ksh shell builtin over an external printf program on Solaris,
|
||
+# but without wasting forks for bash or zsh.
|
||
+if test -z "$BASH_VERSION$ZSH_VERSION" \
|
||
+ && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
|
||
+ as_echo='print -r --'
|
||
+ as_echo_n='print -rn --'
|
||
+elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
|
||
+ as_echo='printf %s\n'
|
||
+ as_echo_n='printf %s'
|
||
+else
|
||
+ if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
|
||
+ as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
|
||
+ as_echo_n='/usr/ucb/echo -n'
|
||
+ else
|
||
+ as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
|
||
+ as_echo_n_body='eval
|
||
+ arg=$1;
|
||
+ case $arg in #(
|
||
+ *"$as_nl"*)
|
||
+ expr "X$arg" : "X\\(.*\\)$as_nl";
|
||
+ arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
|
||
+ esac;
|
||
+ expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
|
||
+ '
|
||
+ export as_echo_n_body
|
||
+ as_echo_n='sh -c $as_echo_n_body as_echo'
|
||
+ fi
|
||
+ export as_echo_body
|
||
+ as_echo='sh -c $as_echo_body as_echo'
|
||
+fi
|
||
+
|
||
+# The user is always right.
|
||
+if test "${PATH_SEPARATOR+set}" != set; then
|
||
+ PATH_SEPARATOR=:
|
||
+ (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
|
||
+ (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
|
||
+ PATH_SEPARATOR=';'
|
||
+ }
|
||
+fi
|
||
+
|
||
+
|
||
+# IFS
|
||
+# We need space, tab and new line, in precisely that order. Quoting is
|
||
+# there to prevent editors from complaining about space-tab.
|
||
+# (If _AS_PATH_WALK were called with IFS unset, it would disable word
|
||
+# splitting by setting IFS to empty value.)
|
||
+IFS=" "" $as_nl"
|
||
+
|
||
+# Find who we are. Look in the path if we contain no directory separator.
|
||
+as_myself=
|
||
+case $0 in #((
|
||
+ *[\\/]* ) as_myself=$0 ;;
|
||
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||
+for as_dir in $PATH
|
||
+do
|
||
+ IFS=$as_save_IFS
|
||
+ test -z "$as_dir" && as_dir=.
|
||
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
|
||
+ done
|
||
+IFS=$as_save_IFS
|
||
+
|
||
+ ;;
|
||
+esac
|
||
+# We did not find ourselves, most probably we were run as `sh COMMAND'
|
||
+# in which case we are not to be found in the path.
|
||
+if test "x$as_myself" = x; then
|
||
+ as_myself=$0
|
||
+fi
|
||
+if test ! -f "$as_myself"; then
|
||
+ $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
|
||
+ exit 1
|
||
+fi
|
||
+
|
||
+# Unset variables that we do not need and which cause bugs (e.g. in
|
||
+# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
|
||
+# suppresses any "Segmentation fault" message there. '((' could
|
||
+# trigger a bug in pdksh 5.2.14.
|
||
+for as_var in BASH_ENV ENV MAIL MAILPATH
|
||
+do eval test x\${$as_var+set} = xset \
|
||
+ && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
|
||
+done
|
||
+PS1='$ '
|
||
+PS2='> '
|
||
+PS4='+ '
|
||
+
|
||
+# NLS nuisances.
|
||
+LC_ALL=C
|
||
+export LC_ALL
|
||
+LANGUAGE=C
|
||
+export LANGUAGE
|
||
+
|
||
+# CDPATH.
|
||
+(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
|
||
+
|
||
+
|
||
+# as_fn_error STATUS ERROR [LINENO LOG_FD]
|
||
+# ----------------------------------------
|
||
+# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
|
||
+# provided, also output the error to LOG_FD, referencing LINENO. Then exit the
|
||
+# script with STATUS, using 1 if that was 0.
|
||
+as_fn_error ()
|
||
+{
|
||
+ as_status=$1; test $as_status -eq 0 && as_status=1
|
||
+ if test "$4"; then
|
||
+ as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
|
||
+ $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
|
||
+ fi
|
||
+ $as_echo "$as_me: error: $2" >&2
|
||
+ as_fn_exit $as_status
|
||
+} # as_fn_error
|
||
+
|
||
+
|
||
+# as_fn_set_status STATUS
|
||
+# -----------------------
|
||
+# Set $? to STATUS, without forking.
|
||
+as_fn_set_status ()
|
||
+{
|
||
+ return $1
|
||
+} # as_fn_set_status
|
||
+
|
||
+# as_fn_exit STATUS
|
||
+# -----------------
|
||
+# Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
|
||
+as_fn_exit ()
|
||
+{
|
||
+ set +e
|
||
+ as_fn_set_status $1
|
||
+ exit $1
|
||
+} # as_fn_exit
|
||
+
|
||
+# as_fn_unset VAR
|
||
+# ---------------
|
||
+# Portably unset VAR.
|
||
+as_fn_unset ()
|
||
+{
|
||
+ { eval $1=; unset $1;}
|
||
+}
|
||
+as_unset=as_fn_unset
|
||
+# as_fn_append VAR VALUE
|
||
+# ----------------------
|
||
+# Append the text in VALUE to the end of the definition contained in VAR. Take
|
||
+# advantage of any shell optimizations that allow amortized linear growth over
|
||
+# repeated appends, instead of the typical quadratic growth present in naive
|
||
+# implementations.
|
||
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
|
||
+ eval 'as_fn_append ()
|
||
+ {
|
||
+ eval $1+=\$2
|
||
+ }'
|
||
+else
|
||
+ as_fn_append ()
|
||
+ {
|
||
+ eval $1=\$$1\$2
|
||
+ }
|
||
+fi # as_fn_append
|
||
+
|
||
+# as_fn_arith ARG...
|
||
+# ------------------
|
||
+# Perform arithmetic evaluation on the ARGs, and store the result in the
|
||
+# global $as_val. Take advantage of shells that can avoid forks. The arguments
|
||
+# must be portable across $(()) and expr.
|
||
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
|
||
+ eval 'as_fn_arith ()
|
||
+ {
|
||
+ as_val=$(( $* ))
|
||
+ }'
|
||
+else
|
||
+ as_fn_arith ()
|
||
+ {
|
||
+ as_val=`expr "$@" || test $? -eq 1`
|
||
+ }
|
||
+fi # as_fn_arith
|
||
+
|
||
+
|
||
+if expr a : '\(a\)' >/dev/null 2>&1 &&
|
||
+ test "X`expr 00001 : '.*\(...\)'`" = X001; then
|
||
+ as_expr=expr
|
||
+else
|
||
+ as_expr=false
|
||
+fi
|
||
+
|
||
+if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
|
||
+ as_basename=basename
|
||
+else
|
||
+ as_basename=false
|
||
+fi
|
||
+
|
||
+if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
|
||
+ as_dirname=dirname
|
||
+else
|
||
+ as_dirname=false
|
||
+fi
|
||
+
|
||
+as_me=`$as_basename -- "$0" ||
|
||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
|
||
+ X"$0" : 'X\(//\)$' \| \
|
||
+ X"$0" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X/"$0" |
|
||
+ sed '/^.*\/\([^/][^/]*\)\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\/\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\/\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+
|
||
+# Avoid depending upon Character Ranges.
|
||
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
|
||
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
|
||
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
|
||
+as_cr_digits='0123456789'
|
||
+as_cr_alnum=$as_cr_Letters$as_cr_digits
|
||
+
|
||
+ECHO_C= ECHO_N= ECHO_T=
|
||
+case `echo -n x` in #(((((
|
||
+-n*)
|
||
+ case `echo 'xy\c'` in
|
||
+ *c*) ECHO_T=' ';; # ECHO_T is single tab character.
|
||
+ xy) ECHO_C='\c';;
|
||
+ *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
|
||
+ ECHO_T=' ';;
|
||
+ esac;;
|
||
+*)
|
||
+ ECHO_N='-n';;
|
||
+esac
|
||
+
|
||
+rm -f conf$$ conf$$.exe conf$$.file
|
||
+if test -d conf$$.dir; then
|
||
+ rm -f conf$$.dir/conf$$.file
|
||
+else
|
||
+ rm -f conf$$.dir
|
||
+ mkdir conf$$.dir 2>/dev/null
|
||
+fi
|
||
+if (echo >conf$$.file) 2>/dev/null; then
|
||
+ if ln -s conf$$.file conf$$ 2>/dev/null; then
|
||
+ as_ln_s='ln -s'
|
||
+ # ... but there are two gotchas:
|
||
+ # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
|
||
+ # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
|
||
+ # In both cases, we have to default to `cp -pR'.
|
||
+ ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
|
||
+ as_ln_s='cp -pR'
|
||
+ elif ln conf$$.file conf$$ 2>/dev/null; then
|
||
+ as_ln_s=ln
|
||
+ else
|
||
+ as_ln_s='cp -pR'
|
||
+ fi
|
||
+else
|
||
+ as_ln_s='cp -pR'
|
||
+fi
|
||
+rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
|
||
+rmdir conf$$.dir 2>/dev/null
|
||
+
|
||
+
|
||
+# as_fn_mkdir_p
|
||
+# -------------
|
||
+# Create "$as_dir" as a directory, including parents if necessary.
|
||
+as_fn_mkdir_p ()
|
||
+{
|
||
+
|
||
+ case $as_dir in #(
|
||
+ -*) as_dir=./$as_dir;;
|
||
+ esac
|
||
+ test -d "$as_dir" || eval $as_mkdir_p || {
|
||
+ as_dirs=
|
||
+ while :; do
|
||
+ case $as_dir in #(
|
||
+ *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
|
||
+ *) as_qdir=$as_dir;;
|
||
+ esac
|
||
+ as_dirs="'$as_qdir' $as_dirs"
|
||
+ as_dir=`$as_dirname -- "$as_dir" ||
|
||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$as_dir" : 'X\(//\)[^/]' \| \
|
||
+ X"$as_dir" : 'X\(//\)$' \| \
|
||
+ X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$as_dir" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ test -d "$as_dir" && break
|
||
+ done
|
||
+ test -z "$as_dirs" || eval "mkdir $as_dirs"
|
||
+ } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
|
||
+
|
||
+
|
||
+} # as_fn_mkdir_p
|
||
+if mkdir -p . 2>/dev/null; then
|
||
+ as_mkdir_p='mkdir -p "$as_dir"'
|
||
+else
|
||
+ test -d ./-p && rmdir ./-p
|
||
+ as_mkdir_p=false
|
||
+fi
|
||
+
|
||
+
|
||
+# as_fn_executable_p FILE
|
||
+# -----------------------
|
||
+# Test if FILE is an executable regular file.
|
||
+as_fn_executable_p ()
|
||
+{
|
||
+ test -f "$1" && test -x "$1"
|
||
+} # as_fn_executable_p
|
||
+as_test_x='test -x'
|
||
+as_executable_p=as_fn_executable_p
|
||
+
|
||
+# Sed expression to map a string onto a valid CPP name.
|
||
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
|
||
+
|
||
+# Sed expression to map a string onto a valid variable name.
|
||
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
|
||
+
|
||
+
|
||
+exec 6>&1
|
||
+## ----------------------------------- ##
|
||
+## Main body of $CONFIG_STATUS script. ##
|
||
+## ----------------------------------- ##
|
||
+_ASEOF
|
||
+test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+# Save the log message, to keep $0 and so on meaningful, and to
|
||
+# report actual input values of CONFIG_FILES etc. instead of their
|
||
+# values after options handling.
|
||
+ac_log="
|
||
+This file was extended by $as_me, which was
|
||
+generated by GNU Autoconf 2.69. Invocation command line was
|
||
+
|
||
+ CONFIG_FILES = $CONFIG_FILES
|
||
+ CONFIG_HEADERS = $CONFIG_HEADERS
|
||
+ CONFIG_LINKS = $CONFIG_LINKS
|
||
+ CONFIG_COMMANDS = $CONFIG_COMMANDS
|
||
+ $ $0 $@
|
||
+
|
||
+on `(hostname || uname -n) 2>/dev/null | sed 1q`
|
||
+"
|
||
+
|
||
+_ACEOF
|
||
+
|
||
+case $ac_config_files in *"
|
||
+"*) set x $ac_config_files; shift; ac_config_files=$*;;
|
||
+esac
|
||
+
|
||
+case $ac_config_headers in *"
|
||
+"*) set x $ac_config_headers; shift; ac_config_headers=$*;;
|
||
+esac
|
||
+
|
||
+
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+# Files that config.status was made for.
|
||
+config_files="$ac_config_files"
|
||
+config_headers="$ac_config_headers"
|
||
+config_commands="$ac_config_commands"
|
||
+
|
||
+_ACEOF
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+ac_cs_usage="\
|
||
+\`$as_me' instantiates files and other configuration actions
|
||
+from templates according to the current configuration. Unless the files
|
||
+and actions are specified as TAGs, all are instantiated by default.
|
||
+
|
||
+Usage: $0 [OPTION]... [TAG]...
|
||
+
|
||
+ -h, --help print this help, then exit
|
||
+ -V, --version print version number and configuration settings, then exit
|
||
+ --config print configuration, then exit
|
||
+ -q, --quiet, --silent
|
||
+ do not print progress messages
|
||
+ -d, --debug don't remove temporary files
|
||
+ --recheck update $as_me by reconfiguring in the same conditions
|
||
+ --file=FILE[:TEMPLATE]
|
||
+ instantiate the configuration file FILE
|
||
+ --header=FILE[:TEMPLATE]
|
||
+ instantiate the configuration header FILE
|
||
+
|
||
+Configuration files:
|
||
+$config_files
|
||
+
|
||
+Configuration headers:
|
||
+$config_headers
|
||
+
|
||
+Configuration commands:
|
||
+$config_commands
|
||
+
|
||
+Report bugs to the package provider."
|
||
+
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
|
||
+ac_cs_version="\\
|
||
+config.status
|
||
+configured by $0, generated by GNU Autoconf 2.69,
|
||
+ with options \\"\$ac_cs_config\\"
|
||
+
|
||
+Copyright (C) 2012 Free Software Foundation, Inc.
|
||
+This config.status script is free software; the Free Software Foundation
|
||
+gives unlimited permission to copy, distribute and modify it."
|
||
+
|
||
+ac_pwd='$ac_pwd'
|
||
+srcdir='$srcdir'
|
||
+INSTALL='$INSTALL'
|
||
+test -n "\$AWK" || AWK=awk
|
||
+_ACEOF
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+# The default lists apply if the user does not specify any file.
|
||
+ac_need_defaults=:
|
||
+while test $# != 0
|
||
+do
|
||
+ case $1 in
|
||
+ --*=?*)
|
||
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
|
||
+ ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
|
||
+ ac_shift=:
|
||
+ ;;
|
||
+ --*=)
|
||
+ ac_option=`expr "X$1" : 'X\([^=]*\)='`
|
||
+ ac_optarg=
|
||
+ ac_shift=:
|
||
+ ;;
|
||
+ *)
|
||
+ ac_option=$1
|
||
+ ac_optarg=$2
|
||
+ ac_shift=shift
|
||
+ ;;
|
||
+ esac
|
||
+
|
||
+ case $ac_option in
|
||
+ # Handling of the options.
|
||
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
|
||
+ ac_cs_recheck=: ;;
|
||
+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
|
||
+ $as_echo "$ac_cs_version"; exit ;;
|
||
+ --config | --confi | --conf | --con | --co | --c )
|
||
+ $as_echo "$ac_cs_config"; exit ;;
|
||
+ --debug | --debu | --deb | --de | --d | -d )
|
||
+ debug=: ;;
|
||
+ --file | --fil | --fi | --f )
|
||
+ $ac_shift
|
||
+ case $ac_optarg in
|
||
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
|
||
+ '') as_fn_error $? "missing file argument" ;;
|
||
+ esac
|
||
+ as_fn_append CONFIG_FILES " '$ac_optarg'"
|
||
+ ac_need_defaults=false;;
|
||
+ --header | --heade | --head | --hea )
|
||
+ $ac_shift
|
||
+ case $ac_optarg in
|
||
+ *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
|
||
+ esac
|
||
+ as_fn_append CONFIG_HEADERS " '$ac_optarg'"
|
||
+ ac_need_defaults=false;;
|
||
+ --he | --h)
|
||
+ # Conflict between --help and --header
|
||
+ as_fn_error $? "ambiguous option: \`$1'
|
||
+Try \`$0 --help' for more information.";;
|
||
+ --help | --hel | -h )
|
||
+ $as_echo "$ac_cs_usage"; exit ;;
|
||
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
|
||
+ | -silent | --silent | --silen | --sile | --sil | --si | --s)
|
||
+ ac_cs_silent=: ;;
|
||
+
|
||
+ # This is an error.
|
||
+ -*) as_fn_error $? "unrecognized option: \`$1'
|
||
+Try \`$0 --help' for more information." ;;
|
||
+
|
||
+ *) as_fn_append ac_config_targets " $1"
|
||
+ ac_need_defaults=false ;;
|
||
+
|
||
+ esac
|
||
+ shift
|
||
+done
|
||
+
|
||
+ac_configure_extra_args=
|
||
+
|
||
+if $ac_cs_silent; then
|
||
+ exec 6>/dev/null
|
||
+ ac_configure_extra_args="$ac_configure_extra_args --silent"
|
||
+fi
|
||
+
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+if \$ac_cs_recheck; then
|
||
+ set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
|
||
+ shift
|
||
+ \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
|
||
+ CONFIG_SHELL='$SHELL'
|
||
+ export CONFIG_SHELL
|
||
+ exec "\$@"
|
||
+fi
|
||
+
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+exec 5>>config.log
|
||
+{
|
||
+ echo
|
||
+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
|
||
+## Running $as_me. ##
|
||
+_ASBOX
|
||
+ $as_echo "$ac_log"
|
||
+} >&5
|
||
+
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+#
|
||
+# INIT-COMMANDS
|
||
+#
|
||
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
|
||
+srcdir=${srcdir}
|
||
+target=${target}
|
||
+with_multisubdir=${with_multisubdir}
|
||
+ac_configure_args="${ac_configure_args} --enable-multilib"
|
||
+CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||
+libgloss_topdir=${libgloss_topdir}
|
||
+
|
||
+
|
||
+_ACEOF
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+
|
||
+# Handling of arguments.
|
||
+for ac_config_target in $ac_config_targets
|
||
+do
|
||
+ case $ac_config_target in
|
||
+ "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
|
||
+ "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
|
||
+ "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||
+
|
||
+ *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
|
||
+ esac
|
||
+done
|
||
+
|
||
+
|
||
+# If the user did not use the arguments to specify the items to instantiate,
|
||
+# then the envvar interface is used. Set only those that are not.
|
||
+# We use the long form for the default assignment because of an extremely
|
||
+# bizarre bug on SunOS 4.1.3.
|
||
+if $ac_need_defaults; then
|
||
+ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
|
||
+ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
|
||
+ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
|
||
+fi
|
||
+
|
||
+# Have a temporary directory for convenience. Make it in the build tree
|
||
+# simply because there is no reason against having it here, and in addition,
|
||
+# creating and moving files from /tmp can sometimes cause problems.
|
||
+# Hook for its removal unless debugging.
|
||
+# Note that there is a small window in which the directory will not be cleaned:
|
||
+# after its creation but before its name has been assigned to `$tmp'.
|
||
+$debug ||
|
||
+{
|
||
+ tmp= ac_tmp=
|
||
+ trap 'exit_status=$?
|
||
+ : "${ac_tmp:=$tmp}"
|
||
+ { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
|
||
+' 0
|
||
+ trap 'as_fn_exit 1' 1 2 13 15
|
||
+}
|
||
+# Create a (secure) tmp directory for tmp files.
|
||
+
|
||
+{
|
||
+ tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
|
||
+ test -d "$tmp"
|
||
+} ||
|
||
+{
|
||
+ tmp=./conf$$-$RANDOM
|
||
+ (umask 077 && mkdir "$tmp")
|
||
+} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
|
||
+ac_tmp=$tmp
|
||
+
|
||
+# Set up the scripts for CONFIG_FILES section.
|
||
+# No need to generate them if there are no CONFIG_FILES.
|
||
+# This happens for instance with `./config.status config.h'.
|
||
+if test -n "$CONFIG_FILES"; then
|
||
+
|
||
+if $AWK 'BEGIN { getline <"/dev/null" }' </dev/null 2>/dev/null; then
|
||
+ ac_cs_awk_getline=:
|
||
+ ac_cs_awk_pipe_init=
|
||
+ ac_cs_awk_read_file='
|
||
+ while ((getline aline < (F[key])) > 0)
|
||
+ print(aline)
|
||
+ close(F[key])'
|
||
+ ac_cs_awk_pipe_fini=
|
||
+else
|
||
+ ac_cs_awk_getline=false
|
||
+ ac_cs_awk_pipe_init="print \"cat <<'|#_!!_#|' &&\""
|
||
+ ac_cs_awk_read_file='
|
||
+ print "|#_!!_#|"
|
||
+ print "cat " F[key] " &&"
|
||
+ '$ac_cs_awk_pipe_init
|
||
+ # The final `:' finishes the AND list.
|
||
+ ac_cs_awk_pipe_fini='END { print "|#_!!_#|"; print ":" }'
|
||
+fi
|
||
+ac_cr=`echo X | tr X '\015'`
|
||
+# On cygwin, bash can eat \r inside `` if the user requested igncr.
|
||
+# But we know of no other shell where ac_cr would be empty at this
|
||
+# point, so we can use a bashism as a fallback.
|
||
+if test "x$ac_cr" = x; then
|
||
+ eval ac_cr=\$\'\\r\'
|
||
+fi
|
||
+ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
|
||
+if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
|
||
+ ac_cs_awk_cr='\\r'
|
||
+else
|
||
+ ac_cs_awk_cr=$ac_cr
|
||
+fi
|
||
+
|
||
+echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
|
||
+_ACEOF
|
||
+
|
||
+# Create commands to substitute file output variables.
|
||
+{
|
||
+ echo "cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1" &&
|
||
+ echo 'cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&' &&
|
||
+ echo "$ac_subst_files" | sed 's/.*/F["&"]="$&"/' &&
|
||
+ echo "_ACAWK" &&
|
||
+ echo "_ACEOF"
|
||
+} >conf$$files.sh &&
|
||
+. ./conf$$files.sh ||
|
||
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||
+rm -f conf$$files.sh
|
||
+
|
||
+{
|
||
+ echo "cat >conf$$subs.awk <<_ACEOF" &&
|
||
+ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
|
||
+ echo "_ACEOF"
|
||
+} >conf$$subs.sh ||
|
||
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||
+ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
|
||
+ac_delim='%!_!# '
|
||
+for ac_last_try in false false false false false :; do
|
||
+ . ./conf$$subs.sh ||
|
||
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||
+
|
||
+ ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
|
||
+ if test $ac_delim_n = $ac_delim_num; then
|
||
+ break
|
||
+ elif $ac_last_try; then
|
||
+ as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
|
||
+ else
|
||
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
|
||
+ fi
|
||
+done
|
||
+rm -f conf$$subs.sh
|
||
+
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
|
||
+_ACEOF
|
||
+sed -n '
|
||
+h
|
||
+s/^/S["/; s/!.*/"]=/
|
||
+p
|
||
+g
|
||
+s/^[^!]*!//
|
||
+:repl
|
||
+t repl
|
||
+s/'"$ac_delim"'$//
|
||
+t delim
|
||
+:nl
|
||
+h
|
||
+s/\(.\{148\}\)..*/\1/
|
||
+t more1
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
|
||
+p
|
||
+n
|
||
+b repl
|
||
+:more1
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
|
||
+p
|
||
+g
|
||
+s/.\{148\}//
|
||
+t nl
|
||
+:delim
|
||
+h
|
||
+s/\(.\{148\}\)..*/\1/
|
||
+t more2
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/"/
|
||
+p
|
||
+b
|
||
+:more2
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/"\\/
|
||
+p
|
||
+g
|
||
+s/.\{148\}//
|
||
+t delim
|
||
+' <conf$$subs.awk | sed '
|
||
+/^[^""]/{
|
||
+ N
|
||
+ s/\n//
|
||
+}
|
||
+' >>$CONFIG_STATUS || ac_write_fail=1
|
||
+rm -f conf$$subs.awk
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+_ACAWK
|
||
+cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
|
||
+ for (key in S) S_is_set[key] = 1
|
||
+ FS = ""
|
||
+ \$ac_cs_awk_pipe_init
|
||
+}
|
||
+{
|
||
+ line = $ 0
|
||
+ nfields = split(line, field, "@")
|
||
+ substed = 0
|
||
+ len = length(field[1])
|
||
+ for (i = 2; i < nfields; i++) {
|
||
+ key = field[i]
|
||
+ keylen = length(key)
|
||
+ if (S_is_set[key]) {
|
||
+ value = S[key]
|
||
+ line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
|
||
+ len += length(value) + length(field[++i])
|
||
+ substed = 1
|
||
+ } else
|
||
+ len += 1 + keylen
|
||
+ }
|
||
+ if (nfields == 3 && !substed) {
|
||
+ key = field[2]
|
||
+ if (F[key] != "" && line ~ /^[ ]*@.*@[ ]*$/) {
|
||
+ \$ac_cs_awk_read_file
|
||
+ next
|
||
+ }
|
||
+ }
|
||
+ print line
|
||
+}
|
||
+\$ac_cs_awk_pipe_fini
|
||
+_ACAWK
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
|
||
+ sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
|
||
+else
|
||
+ cat
|
||
+fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
|
||
+ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
|
||
+_ACEOF
|
||
+
|
||
+# VPATH may cause trouble with some makes, so we remove sole $(srcdir),
|
||
+# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
|
||
+# trailing colons and then remove the whole line if VPATH becomes empty
|
||
+# (actually we leave an empty line to preserve line numbers).
|
||
+if test "x$srcdir" = x.; then
|
||
+ ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
|
||
+h
|
||
+s///
|
||
+s/^/:/
|
||
+s/[ ]*$/:/
|
||
+s/:\$(srcdir):/:/g
|
||
+s/:\${srcdir}:/:/g
|
||
+s/:@srcdir@:/:/g
|
||
+s/^:*//
|
||
+s/:*$//
|
||
+x
|
||
+s/\(=[ ]*\).*/\1/
|
||
+G
|
||
+s/\n//
|
||
+s/^[^=]*=[ ]*$//
|
||
+}'
|
||
+fi
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+fi # test -n "$CONFIG_FILES"
|
||
+
|
||
+# Set up the scripts for CONFIG_HEADERS section.
|
||
+# No need to generate them if there are no CONFIG_HEADERS.
|
||
+# This happens for instance with `./config.status Makefile'.
|
||
+if test -n "$CONFIG_HEADERS"; then
|
||
+cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
|
||
+BEGIN {
|
||
+_ACEOF
|
||
+
|
||
+# Transform confdefs.h into an awk script `defines.awk', embedded as
|
||
+# here-document in config.status, that substitutes the proper values into
|
||
+# config.h.in to produce config.h.
|
||
+
|
||
+# Create a delimiter string that does not exist in confdefs.h, to ease
|
||
+# handling of long lines.
|
||
+ac_delim='%!_!# '
|
||
+for ac_last_try in false false :; do
|
||
+ ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
|
||
+ if test -z "$ac_tt"; then
|
||
+ break
|
||
+ elif $ac_last_try; then
|
||
+ as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
|
||
+ else
|
||
+ ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
|
||
+ fi
|
||
+done
|
||
+
|
||
+# For the awk script, D is an array of macro values keyed by name,
|
||
+# likewise P contains macro parameters if any. Preserve backslash
|
||
+# newline sequences.
|
||
+
|
||
+ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
|
||
+sed -n '
|
||
+s/.\{148\}/&'"$ac_delim"'/g
|
||
+t rset
|
||
+:rset
|
||
+s/^[ ]*#[ ]*define[ ][ ]*/ /
|
||
+t def
|
||
+d
|
||
+:def
|
||
+s/\\$//
|
||
+t bsnl
|
||
+s/["\\]/\\&/g
|
||
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
|
||
+D["\1"]=" \3"/p
|
||
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
|
||
+d
|
||
+:bsnl
|
||
+s/["\\]/\\&/g
|
||
+s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
|
||
+D["\1"]=" \3\\\\\\n"\\/p
|
||
+t cont
|
||
+s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
|
||
+t cont
|
||
+d
|
||
+:cont
|
||
+n
|
||
+s/.\{148\}/&'"$ac_delim"'/g
|
||
+t clear
|
||
+:clear
|
||
+s/\\$//
|
||
+t bsnlc
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/"/p
|
||
+d
|
||
+:bsnlc
|
||
+s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
|
||
+b cont
|
||
+' <confdefs.h | sed '
|
||
+s/'"$ac_delim"'/"\\\
|
||
+"/g' >>$CONFIG_STATUS || ac_write_fail=1
|
||
+
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+ for (key in D) D_is_set[key] = 1
|
||
+ FS = ""
|
||
+}
|
||
+/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
|
||
+ line = \$ 0
|
||
+ split(line, arg, " ")
|
||
+ if (arg[1] == "#") {
|
||
+ defundef = arg[2]
|
||
+ mac1 = arg[3]
|
||
+ } else {
|
||
+ defundef = substr(arg[1], 2)
|
||
+ mac1 = arg[2]
|
||
+ }
|
||
+ split(mac1, mac2, "(") #)
|
||
+ macro = mac2[1]
|
||
+ prefix = substr(line, 1, index(line, defundef) - 1)
|
||
+ if (D_is_set[macro]) {
|
||
+ # Preserve the white space surrounding the "#".
|
||
+ print prefix "define", macro P[macro] D[macro]
|
||
+ next
|
||
+ } else {
|
||
+ # Replace #undef with comments. This is necessary, for example,
|
||
+ # in the case of _POSIX_SOURCE, which is predefined and required
|
||
+ # on some systems where configure will not decide to define it.
|
||
+ if (defundef == "undef") {
|
||
+ print "/*", prefix defundef, macro, "*/"
|
||
+ next
|
||
+ }
|
||
+ }
|
||
+}
|
||
+{ print }
|
||
+_ACAWK
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+ as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
|
||
+fi # test -n "$CONFIG_HEADERS"
|
||
+
|
||
+
|
||
+eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
|
||
+shift
|
||
+for ac_tag
|
||
+do
|
||
+ case $ac_tag in
|
||
+ :[FHLC]) ac_mode=$ac_tag; continue;;
|
||
+ esac
|
||
+ case $ac_mode$ac_tag in
|
||
+ :[FHL]*:*);;
|
||
+ :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
|
||
+ :[FH]-) ac_tag=-:-;;
|
||
+ :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
|
||
+ esac
|
||
+ ac_save_IFS=$IFS
|
||
+ IFS=:
|
||
+ set x $ac_tag
|
||
+ IFS=$ac_save_IFS
|
||
+ shift
|
||
+ ac_file=$1
|
||
+ shift
|
||
+
|
||
+ case $ac_mode in
|
||
+ :L) ac_source=$1;;
|
||
+ :[FH])
|
||
+ ac_file_inputs=
|
||
+ for ac_f
|
||
+ do
|
||
+ case $ac_f in
|
||
+ -) ac_f="$ac_tmp/stdin";;
|
||
+ *) # Look for the file first in the build tree, then in the source tree
|
||
+ # (if the path is not absolute). The absolute path cannot be DOS-style,
|
||
+ # because $ac_f cannot contain `:'.
|
||
+ test -f "$ac_f" ||
|
||
+ case $ac_f in
|
||
+ [\\/$]*) false;;
|
||
+ *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
|
||
+ esac ||
|
||
+ as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
|
||
+ esac
|
||
+ case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
|
||
+ as_fn_append ac_file_inputs " '$ac_f'"
|
||
+ done
|
||
+
|
||
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
|
||
+ # use $as_me), people would be surprised to read:
|
||
+ # /* config.h. Generated by config.status. */
|
||
+ configure_input='Generated from '`
|
||
+ $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
|
||
+ `' by configure.'
|
||
+ if test x"$ac_file" != x-; then
|
||
+ configure_input="$ac_file. $configure_input"
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
|
||
+$as_echo "$as_me: creating $ac_file" >&6;}
|
||
+ fi
|
||
+ # Neutralize special characters interpreted by sed in replacement strings.
|
||
+ case $configure_input in #(
|
||
+ *\&* | *\|* | *\\* )
|
||
+ ac_sed_conf_input=`$as_echo "$configure_input" |
|
||
+ sed 's/[\\\\&|]/\\\\&/g'`;; #(
|
||
+ *) ac_sed_conf_input=$configure_input;;
|
||
+ esac
|
||
+
|
||
+ case $ac_tag in
|
||
+ *:-:* | *:-) cat >"$ac_tmp/stdin" \
|
||
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
|
||
+ esac
|
||
+ ;;
|
||
+ esac
|
||
+
|
||
+ ac_dir=`$as_dirname -- "$ac_file" ||
|
||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$ac_file" : 'X\(//\)[^/]' \| \
|
||
+ X"$ac_file" : 'X\(//\)$' \| \
|
||
+ X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$ac_file" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ as_dir="$ac_dir"; as_fn_mkdir_p
|
||
+ ac_builddir=.
|
||
+
|
||
+case "$ac_dir" in
|
||
+.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
|
||
+*)
|
||
+ ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
|
||
+ # A ".." for each directory in $ac_dir_suffix.
|
||
+ ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
|
||
+ case $ac_top_builddir_sub in
|
||
+ "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
|
||
+ *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
|
||
+ esac ;;
|
||
+esac
|
||
+ac_abs_top_builddir=$ac_pwd
|
||
+ac_abs_builddir=$ac_pwd$ac_dir_suffix
|
||
+# for backward compatibility:
|
||
+ac_top_builddir=$ac_top_build_prefix
|
||
+
|
||
+case $srcdir in
|
||
+ .) # We are building in place.
|
||
+ ac_srcdir=.
|
||
+ ac_top_srcdir=$ac_top_builddir_sub
|
||
+ ac_abs_top_srcdir=$ac_pwd ;;
|
||
+ [\\/]* | ?:[\\/]* ) # Absolute name.
|
||
+ ac_srcdir=$srcdir$ac_dir_suffix;
|
||
+ ac_top_srcdir=$srcdir
|
||
+ ac_abs_top_srcdir=$srcdir ;;
|
||
+ *) # Relative name.
|
||
+ ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
|
||
+ ac_top_srcdir=$ac_top_build_prefix$srcdir
|
||
+ ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
|
||
+esac
|
||
+ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
|
||
+
|
||
+
|
||
+ case $ac_mode in
|
||
+ :F)
|
||
+ #
|
||
+ # CONFIG_FILE
|
||
+ #
|
||
+
|
||
+ case $INSTALL in
|
||
+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
|
||
+ *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
|
||
+ esac
|
||
+_ACEOF
|
||
+
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+# If the template does not know about datarootdir, expand it.
|
||
+# FIXME: This hack should be removed a few years after 2.60.
|
||
+ac_datarootdir_hack=; ac_datarootdir_seen=
|
||
+ac_sed_dataroot='
|
||
+/datarootdir/ {
|
||
+ p
|
||
+ q
|
||
+}
|
||
+/@datadir@/p
|
||
+/@docdir@/p
|
||
+/@infodir@/p
|
||
+/@localedir@/p
|
||
+/@mandir@/p'
|
||
+case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
|
||
+*datarootdir*) ac_datarootdir_seen=yes;;
|
||
+*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
|
||
+$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+ ac_datarootdir_hack='
|
||
+ s&@datadir@&$datadir&g
|
||
+ s&@docdir@&$docdir&g
|
||
+ s&@infodir@&$infodir&g
|
||
+ s&@localedir@&$localedir&g
|
||
+ s&@mandir@&$mandir&g
|
||
+ s&\\\${datarootdir}&$datarootdir&g' ;;
|
||
+esac
|
||
+_ACEOF
|
||
+
|
||
+# Neutralize VPATH when `$srcdir' = `.'.
|
||
+# Shell code in configure.ac might set extrasub.
|
||
+# FIXME: do we really want to maintain this feature?
|
||
+cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
|
||
+ac_sed_extra="$ac_vpsub
|
||
+$extrasub
|
||
+_ACEOF
|
||
+cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
|
||
+:t
|
||
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
|
||
+s|@configure_input@|$ac_sed_conf_input|;t t
|
||
+s&@top_builddir@&$ac_top_builddir_sub&;t t
|
||
+s&@top_build_prefix@&$ac_top_build_prefix&;t t
|
||
+s&@srcdir@&$ac_srcdir&;t t
|
||
+s&@abs_srcdir@&$ac_abs_srcdir&;t t
|
||
+s&@top_srcdir@&$ac_top_srcdir&;t t
|
||
+s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
|
||
+s&@builddir@&$ac_builddir&;t t
|
||
+s&@abs_builddir@&$ac_abs_builddir&;t t
|
||
+s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
|
||
+s&@INSTALL@&$ac_INSTALL&;t t
|
||
+$ac_datarootdir_hack
|
||
+"
|
||
+eval sed \"\$ac_sed_extra\" "$ac_file_inputs" |
|
||
+if $ac_cs_awk_getline; then
|
||
+ $AWK -f "$ac_tmp/subs.awk"
|
||
+else
|
||
+ $AWK -f "$ac_tmp/subs.awk" | $SHELL
|
||
+fi \
|
||
+ >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||
+
|
||
+test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
|
||
+ { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
|
||
+ { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
|
||
+ "$ac_tmp/out"`; test -z "$ac_out"; } &&
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
|
||
+which seems to be undefined. Please make sure it is defined" >&5
|
||
+$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
|
||
+which seems to be undefined. Please make sure it is defined" >&2;}
|
||
+
|
||
+ rm -f "$ac_tmp/stdin"
|
||
+ case $ac_file in
|
||
+ -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
|
||
+ *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
|
||
+ esac \
|
||
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||
+ ;;
|
||
+ :H)
|
||
+ #
|
||
+ # CONFIG_HEADER
|
||
+ #
|
||
+ if test x"$ac_file" != x-; then
|
||
+ {
|
||
+ $as_echo "/* $configure_input */" \
|
||
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
|
||
+ } >"$ac_tmp/config.h" \
|
||
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||
+ if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
|
||
+$as_echo "$as_me: $ac_file is unchanged" >&6;}
|
||
+ else
|
||
+ rm -f "$ac_file"
|
||
+ mv "$ac_tmp/config.h" "$ac_file" \
|
||
+ || as_fn_error $? "could not create $ac_file" "$LINENO" 5
|
||
+ fi
|
||
+ else
|
||
+ $as_echo "/* $configure_input */" \
|
||
+ && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
|
||
+ || as_fn_error $? "could not create -" "$LINENO" 5
|
||
+ fi
|
||
+ ;;
|
||
+
|
||
+ :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
|
||
+$as_echo "$as_me: executing $ac_file commands" >&6;}
|
||
+ ;;
|
||
+ esac
|
||
+
|
||
+
|
||
+ case $ac_file$ac_mode in
|
||
+ "depfiles":C) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
|
||
+ # Strip MF so we end up with the name of the file.
|
||
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
|
||
+ # Check whether this is an Automake generated Makefile or not.
|
||
+ # We used to match only the files named `Makefile.in', but
|
||
+ # some people rename them; so instead we look at the file content.
|
||
+ # Grep'ing the first line is not enough: some people post-process
|
||
+ # each Makefile.in and add a new line on top of each file to say so.
|
||
+ # So let's grep whole file.
|
||
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
|
||
+ dirpart=`$as_dirname -- "$mf" ||
|
||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$mf" : 'X\(//\)[^/]' \| \
|
||
+ X"$mf" : 'X\(//\)$' \| \
|
||
+ X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$mf" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ else
|
||
+ continue
|
||
+ fi
|
||
+ # Extract the definition of DEPDIR, am__include, and am__quote
|
||
+ # from the Makefile without running `make'.
|
||
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
|
||
+ test -z "$DEPDIR" && continue
|
||
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
|
||
+ test -z "am__include" && continue
|
||
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
|
||
+ # When using ansi2knr, U may be empty or an underscore; expand it
|
||
+ U=`sed -n 's/^U = //p' < "$mf"`
|
||
+ # Find all dependency output files, they are included files with
|
||
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
|
||
+ # simplest approach to changing $(DEPDIR) to its actual value in the
|
||
+ # expansion.
|
||
+ for file in `sed -n "
|
||
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
|
||
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
|
||
+ # Make sure the directory exists.
|
||
+ test -f "$dirpart/$file" && continue
|
||
+ fdir=`$as_dirname -- "$file" ||
|
||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
|
||
+ X"$file" : 'X\(//\)[^/]' \| \
|
||
+ X"$file" : 'X\(//\)$' \| \
|
||
+ X"$file" : 'X\(/\)' \| . 2>/dev/null ||
|
||
+$as_echo X"$file" |
|
||
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)[^/].*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\/\)$/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ /^X\(\/\).*/{
|
||
+ s//\1/
|
||
+ q
|
||
+ }
|
||
+ s/.*/./; q'`
|
||
+ as_dir=$dirpart/$fdir; as_fn_mkdir_p
|
||
+ # echo "creating $dirpart/$file"
|
||
+ echo '# dummy' > "$dirpart/$file"
|
||
+ done
|
||
+done
|
||
+ ;;
|
||
+ "Makefile":F) ac_file=Makefile . ${libgloss_topdir}/config-ml.in ;;
|
||
+
|
||
+ esac
|
||
+done # for ac_tag
|
||
+
|
||
+
|
||
+as_fn_exit 0
|
||
+_ACEOF
|
||
+ac_clean_files=$ac_clean_files_save
|
||
+
|
||
+test $ac_write_fail = 0 ||
|
||
+ as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
|
||
+
|
||
+
|
||
+# configure is writing to config.log, and then calls config.status.
|
||
+# config.status does its own redirection, appending to config.log.
|
||
+# Unfortunately, on DOS this fails, as config.log is still kept open
|
||
+# by configure, so config.status won't be able to write to it; its
|
||
+# output is simply discarded. So we exec the FD to /dev/null,
|
||
+# effectively closing config.log, so it can be properly (re)opened and
|
||
+# appended to by config.status. When coming back to configure, we
|
||
+# need to make the FD available again.
|
||
+if test "$no_create" != yes; then
|
||
+ ac_cs_success=:
|
||
+ ac_config_status_args=
|
||
+ test "$silent" = yes &&
|
||
+ ac_config_status_args="$ac_config_status_args --quiet"
|
||
+ exec 5>/dev/null
|
||
+ $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
|
||
+ exec 5>>config.log
|
||
+ # Use ||, not &&, to avoid exiting from the if with $? = 1, which
|
||
+ # would make configure fail if this is the last instruction.
|
||
+ $ac_cs_success || as_fn_exit 1
|
||
+fi
|
||
+if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
|
||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
|
||
+$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
|
||
+fi
|
||
+
|
||
+
|
||
+
|
||
diff --git a/libgloss/libsysbase/configure.in b/libgloss/libsysbase/configure.in
|
||
new file mode 100644
|
||
index 0000000..c127df0
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/configure.in
|
||
@@ -0,0 +1,199 @@
|
||
+# Copyright (c) 1995, 1996 Cygnus Support
|
||
+#
|
||
+# The authors hereby grant permission to use, copy, modify, distribute,
|
||
+# and license this software and its documentation for any purpose, provided
|
||
+# that existing copyright notices are retained in all copies and that this
|
||
+# notice is included verbatim in any distributions. No written agreement,
|
||
+# license, or royalty fee is required for any of the authorized uses.
|
||
+# Modifications to this software may be copyrighted by their authors
|
||
+# and need not follow the licensing terms described here, provided that
|
||
+# the new terms are clearly indicated on the first page of each file where
|
||
+# they apply.
|
||
+#
|
||
+# Process this file with autoconf to produce a configure script.
|
||
+#
|
||
+AC_PREREQ(2.59)
|
||
+AC_INIT(close.c)
|
||
+AC_CONFIG_HEADER(config.h)
|
||
+
|
||
+if test "${enable_shared}" = "yes" ; then
|
||
+ echo "Shared libraries not supported for cross compiling, ignored"
|
||
+fi
|
||
+
|
||
+if test "$srcdir" = "." ; then
|
||
+ if test "${with_target_subdir}" != "." ; then
|
||
+ libgloss_topdir="${srcdir}/${with_multisrctop}../../.."
|
||
+ else
|
||
+ libgloss_topdir="${srcdir}/${with_multisrctop}../.."
|
||
+ fi
|
||
+else
|
||
+ libgloss_topdir="${srcdir}/../.."
|
||
+fi
|
||
+AC_CONFIG_AUX_DIR($libgloss_topdir)
|
||
+
|
||
+AC_CANONICAL_SYSTEM
|
||
+AC_ARG_PROGRAM
|
||
+
|
||
+AC_PROG_INSTALL
|
||
+
|
||
+AC_DEFINE(HAVE_GNU_LD)
|
||
+dnl Make sure syscall names match those being used by newlib
|
||
+case "${target}" in
|
||
+ *-*-cygwin*)
|
||
+ ;;
|
||
+ a29k-amd-udi)
|
||
+ ;;
|
||
+ arc-*-*)
|
||
+ ;;
|
||
+ arm*-*-*)
|
||
+ ;;
|
||
+ bfin-*-*)
|
||
+ ;;
|
||
+ cris-*-* | crisv32-*-*)
|
||
+ ;;
|
||
+ d10v*)
|
||
+ ;;
|
||
+ h8300*-*-*)
|
||
+ ;;
|
||
+ h8500-*-*)
|
||
+ ;;
|
||
+ i[3456]86-*-sco*)
|
||
+ ;;
|
||
+ lm32-*-*)
|
||
+ ;;
|
||
+ m32r-*-*)
|
||
+ ;;
|
||
+ mn10?00-*-*)
|
||
+ ;;
|
||
+ powerpc-*-eabi)
|
||
+ AC_DEFINE(REENTRANT_SYSCALLS_PROVIDED)
|
||
+ ;;
|
||
+ powerpcle-*-pe)
|
||
+ ;;
|
||
+ sh*-*-*)
|
||
+ ;;
|
||
+ sparc-sun-sunos*)
|
||
+ ;;
|
||
+ sparc64-*-*)
|
||
+ ;;
|
||
+ v850*-*-*)
|
||
+ ;;
|
||
+ w65-*-*)
|
||
+ ;;
|
||
+ xstormy16-*-*)
|
||
+ ;;
|
||
+ z8k-*-*)
|
||
+ ;;
|
||
+ *)
|
||
+ AC_DEFINE(MISSING_SYSCALL_NAMES)
|
||
+ ;;
|
||
+esac
|
||
+
|
||
+dnl Make sure we know if elf format used
|
||
+case "${target}" in
|
||
+ *-*-elf)
|
||
+ AC_DEFINE(HAVE_ELF)
|
||
+
|
||
+ AC_CACHE_CHECK([for .previous assembler directive],
|
||
+ libc_cv_asm_previous_directive, [dnl
|
||
+ libc_cv_asm_previous_directive=no
|
||
+ cat > conftest.s <<EOF
|
||
+.section foo_section
|
||
+.previous
|
||
+EOF
|
||
+ if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
|
||
+ libc_cv_asm_previous_directive=yes
|
||
+ fi
|
||
+ rm -f conftest*])
|
||
+
|
||
+ if test "x${libc_cv_asm_previous_directive}" = "xyes"; then
|
||
+ AC_DEFINE(HAVE_ASM_PREVIOUS_DIRECTIVE)
|
||
+ fi
|
||
+
|
||
+ AC_CACHE_CHECK([for .popsection assembler directive],
|
||
+ libc_cv_asm_popsection_directive, [dnl
|
||
+ libc_cv_asm_popsection_directive=no
|
||
+ cat > conftest.s <<EOF
|
||
+.pushsection foo_section
|
||
+.popsection
|
||
+EOF
|
||
+ if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.s 1>&AC_FD_CC); then
|
||
+ libc_cv_asm_popsection_directive=yes
|
||
+ fi
|
||
+ rm -f conftest*])
|
||
+
|
||
+ if test "x${libc_cv_asm_popsection_directive}" = "xyes"; then
|
||
+ AC_DEFINE(HAVE_ASM_POPSECTION_DIRECTIVE)
|
||
+ fi
|
||
+
|
||
+ AC_CACHE_CHECK([for section attributes],
|
||
+ libc_cv_section_attributes, [dnl
|
||
+ libc_cv_section_attributes=no
|
||
+ cat > conftest.c <<EOF
|
||
+int secttest __attribute__ ((section (".gnu.warning.secttest"))) = 10;
|
||
+int main() {}
|
||
+EOF
|
||
+ if AC_TRY_COMMAND(${CC-cc} -c $CFLAGS conftest.c 1>&AC_FD_CC); then
|
||
+ libc_cv_section_attributes=yes
|
||
+ fi
|
||
+ rm -f conftest*])
|
||
+ if test "x${libc_cv_section_attributes}" = "xyes"; then
|
||
+ AC_DEFINE(HAVE_SECTION_ATTRIBUTES)
|
||
+ fi
|
||
+ ;;
|
||
+esac
|
||
+
|
||
+AC_CACHE_CHECK([for symbol prefix], libc_cv_symbol_prefix, [dnl
|
||
+cat > conftest.c <<\EOF
|
||
+foo () { }
|
||
+EOF
|
||
+dnl
|
||
+libc_cv_symbol_prefix=none
|
||
+if AC_TRY_COMMAND([${CC-cc} -S conftest.c -o - | fgrep "\$foo" > /dev/null]);
|
||
+then
|
||
+ libc_cv_symbol_prefix='$'
|
||
+else
|
||
+ if AC_TRY_COMMAND([${CC-cc} -S conftest.c -o - | fgrep "_foo" > /dev/null]);
|
||
+ then
|
||
+ libc_cv_symbol_prefix=_
|
||
+ fi
|
||
+fi
|
||
+rm -f conftest* ])
|
||
+if test $libc_cv_symbol_prefix != none; then
|
||
+ AC_DEFINE_UNQUOTED(__SYMBOL_PREFIX, "$libc_cv_symbol_prefix")
|
||
+else
|
||
+ AC_DEFINE(__SYMBOL_PREFIX, "")
|
||
+fi
|
||
+
|
||
+LIB_AC_PROG_CC
|
||
+AS=${AS-as}
|
||
+AC_SUBST(AS)
|
||
+AR=${AR-ar}
|
||
+AC_SUBST(AR)
|
||
+LD=${LD-ld}
|
||
+AC_SUBST(LD)
|
||
+AC_PROG_RANLIB
|
||
+LIB_AM_PROG_AS
|
||
+
|
||
+host_makefile_frag=${srcdir}/../config/default.mh
|
||
+
|
||
+dnl We have to assign the same value to other variables because autoconf
|
||
+dnl doesn't provide a mechanism to substitute a replacement keyword with
|
||
+dnl arbitrary data or pathnames.
|
||
+dnl
|
||
+host_makefile_frag_path=$host_makefile_frag
|
||
+AC_SUBST(host_makefile_frag_path)
|
||
+AC_SUBST_FILE(host_makefile_frag)
|
||
+
|
||
+AC_CONFIG_FILES(Makefile,
|
||
+ac_file=Makefile . ${libgloss_topdir}/config-ml.in,
|
||
+srcdir=${srcdir}
|
||
+target=${target}
|
||
+with_multisubdir=${with_multisubdir}
|
||
+ac_configure_args="${ac_configure_args} --enable-multilib"
|
||
+CONFIG_SHELL=${CONFIG_SHELL-/bin/sh}
|
||
+libgloss_topdir=${libgloss_topdir}
|
||
+)
|
||
+AC_OUTPUT
|
||
+
|
||
+
|
||
diff --git a/libgloss/libsysbase/dirent.c b/libgloss/libsysbase/dirent.c
|
||
new file mode 100644
|
||
index 0000000..0ad2902
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/dirent.c
|
||
@@ -0,0 +1,255 @@
|
||
+#include <malloc.h>
|
||
+#include <errno.h>
|
||
+#include <string.h>
|
||
+#include <unistd.h>
|
||
+#include <limits.h>
|
||
+#include <sys/param.h>
|
||
+#include <sys/dirent.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+static DIR_ITER * __diropen (const char *path) {
|
||
+ struct _reent *r = _REENT;
|
||
+ DIR_ITER *handle = NULL;
|
||
+ DIR_ITER *dir = NULL;
|
||
+ int dev;
|
||
+
|
||
+ dev = FindDevice(path);
|
||
+
|
||
+ if(dev!=-1) {
|
||
+ if(devoptab_list[dev]->diropen_r) {
|
||
+
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+
|
||
+ handle = (DIR_ITER *)malloc( sizeof(DIR_ITER) + devoptab_list[dev]->dirStateSize );
|
||
+
|
||
+ if ( NULL != handle ) {
|
||
+ handle->device = dev;
|
||
+ handle->dirStruct = ((void *)handle) + sizeof(DIR_ITER);
|
||
+
|
||
+ dir = devoptab_list[dev]->diropen_r(r, handle, path);
|
||
+
|
||
+ if ( dir == NULL ) {
|
||
+ free (handle);
|
||
+ handle = NULL;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSR;
|
||
+ handle = NULL;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENODEV;
|
||
+ }
|
||
+
|
||
+ return handle;
|
||
+}
|
||
+
|
||
+static int __dirreset (DIR_ITER *dirState) {
|
||
+ struct _reent *r = _REENT;
|
||
+ int ret = -1;
|
||
+ int dev = 0;
|
||
+
|
||
+ if (dirState != NULL) {
|
||
+ dev = dirState->device;
|
||
+
|
||
+ if(devoptab_list[dev]->dirreset_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->dirreset_r(r, dirState);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
+
|
||
+static int __dirnext (DIR_ITER *dirState, char *filename, struct stat *filestat) {
|
||
+ struct _reent *r = _REENT;
|
||
+ int ret = -1;
|
||
+ int dev = 0;
|
||
+
|
||
+ if (dirState != NULL) {
|
||
+ dev = dirState->device;
|
||
+
|
||
+ if(devoptab_list[dev]->dirnext_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->dirnext_r(r, dirState, filename, filestat);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
+
|
||
+static int __dirclose (DIR_ITER *dirState) {
|
||
+ struct _reent *r = _REENT;
|
||
+ int ret = -1;
|
||
+ int dev = 0;
|
||
+
|
||
+ if (dirState != NULL) {
|
||
+ dev = dirState->device;
|
||
+
|
||
+ if (devoptab_list[dev]->dirclose_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->dirclose_r (r, dirState);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+
|
||
+ free (dirState);
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
+
|
||
+DIR* opendir (const char *dirname) {
|
||
+ DIR* dirp = malloc (sizeof(DIR));
|
||
+ if (!dirp) {
|
||
+ errno = ENOMEM;
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ dirp->dirData = __diropen (dirname);
|
||
+ if (!dirp->dirData) {
|
||
+ free (dirp);
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ dirp->position = 0; // 0th position means no file name has been returned yet
|
||
+ dirp->fileData.d_ino = -1;
|
||
+ dirp->fileData.d_name[0] = '\0';
|
||
+
|
||
+ return dirp;
|
||
+}
|
||
+
|
||
+
|
||
+int closedir (DIR *dirp) {
|
||
+ int res;
|
||
+
|
||
+ if (!dirp) {
|
||
+ errno = EBADF;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ res = __dirclose (dirp->dirData);
|
||
+ free (dirp);
|
||
+ return res;
|
||
+}
|
||
+
|
||
+
|
||
+struct dirent* readdir (DIR *dirp) {
|
||
+ struct stat st;
|
||
+ char filename[NAME_MAX];
|
||
+ int res;
|
||
+ int olderrno = errno;
|
||
+
|
||
+ if (!dirp) {
|
||
+ errno = EBADF;
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ res = __dirnext (dirp->dirData, filename, &st);
|
||
+
|
||
+ if (res < 0) {
|
||
+ if (errno == ENOENT) {
|
||
+ // errno == ENONENT set by dirnext means it's end of directory
|
||
+ // But readdir should not touch errno in case of dir end
|
||
+ errno = olderrno;
|
||
+ }
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ // We've moved forward in the directory
|
||
+ dirp->position += 1;
|
||
+
|
||
+ if (strnlen(filename, NAME_MAX) >= sizeof(dirp->fileData.d_name)) {
|
||
+ errno = EOVERFLOW;
|
||
+ return NULL;
|
||
+ }
|
||
+
|
||
+ strncpy (dirp->fileData.d_name, filename, sizeof(dirp->fileData.d_name));
|
||
+ dirp->fileData.d_ino = st.st_ino;
|
||
+ dirp->fileData.d_type = S_ISDIR(st.st_mode)?DT_DIR:DT_REG;
|
||
+
|
||
+ return &(dirp->fileData);
|
||
+}
|
||
+
|
||
+
|
||
+int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result) {
|
||
+ struct stat st;
|
||
+ char filename[NAME_MAX];
|
||
+ int res;
|
||
+
|
||
+ if (!dirp) {
|
||
+ return EBADF;
|
||
+ }
|
||
+
|
||
+ res = __dirnext (dirp->dirData, filename, &st);
|
||
+
|
||
+ if (res < 0) {
|
||
+ res = errno;
|
||
+ *result = NULL;
|
||
+ if (errno == ENOENT) {
|
||
+ // errno == ENONENT set by dirnext means it's end of directory
|
||
+ // But readdir should not touch errno in case of dir end
|
||
+ res = 0;
|
||
+ }
|
||
+ return res;
|
||
+ }
|
||
+
|
||
+ // We've moved forward in the directory
|
||
+ dirp->position += 1;
|
||
+
|
||
+ if (strnlen(filename, NAME_MAX) >= sizeof(entry->d_name)) {
|
||
+ errno = EOVERFLOW;
|
||
+ return EOVERFLOW;
|
||
+ }
|
||
+
|
||
+ strncpy (entry->d_name, filename, sizeof(entry->d_name));
|
||
+ entry->d_ino = st.st_ino;
|
||
+
|
||
+ *result = entry;
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+
|
||
+void rewinddir (DIR *dirp) {
|
||
+ if (!dirp) {
|
||
+ return;
|
||
+ }
|
||
+
|
||
+ __dirreset (dirp->dirData);
|
||
+ dirp->position = 0;
|
||
+}
|
||
+
|
||
+
|
||
+void seekdir(DIR *dirp, long int loc) {
|
||
+ char filename[NAME_MAX];
|
||
+
|
||
+ if (!dirp || loc < 0) {
|
||
+ return;
|
||
+ }
|
||
+
|
||
+ if (dirp->position > loc) {
|
||
+ // The entry we want is before the one we have,
|
||
+ // so we have to start again from the begining
|
||
+ __dirreset (dirp->dirData);
|
||
+ dirp->position = 0;
|
||
+ }
|
||
+
|
||
+ // Keep reading entries until we reach the one we want
|
||
+ while ((dirp->position < loc) &&
|
||
+ (__dirnext (dirp->dirData, filename, NULL) >= 0))
|
||
+ {
|
||
+ dirp->position += 1;
|
||
+ }
|
||
+}
|
||
+
|
||
+
|
||
+long int telldir(DIR *dirp) {
|
||
+ if (!dirp) {
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ return dirp->position;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/environ.c b/libgloss/libsysbase/environ.c
|
||
new file mode 100644
|
||
index 0000000..1c485b2
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/environ.c
|
||
@@ -0,0 +1,6 @@
|
||
+/*
|
||
+ * Version of environ for no OS.
|
||
+ */
|
||
+
|
||
+char *__env[1] = { 0 };
|
||
+char **environ = __env;
|
||
diff --git a/libgloss/libsysbase/execve.c b/libgloss/libsysbase/execve.c
|
||
new file mode 100644
|
||
index 0000000..598b0c5
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/execve.c
|
||
@@ -0,0 +1,32 @@
|
||
+/*
|
||
+ * Stub version of execve.
|
||
+ */
|
||
+
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_execve_r, (r, name, argv, env),
|
||
+ struct _reent * r _AND
|
||
+ char *name _AND
|
||
+ char **argv _AND
|
||
+ char **env) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_execve, (name, argv, env),
|
||
+ char *name _AND
|
||
+ char **argv _AND
|
||
+ char **env) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ r->_errno = ENOSYS;
|
||
+ return -1;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/fchmod.c b/libgloss/libsysbase/fchmod.c
|
||
new file mode 100644
|
||
index 0000000..5c5831c
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/fchmod.c
|
||
@@ -0,0 +1,31 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/types.h>
|
||
+#include <sys/stat.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+int fchmod(int fd, mode_t mode) {
|
||
+ int ret = -1, dev;
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ if(fd!=-1) {
|
||
+
|
||
+ __handle *handle = __get_handle(fd);
|
||
+
|
||
+ if ( handle != NULL) {
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->fchmod_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->fchmod_r(r,handle->fileStruct,mode);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/flock.c b/libgloss/libsysbase/flock.c
|
||
new file mode 100644
|
||
index 0000000..c6b8c92
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/flock.c
|
||
@@ -0,0 +1,21 @@
|
||
+#include <config.h>
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <stdlib.h>
|
||
+#include <string.h>
|
||
+#ifndef REENTRANT_SYSCALLS_PROVIDED
|
||
+#include <reent.h>
|
||
+#endif
|
||
+#include <errno.h>
|
||
+#include <sys/lock.h>
|
||
+
|
||
+void __flockfile(FILE *fp)
|
||
+{
|
||
+ __lock_acquire_recursive(*(_LOCK_RECURSIVE_T*)&fp->_lock);
|
||
+}
|
||
+
|
||
+void __funlockfile(FILE *fp)
|
||
+{
|
||
+ __lock_release_recursive(*(_LOCK_RECURSIVE_T*)&fp->_lock);
|
||
+}
|
||
diff --git a/libgloss/libsysbase/fork.c b/libgloss/libsysbase/fork.c
|
||
new file mode 100644
|
||
index 0000000..712b13e
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/fork.c
|
||
@@ -0,0 +1,25 @@
|
||
+/*
|
||
+ * Stub version of fork.
|
||
+ */
|
||
+
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN(_fork_r,(r),
|
||
+ struct _reent * r) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_fork, (),
|
||
+ _NOARGS) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ r->_errno = ENOSYS;
|
||
+ return -1;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/fstat.c b/libgloss/libsysbase/fstat.c
|
||
new file mode 100644
|
||
index 0000000..564fc32
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/fstat.c
|
||
@@ -0,0 +1,44 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/types.h>
|
||
+#include <sys/stat.h>
|
||
+#include <errno.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_fstat_r,(r,fileDesc, st),
|
||
+ struct _reent * r _AND
|
||
+ int fileDesc _AND
|
||
+ struct stat *st) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_fstat,(fileDesc, st),
|
||
+ int fileDesc _AND
|
||
+ struct stat *st) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+
|
||
+ __handle * handle = NULL;
|
||
+
|
||
+ if(fileDesc!=-1) {
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) return ret;
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->fstat_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->fstat_r(r,handle->fileStruct,st);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/fsync.c b/libgloss/libsysbase/fsync.c
|
||
new file mode 100644
|
||
index 0000000..4ea232b
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/fsync.c
|
||
@@ -0,0 +1,35 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+#include <fcntl.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+int _DEFUN (fsync,(fileDesc),
|
||
+ int fileDesc ) {
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+ unsigned int fd = -1;
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ __handle * handle;
|
||
+
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) {
|
||
+ errno = EINVAL;
|
||
+ return ret;
|
||
+ }
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->fsync_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->fsync_r(r, handle->fileStruct);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/ftruncate.c b/libgloss/libsysbase/ftruncate.c
|
||
new file mode 100644
|
||
index 0000000..bc1744c
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/ftruncate.c
|
||
@@ -0,0 +1,36 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+#include <fcntl.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+int _DEFUN (ftruncate,(fileDesc, len),
|
||
+ int fileDesc _AND
|
||
+ off_t len) {
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+ unsigned int fd = -1;
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ __handle * handle;
|
||
+
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) {
|
||
+ r->_errno = EINVAL;
|
||
+ return ret;
|
||
+ }
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->ftruncate_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->ftruncate_r(r, handle->fileStruct, len);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/getpid.c b/libgloss/libsysbase/getpid.c
|
||
new file mode 100644
|
||
index 0000000..77d872b
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/getpid.c
|
||
@@ -0,0 +1,21 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN( _getpid_r,(ptr),
|
||
+ struct _reent *ptr) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_getpid, (),
|
||
+ _NOARGS) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+ ptr->_errno = ENOSYS;
|
||
+ return -1;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/gettod.c b/libgloss/libsysbase/gettod.c
|
||
new file mode 100644
|
||
index 0000000..d2982bc
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/gettod.c
|
||
@@ -0,0 +1,35 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/time.h>
|
||
+#include <sys/times.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN(_gettimeofday_r,(ptr,ptimeval,ptimezone),
|
||
+ struct _reent *ptr _AND
|
||
+ struct timeval *ptimeval _AND
|
||
+ void *ptimezone)
|
||
+{
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_gettimeofday, (ptimeval, ptimezone),
|
||
+ struct timeval *ptimeval _AND
|
||
+ void *ptimezone)
|
||
+{
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+
|
||
+ if ( __syscalls.gettod_r ) return __syscalls.gettod_r(ptr, ptimeval, ptimezone);
|
||
+
|
||
+ ptr->_errno = ENOSYS;
|
||
+ return -1;
|
||
+
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/handle_manager.c b/libgloss/libsysbase/handle_manager.c
|
||
new file mode 100644
|
||
index 0000000..f3fcc88
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/handle_manager.c
|
||
@@ -0,0 +1,173 @@
|
||
+#include <stdlib.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#define MAX_HANDLES 1024
|
||
+
|
||
+static __handle __stdin_handle = {0, 1, NULL};
|
||
+static __handle __stdout_handle = {1, 1, NULL};
|
||
+static __handle __stderr_handle = {2, 1, NULL};
|
||
+
|
||
+static __handle* handles[MAX_HANDLES] = {
|
||
+ &__stdin_handle,
|
||
+ &__stdout_handle,
|
||
+ &__stderr_handle
|
||
+};
|
||
+
|
||
+__LOCK_INIT(static, __hndl_lock);
|
||
+
|
||
+void __free_handle(__handle *handle) {
|
||
+
|
||
+ if ( NULL != handle
|
||
+ && handle != &__stdin_handle
|
||
+ && handle != &__stdout_handle
|
||
+ && handle != &__stderr_handle ) {
|
||
+
|
||
+ free(handle);
|
||
+
|
||
+ }
|
||
+
|
||
+}
|
||
+
|
||
+void __release_handle(int fd) {
|
||
+
|
||
+ if ( fd <0 || fd >= MAX_HANDLES ) return;
|
||
+
|
||
+ __lock_acquire (__hndl_lock);
|
||
+
|
||
+ __free_handle(handles[fd]);
|
||
+ handles[fd] = NULL;
|
||
+
|
||
+ __lock_release (__hndl_lock);
|
||
+
|
||
+}
|
||
+
|
||
+int __alloc_handle(int device) {
|
||
+
|
||
+ int i, ret = -1;
|
||
+
|
||
+ __lock_acquire (__hndl_lock);
|
||
+
|
||
+ for ( i = 0; i < MAX_HANDLES; i++ ) {
|
||
+ if ( handles[i] == NULL ) break;
|
||
+ }
|
||
+
|
||
+ size_t size = sizeof(__handle) + devoptab_list[device]->structSize;
|
||
+
|
||
+ if ( i < MAX_HANDLES ) {
|
||
+ handles[i] = malloc(size);
|
||
+ __handle *handle = handles[i];
|
||
+ if ( NULL != handles[i] ) {
|
||
+
|
||
+ handles[i]->refcount = 1;
|
||
+ ret = i;
|
||
+ handles[i]->device = device;
|
||
+ handles[i]->fileStruct = (void *)&handle[1];
|
||
+
|
||
+ } else {
|
||
+
|
||
+ errno = ENOMEM;
|
||
+
|
||
+ }
|
||
+ } else {
|
||
+
|
||
+ errno = ENFILE;
|
||
+
|
||
+ }
|
||
+
|
||
+ __lock_release (__hndl_lock);
|
||
+
|
||
+ return ret;
|
||
+}
|
||
+
|
||
+__handle *__get_handle(int fd) {
|
||
+
|
||
+ if ( fd < 0 || fd >= MAX_HANDLES ) return NULL;
|
||
+
|
||
+ return handles[fd];
|
||
+
|
||
+}
|
||
+
|
||
+int dup(int oldfd) {
|
||
+ int i, ret =-1;
|
||
+
|
||
+ __lock_acquire (__hndl_lock);
|
||
+
|
||
+ if (handles[oldfd]==NULL) {
|
||
+ __lock_release (__hndl_lock);
|
||
+ errno = EBADF;
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+
|
||
+ for ( i = 0; i < MAX_HANDLES; i++ ) {
|
||
+ if ( handles[i] == NULL ) break;
|
||
+ }
|
||
+
|
||
+ if (i<MAX_HANDLES) {
|
||
+ handles[i] = handles[oldfd];
|
||
+ handles[oldfd]->refcount++;
|
||
+ ret = i;
|
||
+ }
|
||
+ __lock_release (__hndl_lock);
|
||
+
|
||
+ return ret;
|
||
+
|
||
+}
|
||
+
|
||
+int dup2(int oldfd, int newfd) {
|
||
+
|
||
+
|
||
+ __lock_acquire (__hndl_lock);
|
||
+
|
||
+ if ( newfd < 0 || newfd >= MAX_HANDLES ||
|
||
+
|
||
+ oldfd < 0 || oldfd >= MAX_HANDLES ||
|
||
+ handles[oldfd] == NULL ) {
|
||
+
|
||
+ __lock_release (__hndl_lock);
|
||
+ errno = EBADF;
|
||
+
|
||
+ return -1;
|
||
+ }
|
||
+
|
||
+ if ( newfd == oldfd ) {
|
||
+ __lock_release (__hndl_lock);
|
||
+ return newfd;
|
||
+ }
|
||
+
|
||
+
|
||
+ __handle *handle = handles[newfd];
|
||
+
|
||
+ if ( NULL != handle ) {
|
||
+
|
||
+ handle->refcount--;
|
||
+
|
||
+ }
|
||
+
|
||
+ handles[newfd] = handles[oldfd];
|
||
+ handles[newfd]->refcount++;
|
||
+
|
||
+ __lock_release (__hndl_lock);
|
||
+
|
||
+ if ( NULL != handle ) {
|
||
+
|
||
+ if (handle->refcount == 0 ) {
|
||
+
|
||
+ if( devoptab_list[handle->device]->close_r != NULL) {
|
||
+
|
||
+ devoptab_list[handle->device]->close_r(_REENT,handle->fileStruct);
|
||
+
|
||
+ } else {
|
||
+
|
||
+ __free_handle(handle);
|
||
+
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+
|
||
+ return newfd;
|
||
+
|
||
+}
|
||
diff --git a/libgloss/libsysbase/handle_manager.h b/libgloss/libsysbase/handle_manager.h
|
||
new file mode 100644
|
||
index 0000000..625cb22
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/handle_manager.h
|
||
@@ -0,0 +1,10 @@
|
||
+#ifndef __HANDLE_MANAGER_H__
|
||
+#define __HANDLE_MANAGER_H__
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+void __release_handle(int fd);
|
||
+int __alloc_handle(int size);
|
||
+__handle *__get_handle(int fd);
|
||
+
|
||
+#endif
|
||
diff --git a/libgloss/libsysbase/iosupport.c b/libgloss/libsysbase/iosupport.c
|
||
new file mode 100644
|
||
index 0000000..4f13127
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/iosupport.c
|
||
@@ -0,0 +1,138 @@
|
||
+#include <stdlib.h>
|
||
+#include <string.h>
|
||
+#include <ctype.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+static int defaultDevice = -1;
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+void setDefaultDevice( int device ) {
|
||
+//---------------------------------------------------------------------------------
|
||
+
|
||
+ if ( device >2 && device <= STD_MAX)
|
||
+ defaultDevice = device;
|
||
+}
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+static ssize_t null_write(struct _reent *r,void *fd,const char *ptr, size_t len) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ return len;
|
||
+}
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+const devoptab_t dotab_stdnull = {
|
||
+//---------------------------------------------------------------------------------
|
||
+ "stdnull", // device name
|
||
+ 0, // size of file structure
|
||
+ NULL, // device open
|
||
+ NULL, // device close
|
||
+ null_write, // device write
|
||
+ NULL, // device read
|
||
+ NULL, // device seek
|
||
+ NULL, // device fstat
|
||
+ NULL, // device stat
|
||
+ NULL, // device link
|
||
+ NULL, // device unlink
|
||
+ NULL, // device chdir
|
||
+ NULL, // device rename
|
||
+ NULL, // device mkdir
|
||
+ 0, // dirStateSize
|
||
+ NULL, // device diropen_r
|
||
+ NULL, // device dirreset_r
|
||
+ NULL, // device dirnext_r
|
||
+ NULL, // device dirclose_r
|
||
+ NULL, // device statvfs_r
|
||
+ NULL, // device ftruncate_r
|
||
+ NULL, // device fsync_r
|
||
+ NULL, // deviceData
|
||
+ NULL, // chmod_r
|
||
+ NULL, // fchmod_r
|
||
+ NULL, // rmdir_r
|
||
+};
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+const devoptab_t *devoptab_list[STD_MAX] = {
|
||
+//---------------------------------------------------------------------------------
|
||
+ &dotab_stdnull, &dotab_stdnull, &dotab_stdnull, &dotab_stdnull,
|
||
+ &dotab_stdnull, &dotab_stdnull, &dotab_stdnull, &dotab_stdnull,
|
||
+ &dotab_stdnull, &dotab_stdnull, &dotab_stdnull, &dotab_stdnull,
|
||
+ &dotab_stdnull, &dotab_stdnull, &dotab_stdnull, &dotab_stdnull
|
||
+};
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+int FindDevice(const char* name) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ int i = 0, namelen, dev_namelen, dev = -1;
|
||
+ char *separator;
|
||
+
|
||
+ separator = strchr(name, ':');
|
||
+
|
||
+ if (separator == NULL) return defaultDevice;
|
||
+
|
||
+ dev_namelen = separator - name;
|
||
+
|
||
+ while(i<STD_MAX) {
|
||
+ if(devoptab_list[i]) {
|
||
+ namelen = strlen(devoptab_list[i]->name);
|
||
+ if(dev_namelen == namelen && strncmp(devoptab_list[i]->name,name,namelen)==0 ) {
|
||
+ if ( name[namelen] == ':' || (isdigit(name[namelen]) && name[namelen+1] ==':' )) {
|
||
+ dev = i;
|
||
+ break;
|
||
+ }
|
||
+ }
|
||
+ }
|
||
+ i++;
|
||
+ }
|
||
+
|
||
+ return dev;
|
||
+}
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+int RemoveDevice( const char* name) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ int dev = FindDevice(name);
|
||
+
|
||
+ if ( -1 != dev ) {
|
||
+ devoptab_list[dev] = &dotab_stdnull;
|
||
+ return 0;
|
||
+ }
|
||
+
|
||
+ return -1;
|
||
+
|
||
+}
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+int AddDevice( const devoptab_t* device) {
|
||
+//---------------------------------------------------------------------------------
|
||
+
|
||
+ int devnum;
|
||
+
|
||
+ for ( devnum = 3;devnum <STD_MAX; devnum++ ) {
|
||
+
|
||
+ if ( (!strcmp(devoptab_list[devnum]->name, device->name) &&
|
||
+ strlen(devoptab_list[devnum]->name) == strlen(device->name) ) ||
|
||
+ !strcmp(devoptab_list[devnum]->name, "stdnull")
|
||
+ )
|
||
+ break;
|
||
+ }
|
||
+
|
||
+ if ( devnum == STD_MAX ) {
|
||
+ devnum = -1;
|
||
+ } else {
|
||
+ devoptab_list[devnum] = device;
|
||
+ }
|
||
+ return devnum;
|
||
+}
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+const devoptab_t* GetDeviceOpTab (const char *name) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ int dev = FindDevice(name);
|
||
+ if (dev >= 0 && dev < STD_MAX) {
|
||
+ return devoptab_list[dev];
|
||
+ } else {
|
||
+ return NULL;
|
||
+ }
|
||
+}
|
||
+
|
||
+
|
||
diff --git a/libgloss/libsysbase/isatty.c b/libgloss/libsysbase/isatty.c
|
||
new file mode 100644
|
||
index 0000000..c873e10
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/isatty.c
|
||
@@ -0,0 +1,20 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN(_isatty_r,(ptr,file),
|
||
+ struct _reent *ptr _AND
|
||
+ int file) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN(_isatty,(file),
|
||
+ int file) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+ return 0;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/kill.c b/libgloss/libsysbase/kill.c
|
||
new file mode 100644
|
||
index 0000000..d56e340
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/kill.c
|
||
@@ -0,0 +1,23 @@
|
||
+/*
|
||
+ * Stub version of kill.
|
||
+ */
|
||
+
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+int _DEFUN(_kill_r,(ptr,pid,sig),
|
||
+ struct _reent *ptr _AND
|
||
+ int pid _AND
|
||
+ int sig) {
|
||
+#else
|
||
+int _DEFUN(_kill,(pid,sig),
|
||
+ int pid _AND
|
||
+ int sig) {
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+ ptr->_errno = ENOSYS;
|
||
+ return -1;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/link.c b/libgloss/libsysbase/link.c
|
||
new file mode 100644
|
||
index 0000000..b05c8fd
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/link.c
|
||
@@ -0,0 +1,38 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <reent.h>
|
||
+#include <errno.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+int _DEFUN (_link_r, (r, existing, new),
|
||
+ struct _reent *r _AND
|
||
+ const char *existing _AND
|
||
+ const char *new) {
|
||
+#else
|
||
+int _DEFUN (_link, (existing, new),
|
||
+ const char *existing _AND
|
||
+ const char *new) {
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int ret;
|
||
+ int sourceDev = FindDevice(existing);
|
||
+ int destDev = FindDevice(new);
|
||
+
|
||
+ ret = -1;
|
||
+
|
||
+ if ( sourceDev == destDev) {
|
||
+ if (devoptab_list[destDev]->link_r) {
|
||
+ r->deviceData = devoptab_list[destDev]->deviceData;
|
||
+ ret = devoptab_list[destDev]->link_r( r, existing, new);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = EXDEV;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/lseek.c b/libgloss/libsysbase/lseek.c
|
||
new file mode 100644
|
||
index 0000000..6eeee90
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/lseek.c
|
||
@@ -0,0 +1,52 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+_off_t _DEFUN (_lseek_r, (r, fileDesc, pos, dir),
|
||
+ struct _reent * r _AND
|
||
+ int fileDesc _AND
|
||
+ _off_t pos _AND
|
||
+ int dir) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+_off_t _DEFUN (_lseek,(fileDesc, pos, dir),
|
||
+ int fileDesc _AND
|
||
+ _off_t pos _AND
|
||
+ int dir) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+//---------------------------------------------------------------------------------
|
||
+#endif
|
||
+//---------------------------------------------------------------------------------
|
||
+ _off_t ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+
|
||
+ __handle * handle;
|
||
+
|
||
+ if(fileDesc!=-1) {
|
||
+
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) return ret;
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->seek_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->seek_r( r, handle->fileStruct, pos, dir);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+
|
||
+ }
|
||
+ return ret;
|
||
+
|
||
+}
|
||
diff --git a/libgloss/libsysbase/malloc_vars.c b/libgloss/libsysbase/malloc_vars.c
|
||
new file mode 100644
|
||
index 0000000..4565909
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/malloc_vars.c
|
||
@@ -0,0 +1,2 @@
|
||
+char *fake_heap_end = (char*)0;
|
||
+char *fake_heap_start = (char*)0;
|
||
diff --git a/libgloss/libsysbase/mkdir.c b/libgloss/libsysbase/mkdir.c
|
||
new file mode 100644
|
||
index 0000000..4175cf8
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/mkdir.c
|
||
@@ -0,0 +1,19 @@
|
||
+#include <reent.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+int mkdir (const char *path, mode_t mode) {
|
||
+ struct _reent *r = _REENT;
|
||
+ int ret;
|
||
+ int dev = FindDevice(path);
|
||
+ ret = -1;
|
||
+
|
||
+ if (devoptab_list[dev]->mkdir_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->mkdir_r(r, path, mode);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/open.c b/libgloss/libsysbase/open.c
|
||
new file mode 100644
|
||
index 0000000..a38e05c
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/open.c
|
||
@@ -0,0 +1,60 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <string.h>
|
||
+#include <stdio.h>
|
||
+#include <ctype.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_open_r, (r, file, flags, mode),
|
||
+ struct _reent * r _AND
|
||
+ const char *file _AND
|
||
+ int flags _AND
|
||
+ int mode) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_open, (file, flags, mode),
|
||
+ const char *file _AND
|
||
+ int flags _AND
|
||
+ int mode) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ __handle *handle;
|
||
+ int dev, fd, ret;
|
||
+
|
||
+ dev = FindDevice(file);
|
||
+
|
||
+ fd = -1;
|
||
+ if(dev!=-1) {
|
||
+ if (devoptab_list[dev]->open_r) {
|
||
+ fd = __alloc_handle(dev);
|
||
+
|
||
+ if ( -1 != fd ) {
|
||
+ handle = __get_handle(fd);
|
||
+
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+
|
||
+ ret = devoptab_list[dev]->open_r(r, handle->fileStruct, file, flags, mode);
|
||
+
|
||
+ if ( ret == -1 ) {
|
||
+ __release_handle(fd);
|
||
+ fd = -1;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSR;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+
|
||
+ return fd;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/read.c b/libgloss/libsysbase/read.c
|
||
new file mode 100644
|
||
index 0000000..7f3f7f2
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/read.c
|
||
@@ -0,0 +1,46 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+_ssize_t _DEFUN(_read_r,(r, fileDesc, ptr, len),
|
||
+ struct _reent * r _AND
|
||
+ int fileDesc _AND
|
||
+ void *ptr _AND
|
||
+ size_t len) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+_ssize_t _DEFUN(_read,(fileDesc, ptr, len),
|
||
+ int fileDesc _AND
|
||
+ char *ptr _AND
|
||
+ size_t len) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+
|
||
+ __handle * handle = NULL;
|
||
+
|
||
+ if(fileDesc!=-1) {
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) return ret;
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->read_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->read_r(r,handle->fileStruct,ptr,len);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/rename.c b/libgloss/libsysbase/rename.c
|
||
new file mode 100644
|
||
index 0000000..7520d1d
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/rename.c
|
||
@@ -0,0 +1,41 @@
|
||
+#include "config.h"
|
||
+#include <reent.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+int
|
||
+_DEFUN (_rename_r, (ptr, existing, newName),
|
||
+ struct _reent *ptr _AND
|
||
+ _CONST char *existing _AND
|
||
+ _CONST char *newName)
|
||
+{
|
||
+#else
|
||
+int
|
||
+_DEFUN(rename, (existing, newName),
|
||
+ _CONST char *existing _AND
|
||
+ _CONST char *newName)
|
||
+{
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ int ret;
|
||
+ int sourceDev = FindDevice(existing);
|
||
+ int destDev = FindDevice(newName);
|
||
+
|
||
+ ret = -1;
|
||
+
|
||
+ if ( sourceDev == destDev) {
|
||
+ if (devoptab_list[destDev]->rename_r) {
|
||
+ r->deviceData = devoptab_list[destDev]->deviceData;
|
||
+ ret = devoptab_list[destDev]->rename_r( r, existing, newName);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = EXDEV;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/rmdir.c b/libgloss/libsysbase/rmdir.c
|
||
new file mode 100644
|
||
index 0000000..2692a29
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/rmdir.c
|
||
@@ -0,0 +1,25 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <reent.h>
|
||
+#include <errno.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+int rmdir (const char *name) {
|
||
+ struct _reent *r = _REENT;
|
||
+ int dev,ret=-1;
|
||
+
|
||
+ dev = FindDevice(name);
|
||
+ if(dev!=-1) {
|
||
+ if(devoptab_list[dev]->rmdir_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->rmdir_r(r,name);
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENODEV;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/sbrk.c b/libgloss/libsysbase/sbrk.c
|
||
new file mode 100644
|
||
index 0000000..e2bdb9e
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/sbrk.c
|
||
@@ -0,0 +1,26 @@
|
||
+#include "config.h"
|
||
+#include <sys/iosupport.h>
|
||
+#include <sys/errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+void * _sbrk_r (struct _reent *ptr, ptrdiff_t incr) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+caddr_t _sbrk (int incr) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *ptr = _REENT;
|
||
+#endif
|
||
+
|
||
+
|
||
+ if ( __syscalls.sbrk_r ) {
|
||
+ return __syscalls.sbrk_r(ptr, incr);
|
||
+ } else {
|
||
+
|
||
+ ptr->_errno = ENOMEM;
|
||
+ return (caddr_t) -1;
|
||
+
|
||
+ }
|
||
+
|
||
+}
|
||
\ No newline at end of file
|
||
diff --git a/libgloss/libsysbase/stat.c b/libgloss/libsysbase/stat.c
|
||
new file mode 100644
|
||
index 0000000..e474c47
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/stat.c
|
||
@@ -0,0 +1,44 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/types.h>
|
||
+#include <sys/stat.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_stat_r,(r,file, st),
|
||
+ struct _reent * r _AND
|
||
+ const char *file _AND
|
||
+ struct stat *st) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_stat, (file, st),
|
||
+ const char *file _AND
|
||
+ struct stat *st)
|
||
+{
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int dev,ret;
|
||
+
|
||
+ dev = FindDevice(file);
|
||
+
|
||
+ if(dev!=-1) {
|
||
+ if (devoptab_list[dev]->stat_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->stat_r(r,file,st);
|
||
+ } else {
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ } else {
|
||
+ ret = -1;
|
||
+ r->_errno = ENODEV;
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/statvfs.c b/libgloss/libsysbase/statvfs.c
|
||
new file mode 100644
|
||
index 0000000..b3dec22
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/statvfs.c
|
||
@@ -0,0 +1,24 @@
|
||
+#include <reent.h>
|
||
+#include <sys/iosupport.h>
|
||
+#include <errno.h>
|
||
+
|
||
+
|
||
+int statvfs(const char *path, struct statvfs *buf) {
|
||
+ struct _reent *r = _REENT;
|
||
+
|
||
+ int ret;
|
||
+ int device = FindDevice(path);
|
||
+
|
||
+ ret = -1;
|
||
+
|
||
+ if ( device != -1 && devoptab_list[device]->statvfs_r) {
|
||
+
|
||
+ r->deviceData = devoptab_list[device]->deviceData;
|
||
+ ret = devoptab_list[device]->statvfs_r(r, path, buf );
|
||
+
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/syscall_support.c b/libgloss/libsysbase/syscall_support.c
|
||
new file mode 100644
|
||
index 0000000..70d717a
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/syscall_support.c
|
||
@@ -0,0 +1,63 @@
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+__syscalls_t __syscalls = {
|
||
+//---------------------------------------------------------------------------------
|
||
+ NULL, // sbrk
|
||
+ NULL, // lock_init
|
||
+ NULL, // lock_close
|
||
+ NULL, // lock_release
|
||
+ NULL, // lock_acquire
|
||
+ NULL, // malloc_lock
|
||
+ NULL, // malloc_unlock
|
||
+ NULL, // exit
|
||
+ NULL // gettod_r
|
||
+};
|
||
+
|
||
+int __libc_lock_init(int *lock,int recursive) {
|
||
+
|
||
+ if ( __syscalls.lock_init ) {
|
||
+ return __syscalls.lock_init(lock, recursive);
|
||
+ }
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+int __libc_lock_close( int *lock ) {
|
||
+
|
||
+ if ( __syscalls.lock_close) {
|
||
+ return __syscalls.lock_close(lock);
|
||
+ }
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+int __libc_lock_release( int *lock ) {
|
||
+
|
||
+ if ( __syscalls.lock_release) {
|
||
+ return __syscalls.lock_release(lock);
|
||
+ }
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+int __libc_lock_acquire( int *lock ) {
|
||
+
|
||
+ if ( __syscalls.lock_acquire) {
|
||
+ return __syscalls.lock_acquire(lock);
|
||
+ }
|
||
+
|
||
+ return 0;
|
||
+}
|
||
+
|
||
+void __malloc_lock( struct _reent *ptr ) {
|
||
+ if ( __syscalls.malloc_lock) {
|
||
+ __syscalls.malloc_lock(ptr);
|
||
+ }
|
||
+}
|
||
+
|
||
+void __malloc_unlock( struct _reent *ptr ) {
|
||
+ if ( __syscalls.malloc_unlock) {
|
||
+ __syscalls.malloc_unlock(ptr);
|
||
+ }
|
||
+}
|
||
diff --git a/libgloss/libsysbase/times.c b/libgloss/libsysbase/times.c
|
||
new file mode 100644
|
||
index 0000000..67db6c7
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/times.c
|
||
@@ -0,0 +1,21 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <sys/times.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+clock_t
|
||
+_DEFUN (_times_r, (r, ptms),
|
||
+ struct _reent *r _AND
|
||
+ struct tms *ptms) {
|
||
+#else
|
||
+clock_t _DEFUN (_times, (buf),
|
||
+ struct tms *buf) {
|
||
+
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ r->_errno = ENOSYS;
|
||
+ return (clock_t)-1;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/truncate.c b/libgloss/libsysbase/truncate.c
|
||
new file mode 100644
|
||
index 0000000..4ff1d27
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/truncate.c
|
||
@@ -0,0 +1,58 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+#include <fcntl.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+int _DEFUN (truncate, (file, len),
|
||
+ const char *file _AND
|
||
+ off_t len)
|
||
+{
|
||
+
|
||
+ __handle *handle;
|
||
+ int dev, fd, ret;
|
||
+
|
||
+ struct _reent * r = _REENT;
|
||
+
|
||
+ dev = FindDevice(file);
|
||
+
|
||
+ if(dev!=-1 && devoptab_list[dev]->open_r && devoptab_list[dev]->close_r &&
|
||
+ devoptab_list[dev]->ftruncate_r)
|
||
+ {
|
||
+
|
||
+ fd = __alloc_handle(sizeof(__handle) + devoptab_list[dev]->structSize );
|
||
+
|
||
+ if ( -1 != fd ) {
|
||
+ handle = __get_handle(fd);
|
||
+ handle->device = dev;
|
||
+ handle->fileStruct = ((void *)handle) + sizeof(__handle);
|
||
+
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+
|
||
+ ret = devoptab_list[dev]->open_r(r, handle->fileStruct, file, O_WRONLY, 0);
|
||
+
|
||
+ if ( ret < 0 ) {
|
||
+ __release_handle(fd);
|
||
+ return ret;
|
||
+ }
|
||
+
|
||
+ ret = devoptab_list[dev]->ftruncate_r(r, handle->fileStruct, len);
|
||
+
|
||
+ if (ret >= 0) {
|
||
+ ret = devoptab_list[dev]->close_r(r, handle->fileStruct);
|
||
+ } else {
|
||
+ // Close it anyway, we don't want to leak memory
|
||
+ devoptab_list[dev]->close_r(r, handle->fileStruct);
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSR;
|
||
+ }
|
||
+ } else {
|
||
+ r->_errno = ENOSYS;
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/libsysbase/unlink.c b/libgloss/libsysbase/unlink.c
|
||
new file mode 100644
|
||
index 0000000..9a61639
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/unlink.c
|
||
@@ -0,0 +1,37 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <reent.h>
|
||
+#include <errno.h>
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_unlink_r, (r, name),
|
||
+ struct _reent * r _AND
|
||
+ const char *name ) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int _DEFUN (_unlink, (name),
|
||
+ const char *name) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int dev,ret=-1;
|
||
+
|
||
+ dev = FindDevice(name);
|
||
+ if(dev<0) {
|
||
+ r->_errno = ENODEV;
|
||
+ } else {
|
||
+ if (devoptab_list[dev]->unlink_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->unlink_r(r,name);
|
||
+ } else {
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ }
|
||
+
|
||
+ return ret;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/wait.c b/libgloss/libsysbase/wait.c
|
||
new file mode 100644
|
||
index 0000000..322c847
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/wait.c
|
||
@@ -0,0 +1,29 @@
|
||
+/*
|
||
+ * Stub version of wait.
|
||
+ */
|
||
+
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <errno.h>
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_wait_r, (r, status),
|
||
+ struct _reent *r _AND
|
||
+ int *status) {
|
||
+
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+int
|
||
+_DEFUN (_wait, (status),
|
||
+ int *status) {
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+//---------------------------------------------------------------------------------
|
||
+ r->_errno = ENOSYS;
|
||
+ return -1;
|
||
+}
|
||
+
|
||
diff --git a/libgloss/libsysbase/warning.h b/libgloss/libsysbase/warning.h
|
||
new file mode 100644
|
||
index 0000000..2c29982
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/warning.h
|
||
@@ -0,0 +1,43 @@
|
||
+#ifndef __WARNING_H__
|
||
+#define __WARNING_H__
|
||
+
|
||
+#ifdef HAVE_GNU_LD
|
||
+# ifdef HAVE_ELF
|
||
+
|
||
+/* We want the .gnu.warning.SYMBOL section to be unallocated. */
|
||
+# ifdef HAVE_ASM_PREVIOUS_DIRECTIVE
|
||
+# define __make_section_unallocated(section_string) \
|
||
+ asm(".section " section_string "; .previous");
|
||
+# elif defined (HAVE_ASM_POPSECTION_DIRECTIVE)
|
||
+# define __make_section_unallocated(section_string) \
|
||
+ asm(".pushsection " section_string "; .popsection");
|
||
+# else
|
||
+# define __make_section_unallocated(section_string)
|
||
+# endif
|
||
+
|
||
+# ifdef HAVE_SECTION_ATTRIBUTES
|
||
+# define link_warning(symbol, msg) \
|
||
+ __make_section_unallocated (".gnu.warning." #symbol) \
|
||
+ static const char __evoke_link_warning_##symbol[] \
|
||
+ __attribute__ ((section (".gnu.warning." #symbol))) = msg;
|
||
+# else
|
||
+# define link_warning(symbol, msg)
|
||
+# endif
|
||
+
|
||
+#else /* !ELF */
|
||
+
|
||
+# define link_warning(symbol, msg) \
|
||
+ asm(".stabs \"" msg "\",30,0,0,0\n" \
|
||
+ ".stabs \"" __SYMBOL_PREFIX #symbol "\",1,0,0,0\n");
|
||
+# endif
|
||
+#else /* !GNULD */
|
||
+/* We will never be heard; they will all die horribly. */
|
||
+# define link_warning(symbol, msg)
|
||
+#endif
|
||
+
|
||
+/* A canned warning for sysdeps/stub functions. */
|
||
+#define stub_warning(name) \
|
||
+ link_warning (name, \
|
||
+ "warning: " #name " is not implemented and will always fail")
|
||
+
|
||
+#endif /* __WARNING_H__ */
|
||
diff --git a/libgloss/libsysbase/write.c b/libgloss/libsysbase/write.c
|
||
new file mode 100644
|
||
index 0000000..39aa78b
|
||
--- /dev/null
|
||
+++ b/libgloss/libsysbase/write.c
|
||
@@ -0,0 +1,45 @@
|
||
+#include "config.h"
|
||
+#include <_ansi.h>
|
||
+#include <_syslist.h>
|
||
+#include <stdio.h>
|
||
+#include <errno.h>
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+
|
||
+#ifdef REENTRANT_SYSCALLS_PROVIDED
|
||
+//---------------------------------------------------------------------------------
|
||
+_ssize_t _DEFUN(_write_r,(r, fileDesc, ptr, len),
|
||
+ struct _reent * r _AND
|
||
+ int fileDesc _AND
|
||
+ const void *ptr _AND
|
||
+ size_t len) {
|
||
+//---------------------------------------------------------------------------------
|
||
+#else
|
||
+//---------------------------------------------------------------------------------
|
||
+_ssize_t _DEFUN (_write, (fileDesc, ptr, len),
|
||
+ int fileDesc _AND
|
||
+ const char *ptr _AND
|
||
+ int len) {
|
||
+//---------------------------------------------------------------------------------
|
||
+ struct _reent *r = _REENT;
|
||
+#endif
|
||
+ int ret = -1;
|
||
+ unsigned int dev = 0;
|
||
+
|
||
+ __handle * handle = NULL;
|
||
+
|
||
+ if(fileDesc!=-1) {
|
||
+ handle = __get_handle(fileDesc);
|
||
+
|
||
+ if ( NULL == handle ) return ret;
|
||
+
|
||
+ dev = handle->device;
|
||
+
|
||
+ if(devoptab_list[dev]->write_r) {
|
||
+ r->deviceData = devoptab_list[dev]->deviceData;
|
||
+ ret = devoptab_list[dev]->write_r(r,handle->fileStruct,ptr,len);
|
||
+ } else
|
||
+ r->_errno=ENOSYS;
|
||
+ }
|
||
+ return ret;
|
||
+}
|
||
diff --git a/libgloss/rs6000/Makefile.in b/libgloss/rs6000/Makefile.in
|
||
index 51714e5..db82941 100644
|
||
--- a/libgloss/rs6000/Makefile.in
|
||
+++ b/libgloss/rs6000/Makefile.in
|
||
@@ -129,6 +129,9 @@ XIL_OBJS = open.o close.o lseek.o sbrk.o read.o write.o print.o
|
||
XIL_TEST = xil-test
|
||
XIL_INSTALL = install-xil
|
||
|
||
+OGC_CRTMAIN = crtmain.o
|
||
+OGC_INSTALL = install-ogc
|
||
+
|
||
# Host specific makefile fragment comes in here.
|
||
@host_makefile_frag@
|
||
|
||
@@ -143,7 +146,7 @@ all: \
|
||
${LINUX_CRT0} ${LINUX_BSP} \
|
||
${YELLOWKNIFE_CRT0} ${YELLOWKNIFE_BSP} \
|
||
${ADS_CRT0} ${ADS_BSP} \
|
||
- ${MBX_CRT0} ${MBX_BSP} \
|
||
+ ${MBX_CRT0} ${MBX_BSP} ${OGC_CRTMAIN} \
|
||
${XIL_CRT0} ${XIL_BSP}
|
||
|
||
#
|
||
@@ -295,6 +298,8 @@ xil-test.srec: xil-test.x
|
||
|
||
crt0.o: crt0.S
|
||
|
||
+crtmain.o: crtmain.c
|
||
+
|
||
simulator.o: simulator.S
|
||
sim-getrusage.o: sim-getrusage.S
|
||
sim-crt0.o: sim-crt0.S
|
||
@@ -352,7 +357,7 @@ distclean maintainer-clean realclean: clean
|
||
rm -f Makefile config.status *~
|
||
|
||
.PHONY: install info install-info clean-info
|
||
-install: ${SIM_INSTALL} ${MVME_INSTALL} ${SOLARIS_INSTALL} ${LINUX_INSTALL} ${YELLOWKNIFE_INSTALL} ${ADS_INSTALL} ${MBX_INSTALL} ${XIL_INSTALL}
|
||
+install: ${SIM_INSTALL} ${MVME_INSTALL} ${SOLARIS_INSTALL} ${LINUX_INSTALL} ${YELLOWKNIFE_INSTALL} ${ADS_INSTALL} ${MBX_INSTALL} ${OGC_INSTALL} ${XIL_INSTALL}
|
||
|
||
install-sim:
|
||
set -e; for x in ${SIM_CRT0} ${SIM_BSP} ${SIM_SCRIPTS}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||
@@ -382,6 +387,9 @@ install-xil:
|
||
set -e; for x in ${XIL_CRT0} ${XIL_BSP}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib/$$x; done
|
||
set -e; for x in ${XIL_SCRIPTS} ${XIL_SPECS}; do ${INSTALL_DATA} $(srcdir)/$$x $(DESTDIR)${tooldir}/lib/$$x; done
|
||
|
||
+install-ogc:
|
||
+ set -e; for x in ${OGC_CRTMAIN}; do ${INSTALL_DATA} $$x $(DESTDIR)${tooldir}/lib${MULTISUBDIR}/$$x; done
|
||
+
|
||
doc:
|
||
info:
|
||
install-info:
|
||
diff --git a/libgloss/rs6000/crtmain.c b/libgloss/rs6000/crtmain.c
|
||
new file mode 100644
|
||
index 0000000..bd25d77
|
||
--- /dev/null
|
||
+++ b/libgloss/rs6000/crtmain.c
|
||
@@ -0,0 +1,18 @@
|
||
+#include <unistd.h>
|
||
+
|
||
+struct __argv {
|
||
+ int argvMagic; //!< argv magic number, set to 0x5f617267 ('_arg') if valid
|
||
+ char *commandLine; //!< base address of command line, set of null terminated strings
|
||
+ int length;//!< total length of command line
|
||
+ int argc;
|
||
+ char **argv;
|
||
+};
|
||
+
|
||
+extern struct __argv *__system_argv;
|
||
+void __init();
|
||
+void SYS_PreMain();
|
||
+
|
||
+void __crtmain() {
|
||
+ SYS_PreMain();
|
||
+ exit ( main(__system_argv->argc,__system_argv->argv) );
|
||
+}
|
||
diff --git a/newlib/configure.host b/newlib/configure.host
|
||
index d471200..1c565ce 100644
|
||
--- a/newlib/configure.host
|
||
+++ b/newlib/configure.host
|
||
@@ -793,7 +793,12 @@ case "${host}" in
|
||
default_newlib_io_long_long="yes"
|
||
newlib_cflags="${newlib_cflags} -DMISSING_SYSCALL_NAMES"
|
||
;;
|
||
- powerpc*-*-eabi* | \
|
||
+ powerpc*-*-eabi*)
|
||
+ default_newlib_io_long_long="yes"
|
||
+ newlib_cflags="${newlib_cflags} -DREENTRANT_SYSCALLS_PROVIDED -D__DEFAULT_UTF8__"
|
||
+ newlib_cflags="${newlib_cflags} -ffunction-sections -fdata-sections"
|
||
+ syscall_dir=syscalls
|
||
+ ;;
|
||
powerpc*-*-elf* | \
|
||
powerpc*-*-linux* | \
|
||
powerpc*-*-rtem* | \
|
||
diff --git a/newlib/libc/include/stdio.h b/newlib/libc/include/stdio.h
|
||
index 097b0f6..062965e 100644
|
||
--- a/newlib/libc/include/stdio.h
|
||
+++ b/newlib/libc/include/stdio.h
|
||
@@ -227,7 +227,7 @@ int _EXFUN(fgetpos, (FILE *, _fpos_t *));
|
||
#else
|
||
int _EXFUN(fgetpos, (FILE *__restrict, fpos_t *__restrict));
|
||
#endif
|
||
-int _EXFUN(fseek, (FILE *, long, int));
|
||
+int _EXFUN(fseek, (FILE *, off_t, int));
|
||
#ifdef _COMPILING_NEWLIB
|
||
int _EXFUN(fsetpos, (FILE *, const _fpos_t *));
|
||
#else
|
||
@@ -435,7 +435,7 @@ size_t _EXFUN(_fread_r, (struct _reent *, _PTR __restrict, size_t _size, size_t
|
||
size_t _EXFUN(_fread_unlocked_r, (struct _reent *, _PTR __restrict, size_t _size, size_t _n, FILE *__restrict));
|
||
int _EXFUN(_fscanf_r, (struct _reent *, FILE *__restrict, const char *__restrict, ...)
|
||
_ATTRIBUTE ((__format__ (__scanf__, 3, 4))));
|
||
-int _EXFUN(_fseek_r, (struct _reent *, FILE *, long, int));
|
||
+int _EXFUN(_fseek_r, (struct _reent *, FILE *, off_t, int));
|
||
int _EXFUN(_fseeko_r,(struct _reent *, FILE *, _off_t, int));
|
||
long _EXFUN(_ftell_r, (struct _reent *, FILE *));
|
||
_off_t _EXFUN(_ftello_r,(struct _reent *, FILE *));
|
||
diff --git a/newlib/libc/include/sys/dirent.h b/newlib/libc/include/sys/dirent.h
|
||
index a3fb5c0..478d1b4 100644
|
||
--- a/newlib/libc/include/sys/dirent.h
|
||
+++ b/newlib/libc/include/sys/dirent.h
|
||
@@ -4,10 +4,51 @@
|
||
not support <dirent.h>, we will get this file which uses #error to force
|
||
an error. */
|
||
|
||
+#ifndef _dirent_h_
|
||
+#define _dirent_h_
|
||
+
|
||
+#include <sys/iosupport.h>
|
||
+#include <sys/types.h>
|
||
+#include <sys/syslimits.h>
|
||
+
|
||
+#define _DIRENT_HAVE_D_TYPE
|
||
+
|
||
+#define DT_UNKNOWN 0
|
||
+#define DT_FIFO 1
|
||
+#define DT_CHR 2
|
||
+#define DT_DIR 4
|
||
+#define DT_BLK 6
|
||
+#define DT_REG 8
|
||
+#define DT_LNK 10
|
||
+#define DT_SOCK 12
|
||
+#define DT_WHT 14
|
||
+
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
-#error "<dirent.h> not supported"
|
||
+
|
||
+ struct dirent {
|
||
+ ino_t d_ino;
|
||
+ unsigned char d_type;
|
||
+ char d_name[NAME_MAX+1];
|
||
+ };
|
||
+
|
||
+ typedef struct {
|
||
+ long int position;
|
||
+ DIR_ITER* dirData;
|
||
+ struct dirent fileData;
|
||
+ } DIR;
|
||
+
|
||
+ int closedir(DIR *dirp);
|
||
+ DIR *opendir(const char *dirname);
|
||
+ struct dirent *readdir(DIR *dirp);
|
||
+ int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);
|
||
+ void rewinddir(DIR *dirp);
|
||
+ void seekdir(DIR *dirp, long int loc);
|
||
+ long int telldir(DIR *dirp);
|
||
+
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|
||
+
|
||
+#endif // _dirent_h_
|
||
\ No newline at end of file
|
||
diff --git a/newlib/libc/include/sys/iosupport.h b/newlib/libc/include/sys/iosupport.h
|
||
new file mode 100644
|
||
index 0000000..e5567f0
|
||
--- /dev/null
|
||
+++ b/newlib/libc/include/sys/iosupport.h
|
||
@@ -0,0 +1,101 @@
|
||
+//---------------------------------------------------------------------------------
|
||
+#ifndef __iosupp_h__
|
||
+#define __iosupp_h__
|
||
+//---------------------------------------------------------------------------------
|
||
+
|
||
+#ifdef __cplusplus
|
||
+extern "C" {
|
||
+#endif
|
||
+
|
||
+#include <reent.h>
|
||
+#include <sys/stat.h>
|
||
+#include <sys/statvfs.h>
|
||
+
|
||
+enum {
|
||
+ STD_IN,
|
||
+ STD_OUT,
|
||
+ STD_ERR,
|
||
+ STD_MAX = 16
|
||
+};
|
||
+
|
||
+
|
||
+typedef struct {
|
||
+ unsigned int device;
|
||
+ unsigned int refcount;
|
||
+ void *fileStruct;
|
||
+} __handle;
|
||
+
|
||
+/* Directory iterator for mantaining state between dir* calls */
|
||
+typedef struct {
|
||
+ int device;
|
||
+ void *dirStruct;
|
||
+} DIR_ITER;
|
||
+
|
||
+typedef struct {
|
||
+ const char *name;
|
||
+ size_t structSize;
|
||
+ int (*open_r)(struct _reent *r, void *fileStruct, const char *path, int flags, int mode);
|
||
+ int (*close_r)(struct _reent *r, void *fd);
|
||
+ ssize_t (*write_r)(struct _reent *r, void *fd, const char *ptr, size_t len);
|
||
+ ssize_t (*read_r)(struct _reent *r, void *fd, char *ptr, size_t len);
|
||
+ off_t (*seek_r)(struct _reent *r, void *fd, off_t pos, int dir);
|
||
+ int (*fstat_r)(struct _reent *r, void *fd, struct stat *st);
|
||
+ int (*stat_r)(struct _reent *r, const char *file, struct stat *st);
|
||
+ int (*link_r)(struct _reent *r, const char *existing, const char *newLink);
|
||
+ int (*unlink_r)(struct _reent *r, const char *name);
|
||
+ int (*chdir_r)(struct _reent *r, const char *name);
|
||
+ int (*rename_r) (struct _reent *r, const char *oldName, const char *newName);
|
||
+ int (*mkdir_r) (struct _reent *r, const char *path, int mode);
|
||
+
|
||
+ size_t dirStateSize;
|
||
+
|
||
+ DIR_ITER* (*diropen_r)(struct _reent *r, DIR_ITER *dirState, const char *path);
|
||
+ int (*dirreset_r)(struct _reent *r, DIR_ITER *dirState);
|
||
+ int (*dirnext_r)(struct _reent *r, DIR_ITER *dirState, char *filename, struct stat *filestat);
|
||
+ int (*dirclose_r)(struct _reent *r, DIR_ITER *dirState);
|
||
+ int (*statvfs_r)(struct _reent *r, const char *path, struct statvfs *buf);
|
||
+ int (*ftruncate_r)(struct _reent *r, void *fd, off_t len);
|
||
+ int (*fsync_r)(struct _reent *r, void *fd);
|
||
+
|
||
+ void *deviceData;
|
||
+
|
||
+ int (*chmod_r)(struct _reent *r, const char *path, mode_t mode);
|
||
+ int (*fchmod_r)(struct _reent *r, void *fd, mode_t mode);
|
||
+ int (*rmdir_r)(struct _reent *r, const char *name);
|
||
+
|
||
+} devoptab_t;
|
||
+
|
||
+extern const devoptab_t *devoptab_list[];
|
||
+
|
||
+typedef struct {
|
||
+ void *(*sbrk_r) (struct _reent *ptr, ptrdiff_t incr);
|
||
+ int (*lock_init) (int *lock,int recursive);
|
||
+ int (*lock_close) (int *lock);
|
||
+ int (*lock_release) (int *lock);
|
||
+ int (*lock_acquire) (int *lock);
|
||
+ void (*malloc_lock) (struct _reent *ptr);
|
||
+ void (*malloc_unlock) (struct _reent *ptr);
|
||
+ void (*exit) ( int rc );
|
||
+ int (*gettod_r) (struct _reent *ptr, struct timeval *tp, struct timezone *tz);
|
||
+} __syscalls_t;
|
||
+
|
||
+extern __syscalls_t __syscalls;
|
||
+
|
||
+int AddDevice( const devoptab_t* device);
|
||
+int FindDevice(const char* name);
|
||
+int RemoveDevice(const char* name);
|
||
+void setDefaultDevice( int device );
|
||
+const devoptab_t* GetDeviceOpTab (const char *name);
|
||
+
|
||
+void __release_handle(int fd);
|
||
+int __alloc_handle(int device);
|
||
+__handle *__get_handle(int fd);
|
||
+
|
||
+
|
||
+#ifdef __cplusplus
|
||
+}
|
||
+#endif
|
||
+
|
||
+//---------------------------------------------------------------------------------
|
||
+#endif // __iosupp_h__
|
||
+//---------------------------------------------------------------------------------
|
||
diff --git a/newlib/libc/include/sys/reent.h b/newlib/libc/include/sys/reent.h
|
||
index e1ed8b4..9d8be35 100644
|
||
--- a/newlib/libc/include/sys/reent.h
|
||
+++ b/newlib/libc/include/sys/reent.h
|
||
@@ -416,6 +416,8 @@ struct _reent
|
||
__FILE *__sf; /* file descriptors */
|
||
struct _misc_reent *_misc; /* strtok, multibyte states */
|
||
char *_signal_buf; /* strsignal */
|
||
+
|
||
+ void *deviceData;
|
||
};
|
||
|
||
extern const struct __sFILE_fake __sf_fake_stdin;
|
||
@@ -645,6 +647,7 @@ struct _reent
|
||
would be broken otherwise). */
|
||
struct _glue __sglue; /* root of glue chain */
|
||
__FILE __sf[3]; /* first three file descriptors */
|
||
+ void *deviceData;
|
||
};
|
||
|
||
#define _REENT_INIT(var) \
|
||
diff --git a/newlib/libc/include/sys/statvfs.h b/newlib/libc/include/sys/statvfs.h
|
||
new file mode 100644
|
||
index 0000000..380329d
|
||
--- /dev/null
|
||
+++ b/newlib/libc/include/sys/statvfs.h
|
||
@@ -0,0 +1,35 @@
|
||
+#ifndef _SYS_STATVFS_H
|
||
+#define _SYS_STATVFS_H
|
||
+
|
||
+
|
||
+#define ST_RDONLY 0x0001
|
||
+#define ST_NOSUID 0x0002
|
||
+
|
||
+#ifdef __cplusplus
|
||
+extern "C" {
|
||
+#endif
|
||
+
|
||
+#include <sys/types.h>
|
||
+
|
||
+struct statvfs {
|
||
+ unsigned long f_bsize;
|
||
+ unsigned long f_frsize;
|
||
+ fsblkcnt_t f_blocks;
|
||
+ fsblkcnt_t f_bfree;
|
||
+ fsblkcnt_t f_bavail;
|
||
+ fsfilcnt_t f_files;
|
||
+ fsfilcnt_t f_ffree;
|
||
+ fsfilcnt_t f_favail;
|
||
+ unsigned long f_fsid;
|
||
+ unsigned long f_flag;
|
||
+ unsigned long f_namemax;
|
||
+};
|
||
+
|
||
+int statvfs(const char *path, struct statvfs *buf);
|
||
+
|
||
+#ifdef __cplusplus
|
||
+}
|
||
+#endif
|
||
+
|
||
+
|
||
+#endif // _SYS_STATVFS_H
|
||
\ No newline at end of file
|
||
diff --git a/newlib/libc/include/sys/syslimits.h b/newlib/libc/include/sys/syslimits.h
|
||
index ba9dbd6..93ed11a 100644
|
||
--- a/newlib/libc/include/sys/syslimits.h
|
||
+++ b/newlib/libc/include/sys/syslimits.h
|
||
@@ -44,12 +44,12 @@
|
||
#define LINK_MAX 32767 /* max file link count */
|
||
#define MAX_CANON 255 /* max bytes in term canon input line */
|
||
#define MAX_INPUT 255 /* max bytes in terminal input */
|
||
-#define NAME_MAX 255 /* max bytes in a file name */
|
||
+#define NAME_MAX 767 /* max bytes in a file name */
|
||
#define NGROUPS_MAX 16 /* max supplemental group id's */
|
||
#ifndef OPEN_MAX
|
||
#define OPEN_MAX 64 /* max open files per process */
|
||
#endif
|
||
-#define PATH_MAX 1024 /* max bytes in pathname */
|
||
+#define PATH_MAX 4096 /* max bytes in pathname */
|
||
#define PIPE_BUF 512 /* max bytes for atomic pipe writes */
|
||
#define IOV_MAX 1024 /* max elements in i/o vector */
|
||
|
||
diff --git a/newlib/libc/include/sys/unistd.h b/newlib/libc/include/sys/unistd.h
|
||
index 84219ca..af9d12c 100644
|
||
--- a/newlib/libc/include/sys/unistd.h
|
||
+++ b/newlib/libc/include/sys/unistd.h
|
||
@@ -252,12 +252,10 @@ _READ_WRITE_RETURN_TYPE _EXFUN(_write, (int __fd, const void *__buf, size_t __nb
|
||
int _EXFUN(_execve, (const char *__path, char * const __argv[], char * const __envp[] ));
|
||
#endif
|
||
|
||
-#if defined(__CYGWIN__) || defined(__rtems__) || defined(__aarch64__) || defined (__arm__) || defined(__sh__) || defined(__SPU__)
|
||
#if !defined(__INSIDE_CYGWIN__)
|
||
int _EXFUN(ftruncate, (int __fd, off_t __length));
|
||
int _EXFUN(truncate, (const char *, off_t __length));
|
||
#endif
|
||
-#endif
|
||
|
||
#if defined(__CYGWIN__) || defined(__rtems__)
|
||
int _EXFUN(getdtablesize, (void));
|
||
diff --git a/newlib/libc/locale/locale.c b/newlib/libc/locale/locale.c
|
||
index 8572821..57dee54 100644
|
||
--- a/newlib/libc/locale/locale.c
|
||
+++ b/newlib/libc/locale/locale.c
|
||
@@ -181,15 +181,18 @@ No supporting OS subroutines are required.
|
||
#include "../ctype/ctype_.h"
|
||
#include "../stdlib/local.h"
|
||
|
||
+
|
||
#ifdef __CYGWIN__ /* Has to be kept available as exported symbol for
|
||
backward compatibility. Set it in setlocale, but
|
||
otherwise ignore it. Applications compiled after
|
||
2010 don't use it anymore. */
|
||
+
|
||
int __EXPORT __mb_cur_max = 6;
|
||
#endif
|
||
|
||
char *_PathLocale = NULL;
|
||
|
||
+
|
||
#ifdef _MB_CAPABLE
|
||
/*
|
||
* Category names for getenv()
|
||
@@ -209,7 +212,11 @@ static char *categories[_LC_LAST] = {
|
||
* Default locale per POSIX. Can be overridden on a per-target base.
|
||
*/
|
||
#ifndef DEFAULT_LOCALE
|
||
-#define DEFAULT_LOCALE "C"
|
||
+#ifdef __DEFAULT_UTF8__
|
||
+#define DEFAULT_LOCALE "C.UTF8"
|
||
+#else
|
||
+#define DEFAULT_LOCALE "C"
|
||
+#endif
|
||
#endif
|
||
|
||
#ifdef _MB_CAPABLE
|
||
@@ -222,8 +229,13 @@ char __default_locale[ENCODING_LEN + 1] = DEFAULT_LOCALE;
|
||
const struct __locale_t __C_locale =
|
||
{
|
||
{ "C", "C", "C", "C", "C", "C", "C", },
|
||
+#if defined ( __DEFAULT_UTF8__ )
|
||
+ __utf8_wctomb,
|
||
+ __utf8_mbtowc,
|
||
+#else
|
||
__ascii_wctomb,
|
||
__ascii_mbtowc,
|
||
+#endif
|
||
0,
|
||
DEFAULT_CTYPE_PTR,
|
||
{
|
||
@@ -234,9 +246,15 @@ const struct __locale_t __C_locale =
|
||
CHAR_MAX, CHAR_MAX
|
||
},
|
||
#ifndef __HAVE_LOCALE_INFO__
|
||
+#ifdef __DEFAULT_UTF8__
|
||
+ "\6",
|
||
+ "UTF-8",
|
||
+ "UTF-8",
|
||
+#else
|
||
"\1",
|
||
"ASCII",
|
||
"ASCII",
|
||
+#endif
|
||
#else /* __HAVE_LOCALE_INFO__ */
|
||
{
|
||
{ NULL, NULL }, /* LC_ALL */
|
||
@@ -255,10 +273,11 @@ const struct __locale_t __C_locale =
|
||
};
|
||
#endif /* _MB_CAPABLE */
|
||
|
||
+
|
||
struct __locale_t __global_locale =
|
||
{
|
||
{ "C", "C", DEFAULT_LOCALE, "C", "C", "C", "C", },
|
||
-#ifdef __CYGWIN__
|
||
+#if defined ( __CYGWIN__ ) || defined ( __DEFAULT_UTF8__ )
|
||
__utf8_wctomb,
|
||
__utf8_mbtowc,
|
||
#else
|
||
@@ -275,9 +294,15 @@ struct __locale_t __global_locale =
|
||
CHAR_MAX, CHAR_MAX
|
||
},
|
||
#ifndef __HAVE_LOCALE_INFO__
|
||
+#ifdef __DEFAULT_UTF8__
|
||
+ "\6",
|
||
+ "UTF-8",
|
||
+ "UTF-8",
|
||
+#else
|
||
"\1",
|
||
"ASCII",
|
||
"ASCII",
|
||
+#endif
|
||
#else /* __HAVE_LOCALE_INFO__ */
|
||
{
|
||
{ NULL, NULL }, /* LC_ALL */
|
||
@@ -995,6 +1020,7 @@ __locale_ctype_ptr_l (struct __locale_t *locale)
|
||
|
||
const char *
|
||
__locale_ctype_ptr (void)
|
||
+
|
||
{
|
||
return __get_current_locale ()->ctype_ptr;
|
||
}
|
||
diff --git a/newlib/libc/machine/powerpc/machine/_types.h b/newlib/libc/machine/powerpc/machine/_types.h
|
||
new file mode 100644
|
||
index 0000000..a7d63da
|
||
--- /dev/null
|
||
+++ b/newlib/libc/machine/powerpc/machine/_types.h
|
||
@@ -0,0 +1,19 @@
|
||
+#ifndef _MACHINE__TYPES_H
|
||
+#define _MACHINE__TYPES_H
|
||
+
|
||
+#include <machine/_default_types.h>
|
||
+
|
||
+/* Use 64bit types */
|
||
+typedef __int64_t _off_t;
|
||
+#define __machine_off_t_defined
|
||
+
|
||
+typedef __int64_t _fpos_t;
|
||
+#define __machine_fpos_t_defined
|
||
+
|
||
+typedef __uint32_t __ino_t;
|
||
+#define __machine_ino_t_defined
|
||
+
|
||
+typedef __uint32_t __dev_t;
|
||
+#define __machine_dev_t_defined
|
||
+
|
||
+#endif // _MACHINE__TYPES_H
|
||
diff --git a/newlib/libc/machine/powerpc/sys/lock.h b/newlib/libc/machine/powerpc/sys/lock.h
|
||
new file mode 100644
|
||
index 0000000..d83fda5
|
||
--- /dev/null
|
||
+++ b/newlib/libc/machine/powerpc/sys/lock.h
|
||
@@ -0,0 +1,51 @@
|
||
+#ifndef __SYS_LOCK_H__
|
||
+#define __SYS_LOCK_H__
|
||
+
|
||
+typedef int _LOCK_T;
|
||
+typedef int _LOCK_RECURSIVE_T;
|
||
+
|
||
+#define __LOCK_INIT(CLASS,NAME) CLASS _LOCK_T NAME = 0
|
||
+#define __LOCK_INIT_RECURSIVE(CLASS,NAME) CLASS _LOCK_RECURSIVE_T NAME = 0
|
||
+
|
||
+#define __lock_init(NAME) \
|
||
+ __libc_lock_init(&(NAME),0)
|
||
+
|
||
+#define __lock_init_recursive(NAME) \
|
||
+ __libc_lock_init(&(NAME),1)
|
||
+
|
||
+#define __lock_close(NAME) \
|
||
+ __libc_lock_close(&(NAME))
|
||
+
|
||
+#define __lock_close_recursive(NAME) \
|
||
+ __libc_lock_close(&(NAME))
|
||
+
|
||
+#define __lock_acquire(NAME) \
|
||
+ if(!(NAME)) __libc_lock_init(&(NAME),0); \
|
||
+ __libc_lock_acquire(&(NAME))
|
||
+
|
||
+#define __lock_acquire_recursive(NAME) \
|
||
+ if(!(NAME)) __libc_lock_init(&(NAME),1); \
|
||
+ __libc_lock_acquire(&(NAME))
|
||
+
|
||
+#define __lock_try_acquire(NAME) \
|
||
+ if(!(NAME)) __libc_lock_init(&(NAME),0); \
|
||
+ __libc_lock_try_acquire(&(NAME))
|
||
+
|
||
+#define __lock_try_acquire_recursive(NAME) \
|
||
+ if(!(NAME)) __libc_lock_init(&(NAME),1); \
|
||
+ __libc_lock_try_acquire(&(NAME))
|
||
+
|
||
+#define __lock_release(NAME) \
|
||
+ __libc_lock_release(&(NAME))
|
||
+
|
||
+#define __lock_release_recursive(NAME) \
|
||
+ __libc_lock_release(&(NAME))
|
||
+
|
||
+
|
||
+extern int __libc_lock_init(int*,int);
|
||
+extern int __libc_lock_close(int*);
|
||
+extern int __libc_lock_acquire(int*);
|
||
+extern int __libc_lock_try_acquire(int*);
|
||
+extern int __libc_lock_release(int*);
|
||
+
|
||
+#endif /* __SYS_LOCK_H__ */
|
||
diff --git a/newlib/libc/machine/powerpc/sys/stdio.h b/newlib/libc/machine/powerpc/sys/stdio.h
|
||
new file mode 100644
|
||
index 0000000..04ebd1e
|
||
--- /dev/null
|
||
+++ b/newlib/libc/machine/powerpc/sys/stdio.h
|
||
@@ -0,0 +1,25 @@
|
||
+#ifndef _NEWLIB_STDIO_H
|
||
+#define _NEWLIB_STDIO_H
|
||
+
|
||
+/* Internal locking macros, used to protect stdio functions. In the
|
||
+ general case, expand to nothing. */
|
||
+#if !defined(_flockfile)
|
||
+# if !defined(__SINGLE_THREAD__)
|
||
+# define _flockfile(fp) { ((fp)->_flags&__SSTR) ? 0 : __flockfile(fp); }
|
||
+ extern void __flockfile(FILE *fp);
|
||
+# else
|
||
+# define _flockfile(fp)
|
||
+# endif
|
||
+#endif /* __SINGLE_THREAD__ */
|
||
+
|
||
+#if !defined(_funlockfile)
|
||
+# if !defined(__SINGLE_THREAD__)
|
||
+# define _funlockfile(fp) { ((fp)->_flags&__SSTR) ? 0 : __funlockfile(fp); }
|
||
+ extern void __funlockfile(FILE *fp);
|
||
+# else
|
||
+# define _funlockfile(fp)
|
||
+# endif
|
||
+#endif /* __SINGLE_THREAD__ */
|
||
+
|
||
+#endif /* _NEWLIB_STDIO_H */
|
||
+
|
||
diff --git a/newlib/libc/misc/init.c b/newlib/libc/misc/init.c
|
||
index c85d602..1beb783 100644
|
||
--- a/newlib/libc/misc/init.c
|
||
+++ b/newlib/libc/misc/init.c
|
||
@@ -40,4 +40,8 @@ __libc_init_array (void)
|
||
for (i = 0; i < count; i++)
|
||
__init_array_start[i] ();
|
||
}
|
||
+#else
|
||
+
|
||
+#error why am I not defined
|
||
+
|
||
#endif
|
||
diff --git a/newlib/libc/stdio/Makefile.in b/newlib/libc/stdio/Makefile.in
|
||
index 8ea5f0a..3200cf3 100644
|
||
--- a/newlib/libc/stdio/Makefile.in
|
||
+++ b/newlib/libc/stdio/Makefile.in
|
||
@@ -504,6 +504,7 @@ GENERAL_SOURCES = \
|
||
rename.c \
|
||
rewind.c \
|
||
rget.c \
|
||
+ rmdir.c \
|
||
scanf.c \
|
||
sccl.c \
|
||
setbuf.c \
|
||
@@ -1163,6 +1164,12 @@ lib_a-rget.o: rget.c
|
||
lib_a-rget.obj: rget.c
|
||
$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-rget.obj `if test -f 'rget.c'; then $(CYGPATH_W) 'rget.c'; else $(CYGPATH_W) '$(srcdir)/rget.c'; fi`
|
||
|
||
+lib_a-rmdir.o: rmdir.c
|
||
+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-rmdir.o `test -f 'rmdir.c' || echo '$(srcdir)/'`rmdir.c
|
||
+
|
||
+lib_a-rmdir.obj: rmdir.c
|
||
+ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-rmdir.obj `if test -f 'rmdir.c'; then $(CYGPATH_W) 'rmdir.c'; else $(CYGPATH_W) '$(srcdir)/rmdir.c'; fi`
|
||
+
|
||
lib_a-scanf.o: scanf.c
|
||
$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lib_a_CFLAGS) $(CFLAGS) -c -o lib_a-scanf.o `test -f 'scanf.c' || echo '$(srcdir)/'`scanf.c
|
||
|
||
diff --git a/newlib/libc/stdio/findfp.c b/newlib/libc/stdio/findfp.c
|
||
index 975a855..99573e2 100644
|
||
--- a/newlib/libc/stdio/findfp.c
|
||
+++ b/newlib/libc/stdio/findfp.c
|
||
@@ -252,7 +252,8 @@ _DEFUN(__sinit, (s),
|
||
|
||
/* POSIX requires stderr to be opened for reading and writing, even
|
||
when the underlying fd 2 is write-only. */
|
||
- std (s->_stderr, __SRW | __SNBF, 2, s);
|
||
+ //std (s->_stderr, __SRW | __SNBF, 2, s);
|
||
+ std (s->_stderr, __SWR | __SLBF, 2, s);
|
||
|
||
s->__sdidinit = 1;
|
||
|
||
diff --git a/newlib/libc/stdio/fopen.c b/newlib/libc/stdio/fopen.c
|
||
index 6d07561..3eae960 100644
|
||
--- a/newlib/libc/stdio/fopen.c
|
||
+++ b/newlib/libc/stdio/fopen.c
|
||
@@ -151,6 +151,9 @@ _DEFUN(_fopen_r, (ptr, file, mode),
|
||
|
||
_newlib_flockfile_start (fp);
|
||
|
||
+ flags &= ~(__SLBF | __SNBF | __SMBF);
|
||
+ flags |= __SNBF;
|
||
+
|
||
fp->_file = f;
|
||
fp->_flags = flags;
|
||
fp->_cookie = (_PTR) fp;
|
||
diff --git a/newlib/libc/stdio/fread.c b/newlib/libc/stdio/fread.c
|
||
index c683947..275becd 100644
|
||
--- a/newlib/libc/stdio/fread.c
|
||
+++ b/newlib/libc/stdio/fread.c
|
||
@@ -259,7 +259,31 @@ _DEFUN(_fread_r, (ptr, buf, size, count, fp),
|
||
/* fp->_r = 0 ... done in __srefill */
|
||
p += r;
|
||
resid -= r;
|
||
- if (__srefill_r (ptr, fp))
|
||
+ int rc = 0;
|
||
+
|
||
+ if (resid>BUFSIZ)
|
||
+ {
|
||
+ /* save fp buffering state */
|
||
+ void *old_base = fp->_bf._base;
|
||
+ void * old_p = fp->_p;
|
||
+ int old_size = fp->_bf._size;
|
||
+ /* allow __refill to use user's buffer */
|
||
+ fp->_bf._base = (unsigned char *) p;
|
||
+ fp->_bf._size = resid;
|
||
+ fp->_p = (unsigned char *) p;
|
||
+ rc = __srefill_r (ptr, fp);
|
||
+ /* restore fp buffering back to original state */
|
||
+ fp->_bf._base = old_base;
|
||
+ fp->_bf._size = old_size;
|
||
+ fp->_p = old_p;
|
||
+ resid -= fp->_r;
|
||
+ p += fp->_r;
|
||
+ fp->_r = 0;
|
||
+
|
||
+ } else {
|
||
+ rc = __srefill_r (ptr, fp);
|
||
+ }
|
||
+ if (rc)
|
||
{
|
||
/* no more input: return partial result */
|
||
#ifdef __SCLE
|
||
diff --git a/newlib/libc/stdio/fseek.c b/newlib/libc/stdio/fseek.c
|
||
index b8fc36a..5c31316 100644
|
||
--- a/newlib/libc/stdio/fseek.c
|
||
+++ b/newlib/libc/stdio/fseek.c
|
||
@@ -108,7 +108,7 @@ int
|
||
_DEFUN(_fseek_r, (ptr, fp, offset, whence),
|
||
struct _reent *ptr _AND
|
||
register FILE *fp _AND
|
||
- long offset _AND
|
||
+ off_t offset _AND
|
||
int whence)
|
||
{
|
||
return _fseeko_r (ptr, fp, offset, whence);
|
||
@@ -119,7 +119,7 @@ _DEFUN(_fseek_r, (ptr, fp, offset, whence),
|
||
int
|
||
_DEFUN(fseek, (fp, offset, whence),
|
||
register FILE *fp _AND
|
||
- long offset _AND
|
||
+ off_t offset _AND
|
||
int whence)
|
||
{
|
||
return _fseek_r (_REENT, fp, offset, whence);
|
||
diff --git a/newlib/libc/stdlib/mbtowc_r.c b/newlib/libc/stdlib/mbtowc_r.c
|
||
index 116b4d8..57941e3 100644
|
||
--- a/newlib/libc/stdlib/mbtowc_r.c
|
||
+++ b/newlib/libc/stdlib/mbtowc_r.c
|
||
@@ -7,6 +7,7 @@
|
||
#include <errno.h>
|
||
#include "local.h"
|
||
|
||
+
|
||
int
|
||
_DEFUN (_mbtowc_r, (r, pwc, s, n, state),
|
||
struct _reent *r _AND
|
||
diff --git a/newlib/libc/stdlib/mlock.c b/newlib/libc/stdlib/mlock.c
|
||
index 888c986..7aedbaa 100644
|
||
--- a/newlib/libc/stdlib/mlock.c
|
||
+++ b/newlib/libc/stdlib/mlock.c
|
||
@@ -35,7 +35,7 @@ the sequence of calls may go <<__malloc_lock>>, <<__malloc_lock>>,
|
||
routines must be careful to avoid causing a thread to wait for a lock
|
||
that it already holds.
|
||
*/
|
||
-
|
||
+#if 0
|
||
#include <malloc.h>
|
||
#include <sys/lock.h>
|
||
|
||
@@ -60,5 +60,5 @@ __malloc_unlock (ptr)
|
||
__lock_release_recursive (__malloc_lock_object);
|
||
#endif
|
||
}
|
||
-
|
||
+#endif
|
||
#endif
|