about summary refs log tree commit diff
path: root/include/shlib-compat.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/shlib-compat.h')
-rw-r--r--include/shlib-compat.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/include/shlib-compat.h b/include/shlib-compat.h
index 245b8aa89e..1e6d1782d9 100644
--- a/include/shlib-compat.h
+++ b/include/shlib-compat.h
@@ -1,5 +1,5 @@
 /* Macros for managing ABI-compatibility definitions using ELF symbol versions.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2002 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
@@ -43,9 +43,14 @@
    e.g. `#if SHLIB_COMPAT (libm, GLIBC_2_0, GLIBC_2_2)' for code introduced
    in the GLIBC_2.0 version and obsoleted in the GLIBC_2.2 version.  */
 
-# define SHLIB_COMPAT(lib, introduced, obsoleted) \
-  (!(ABI_##lib##_##obsoleted - 0) \
-   || ((ABI_##lib##_##introduced - 0) < (ABI_##lib##_##obsoleted - 0)))
+# define SHLIB_COMPAT(lib, introduced, obsoleted)			      \
+  ((IS_IN_##lib - 0)							      \
+   && (!(ABI_##lib##_##obsoleted - 0)					      \
+       || ((ABI_##lib##_##introduced - 0) < (ABI_##lib##_##obsoleted - 0))))
+
+# ifndef NOT_IN_libc
+#  define IS_IN_libc 1
+# endif
 
 /* That header also defines symbols like `VERSION_libm_GLIBC_2_1' to
    the version set name to use for e.g. symbols first introduced into