summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-19 00:33:02 +0000
committerRoland McGrath <roland@gnu.org>2000-03-19 00:33:02 +0000
commit882688521994c2329242212a61dd2a7c44eadbc6 (patch)
tree47c0f76522ab094eb05ca38e7a82f42f34c5f266
parenta5733c28449fd19f81f382160d6544e55a78aa7b (diff)
* Makeconfig (soversions.mk): Convert % -> # in shlib-versions
after stripping # comments, and then run it through cpp. This allows things like "%ifdef FOO" based on config.h settings. * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu*): libc=0.2.90.libio
-rw-r--r--ChangeLog5
-rw-r--r--Makeconfig4
-rw-r--r--shlib-versions7
3 files changed, 15 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 0dc9fbe718..d8efcb08e9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2000-03-18 Roland McGrath <roland@baalperazim.frob.com>
+ * Makeconfig (soversions.mk): Convert % -> # in shlib-versions
+ after stripping # comments, and then run it through cpp.
+ This allows things like "%ifdef FOO" based on config.h settings.
+ * shlib-versions [USE_IN_LIBIO] (.*-.*-gnu-gnu*): libc=0.2.90.libio
+
* hurd/intr-msg.c (_hurd_intr_rpc_mach_msg): For MACH_SEND_INTERRUPTED
and other errors that indicate a pseudo-receive happened, grok through
the message buffer for port rights that need references fixed up.
diff --git a/Makeconfig b/Makeconfig
index 6d87892d74..de1b1b186a 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -685,7 +685,9 @@ $(common-objpfx)soversions.mk: $(..)shlib-versions $(..)Makeconfig \
$(wildcard $(patsubst %,$(..)%/shlib-versions,$(subdirs))) \
$(..)shlib-versions"; \
for f in $$file; do \
- sed 's/#.*$$//' $$f | while read conf versions; do \
+ sed 's/#.*$$//;s/^[ ]*%/#/' $$f \
+ | $(CC) -include $(common-objpfx)config.h -E -x c - \
+ | while read conf versions; do \
test -n "$$versions" && \
test `expr '$(config-machine)-$(config-vendor)-$(config-os)' \
: "$$conf"` != 0 || continue; \
diff --git a/shlib-versions b/shlib-versions
index 565d8e4c9b..abf2fd49de 100644
--- a/shlib-versions
+++ b/shlib-versions
@@ -5,6 +5,9 @@
# list is processed, with earlier entries taking precedence over later
# entries. So loose patterns at the end of the list can give defaults.
+# This file can use cpp-style conditionals starting with % instead of #
+# to test the symbols defined in config.h by configure.
+
# Configuration Library versions
# ------------- ------- --------
@@ -29,7 +32,11 @@ alpha.*-.*-linux.* libc=6.1
.*-.*-gnu-gnu* libhurduser=0.0
# libc.so.0.2 is for the Hurd alpha release 0.2.
+%ifdef USE_IN_LIBIO /* experimental only! */
+.*-.*-gnu-gnu* libc=0.2.90.libio
+%else
.*-.*-gnu-gnu* libc=0.2
+%endif
# The dynamic loader also requires different names.
i.86-.*-linux.* ld=ld-linux.so.2