* sysdeps/mach/hurd/Makefile: Undo last change.
[$(subdir) = mach] (lib-noranlib): Depend on libmachuser-link.so.
[$(subdir) = hurd] (lib-noranlib): Depend on libhurduser-link.so.
* mach/Machrules (+preinit, +postinit, +interp,
LDFLAGS-$(interface.so)): Variables removed. Interface libraries get
linked just like other shared libraries.
(interface.so): Fix typo in defn, so it works.
($(objpfx)$(interface.so)): Make it depend on libc.so.
+1999-03-23 Roland McGrath <roland@baalperazim.frob.com>
+
+ * sysdeps/mach/hurd/Makefile: Undo last change.
+ [$(subdir) = mach] (lib-noranlib): Depend on libmachuser-link.so.
+ [$(subdir) = hurd] (lib-noranlib): Depend on libhurduser-link.so.
+
+ * mach/Machrules (+preinit, +postinit, +interp,
+ LDFLAGS-$(interface.so)): Variables removed. Interface libraries get
+ linked just like other shared libraries.
+ (interface.so): Fix typo in defn, so it works.
+ ($(objpfx)$(interface.so)): Make it depend on libc.so.
+
1999-03-21 Roland McGrath <roland@baalperazim.frob.com>
* sysdeps/mach/hurd/Makefile (subdir_lib): Depend on
extra-libs += $(interface-library)
extra-libs-others += $(interface-library)
-# Avoid -lmachuser requiring -lc, which may not be built yet. If the
-# shared object is absent, ld may choose a static library someplace and
-# produce a bogus libmachuser.so.
-+preinit =
-+postinit =
-+interp =
-interface.so = $(interface-library:lib%=%.so)
-LDFLAGS-$(interface.so) = -nostdlib -nostartfiles
+ifeq (yes,$(build-shared))
+interface.so = $(interface-library:=.so)
+
+# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
+$(objpfx)$(interface.so): $(common-objpfx)libc.so
+endif
endif
rpcuserlibs := $(common-objpfx)mach/libmachuser.so \
$(common-objpfx)hurd/libhurduser.so
link-rpcuserlibs := $(rpcuserlibs:%user.so=%user-link.so)
-$(common-objpfx)libc.so subdir_lib: $(link-rpcuserlibs)
+$(common-objpfx)libc.so: $(link-rpcuserlibs)
rpath-dirs += mach hurd
+# Make sure the `lib' pass builds the dummy shared objects so
+# we can link libc against them.
+ifeq (mach,$(subdir))
+lib-noranlib: $(common-objpfx)mach/libmachuser-link.so
+endif
+ifeq (hurd,$(subdir))
+lib-noranlib: $(common-objpfx)hurd/libhurduser-link.so
+endif
+
$(link-rpcuserlibs): %-link.so: %_pic.a
$(build-module) -nostdlib -Wl,-soname=$(*F).so$($(*F).so-version)