glibc/shlib-versions
Roland McGrath 3e1e123d02 [BZ #715]
* Makefile (installed-stubs): New variable.
	Set to $(inst_includedir)/gnu/stubs.h if $(biarch) is no,
	or to $(inst_includedir)/gnu/stubs-$(biarch).h if otherwise.
	[$(biarch) != no] (install-others-nosubdir): Add $(installed-stubs).
	($(inst_includedir)/gnu/stubs.h): Use $(installed-stubs) for this
	rule's target.
	($(inst_includedir)/gnu/stubs.h): New target, install from ...
	* include/stubs-biarch.h: New file.

	* shlib-versions (i.86-.*-.*): Add WORDSIZE64 line mapping to x86_64.

	* Makeconfig ($(common-objpfx)soversions.mk): Depend on Makeconfig.
	Emit defn for variable `biarch'.

	* include/stub-tag.h: Update comment.
2005-02-11 10:17:19 +00:00

152 lines
5.8 KiB
Plaintext

# This file defines the shared library version numbers we will install.
# The following lines list filename patterns matching canonical configurations,
# and the associated versions to use for various libraries. The entire
# 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.
# In the optional third column, there can one or more symbol set names
# listed, which must be in ascending version order reading left to right
# and must appear in this same order in the Versions.def file. Each listed
# version subsumes all prior versions back to the previous listed version.
#
# An entry with DEFAULT in the second column gives a default third column
# to apply on matching configurations when the matching entry for a particular
# library has no third column. The defaults must precede the entries they
# apply to.
#
# An entry with WORDSIZE* in the second column gives an alternate
# configuration tuple whose macros will be conditionally defined in
# gnu/lib-names.h; @CPU@, @VENDOR@, @OS@ can be used in the third
# column to compose the alternate tuple matched against the patterns here.
# Configuration DEFAULT Earliest symbol set
# ------------- --------------- ------------------------------
s390x-.*-linux.* DEFAULT GLIBC_2.2
cris-.*-linux.* DEFAULT GLIBC_2.2
x86_64-.*-linux.* DEFAULT GLIBC_2.2.5
powerpc64-.*-linux.* DEFAULT GLIBC_2.3
.*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6
# Configuration WORDSIZE[32|64] Alternate configuration
# ------------- ---------- -----------------------
x86_64-.*-.* WORDSIZE32 i686-@VENDOR@-@OS@
i.86-.*-.* WORDSIZE64 x86_64-@VENDOR@-@OS@
s390x-.*-.* WORDSIZE32 s390-@VENDOR@-@OS@
s390-.*-.* WORDSIZE64 s390x-@VENDOR@-@OS@
powerpc64-.*-.* WORDSIZE32 powerpc-@VENDOR@-@OS@
powerpc.*-.*-.* WORDSIZE64 powerpc64-@VENDOR@-@OS@
sparc64-.*-.* WORDSIZE32 sparc-@VENDOR@-@OS@
sparc.*-.*-.* WORDSIZE64 sparc64-@VENDOR@-@OS@
# Configuration Library=version Earliest symbol set (optional)
# ------------- --------------- ------------------------------
# The interface to -lm depends mostly only on cpu, not on operating system.
sparc64-.*-linux.* libm=6 GLIBC_2.2
alpha.*-.*-linux.* libm=6.1
mips.*-.*-linux.* libm=6 GLIBC_2.0 GLIBC_2.2
ia64-.*-linux.* libm=6.1 GLIBC_2.2
sh.*-.*-linux.* libm=6 GLIBC_2.2
hppa.*-.*-.* libm=6 GLIBC_2.2
.*-.*-linux.* libm=6
.*-.*-gnu-gnu.* libm=6
# We provide libc.so.6 for Linux kernel versions 2.0 and later.
alpha.*-.*-linux.* libc=6.1
# Working mips versions were never released between 2.0 and 2.2.
mips.*-.*-linux.* libc=6 GLIBC_2.0 GLIBC_2.2
ia64-.*-linux.* libc=6.1 GLIBC_2.2
sh.*-.*-linux.* libc=6 GLIBC_2.2
sparc64-.*-linux.* libc=6 GLIBC_2.2
hppa.*-.*-.* libc=6 GLIBC_2.2
.*-.*-linux.* libc=6
# libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
.*-.*-gnu-gnu.* libmachuser=1
# libhurduser.so.0.3 corresponds to hurd/*.defs as of 11 June 2002.
.*-.*-gnu-gnu.* libhurduser=0.3
# libc.so.0.3 is the first Hurd libc using libio.
.*-.*-gnu-gnu.* libc=0.3
# The dynamic loader also requires different names.
i.86-.*-linux.* ld=ld-linux.so.2
sparc64-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
sparc.*-.*-linux.* ld=ld-linux.so.2
alpha.*-.*-linux.* ld=ld-linux.so.2
arm.*-.*-linux.* ld=ld-linux.so.2
sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
ia64-.*-linux.* ld=ld-linux-ia64.so.2 GLIBC_2.2
mips.*-.*-linux.* ld=ld.so.1 GLIBC_2.0 GLIBC_2.2
hppa.*-.*-.* ld=ld.so.1 GLIBC_2.2
s390x-.*-linux.* ld=ld64.so.1 GLIBC_2.2
powerpc64.*-.*-linux.* ld=ld64.so.1 GLIBC_2.3
cris-.*-linux.* ld=ld.so.1 GLIBC_2.2
x86_64-.*-linux.* ld=ld-linux-x86-64.so.2 GLIBC_2.2.5
# We use the ELF ABI standard name for the default.
.*-.*-.* ld=ld.so.1
# The -ldl interface (see <dlfcn.h>) is the same on all platforms.
alpha.*-.*-linux.* libdl=2.1
mips.*-.*-linux.* libdl=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libdl=2
# So far the -lutil interface is the same on all platforms, except for the
# `struct utmp' format, which depends on libc.
alpha.*-.*-linux.* libutil=1.1
.*-.*-.* libutil=1
# Version number 2 is used on other systems for the BIND 4.9.5 resolver
# interface.
alpha.*-.*-linux.* libresolv=2.1
mips.*-.*-linux.* libresolv=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libresolv=2
# Interface revision of nss_* modules. This must match NSS_SHLIB_REVISION
# in nss/nsswitch.h, which determines the library names used for service
# names given in /etc/nsswitch.conf.
mips.*-.*-linux.* libnss_files=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_dns=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_compat=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_nis=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_nisplus=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_ldap=2 GLIBC_2.0 GLIBC_2.2
mips.*-.*-linux.* libnss_hesiod=2 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libnss_files=2
.*-.*-.* libnss_dns=2
.*-.*-.* libnss_compat=2
.*-.*-.* libnss_nis=2
.*-.*-.* libnss_nisplus=2
.*-.*-.* libnss_ldap=2
.*-.*-.* libnss_hesiod=2
# Version for libnsl with YP and NIS+ functions.
alpha.*-.*-linux.* libnsl=1.1
mips.*-.*-linux.* libnsl=1 GLIBC_2.0 GLIBC_2.2
.*-.*-.* libnsl=1
# This defines the shared library version numbers we will install.
alpha.*-.*-linux.* libcrypt=1.1
.*-.*-.* libcrypt=1
# The gross patch for programs assuming broken locale implementations.
alpha.*-.*-linux.* libBrokenLocale=1.1
ia64-.*-.* libBrokenLocale=1 GLIBC_2.2
sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
sparc64-.*-.* libBrokenLocale=1 GLIBC_2.2
hppa-.*-.* libBrokenLocale=1 GLIBC_2.2
.*-.*-.* libBrokenLocale=1
# The real-time library from POSIX.1b.
mips.*-.*-linux.* librt=1 GLIBC_2.0 GLIBC_2.2
.*-.*-.* librt=1
# The asynchronous name lookup library.
.*-.*-.* libanl=1