Skip to content

Commit

Permalink
Move architecture-specific shlib-versions entries to sysdeps files.
Browse files Browse the repository at this point in the history
This patch eliminates another way in which ex-ports and non-ex-ports
architectures differ, by moving architecture-specific entries from the
top-level shlib-versions file and that in nptl/ to appropriate sysdeps
directories.  As with my previous patch
<https://sourceware.org/ml/libc-alpha/2014-06/msg00949.html>, I do not
change the regular expressions used; even where the present
expressions seem more general, I believe they are in fact specific to
the chosen sysdeps directory, because any port that matches the
expression but not the sysdeps directory does not currently exist, and
so would use different symbol versions if added in future (and an
intended goal of these changes is to eliminate the first column in
shlib-versions completely rather than having two different mechanisms
in use for system-specific configuration).

Tested on x86_64 that this does not change the installed shared
libraries.  (x86_64 of course does not provide much test coverage for
this patch - what should be architecture-specific contents in
shlib-versions for x86_64 is currently abi-*-ld-soname Makefile
settings, until gnu/lib-names.h is generated more like gnu/stubs.h so
those can move back to shlib-versions.)

	* nptl/shlib-versions: Remove architecture-specific entries.
	Moved to files in sysdeps.
	* shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions: New
	file.
	* sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise.
	* sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise.
  • Loading branch information
Joseph Myers committed Sep 12, 2014
1 parent 0bd7246 commit dc932a2
Show file tree
Hide file tree
Showing 8 changed files with 27 additions and 18 deletions.
10 changes: 10 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,5 +1,15 @@
2014-09-12 Joseph Myers <joseph@codesourcery.com>

* nptl/shlib-versions: Remove architecture-specific entries.
Moved to files in sysdeps.
* shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions: New
file.
* sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/sh/shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions: Likewise.

* sysdeps/gnu/netinet/udp.h (UDP_NO_CHECK6_TX): New macro.
(UDP_NO_CHECK6_RX): Likewise.

Expand Down
5 changes: 0 additions & 5 deletions nptl/shlib-versions
Original file line number Diff line number Diff line change
@@ -1,6 +1 @@
sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2
sh.*-.*-linux.* libpthread=0 GLIBC_2.2
s390x-.*-linux.* libpthread=0 GLIBC_2.2
powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17
.*-.*-linux.* libpthread=0
13 changes: 0 additions & 13 deletions shlib-versions
Original file line number Diff line number Diff line change
Expand Up @@ -21,23 +21,16 @@
# Configuration DEFAULT Earliest symbol set
# ------------- --------------- ------------------------------

s390x-.*-linux.* DEFAULT GLIBC_2.2
powerpc64-.*-linux.* DEFAULT GLIBC_2.3
powerpc.*le-.*-linux.* DEFAULT GLIBC_2.17
.*-.*-gnu-gnu.* DEFAULT GLIBC_2.2.6

# 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
sh.*-.*-linux.* 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.
sh.*-.*-linux.* libc=6 GLIBC_2.2
sparc64.*-.*-linux.* libc=6 GLIBC_2.2
.*-.*-linux.* libc=6

# libmachuser.so.1 corresponds to mach/*.defs as of Utah's UK22 release.
Expand All @@ -49,10 +42,6 @@ sparc64.*-.*-linux.* libc=6 GLIBC_2.2
# libc.so.0.3 is the first Hurd libc using libio.
.*-.*-gnu-gnu.* libc=0.3

# The dynamic loader also requires different names.
sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
sparc.*-.*-linux.* ld=ld-linux.so.2
sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
# We use the ELF ABI standard name for the default.
.*-.*-.* ld=ld.so.1

Expand Down Expand Up @@ -90,8 +79,6 @@ sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
.*-.*-.* libcrypt=1

# The gross patch for programs assuming broken locale implementations.
sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2
.*-.*-.* libBrokenLocale=1

# The real-time library from POSIX.1b.
Expand Down
4 changes: 4 additions & 0 deletions sysdeps/unix/sysv/linux/powerpc/powerpc64/shlib-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
powerpc64-.*-linux.* DEFAULT GLIBC_2.3
powerpc.*le-.*-linux.* DEFAULT GLIBC_2.17
powerpc64-.*-linux.* libpthread=0 GLIBC_2.3
powerpc.*le-.*-linux.* libpthread=0 GLIBC_2.17
2 changes: 2 additions & 0 deletions sysdeps/unix/sysv/linux/s390/s390-64/shlib-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
s390x-.*-linux.* DEFAULT GLIBC_2.2
s390x-.*-linux.* libpthread=0 GLIBC_2.2
5 changes: 5 additions & 0 deletions sysdeps/unix/sysv/linux/sh/shlib-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
sh.*-.*-linux.* libm=6 GLIBC_2.2
sh.*-.*-linux.* libc=6 GLIBC_2.2
sh.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
sh.*-.*-.* libBrokenLocale=1 GLIBC_2.2
sh.*-.*-linux.* libpthread=0 GLIBC_2.2
1 change: 1 addition & 0 deletions sysdeps/unix/sysv/linux/sparc/sparc32/shlib-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sparc.*-.*-linux.* ld=ld-linux.so.2
5 changes: 5 additions & 0 deletions sysdeps/unix/sysv/linux/sparc/sparc64/shlib-versions
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
sparc64.*-.*-linux.* libm=6 GLIBC_2.2
sparc64.*-.*-linux.* libc=6 GLIBC_2.2
sparc64.*-.*-linux.* ld=ld-linux.so.2 GLIBC_2.2
sparc64.*-.*-.* libBrokenLocale=1 GLIBC_2.2
sparc64.*-.*-linux.* libpthread=0 GLIBC_2.2

0 comments on commit dc932a2

Please sign in to comment.