aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog28
-rw-r--r--Makefile22
-rw-r--r--config.make.in1
-rw-r--r--elf/Makefile2
-rw-r--r--nss/nss.h5
-rw-r--r--nss/nsswitch.c19
-rw-r--r--shlib-versions14
-rw-r--r--sunrpc/Makefile11
-rw-r--r--sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S4
9 files changed, 79 insertions, 27 deletions
diff --git a/ChangeLog b/ChangeLog
index 6baddc4..ca11fe0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,31 @@
+1997-01-29 04:30 Ulrich Drepper <drepper@cygnus.com>
+
+ * sunrpc/Makefile: Don't generate headers derived from .x files when
+ crosscompiling.
+
+1997-01-28 10:51 Richard Henderson <rth@tamu.edu>
+
+ * Makefile: Generate gnu/lib-names.h in before-compile.
+ * nss/nss.h (NSS_SHLIB_REVISION): Turn it into a const variable.
+ * nss/nssswitch.c (__nss_shlib_revision): New variable. Initialize
+ to the revision found for LIBNSS_FILES_SO.
+ (nss_initilized): Removed. It was tested but never set.
+ (nss_lookup_function): Don't treat NSS_SHLIB_REVISION as a literal.
+
+ * shlib-versions: Tag all alpha-linux shlibs with a .1 "minor"
+ not just libc. Except instead of ld.so.1.1 use ld-linux.so.2.
+
+ * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Typo in ldgp.
+
+1997-01-28 12:16 Andreas Jaeger <aj@arthur.pfalz.de>
+
+ * elf/Makefile (CFLAGS-dl-load.c): Use += to not
+ override the definition.
+
+1997-01-28 20:13 Fila Kolodny <fila@ibi.com>
+
+ * config.make.in (malloc): Remove.
+
1997-01-28 04:23 Ulrich Drepper <drepper@cygnus.com>
* version.h (VERSION): Bump to 2.0.1.
diff --git a/Makefile b/Makefile
index 790d08f..5cdae94 100644
--- a/Makefile
+++ b/Makefile
@@ -91,10 +91,12 @@ echo-headers: subdir_echo-headers
# What to install.
install-others = $(inst_includedir)/gnu/stubs.h
+install-bin = glibcbug
+
ifeq (yes,$(build-shared))
-install-others += $(inst_includedir)/gnu/lib-names.h
+before-compile += $(objpfx)lib-names.h
+install_others += $(inst_includedir)/gnu/lib-names.h
endif
-install-bin = glibcbug
ifeq (yes,$(gnu-ld))
libc-init = set-init
@@ -194,8 +196,13 @@ ifeq (yes,$(build-shared))
# Like gnu/stubs.h the gnu/lib-names.h header is not used while building the
# libc itself. So we generate it while installing.
-$(inst_includedir)/gnu/lib-names.h: $(common-objpfx)soversions.mk
- @rm -f $(objpfx)lib-names.h
+$(inst_includedir)/gnu/lib-names.h: $(objpfx)lib-names.h
+ if test -r $@ && cmp -s $< $@; \
+ then echo 'gnu/lib-names.h unchanged'; \
+ else $(INSTALL_DATA) $< $@; fi
+
+$(objpfx)lib-names.h: $(common-objpfx)soversions.mk
+ @rm -f $@
(echo '/* This file is automatically generated.';\
echo ' It defines macros to allow user program to find the shared';\
echo ' library files which come as part of GNU libc. */';\
@@ -209,11 +216,8 @@ $(inst_includedir)/gnu/lib-names.h: $(common-objpfx)soversions.mk
echo "#define $${upname}_SO \"$$l\""; \
done;) | sort; \
echo; \
- echo '#endif /* gnu/lib-names.h */';) > $(objpfx)lib-names.h
- if test -r $@ && cmp -s $(objpfx)lib-names.h $@; \
- then echo 'gnu/lib-names.h unchanged'; \
- else $(INSTALL_DATA) $(objpfx)lib-names.h $@; fi
- rm -f $(objpfx)lib-names.h
+ echo '#endif /* gnu/lib-names.h */';) > $@
+generated += lib-names.h
endif
# The `glibcbug' script contains the version number and it shall be rebuild
diff --git a/config.make.in b/config.make.in
index 03d6c0a..d714bf7 100644
--- a/config.make.in
+++ b/config.make.in
@@ -38,7 +38,6 @@ build-shared = @shared@
build-profile = @profile@
build-omitfp = @omitfp@
stdio = @stdio@
-malloc = @malloc@
add-ons = @subdirs@
# Build tools.
diff --git a/elf/Makefile b/elf/Makefile
index 5426e4e..55094e3 100644
--- a/elf/Makefile
+++ b/elf/Makefile
@@ -118,7 +118,7 @@ $(objpfx)trusted-dirs.h: Makefile
done;) > $@T
mv -f $@T $@
CPPFLAGS-dl-load.c = -I$(objdir)/$(subdir)
-CFLAGS-dl-load.c = -Wno-uninitialized
+CFLAGS-dl-load.c += -Wno-uninitialized
# Specify the dependencies of libdl.so; its commands come from the generic
# rule to build a shared library.
diff --git a/nss/nss.h b/nss/nss.h
index 1ba7bc8..8cf2565 100644
--- a/nss/nss.h
+++ b/nss/nss.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -25,7 +25,8 @@
#include <features.h>
/* Revision number of NSS interface (must be a string). */
-#define NSS_SHLIB_REVISION ".1"
+#define NSS_SHLIB_REVISION __nss_shlib_revision
+extern const char *const __nss_shlib_revision;
__BEGIN_DECLS
diff --git a/nss/nsswitch.c b/nss/nsswitch.c
index 1b061fa..201a2bc 100644
--- a/nss/nsswitch.c
+++ b/nss/nsswitch.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1996, 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
@@ -27,6 +27,7 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
+#include <gnu/lib-names.h>
#include "nsswitch.h"
@@ -63,8 +64,8 @@ static struct
__libc_lock_define_initialized (static, lock)
-/* Nonzero if the sevices are already initialized. */
-static int nss_initialized;
+/* String with revision number of the shared object files. */
+const char *const __nss_shlib_revision = LIBNSS_FILES_SO + 15;
/* The root of the whole data base. */
@@ -88,7 +89,8 @@ __nss_database_lookup (const char *database, const char *alternate_name,
return 0;
}
- if (nss_initialized == 0 && service_table == NULL)
+ /* Are we initialized yet? */
+ if (service_table == NULL)
/* Read config file. */
service_table = nss_parse_file (_PATH_NSSWITCH_CONF);
@@ -330,7 +332,7 @@ nss_lookup_function (service_user *ni, const char *fct_name)
{
/* Load the shared library. */
size_t shlen = (7 + strlen (ni->library->name) + 3
- + sizeof (NSS_SHLIB_REVISION));
+ + strlen (NSS_SHLIB_REVISION) + 1);
char shlib_name[shlen];
void do_open (void)
@@ -340,9 +342,10 @@ nss_lookup_function (service_user *ni, const char *fct_name)
}
/* Construct shared object name. */
- __stpcpy (__stpcpy (__stpcpy (shlib_name, "libnss_"),
- ni->library->name),
- ".so" NSS_SHLIB_REVISION);
+ __stpcpy (__stpcpy (__stpcpy (__stpcpy (shlib_name, "libnss_"),
+ ni->library->name),
+ ".so"),
+ NSS_SHLIB_REVISION);
if (nss_dlerror_run (do_open) != 0)
/* Failed to load the library. */
diff --git a/shlib-versions b/shlib-versions
index 75d94b1..3ad220d 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -11,6 +11,7 @@
# The interface to -lm depends only on cpu, not on operating system.
i.86-.*-.* libm=6
m68k-.*-.* libm=6
+alpha-.*-linux.* libm=6.1
alpha-.*-.* libm=6
# We provide libc.so.6 for Linux kernel versions 2.0 and later.
@@ -29,23 +30,32 @@ alpha-.*-linux.* libc=6.1
# The dynamic loader also requires different names.
i.86-.*-linux.* ld=ld-linux.so.2
+alpha-.*-linux.* ld=ld-linux.so.2
# We use the ELF ABI standard name for the default.
.*-.*-.* ld=ld.so.1
# The -ldl interface (see <dlfcn.h>) is the same on all platforms.
+alpha-.*-linux.* libdl=2.1
.*-.*-.* libdl=2
# So far the -lutil interface is the same on all platforms, except for the
# `struct utmp' format, which depends on libc.
+alpha-.*-linux.* libutil=1.1
.*-.*-.* libutil=1
# Version number 2 is used on other systems for the BIND 4.9.5 resolver
# interface.
+alpha-.*-linux.* libresolv=2.1
.*-.*-.* libresolv=2
# Interface revision of nss_* modules. This must match NSS_SHLIB_REVISION
# in nss/nsswitch.h, which determines the library names used for service
# names given in /etc/nsswitch.conf.
+alpha-.*-linux.* libnss_files=1.1
+alpha-.*-linux.* libnss_dns=1.1
+alpha-.*-linux.* libnss_db=1.1
+alpha-.*-linux.* libnss_compat=1.1
+alpha-.*-linux.* libnss_nis=1.1
.*-.*-.* libnss_files=1
.*-.*-.* libnss_dns=1
.*-.*-.* libnss_db=1
@@ -53,13 +63,17 @@ i.86-.*-linux.* ld=ld-linux.so.2
.*-.*-.* libnss_nis=1
# Version for libnsl with YP functions.
+alpha-.*-linux.* libnsl=1.1
.*-.*-.* libnsl=1
# We use libdb.so.2 for the interface in version 1.85 of the Berkeley DB code.
+alpha-.*-linux.* libdb=2.1
.*-.*-.* libdb=2
# This defines the shared library version numbers we will install.
+alpha-.*-linux.* libcrypt=1.1
.*-.*-.* libcrypt=1
# The gross patch for programs assuming broken locale implementations.
+alpha-.*-linux.* libBrokenLocale=1.1
.*-.*-.* libBrokenLocale=1
diff --git a/sunrpc/Makefile b/sunrpc/Makefile
index 241eca5..16a5038 100644
--- a/sunrpc/Makefile
+++ b/sunrpc/Makefile
@@ -46,13 +46,16 @@ subdir := sunrpc
# xdr_reference.c -> xdr_ref.c
# rpcsvc/bootparam_prot.x -> rpcsvc/bootparam.x
-headers = $(addprefix rpc/,auth.h auth_unix.h clnt.h netdb.h pmap_clnt.h \
- pmap_prot.h pmap_rmt.h rpc.h rpc_msg.h svc.h \
- svc_auth.h types.h xdr.h auth_des.h) \
- $(rpcsvc:%=rpcsvc/%) $(rpcsvc:%.x=rpcsvc/%.h)
rpcsvc = bootparam.x nlm_prot.x rstat.x \
yppasswd.x klm_prot.x rex.x sm_inter.x mount.x \
rusers.x spray.x nfs_prot.x rquota.x
+headers = $(addprefix rpc/,auth.h auth_unix.h clnt.h netdb.h pmap_clnt.h \
+ pmap_prot.h pmap_rmt.h rpc.h rpc_msg.h svc.h \
+ svc_auth.h types.h xdr.h auth_des.h) \
+ $(rpcsvc:%=rpcsvc/%)
+ifeq (no,$(cross-compiling))
+headers += $(rpcsvc:%.x=rpcsvc/%.h)
+endif
install-others = $(inst_includedir)/rpcsvc/bootparam_prot.h \
$(inst_sysconfdir)/rpc
generated = $(rpcsvc:%.x=rpcsvc/%.h) $(rpcsvc:%.x=x%.c)
diff --git a/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S b/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S
index 8486cfa..d2d2add 100644
--- a/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S
+++ b/sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1995, 1996 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1995, 1996, 1997 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by David Mosberger <davidm@azstarnet.com>, 1995.
@@ -23,7 +23,7 @@
LEAF(__ieee_set_fp_control, 16)
#ifdef PROF
- ldgp gp, 0(sp)
+ ldgp gp, 0(pv)
lda sp, -16(sp)
.set noat
lda AT, _mcount