mirror of git://sourceware.org/git/glibc.git
Update.
1997-06-26 02:06 Ulrich Drepper <drepper@cygnus.com> * Makerules ($(common-objpfx)libc.so): Use $(load-map-file) in dependency, not $(libc-map). * sysdeps/posix/mk-stdiolim.c: Pretty print. 1997-06-25 15:54 Fila Kolodny <fila@ibi.com> * sysdeps/posix/Makefile ($(common-objpfx)bits/stdio_lim.h): Don't conditionalize this on whether we are cross-compiling. 1997-06-21 15:47 H.J. Lu <hjl@gnu.ai.mit.edu> * elf/dl-lookup.c (do_lookup): Use default definition for a default versioned symbol. * elf/dl-version.c (_dl_check_map_versions): Set the hidden field. * elf/dlvsym.c (__dlvsym): Set the hidden field to 1. * elf/link.h (r_found_version): Add the hidden field. * math/test-matherr.c: New file. * math/Makefile (tests): Add test-matherr. (libm-support): Put back s_matherr. (static-only-routines, aux): Remove s_matherr.
This commit is contained in:
parent
478b92f03a
commit
f9a73ae19a
29
ChangeLog
29
ChangeLog
|
@ -1,3 +1,32 @@
|
||||||
|
1997-06-26 02:06 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
|
* Makerules ($(common-objpfx)libc.so): Use $(load-map-file) in
|
||||||
|
dependency, not $(libc-map).
|
||||||
|
|
||||||
|
* sysdeps/posix/mk-stdiolim.c: Pretty print.
|
||||||
|
|
||||||
|
1997-06-25 15:54 Fila Kolodny <fila@ibi.com>
|
||||||
|
|
||||||
|
* sysdeps/posix/Makefile ($(common-objpfx)bits/stdio_lim.h): Don't
|
||||||
|
conditionalize this on whether we are cross-compiling.
|
||||||
|
|
||||||
|
1997-06-21 15:47 H.J. Lu <hjl@gnu.ai.mit.edu>
|
||||||
|
|
||||||
|
* elf/dl-lookup.c (do_lookup): Use default definition
|
||||||
|
for a default versioned symbol.
|
||||||
|
|
||||||
|
* elf/dl-version.c (_dl_check_map_versions): Set the hidden field.
|
||||||
|
|
||||||
|
* elf/dlvsym.c (__dlvsym): Set the hidden field to 1.
|
||||||
|
|
||||||
|
* elf/link.h (r_found_version): Add the hidden field.
|
||||||
|
|
||||||
|
* math/test-matherr.c: New file.
|
||||||
|
|
||||||
|
* math/Makefile (tests): Add test-matherr.
|
||||||
|
(libm-support): Put back s_matherr.
|
||||||
|
(static-only-routines, aux): Remove s_matherr.
|
||||||
|
|
||||||
1997-06-23 23:39 Ulrich Drepper <drepper@cygnus.com>
|
1997-06-23 23:39 Ulrich Drepper <drepper@cygnus.com>
|
||||||
|
|
||||||
* string/Makefile (headers): Change bytesex.h to bits/endian.h.
|
* string/Makefile (headers): Change bytesex.h to bits/endian.h.
|
||||||
|
|
|
@ -383,7 +383,7 @@ libc-map = $(..)libc.map
|
||||||
$(common-objpfx)libc.so: $(elfobjdir)/soinit.so \
|
$(common-objpfx)libc.so: $(elfobjdir)/soinit.so \
|
||||||
$(common-objpfx)libc_pic.a \
|
$(common-objpfx)libc_pic.a \
|
||||||
$(elfobjdir)/sofini.so $(elfobjdir)/ld.so \
|
$(elfobjdir)/sofini.so $(elfobjdir)/ld.so \
|
||||||
$(libc-map)
|
$(load-map-file)
|
||||||
$(build-shlib)
|
$(build-shlib)
|
||||||
ifdef libc.so-version
|
ifdef libc.so-version
|
||||||
$(common-objpfx)libc.so$(libc.so-version): $(common-objpfx)libc.so
|
$(common-objpfx)libc.so$(libc.so-version): $(common-objpfx)libc.so
|
||||||
|
|
|
@ -613,6 +613,9 @@ EOF
|
||||||
mc68*:A/UX:*:*)
|
mc68*:A/UX:*:*)
|
||||||
echo m68k-apple-aux${UNAME_RELEASE}
|
echo m68k-apple-aux${UNAME_RELEASE}
|
||||||
exit 0 ;;
|
exit 0 ;;
|
||||||
|
news*:NEWS-OS:*:6*)
|
||||||
|
echo mips-sony-newsos6
|
||||||
|
exit 0 ;;
|
||||||
R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
|
R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
|
||||||
if [ -d /usr/nec ]; then
|
if [ -d /usr/nec ]; then
|
||||||
echo mips-nec-sysv${UNAME_RELEASE}
|
echo mips-nec-sysv${UNAME_RELEASE}
|
||||||
|
|
|
@ -150,7 +150,7 @@ case $basic_machine in
|
||||||
# Recognize the basic CPU types without company name.
|
# Recognize the basic CPU types without company name.
|
||||||
# Some are omitted here because they have special meanings below.
|
# Some are omitted here because they have special meanings below.
|
||||||
tahoe | i860 | m68k | m68000 | m88k | ns32k | arm \
|
tahoe | i860 | m68k | m68000 | m88k | ns32k | arm \
|
||||||
| arme[lb] | pyramid \
|
| arme[lb] | pyramid | mn10200 | mn10300 \
|
||||||
| tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
|
| tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
|
||||||
| alpha | we32k | ns16k | clipper | i370 | sh \
|
| alpha | we32k | ns16k | clipper | i370 | sh \
|
||||||
| powerpc | powerpcle | 1750a | dsp16xx | mips64 | mipsel \
|
| powerpc | powerpcle | 1750a | dsp16xx | mips64 | mipsel \
|
||||||
|
|
|
@ -151,10 +151,12 @@ do_lookup (const char *undef_name, unsigned long int hash,
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
/* We can match the version information. */
|
/* We can match the version information or use the
|
||||||
|
default one. */
|
||||||
ElfW(Half) ndx = verstab[symidx] & 0x7fff;
|
ElfW(Half) ndx = verstab[symidx] & 0x7fff;
|
||||||
if (map->l_versions[ndx].hash != version->hash
|
if ((map->l_versions[ndx].hash != version->hash
|
||||||
|| strcmp (map->l_versions[ndx].name, version->name))
|
|| strcmp (map->l_versions[ndx].name, version->name))
|
||||||
|
&& (version->hidden || map->l_versions[ndx].hash))
|
||||||
/* It's not the version we want. */
|
/* It's not the version we want. */
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
|
@ -274,6 +274,7 @@ _dl_check_map_versions (struct link_map *map, int verbose)
|
||||||
{
|
{
|
||||||
ElfW(Half) ndx = aux->vna_other & 0x7fff;
|
ElfW(Half) ndx = aux->vna_other & 0x7fff;
|
||||||
map->l_versions[ndx].hash = aux->vna_hash;
|
map->l_versions[ndx].hash = aux->vna_hash;
|
||||||
|
map->l_versions[ndx].hidden = aux->vna_other & 0x8000;
|
||||||
map->l_versions[ndx].name = &strtab[aux->vna_name];
|
map->l_versions[ndx].name = &strtab[aux->vna_name];
|
||||||
map->l_versions[ndx].filename = &strtab[ent->vn_file];
|
map->l_versions[ndx].filename = &strtab[ent->vn_file];
|
||||||
|
|
||||||
|
|
|
@ -95,6 +95,7 @@ __dlvsym (void *handle, const char *name, const char *version_str)
|
||||||
|
|
||||||
/* Compute hash value to the version string. */
|
/* Compute hash value to the version string. */
|
||||||
args.version.name = version_str;
|
args.version.name = version_str;
|
||||||
|
args.version.hidden = 1;
|
||||||
args.version.hash = _dl_elf_hash (version_str);
|
args.version.hash = _dl_elf_hash (version_str);
|
||||||
/* We don't have a specific file where the symbol can be found. */
|
/* We don't have a specific file where the symbol can be found. */
|
||||||
args.version.filename = NULL;
|
args.version.filename = NULL;
|
||||||
|
|
|
@ -87,6 +87,7 @@ struct r_found_version
|
||||||
const char *name;
|
const char *name;
|
||||||
ElfW(Word) hash;
|
ElfW(Word) hash;
|
||||||
|
|
||||||
|
int hidden;
|
||||||
const char *filename;
|
const char *filename;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -29,9 +29,7 @@ headers := math.h bits/mathcalls.h bits/mathinline.h bits/huge_val.h \
|
||||||
distribute := math_private.h machine/asm.h machine/endian.h
|
distribute := math_private.h machine/asm.h machine/endian.h
|
||||||
|
|
||||||
# FPU support code.
|
# FPU support code.
|
||||||
aux := fpu_control setfpucw s_matherr
|
aux := fpu_control setfpucw
|
||||||
|
|
||||||
static-only-routines := s_matherr
|
|
||||||
|
|
||||||
# Build the -lm library.
|
# Build the -lm library.
|
||||||
|
|
||||||
|
@ -40,7 +38,7 @@ extra-libs-others = $(extra-libs)
|
||||||
|
|
||||||
libm-map := libm.map
|
libm-map := libm.map
|
||||||
|
|
||||||
libm-support = k_standard s_lib_version s_signgam \
|
libm-support = k_standard s_lib_version s_matherr s_signgam \
|
||||||
s_lrint s_llrint s_lround s_llround \
|
s_lrint s_llrint s_lround s_llround \
|
||||||
fclrexcpt fgetexcptflg fraiseexcpt fsetexcptflg \
|
fclrexcpt fgetexcptflg fraiseexcpt fsetexcptflg \
|
||||||
ftestexcept fegetround fesetround fegetenv feholdexcpt \
|
ftestexcept fegetround fesetround fegetenv feholdexcpt \
|
||||||
|
@ -79,7 +77,7 @@ distribute += $(long-c-yes:=.c)
|
||||||
|
|
||||||
# Rules for the test suite.
|
# Rules for the test suite.
|
||||||
tests = test-float test-double $(test-longdouble-$(long-double-fcts)) \
|
tests = test-float test-double $(test-longdouble-$(long-double-fcts)) \
|
||||||
test-ifloat test-idouble
|
test-ifloat test-idouble test-matherr
|
||||||
# We do the `long double' tests only if this data type is available and
|
# We do the `long double' tests only if this data type is available and
|
||||||
# distrinct from `double'.
|
# distrinct from `double'.
|
||||||
#
|
#
|
||||||
|
@ -95,6 +93,7 @@ LDLIBS-test-ildoubl = libm
|
||||||
LDLIBS-test-float = libm
|
LDLIBS-test-float = libm
|
||||||
LDLIBS-test-double = libm
|
LDLIBS-test-double = libm
|
||||||
LDLIBS-test-ldouble = libm
|
LDLIBS-test-ldouble = libm
|
||||||
|
LDLIBS-test-matherr = libm
|
||||||
|
|
||||||
distribute += libm-test.c
|
distribute += libm-test.c
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
#undef _SVID_SOURCE
|
||||||
|
#define _SVID_SOURCE
|
||||||
|
#include <math.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
|
||||||
|
static int fail = 1;
|
||||||
|
|
||||||
|
int
|
||||||
|
matherr (struct exception *s)
|
||||||
|
{
|
||||||
|
printf ("matherr is working\n");
|
||||||
|
fail = 0;
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
main (void)
|
||||||
|
{
|
||||||
|
_LIB_VERSION = _SVID_;
|
||||||
|
acos (2.0);
|
||||||
|
return fail;
|
||||||
|
}
|
|
@ -19,17 +19,9 @@
|
||||||
ifneq (yes,$(inhibit-stdio_lim))
|
ifneq (yes,$(inhibit-stdio_lim))
|
||||||
# Disable these rules if we generate stdio_lim.h by other means.
|
# Disable these rules if we generate stdio_lim.h by other means.
|
||||||
|
|
||||||
ifeq (yes,$(cross-compiling))
|
|
||||||
$(common-objpfx)bits/stdio_lim.h:
|
|
||||||
@echo
|
|
||||||
@echo "You must build <bits/stdio_lim.h> by hand. Stop."
|
|
||||||
@echo
|
|
||||||
@exit 1
|
|
||||||
else
|
|
||||||
$(common-objpfx)bits/stdio_lim.h: $(common-objpfx)mk-stdiolim
|
$(common-objpfx)bits/stdio_lim.h: $(common-objpfx)mk-stdiolim
|
||||||
$(dir $<)$(notdir $<) > $@-t
|
$(dir $<)$(notdir $<) > $@-t
|
||||||
mv $@-t $@
|
mv $@-t $@
|
||||||
endif
|
|
||||||
|
|
||||||
# Turn into a version that works when cd'd into $(objdir).
|
# Turn into a version that works when cd'd into $(objdir).
|
||||||
mk-stdiolim-CFLAGS = $(patsubst -I$(shell pwd)//%,-I/%,\
|
mk-stdiolim-CFLAGS = $(patsubst -I$(shell pwd)//%,-I/%,\
|
||||||
|
|
|
@ -23,49 +23,49 @@ main()
|
||||||
{
|
{
|
||||||
/* These values correspond to the code in sysdeps/posix/tempname.c.
|
/* These values correspond to the code in sysdeps/posix/tempname.c.
|
||||||
Change the values here if you change that code. */
|
Change the values here if you change that code. */
|
||||||
printf("#define L_tmpnam %u\n", sizeof("/usr/tmp/") + 9);
|
printf ("#define L_tmpnam %u\n", sizeof ("/usr/tmp/") + 9);
|
||||||
printf("#define TMP_MAX %u\n", 62 * 62 * 62);
|
printf ("#define TMP_MAX %u\n", 62 * 62 * 62);
|
||||||
|
|
||||||
puts ("#ifdef __USE_POSIX");
|
puts ("#ifdef __USE_POSIX");
|
||||||
printf("#define L_ctermid %u\n", sizeof("/dev/tty"));
|
printf ("# define L_ctermid %u\n", sizeof ("/dev/tty"));
|
||||||
printf("#define L_cuserid 9\n");
|
printf ("# define L_cuserid 9\n");
|
||||||
puts ("#endif");
|
puts ("#endif");
|
||||||
|
|
||||||
/* POSIX does not require that OPEN_MAX and PATH_MAX be defined, so
|
/* POSIX does not require that OPEN_MAX and PATH_MAX be defined, so
|
||||||
<bits/local_lim.h> will not define them if they are run-time
|
<bits/local_lim.h> will not define them if they are run-time
|
||||||
variant (which is the case in the Hurd). ANSI still requires
|
variant (which is the case in the Hurd). ISO still requires
|
||||||
that FOPEN_MAX and FILENAME_MAX be defined, however. */
|
that FOPEN_MAX and FILENAME_MAX be defined, however. */
|
||||||
|
|
||||||
printf("#define FOPEN_MAX %u\n",
|
printf ("#define FOPEN_MAX %u\n",
|
||||||
#ifdef OPEN_MAX
|
#ifdef OPEN_MAX
|
||||||
|
|
||||||
OPEN_MAX
|
OPEN_MAX
|
||||||
#else
|
#else
|
||||||
/* This is the minimum number of files that the implementation
|
/* This is the minimum number of files that the implementation
|
||||||
guarantees can be open simultaneously. OPEN_MAX not being
|
guarantees can be open simultaneously. OPEN_MAX not being
|
||||||
defined means the maximum is run-time variant; but POSIX.1
|
defined means the maximum is run-time variant; but POSIX.1
|
||||||
requires that it never be less than _POSIX_OPEN_MAX, so that is
|
requires that it never be less than _POSIX_OPEN_MAX, so that is
|
||||||
a good minimum to use. */
|
a good minimum to use. */
|
||||||
_POSIX_OPEN_MAX
|
_POSIX_OPEN_MAX
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
);
|
);
|
||||||
|
|
||||||
printf("#define FILENAME_MAX %u\n",
|
printf ("#define FILENAME_MAX %u\n",
|
||||||
#ifdef PATH_MAX
|
#ifdef PATH_MAX
|
||||||
PATH_MAX
|
PATH_MAX
|
||||||
#else
|
#else
|
||||||
/* This is supposed to be the size needed to hold the longest file
|
/* This is supposed to be the size needed to hold the longest file
|
||||||
name string the implementation guarantees can be opened.
|
name string the implementation guarantees can be opened.
|
||||||
PATH_MAX not being defined means the actual limit on the length
|
PATH_MAX not being defined means the actual limit on the length
|
||||||
of a file name is runtime-variant (or it is unlimited). ANSI
|
of a file name is runtime-variant (or it is unlimited). ISO
|
||||||
says in such a case FILENAME_MAX should be a good size to
|
says in such a case FILENAME_MAX should be a good size to
|
||||||
allocate for a file name string. POSIX.1 guarantees that a
|
allocate for a file name string. POSIX.1 guarantees that a
|
||||||
file name up to _POSIX_PATH_MAX chars long can be opened, so
|
file name up to _POSIX_PATH_MAX chars long can be opened, so
|
||||||
this value must be at least that. */
|
this value must be at least that. */
|
||||||
1024 /* _POSIX_PATH_MAX is 255. */
|
1024 /* _POSIX_PATH_MAX is 255. */
|
||||||
#endif
|
#endif
|
||||||
);
|
);
|
||||||
|
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue