soversions.i not found with --disable-shared
Roland McGrath
roland@frob.com
Tue Apr 4 17:46:00 GMT 2000
>
> Compiling glibc for ix86/linux with --disable-shared I get:
> make[1]: *** No rule to make target
> `/data/builds/glibc/20000404-main-static/soversions.i',
> needed by `/data/builds/glibc/20000404-main-static/Versions.all'.
>
> Anybody out there with a patch to fix this?
I just checked in a change that seems appropriate, though I didn't test
your case. Here is the patch (or just cvs update).
2000-04-04 Roland McGrath <roland@baalperazim.frob.com>
* Makeconfig [$(build-shared) != yes] (versioning): Set to `no'.
Index: Makeconfig
===================================================================
RCS file: /cvs/glibc/libc/Makeconfig,v
retrieving revision 1.233
retrieving revision 1.234
diff -u -b -p -r1.233 -r1.234
--- Makeconfig 2000/04/03 18:01:08 1.233
+++ Makeconfig 2000/04/05 00:44:59 1.234
@@ -762,6 +762,15 @@ ifndef rtld-version-installed-name
rtld-version-installed-name = ld-$(version).so
endif
+else # build-shared != yes
+
+# Since symbol versioning is only meaningful for shared objects,
+# turn this variable off when we aren't building any.
+# The setting from config.make just tells us ld would support it if we cared.
+# Clobbering it here avoids having to double-conditionalize everything
+# on both $(versioning) and $(build-shared).
+versioning := no
+
endif # build-shared
ifneq (,$(findstring linuxthreads,$(add-ons)))
More information about the Libc-hacker
mailing list