diff options
-rw-r--r-- | Makerules | 35 | ||||
-rw-r--r-- | Rules | 10 | ||||
-rw-r--r-- | config.make.in | 1 | ||||
-rwxr-xr-x | configure | 113 | ||||
-rw-r--r-- | configure.in | 14 | ||||
-rw-r--r-- | iconvdata/iso8859-1.c | 3 | ||||
-rw-r--r-- | intl/textdomain.c | 6 | ||||
-rw-r--r-- | libio/fileops.c | 27 | ||||
-rw-r--r-- | localedata/ChangeLog | 5 | ||||
-rw-r--r-- | localedata/locales/ru_RU | 2 |
10 files changed, 146 insertions, 70 deletions
diff --git a/Makerules b/Makerules index ae9114b0f1..780c4b90d2 100644 --- a/Makerules +++ b/Makerules @@ -172,6 +172,8 @@ endef $(common-objpfx)dummy.d: echo '# .s files cannot contain includes, so they need no deps.' > $@ +object-suffixes-for-rules = $(object-suffixes) .oS + # It matters that this set of rules, for compiling from sources in # the current directory (the $srcdir/$subdir) come before the # generated sysdep rules in included from sysd-rules below. When @@ -180,21 +182,21 @@ $(common-objpfx)dummy.d: define o-iterator-doit $(objpfx)%$o: %.S $(before-compile); $$(compile-command.S) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: %.S $(before-compile); $(+make-deps) define o-iterator-doit $(objpfx)%$o: %.s $(before-compile); $$(compile-command.s) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: %.s $(common-objpfx)dummy.d; $(make-dummy-dep) define o-iterator-doit $(objpfx)%$o: %.c $(before-compile); $$(compile-command.c) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: %.c $(before-compile); $(+make-deps) @@ -206,21 +208,21 @@ ifdef objpfx define o-iterator-doit $(objpfx)%$o: $(objpfx)%.S $(before-compile); $$(compile-command.S) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: $(objpfx)%.S $(before-compile); $(+make-deps) define o-iterator-doit $(objpfx)%$o: $(objpfx)%.s $(before-compile); $$(compile-command.s) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: $(objpfx)%.s $(common-objpfx)dummy.d; $(make-dummy-dep) define o-iterator-doit $(objpfx)%$o: $(objpfx)%.c $(before-compile); $$(compile-command.c) endef -object-suffixes-left := $(object-suffixes) +object-suffixes-left := $(object-suffixes-for-rules) include $(o-iterator) $(objpfx)%.d: $(objpfx)%.c $(before-compile); $(+make-deps) endif @@ -482,6 +484,11 @@ verbose := endif # not -s ARFLAGS := r$(verbose) +ifeq ($(have-ar-S),yes) +CREATE_ARFLAGS := Scru$(verbose) +else +CREATE_ARFLAGS := cru$(verbose) +endif # This makes all the object files in the parent library archive. @@ -538,7 +545,7 @@ include $(o-iterator) define do-ar topdir=`cd $(..).; pwd`; \ $(patsubst %/,cd %;,$(objpfx)) \ -$(SHELL) $$topdir/autolock.sh ${O%-lib}.lck $(AR) cru$(verbose) ${O%-lib} \ +$(SHELL) $$topdir/autolock.sh ${O%-lib}.lck $(AR) $(CREATE_ARFLAGS) ${O%-lib} \ $(patsubst $(objpfx)%,%,$^) rm -f $@ touch $@ @@ -574,7 +581,7 @@ objects objs: $(foreach o,$(object-suffixes),$(o-objects)) \ # Canned sequence for building an extra library archive. define build-extra-lib $(patsubst %/,cd %;,$(objpfx)) \ -$(AR) cru$(verbose) $(@:$(objpfx)%=%) \ +$(AR) $(CREATE_ARFLAGS) $(@:$(objpfx)%=%) \ $(patsubst $(objpfx)%,%,$^) $(RANLIB) $@ endef @@ -595,6 +602,9 @@ endef ifndef libc-name libc-name := c endif +ifndef libc_nonshared-name +libc_nonshared-name := $(libc-name)_nonshared +endif define do-install $(make-target-directory) @@ -616,6 +626,10 @@ installed-libcs := $(foreach o,$(object-suffixes),\ $(inst_libdir)/$(patsubst %,$(libtype$o),\ $(libprefix)$(libc-name))) installed-libcs := $(filter-out %_pic.a,$(installed-libcs)) +ifdef libc.so-version +installed-libcs += $(inst_libdir)/$(patsubst %,$(libtype.oS),\ + $(libprefix)$(libc_nonshared-name)) +endif install: $(installed-libcs) $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(make-target-directory) @@ -693,7 +707,7 @@ ifndef subdir install: $(inst_libdir)/libc.so $(inst_libdir)/libc.so: $(common-objpfx)libc.so$(libc.so-version) \ $(elfobjdir)/$(rtld-installed-name) \ - $(inst_libdir)/lib$(libc-name).a + $(inst_libdir)/lib$(libc_nonshared-name).a (echo '/* GNU ld script';\ echo ' Use the shared library, but some functions are only in';\ echo ' the static library, so try that secondarily.'; \ @@ -702,7 +716,7 @@ $(inst_libdir)/libc.so: $(common-objpfx)libc.so$(libc.so-version) \ echo ' dependencies of $(<F) to find $(rtld-installed-name). */';\ echo 'GROUP ( $(slibdir)/libc.so$(libc.so-version)' \ '$(slibdir)/$(rtld-installed-name)' \ - '$(libdir)/lib$(libc-name).a )' \ + '$(libdir)/lib$(libc_nonshared-name).a )' \ ) > $@.new mv -f $@.new $@ @@ -906,6 +920,7 @@ common-mostlyclean: define rmobjs $(foreach o,$(object-suffixes), -rm -f $(objpfx)stamp$o $(o-objects)) +-rm -f $(objpfx)stamp.oS $(patsubst %,$(static-only-routines),$(objpfx)%.oS) endef # Also remove the dependencies and generated source files. diff --git a/Rules b/Rules index 2cc53ca280..88581a35da 100644 --- a/Rules +++ b/Rules @@ -189,11 +189,11 @@ $(static-only-routines:%=$(objpfx)%.os): %.os: $(common-objpfx)empty.os ln $< $@ touch $@ -# Must build the routines as PIC, though, because they can end up in (users') -# shared objects. We don't want to use CFLAGS-os because users may, for -# example, make that processor-specific. -$(static-only-routines:%=$(objpfx)%.o): $(objpfx)%.o: %.c $(before-compile) - $(compile.c) $(pic-ccflag) $(OUTPUT_OPTION) +subdir_lib: $(objpfx)stamp.oS +$(objpfx)stamp.oS: $(objpfx)stamp%: $(static-only-routines:%=$(objpfx)%.oS) + $(do-ar) +$(common-objpfx)$(patsubst %,$(libtype.oS),c)(\ +$(addsuffix .%,$(static-only-routines))): $(objpfx)stamp.%; endif ifdef shared-only-routines diff --git a/config.make.in b/config.make.in index 069d5ddf24..8006adb45c 100644 --- a/config.make.in +++ b/config.make.in @@ -31,6 +31,7 @@ with-cvs = @with_cvs@ versioning = @VERSIONING@ +have-ar-S=@libc_cv_ar_S@ have-no-whole-archive = @libc_cv_ld_no_whole_archive@ have-no-exceptions = @libc_cv_gcc_no_exceptions@ have-bash2 = @libc_cv_have_bash2@ diff --git a/configure b/configure index 6bb49c3dba..7776ef7e96 100755 --- a/configure +++ b/configure @@ -1681,9 +1681,29 @@ fi fi +# check if ar takes S +echo $ac_n "checking for ar S""... $ac_c" 1>&6 +echo "configure:1687: checking for ar S" >&5 +if eval "test \"`echo '$''{'libc_cv_ar_S'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + tmpo=$$.o +tmplib=lib$$.a +rm -f $tmpo $tmplib +touch $tmpo +if { ac_try='${AR-ar} rcuS $tmplib $tmpo > /dev/null 2>&1'; { (eval echo configure:1695: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + libc_cv_ar_S=yes +else + libc_cv_ar_S=no +fi +rm -f $tmpo $tmplib +fi + +echo "$ac_t""$libc_cv_ar_S" 1>&6 + # check for recent compiler echo $ac_n "checking compiler version""... $ac_c" 1>&6 -echo "configure:1687: checking compiler version" >&5 +echo "configure:1707: checking compiler version" >&5 case `${CC-cc} -v 2>&1` in *egcs-2.91.* | *egcs-1.0.[2-9]* | *egcs-1.1* | *2.8.[1-9]* | *2.9.[0-9]*) cc_is_recent="ok" @@ -1708,7 +1728,7 @@ fi # - two terminals occur directly after each other # - the path contains an element with a dot in it echo $ac_n "checking LD_LIBRARY_PATH variable""... $ac_c" 1>&6 -echo "configure:1712: checking LD_LIBRARY_PATH variable" >&5 +echo "configure:1732: checking LD_LIBRARY_PATH variable" >&5 case ${LD_LIBRARY_PATH} in [:\;]* | *[:\;] | *[:\;][:\;]* | *[:\;]. | .[:\;]*| . | *[:\;].[:\;]* ) ld_library_path_setting="contains current directory" @@ -1726,7 +1746,7 @@ fi # Extract the first word of "bash", so it can be a program name with args. set dummy bash; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1730: checking for $ac_word" >&5 +echo "configure:1750: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_BASH'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1768,7 +1788,7 @@ if test "$BASH" = no; then # Extract the first word of "ksh", so it can be a program name with args. set dummy ksh; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1772: checking for $ac_word" >&5 +echo "configure:1792: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_KSH'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1814,7 +1834,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:1818: checking for $ac_word" >&5 +echo "configure:1838: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_path_PERL'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1849,7 +1869,7 @@ test -n "$PERL" || PERL="no" echo $ac_n "checking for signed size_t type""... $ac_c" 1>&6 -echo "configure:1853: checking for signed size_t type" >&5 +echo "configure:1873: checking for signed size_t type" >&5 if eval "test \"`echo '$''{'libc_cv_signed_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1873,12 +1893,12 @@ EOF fi echo $ac_n "checking for libc-friendly stddef.h""... $ac_c" 1>&6 -echo "configure:1877: checking for libc-friendly stddef.h" >&5 +echo "configure:1897: checking for libc-friendly stddef.h" >&5 if eval "test \"`echo '$''{'libc_cv_friendly_stddef'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1882 "configure" +#line 1902 "configure" #include "confdefs.h" #define __need_size_t #define __need_wchar_t @@ -1893,7 +1913,7 @@ size_t size; wchar_t wchar; if (&size == NULL || &wchar == NULL) abort (); ; return 0; } EOF -if { (eval echo configure:1897: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* libc_cv_friendly_stddef=yes else @@ -1912,7 +1932,7 @@ override stddef.h = # The installed <stddef.h> seems to be libc-friendly." fi echo $ac_n "checking whether we need to use -P to assemble .S files""... $ac_c" 1>&6 -echo "configure:1916: checking whether we need to use -P to assemble .S files" >&5 +echo "configure:1936: checking whether we need to use -P to assemble .S files" >&5 if eval "test \"`echo '$''{'libc_cv_need_minus_P'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1943,7 +1963,7 @@ if test $ac_cv_prog_gcc = yes; then # We must check this even if -pipe is not given here, because the user # might do `make CFLAGS=-pipe'. echo $ac_n "checking for gcc 2.7.x -pipe bug""... $ac_c" 1>&6 -echo "configure:1947: checking for gcc 2.7.x -pipe bug" >&5 +echo "configure:1967: checking for gcc 2.7.x -pipe bug" >&5 if eval "test \"`echo '$''{'libc_cv_gcc_pipe_bug'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1972,7 +1992,7 @@ else fi echo $ac_n "checking for assembler global-symbol directive""... $ac_c" 1>&6 -echo "configure:1976: checking for assembler global-symbol directive" >&5 +echo "configure:1996: checking for assembler global-symbol directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_global_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2002,7 +2022,7 @@ EOF fi echo $ac_n "checking for .set assembler directive""... $ac_c" 1>&6 -echo "configure:2006: checking for .set assembler directive" >&5 +echo "configure:2026: checking for .set assembler directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_set_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2036,7 +2056,7 @@ EOF fi echo $ac_n "checking for .symver assembler directive""... $ac_c" 1>&6 -echo "configure:2040: checking for .symver assembler directive" >&5 +echo "configure:2060: checking for .symver assembler directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_symver_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2055,7 +2075,7 @@ fi echo "$ac_t""$libc_cv_asm_symver_directive" 1>&6 echo $ac_n "checking for ld --version-script""... $ac_c" 1>&6 -echo "configure:2059: checking for ld --version-script" >&5 +echo "configure:2079: checking for ld --version-script" >&5 if eval "test \"`echo '$''{'libc_cv_ld_version_script_option'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2078,7 +2098,7 @@ EOF if { ac_try='${CC-cc} $CFLAGS -shared -o conftest.so conftest.o -nostartfiles -nostdlib -Wl,--version-script,conftest.map - 1>&5'; { (eval echo configure:2082: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; + 1>&5'; { (eval echo configure:2102: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_ld_version_script_option=yes else @@ -2116,7 +2136,7 @@ if test $VERSIONING = no; then fi if test $elf = yes; then echo $ac_n "checking for .previous assembler directive""... $ac_c" 1>&6 -echo "configure:2120: checking for .previous assembler directive" >&5 +echo "configure:2140: checking for .previous assembler directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_previous_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2124,7 +2144,7 @@ else .section foo_section .previous EOF - if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2128: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2148: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_asm_previous_directive=yes else libc_cv_asm_previous_directive=no @@ -2140,7 +2160,7 @@ EOF else echo $ac_n "checking for .popsection assembler directive""... $ac_c" 1>&6 -echo "configure:2144: checking for .popsection assembler directive" >&5 +echo "configure:2164: checking for .popsection assembler directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_popsection_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2148,7 +2168,7 @@ else .pushsection foo_section .popsection EOF - if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2152: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + if { ac_try='${CC-cc} -c $CFLAGS conftest.s 1>&5'; { (eval echo configure:2172: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_asm_popsection_directive=yes else libc_cv_asm_popsection_directive=no @@ -2168,12 +2188,12 @@ fi if test $elf != yes; then echo $ac_n "checking for .init and .fini sections""... $ac_c" 1>&6 -echo "configure:2172: checking for .init and .fini sections" >&5 +echo "configure:2192: checking for .init and .fini sections" >&5 if eval "test \"`echo '$''{'libc_cv_have_initfini'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2177 "configure" +#line 2197 "configure" #include "confdefs.h" int main() { @@ -2182,7 +2202,7 @@ asm (".section .init"); asm (".text"); ; return 0; } EOF -if { (eval echo configure:2186: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2206: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* libc_cv_have_initfini=yes else @@ -2210,19 +2230,19 @@ if test $elf = yes; then else if test $ac_cv_prog_cc_works = yes; then echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6 -echo "configure:2214: checking for _ prefix on C symbol names" >&5 +echo "configure:2234: checking for _ prefix on C symbol names" >&5 if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2219 "configure" +#line 2239 "configure" #include "confdefs.h" asm ("_glibc_foobar:"); int main() { glibc_foobar (); ; return 0; } EOF -if { (eval echo configure:2226: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then +if { (eval echo configure:2246: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then rm -rf conftest* libc_cv_asm_underscores=yes else @@ -2237,17 +2257,17 @@ fi echo "$ac_t""$libc_cv_asm_underscores" 1>&6 else echo $ac_n "checking for _ prefix on C symbol names""... $ac_c" 1>&6 -echo "configure:2241: checking for _ prefix on C symbol names" >&5 +echo "configure:2261: checking for _ prefix on C symbol names" >&5 if eval "test \"`echo '$''{'libc_cv_asm_underscores'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2246 "configure" +#line 2266 "configure" #include "confdefs.h" void underscore_test(void) { return; } EOF -if { (eval echo configure:2251: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2271: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then if grep _underscore_test conftest* >/dev/null; then rm -f conftest* libc_cv_asm_underscores=yes @@ -2279,7 +2299,7 @@ if test $elf = yes; then fi echo $ac_n "checking for assembler .weak directive""... $ac_c" 1>&6 -echo "configure:2283: checking for assembler .weak directive" >&5 +echo "configure:2303: checking for assembler .weak directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_weak_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2302,7 +2322,7 @@ echo "$ac_t""$libc_cv_asm_weak_directive" 1>&6 if test $libc_cv_asm_weak_directive = no; then echo $ac_n "checking for assembler .weakext directive""... $ac_c" 1>&6 -echo "configure:2306: checking for assembler .weakext directive" >&5 +echo "configure:2326: checking for assembler .weakext directive" >&5 if eval "test \"`echo '$''{'libc_cv_asm_weakext_directive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2340,7 +2360,7 @@ EOF fi echo $ac_n "checking for ld --no-whole-archive""... $ac_c" 1>&6 -echo "configure:2344: checking for ld --no-whole-archive" >&5 +echo "configure:2364: checking for ld --no-whole-archive" >&5 if eval "test \"`echo '$''{'libc_cv_ld_no_whole_archive'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2351,7 +2371,7 @@ __throw () {} EOF if { ac_try='${CC-cc} $CFLAGS -nostdlib -nostartfiles -Wl,--no-whole-archive - -o conftest conftest.c 1>&5'; { (eval echo configure:2355: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + -o conftest conftest.c 1>&5'; { (eval echo configure:2375: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_ld_no_whole_archive=yes else libc_cv_ld_no_whole_archive=no @@ -2362,7 +2382,7 @@ fi echo "$ac_t""$libc_cv_ld_no_whole_archive" 1>&6 echo $ac_n "checking for gcc -fno-exceptions""... $ac_c" 1>&6 -echo "configure:2366: checking for gcc -fno-exceptions" >&5 +echo "configure:2386: checking for gcc -fno-exceptions" >&5 if eval "test \"`echo '$''{'libc_cv_gcc_no_exceptions'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2373,7 +2393,7 @@ __throw () {} EOF if { ac_try='${CC-cc} $CFLAGS -nostdlib -nostartfiles -fno-exceptions - -o conftest conftest.c 1>&5'; { (eval echo configure:2377: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + -o conftest conftest.c 1>&5'; { (eval echo configure:2397: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_gcc_no_exceptions=yes else libc_cv_gcc_no_exceptions=no @@ -2385,14 +2405,14 @@ echo "$ac_t""$libc_cv_gcc_no_exceptions" 1>&6 if test "$base_machine" = alpha ; then echo $ac_n "checking for function ..ng prefix""... $ac_c" 1>&6 -echo "configure:2389: checking for function ..ng prefix" >&5 +echo "configure:2409: checking for function ..ng prefix" >&5 if eval "test \"`echo '$''{'libc_cv_gcc_alpha_ng_prefix'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.c <<\EOF foo () { } EOF -if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:2396: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; +if { ac_try='${CC-cc} -S conftest.c -o - | fgrep "\$foo..ng" > /dev/null'; { (eval echo configure:2416: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_gcc_alpha_ng_prefix=yes else @@ -2416,12 +2436,12 @@ fi fi echo $ac_n "checking for DWARF2 unwind info support""... $ac_c" 1>&6 -echo "configure:2420: checking for DWARF2 unwind info support" >&5 +echo "configure:2440: checking for DWARF2 unwind info support" >&5 if eval "test \"`echo '$''{'libc_cv_gcc_dwarf2_unwind_info'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.c <<EOF -#line 2425 "configure" +#line 2445 "configure" static char __EH_FRAME_BEGIN__; _start () { @@ -2448,7 +2468,7 @@ __bzero () {} EOF if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame_info -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&5'; { (eval echo configure:2452: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + -o conftest conftest.c -lgcc >&5'; { (eval echo configure:2472: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_gcc_dwarf2_unwind_info=static else libc_cv_gcc_dwarf2_unwind_info=no @@ -2456,7 +2476,7 @@ fi if test $libc_cv_gcc_dwarf2_unwind_info = no; then if { ac_try='${CC-cc} $CFLAGS -DCHECK__register_frame -nostdlib -nostartfiles - -o conftest conftest.c -lgcc >&5'; { (eval echo configure:2460: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then + -o conftest conftest.c -lgcc >&5'; { (eval echo configure:2480: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; }; then libc_cv_gcc_dwarf2_unwind_info=yes else libc_cv_gcc_dwarf2_unwind_info=no @@ -2527,7 +2547,7 @@ if test "$uname" = "sysdeps/generic"; then fi echo $ac_n "checking OS release for uname""... $ac_c" 1>&6 -echo "configure:2531: checking OS release for uname" >&5 +echo "configure:2551: checking OS release for uname" >&5 if eval "test \"`echo '$''{'libc_cv_uname_release'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2549,7 +2569,7 @@ echo "$ac_t""$libc_cv_uname_release" 1>&6 uname_release="$libc_cv_uname_release" echo $ac_n "checking OS version for uname""... $ac_c" 1>&6 -echo "configure:2553: checking OS version for uname" >&5 +echo "configure:2573: checking OS version for uname" >&5 if eval "test \"`echo '$''{'libc_cv_uname_version'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2571,7 +2591,7 @@ else fi echo $ac_n "checking stdio selection""... $ac_c" 1>&6 -echo "configure:2575: checking stdio selection" >&5 +echo "configure:2595: checking stdio selection" >&5 case $stdio in libio) cat >> confdefs.h <<\EOF @@ -2583,7 +2603,7 @@ esac echo "$ac_t""$stdio" 1>&6 echo $ac_n "checking ldap selection""... $ac_c" 1>&6 -echo "configure:2587: checking ldap selection" >&5 +echo "configure:2607: checking ldap selection" >&5 case $add_ons in *ldap*) @@ -2645,7 +2665,7 @@ if test $static = no && test $shared = yes; then fi echo $ac_n "checking whether -fPIC is default""... $ac_c" 1>&6 -echo "configure:2649: checking whether -fPIC is default" >&5 +echo "configure:2669: checking whether -fPIC is default" >&5 if eval "test \"`echo '$''{'pic_default'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2853,6 +2873,7 @@ s%@cross_compiling@%$cross_compiling%g s%@CPP@%$CPP%g s%@AR@%$AR%g s%@RANLIB@%$RANLIB%g +s%@libc_cv_ar_S@%$libc_cv_ar_S%g s%@BASH@%$BASH%g s%@libc_cv_have_bash2@%$libc_cv_have_bash2%g s%@KSH@%$KSH%g diff --git a/configure.in b/configure.in index 2a80a8b0aa..adc3381cba 100644 --- a/configure.in +++ b/configure.in @@ -468,6 +468,20 @@ LIBC_PROG_BINUTILS AC_CHECK_TOOL(AR, ar) AC_CHECK_TOOL(RANLIB, ranlib, :) +# check if ar takes S +AC_CACHE_CHECK(for ar S, libc_cv_ar_S, [dnl +tmpo=$$.o +tmplib=lib$$.a +rm -f $tmpo $tmplib +touch $tmpo +if AC_TRY_COMMAND([${AR-ar} rcuS $tmplib $tmpo > /dev/null 2>&1]); then + libc_cv_ar_S=yes +else + libc_cv_ar_S=no +fi +rm -f $tmpo $tmplib]) +AC_SUBST(libc_cv_ar_S)dnl + # check for recent compiler AC_MSG_CHECKING(compiler version) changequote(,)dnl diff --git a/iconvdata/iso8859-1.c b/iconvdata/iso8859-1.c index c6465d2bcf..5f98adcfee 100644 --- a/iconvdata/iso8859-1.c +++ b/iconvdata/iso8859-1.c @@ -124,7 +124,8 @@ gconv (struct gconv_step *step, struct gconv_step_data *data, while (cnt < inchars && (outwchars + sizeof (wchar_t) <= data->outbufsize)) { - *((wchar_t *) (outbuf + outwchars)) = inbuf[cnt]; + *((wchar_t *) (outbuf + outwchars)) = + (unsigned char) inbuf[cnt]; ++do_write; outwchars += sizeof (wchar_t); ++cnt; diff --git a/intl/textdomain.c b/intl/textdomain.c index 116419dd12..5dd4003a8e 100644 --- a/intl/textdomain.c +++ b/intl/textdomain.c @@ -1,5 +1,5 @@ /* Implementation of the textdomain(3) function. - Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU C Library. Its master source is NOT part of the C library, however. The master source lives in /gd/gnu/lib. @@ -57,7 +57,9 @@ extern const char *_nl_current_default_domain; prefix. So we have to make a difference here. */ #ifdef _LIBC # define TEXTDOMAIN __textdomain -# define strdup(str) __strdup (str) +# ifndef strdup +# define strdup(str) __strdup (str) +# endif #else # define TEXTDOMAIN textdomain__ #endif diff --git a/libio/fileops.c b/libio/fileops.c index d2377af73b..d184916807 100644 --- a/libio/fileops.c +++ b/libio/fileops.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1993, 1995, 1997 Free Software Foundation, Inc. +/* Copyright (C) 1993, 1995, 1997, 1998 Free Software Foundation, Inc. This file is part of the GNU IO Library. Written by Per Bothner <bothner@cygnus.com>. @@ -201,9 +201,10 @@ _IO_file_fopen (fp, filename, mode, is32not64) int oflags = 0, omode; int read_write; int oprot = 0666; + int i; if (_IO_file_is_open (fp)) return 0; - switch (*mode++) + switch (*mode) { case 'r': omode = O_RDONLY; @@ -223,11 +224,27 @@ _IO_file_fopen (fp, filename, mode, is32not64) __set_errno (EINVAL); return NULL; } - if (mode[0] == '+' || (mode[0] == 'b' && mode[1] == '+')) + for (i = 1; i < 4; ++i) { - omode = O_RDWR; - read_write &= _IO_IS_APPENDING; + switch (*++mode) + { + case '\0': + break; + case '+': + omode = O_RDWR; + read_write &= _IO_IS_APPENDING; + continue; + case 'x': + oflags |= O_EXCL; + continue; + case 'b': + default: + /* Ignore. */ + continue; + } + break; } + return _IO_file_open (fp, filename, omode|oflags, oprot, read_write, is32not64); } diff --git a/localedata/ChangeLog b/localedata/ChangeLog index c7ce0b7018..667e7fe4b0 100644 --- a/localedata/ChangeLog +++ b/localedata/ChangeLog @@ -1,3 +1,8 @@ +1998-03-22 Andreas Jaeger <aj@arthur.rhein-neckar.de> + + * locales/ru_RU: Abbreviations must end with a consonant. Fix for + Tuesday by Ilya Ovchinnikov <ilya@taspd13a.npi.msu.su>. [PR libc/517] + 1998-03-25 Ulrich Drepper <drepper@cygnus.com> * Makefile (distribute): Add tst-locale.sh. diff --git a/localedata/locales/ru_RU b/localedata/locales/ru_RU index 9129f794fe..18c9faaa8c 100644 --- a/localedata/locales/ru_RU +++ b/localedata/locales/ru_RU @@ -3052,7 +3052,7 @@ day "<V=><o=><s=><k=><r=><e=><s=><e=><n=><%'><e=>";/ "<S=><u=><b=><b=><o=><t=><a=>" abday "<V=><s=><k=>";/ "<P=><n=><d=>";/ - "<V=><t=><o=>";/ + "<V=><t=><r=>";/ "<S=><r=><d=>";/ "<C%><t=><v=>";/ "<P=><t=><n=>";/ |