summary refs log tree commit diff
path: root/db/Makefile
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-10-16 16:57:36 +0000
committerUlrich Drepper <drepper@redhat.com>1998-10-16 16:57:36 +0000
commit0049f576d18869fcdf4b845ebb2d28e5178727bb (patch)
treee24402d77564fa1e94d145078def3e0ae6eb6334 /db/Makefile
parent9ffbb61221fd5d0ee2b7989d2e5c785efee8cc02 (diff)
downloadglibc-0049f576d18869fcdf4b845ebb2d28e5178727bb.tar.gz
glibc-0049f576d18869fcdf4b845ebb2d28e5178727bb.tar.xz
glibc-0049f576d18869fcdf4b845ebb2d28e5178727bb.zip
Update.
	* db/Makefile: Add rule to generate shared object with the soname
	from glibc 2.0.
Diffstat (limited to 'db/Makefile')
-rw-r--r--db/Makefile15
1 files changed, 14 insertions, 1 deletions
diff --git a/db/Makefile b/db/Makefile
index 4df6f886b9..f8626e17ec 100644
--- a/db/Makefile
+++ b/db/Makefile
@@ -50,10 +50,23 @@ CFLAGS-hash_func.c := -Wno-unused
 # The db code outsmarts the compiler frequently.
 override CFLAGS += -Wno-uninitialized
 
+# We are in an ugly situation here.  The library is called libdb1 but the
+# SONAME for compatibility reasons should be libdb.  Therefore we duplicate
+# shared library generating rule here.
+
 # Depend on libc.so so a DT_NEEDED is generated in the shared objects.
 # This ensures they will load libc.so for needed symbols if loaded by
 # a statically-linked program that hasn't already loaded it.
-$(objpfx)libdb1.so: $(common-objpfx)libc.so
+$(objpfx)libdb1.so: $(objpfx)libdb1_pic.a $(+preinit) $(+postinit) $(+interp) \
+		    $(common-objpfx)libc.so
+	$(LINK.o) -shared -o $@ $(sysdep-LDFLAGS) $(config-LDFLAGS)  \
+		  -B$(csu-objpfx) $(load-map-file) \
+		  -Wl,-soname=lib$(libprefix)db.so$($(@F)-version) \
+		  $(LDFLAGS.so) $(LDFLAGS-$(@F:lib%.so=%).so) \
+		  -L$(subst :, -L,$(rpath-link)) -Wl,-rpath-link=$(rpath-link)\
+		  -Wl,--whole-archive \
+		  $(filter-out $(map-file) $(+preinit) $(+postinit),$^) \
+		  $(no-whole-archive) $(LDLIBS-$(@F:lib%.so=%).so)
 
 #subdir_install: $(inst_libdir)/libndbm.a
 #$(inst_libdir)/libndbm.a: $(inst_libdir)/libdb1.a $(+force)