aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog18
-rw-r--r--hurd/Makefile9
-rw-r--r--hurd/hurdinit.c3
-rw-r--r--shlib-versions4
-rw-r--r--sysdeps/mach/hurd/Makefile5
-rw-r--r--sysdeps/mach/hurd/i386/init-first.c14
6 files changed, 49 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index ed3c0c9..d20ad85 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,21 @@
+Sat Sep 21 14:59:22 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * shlib-versions (*-*-gnu*): Increment libc to 0.2 for upcoming
+ binary distribution.
+
+ * sysdeps/mach/hurd/Makefile (rtld-installed-name): Provide
+ definition to override dangerous one in Makeconfig.
+
+ * hurd/Makefile (install-headers-nosubdir): Install <rpc/netdb.h>.
+ ($(includedir)/rpc/netdb.h): New rule.
+ [ This is XXX until sunrpc can be built; <rpc/netdb.h> is
+ essential. ]
+
+Fri Sep 20 16:06:06 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * sysdeps/mach/hurd/i386/init-first.c (_dl_start): Add definition,
+ to guarantee link errors if this is included in ld.so.
+
Thu Sep 19 23:36:19 1996 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
* hurd/hurdinit.c (__libc_argv): Provide common decl.
diff --git a/hurd/Makefile b/hurd/Makefile
index 873e695..363aeea 100644
--- a/hurd/Makefile
+++ b/hurd/Makefile
@@ -68,6 +68,15 @@ distribute += hurdmalloc.h
include ../mach/Machrules
include ../Rules
+# XXX sunrpc doesn't build yet for Hurd, but one of its headers is
+# crucial nontheless. So sysdeps/mach/hurd/Makefile elides sunrpc
+# from $(subdirs), and this rule arranges for the header in question
+# to get installed.
+install-headers-nosubdir: $(includedir)/rpc/netdb.h
+$(includedir)/rpc/netdb.h: $(top_srcdir)/sunrpc/rpc/netdb.h
+ $(do-install)
+
+
# intr-rpc.defs defines the INTR_INTERFACE macro to make the generated RPC
# stubs import <hurd/signal.h> and #define __mach_msg to
# _hurd_intr_rpc_mach_msg.
diff --git a/hurd/hurdinit.c b/hurd/hurdinit.c
index df10b5d..bc2334e 100644
--- a/hurd/hurdinit.c
+++ b/hurd/hurdinit.c
@@ -31,6 +31,8 @@ struct hurd_port *_hurd_ports;
unsigned int _hurd_nports;
mode_t _hurd_umask;
sigset_t _hurdsig_traced;
+char **__libc_argv;
+
error_t
_hurd_ports_use (int which, error_t (*operate) (mach_port_t))
@@ -165,7 +167,6 @@ _hurd_setproc (process_t procserver)
{
error_t err;
mach_port_t oldmsg;
- extern char **__libc_argv;
/* Give the proc server our message port. */
if (err = __proc_setmsgport (procserver, _hurd_msgport, &oldmsg))
diff --git a/shlib-versions b/shlib-versions
index 4699b1f..d592ab8 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -24,8 +24,8 @@ alpha-*-linux* libc=6
# libhurduser.so.0.0 corresponds to hurd/*.defs as of 7 May 1996.
*-*-gnu* libhurduser=0.0
-# libc.so.0.0 is for the Hurd alpha release 0.0.
-*-*-gnu* libc=0.0
+# libc.so.0.2 is for the Hurd alpha release 0.2.
+*-*-gnu* libc=0.2
# The -ldl interface (see <dlfcn.h>) is the same on all platforms.
*-*-* libdl=2
diff --git a/sysdeps/mach/hurd/Makefile b/sysdeps/mach/hurd/Makefile
index c33cb7d..fa2f66a 100644
--- a/sysdeps/mach/hurd/Makefile
+++ b/sysdeps/mach/hurd/Makefile
@@ -18,7 +18,12 @@
ifdef in-Makerules
+# This should be in a more global place, because the problem it solves
+# is universal, but this is good enough for here.
+rtld-installed-name := ld.so$(libc.so-version)
+
subdirs := $(filter-out sunrpc,$(subdirs)) # XXX skip broken dirs
+# See hurd/Makefile for commands that install some crucial sunrpc headers.
# Look for header files in hurd/ under the top-level library source directory.
# Look for generated header files where they get created.
diff --git a/sysdeps/mach/hurd/i386/init-first.c b/sysdeps/mach/hurd/i386/init-first.c
index 5203b4c..3313623 100644
--- a/sysdeps/mach/hurd/i386/init-first.c
+++ b/sysdeps/mach/hurd/i386/init-first.c
@@ -1,5 +1,5 @@
/* Initialization code run first thing by the ELF startup code. For i386/Hurd.
-Copyright (C) 1995 Free Software Foundation, Inc.
+Copyright (C) 1995, 1996 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
@@ -248,3 +248,15 @@ __libc_init_first (int argc __attribute__ ((unused)), ...)
_hurd_startup ((void **) &argc, &doinit);
#endif
}
+
+
+/* This function is defined here so that if this file ever gets into
+ ld.so we will get a link error. Having this file silently included
+ in ld.so causes disaster, because the _init definition above will
+ cause ld.so to gain an init function, which is not a cool thing. */
+
+void
+_dl_start ()
+{
+ abort ();
+}