From 424f8c09fa436a2caa212484d93501cab8eaa39f Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Mon, 13 Mar 1995 00:37:23 +0000 Subject: [PATCH] Sun Mar 12 18:21:10 1995 Roland McGrath * malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these. * malloc/realloc.c (_realloc_internal): Renamed from realloc; don't use __realloc_hook. (realloc): New function; call __realloc_hook ?: _realloc_internal. * malloc/malloc.c (_malloc_internal): Renamed from malloc; don't use __malloc_hook. (malloc): New function; call __malloc_hook ?: _malloc_internal. (initialize): Set up _heaplimit to cover the _heapinfo table. (morecore_recursing): New static variable. (morecore): If that is set, return null immediately. When growing the info table, before getting new core from the system for it, set morecore_recursing and try moving _heapinfo with _realloc_internal. When that fails and we get new core, set _heaplimit to cover the core for the new _heapinfo table. (register_heapinfo): New function. Record the _heapinfo table's own blocks in that table and in the statistics variables. (initialize, _malloc_internal): Use it after allocating new table. Fri Mar 10 22:26:28 1995 Jim Meyering (meyering@comco.com) * sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use by other packages. [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code. * mach/errorlib.h (errors): Use const for decl. * time/tzfile.c (uc2ul, _uc2ul): Macros removed. (decode): New inline function; decode signed 32-bit integers, and sign-extend properly when long is longer than 32 bits. (__tzfile_read): Changed all uses of uc2ul to decode. Decode the transition times properly when sizeof (time_t) > 4. * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn. (buffered_vfprintf): Remove line buffer when flush failed. --- ChangeLog | 38 ++++++++++++++++++- config.make.in | 4 +- configure | 97 +++++++++++++++++++++++++++++++++++++------------ configure.in | 6 +-- mach/errorlib.h | 7 +++- 5 files changed, 120 insertions(+), 32 deletions(-) diff --git a/ChangeLog b/ChangeLog index b6a90abac1..aaca161caa 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,13 +1,47 @@ +Sun Mar 12 18:21:10 1995 Roland McGrath + + * malloc/malloc.h (_malloc_internal, _realloc_internal): Declare these. + * malloc/realloc.c (_realloc_internal): Renamed from realloc; + don't use __realloc_hook. + (realloc): New function; call __realloc_hook ?: _realloc_internal. + * malloc/malloc.c (_malloc_internal): Renamed from malloc; + don't use __malloc_hook. + (malloc): New function; call __malloc_hook ?: _malloc_internal. + (initialize): Set up _heaplimit to cover the _heapinfo table. + (morecore_recursing): New static variable. + (morecore): If that is set, return null immediately. + When growing the info table, before getting new core from the + system for it, set morecore_recursing and try moving _heapinfo + with _realloc_internal. When that fails and we get new core, set + _heaplimit to cover the core for the new _heapinfo table. + (register_heapinfo): New function. Record the _heapinfo table's + own blocks in that table and in the statistics variables. + (initialize, _malloc_internal): Use it after allocating new table. + +Fri Mar 10 22:26:28 1995 Jim Meyering (meyering@comco.com) + + * sysdeps/generic/memchr.c: Remove ansidecl.h and clean up for use + by other packages. + [LONG_MAX <= LONG_MAX_32_BITS]: Don't compile 64-bit code. + Fri Mar 10 13:31:29 1995 Roland McGrath + * mach/errorlib.h (errors): Use const for decl. + + * time/tzfile.c (uc2ul, _uc2ul): Macros removed. + (decode): New inline function; decode signed 32-bit integers, and + sign-extend properly when long is longer than 32 bits. + (__tzfile_read): Changed all uses of uc2ul to decode. + Decode the transition times properly when sizeof (time_t) > 4. + * stdio/printf.h: Doc fixes. Don't #include . (printf_function): Make last arg ARGS a vector of pointers instead of a pointer to va_list. Fri Mar 10 13:46:25 1995 Ulrich Drepper - * stdio/vfprintf.c (PAD): use return value of _IO_padn. - (buffered_vfprintf): remove line buffer when flush failed. + * stdio/vfprintf.c [USE_IN_LIBIO] (PAD): Use return value of _IO_padn. + (buffered_vfprintf): Remove line buffer when flush failed. Fri Mar 10 00:04:55 1995 Roland McGrath diff --git a/config.make.in b/config.make.in index ba5b891b0d..0f974688a1 100644 --- a/config.make.in +++ b/config.make.in @@ -14,7 +14,7 @@ config-sysdirs = @sysnames@ config-defines = @DEFS@ -# Configureation options. +# Configuration options. gnu-as = @gnu_as@ gnu-ld = @gnu_ld@ elf = @elf@ @@ -23,10 +23,12 @@ build-shared = @shared@ build-profile = @profile@ build-omitfp = @omitfp@ +# Build tools. CC = @CC@ AR = @AR@ RANLIB = @RANLIB@ +# Installation tools. INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_DATA = @INSTALL_DATA@ diff --git a/configure b/configure index 5c1acaa02f..282c82239f 100755 --- a/configure +++ b/configure @@ -1,8 +1,8 @@ #! /bin/sh -# From configure.in Id: configure.in,v 1.72 1995/01/30 07:26:57 roland Exp roland +# From configure.in CVSid # Guess values for system-dependent variables and create Makefiles. -# Generated automatically using autoconf version 2.1.1 +# Generated automatically using autoconf version 2.2 # Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc. # # This configure script is free software; the Free Software Foundation @@ -24,6 +24,12 @@ ac_help="$ac_help --with-elf if using the ELF object format" ac_help="$ac_help --with-weak-symbols if weak symbols are available in as and ld" +ac_help="$ac_help + --enable-shared build shared library [default=yes if GNU ld & ELF]" +ac_help="$ac_help + --enable-profile build profiled library [default=yes]" +ac_help="$ac_help + --enable-omitfp build undebuggable optimized library [default=no]" # Initialize some variables set by options. # The variables have the same names as the options, with @@ -229,7 +235,7 @@ EOF verbose=yes ;; -version | --version | --versio | --versi | --vers) - echo "configure generated by autoconf version 2.1.1" + echo "configure generated by autoconf version 2.2" exit 0 ;; -with-* | --with-*) @@ -480,6 +486,31 @@ else fi +# Check whether --enable-shared or --disable-shared was given. +enableval="$enable_shared" +if test -n "$enableval"; then + shared=$enableval +else + shared=default +fi + +# Check whether --enable-profile or --disable-profile was given. +enableval="$enable_profile" +if test -n "$enableval"; then + profile=$enableval +else + profile=yes +fi + +# Check whether --enable-omitfp or --disable-omitfp was given. +enableval="$enable_omitfp" +if test -n "$enableval"; then + omitfp=$enableval +else + omitfp=no +fi + + ac_aux_dir= for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do if test -f $ac_dir/install-sh; then @@ -532,7 +563,7 @@ config_machine=$host_cpu config_vendor=$host_vendor config_os=$host_os sysdep_dir=$srcdir/sysdeps echo $ac_n "checking sysdep dirs""... $ac_c" 1>&4 -if eval "test \"`echo '${'libc_cv_sysdirs'+set}'`\" = set"; then +if eval "test \"`echo '$''{'libc_cv_sysdirs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else machine=$config_machine @@ -735,7 +766,7 @@ esac # ./install, which can be erroneously created by make from ./install.sh. echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&4 if test -z "$INSTALL"; then -if eval "test \"`echo '${'ac_cv_path_install'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:" @@ -806,7 +837,7 @@ fi # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 -if eval "test \"`echo '${'ac_cv_prog_CC'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else if test -n "$CC"; then @@ -836,7 +867,7 @@ fi # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. set dummy ${ac_tool_prefix}ar; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 -if eval "test \"`echo '${'ac_cv_prog_AR'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_prog_AR'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else if test -n "$AR"; then @@ -866,7 +897,7 @@ fi # 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 echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 -if eval "test \"`echo '${'ac_cv_prog_RANLIB'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else if test -n "$RANLIB"; then @@ -896,7 +927,7 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&4 -if eval "test \"`echo '${'ac_cv_prog_RANLIB'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else if test -n "$RANLIB"; then @@ -932,7 +963,7 @@ if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then -if eval "test \"`echo '${'ac_cv_prog_CPP'+set}'`\" = set"; then +if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else # This must be in double quotes, not single quotes, because CPP may get @@ -941,7 +972,7 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext < Syntax Error @@ -955,7 +986,7 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext < Syntax Error @@ -980,7 +1011,7 @@ echo "$ac_t""$CPP" 1>&4 echo $ac_n "checking signed size_t type""... $ac_c" 1>&4 -if eval "test \"`echo '${'libc_cv_signed_size_t'+set}'`\" = set"; then +if eval "test \"`echo '$''{'libc_cv_signed_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else echo '#include @@ -1003,11 +1034,11 @@ EOF fi echo $ac_n "checking libc-friendly stddef.h""... $ac_c" 1>&4 -if eval "test \"`echo '${'libc_cv_friendly_stddef'+set}'`\" = set"; then +if eval "test \"`echo '$''{'libc_cv_friendly_stddef'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else cat > conftest.$ac_ext < seems to be libc-friendly." fi echo $ac_n "checking whether we need to use -P to assemble .S files""... $ac_c" 1>&4 -if eval "test \"`echo '${'libc_cv_need_minus_P'+set}'`\" = set"; then +if eval "test \"`echo '$''{'libc_cv_need_minus_P'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else cat > conftest.S <&4 - if eval "test \"`echo '${'libc_cv_uname_release'+set}'`\" = set"; then + if eval "test \"`echo '$''{'libc_cv_uname_release'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else kernel_release=`echo "$kernel_id" | sed 's/^[^0-9.]*\([0-9.]*\).*$/\1/'` @@ -1113,7 +1144,7 @@ fi uname_release="$libc_cv_uname_release" echo $ac_n "checking OS version for uname""... $ac_c" 1>&4 - if eval "test \"`echo '${'libc_cv_uname_version'+set}'`\" = set"; then + if eval "test \"`echo '$''{'libc_cv_uname_version'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&4 else kernel_version=`echo "$kernel_id" | sed 's/^[^#]*#\([0-9]*\).*$/\1/'` @@ -1160,6 +1191,15 @@ EOF fi +if test $shared = default; then + if test $gnu_ld = yes; then + shared=$elf + fi +fi + + + + if test "`(cd $srcdir; pwd)`" = "`pwd`"; then config_makefile= else @@ -1167,9 +1207,7 @@ else fi trap '' 1 2 15 -if test -w $cache_file; then -echo "updating cache $cache_file" -cat > $cache_file <<\EOF +cat > confcache <<\EOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs. It is not useful on other systems. @@ -1189,10 +1227,18 @@ EOF # and sets the high bit in the cache file unless we assign to the vars. (set) 2>&1 | sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \ - >> $cache_file + >> confcache +if cmp -s $cache_file confcache; then + : else -echo "not updating unwritable cache $cache_file" + if test -w $cache_file; then + echo "updating cache $cache_file" + cat confcache > $cache_file + else + echo "not updating unwritable cache $cache_file" + fi fi +rm -f confcache trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15 @@ -1236,7 +1282,7 @@ do echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion" exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;; -version | --version | --versio | --versi | --vers | --ver | --ve | --v) - echo "$CONFIG_STATUS generated by autoconf version 2.1.1" + echo "$CONFIG_STATUS generated by autoconf version 2.2" exit 0 ;; -help | --help | --hel | --he | --h) echo "\$ac_cs_usage"; exit 0 ;; @@ -1287,6 +1333,9 @@ s%@gnu_ld@%$gnu_ld%g s%@gnu_as@%$gnu_as%g s%@elf@%$elf%g s%@weak@%$weak%g +s%@shared@%$shared%g +s%@profile@%$profile%g +s%@omitfp@%$omitfp%g CEOF EOF diff --git a/configure.in b/configure.in index 28314ca5a4..e6f044bc69 100644 --- a/configure.in +++ b/configure.in @@ -41,13 +41,13 @@ dnl Arguments to enable or disable building the shared, profiled, and dnl -fomit-frame-pointer libraries. AC_ARG_ENABLE(shared, dnl [ --enable-shared build shared library [default=yes if GNU ld & ELF]], - shared=yes, shared=no, shared=default) + shared=$enableval, shared=default) AC_ARG_ENABLE(profile, dnl [ --enable-profile build profiled library [default=yes]], - profile=yes, profile=no, profile=yes) + profile=$enableval, profile=yes) AC_ARG_ENABLE(omitfp, dnl [ --enable-omitfp build undebuggable optimized library [default=no]], - omitfp=yes, omitfp=no, omitfp=no) + omitfp=$enableval, omitfp=no) AC_CANONICAL_HOST # We keep the original values in `$config_*' and never modify them, so we diff --git a/mach/errorlib.h b/mach/errorlib.h index b60fc5e5a4..7fe6350b43 100644 --- a/mach/errorlib.h +++ b/mach/errorlib.h @@ -26,7 +26,10 @@ /* * HISTORY * $Log$ - * Revision 1.4 1993/12/17 21:56:16 roland + * Revision 1.5 1995/03/10 23:57:44 roland + * (errors): Use const for decl. + * + * Revision 1.4 1993/12/17 21:56:16 roland * entered into RCS * * Revision 2.3 92/03/31 15:18:52 rpd @@ -82,6 +85,6 @@ struct error_system { }; #define errors __mach_error_systems -extern struct error_system errors[err_max_system+1]; +extern const struct error_system errors[err_max_system+1]; #define errlib_count(s) (sizeof(s)/sizeof(s[0]))