This is the mail archive of the
mailing list for the glibc project.
--disable-versioning and --enable-oldest-abi
- From: "Joseph S. Myers" <joseph at codesourcery dot com>
- To: <libc-alpha at sourceware dot org>
- Date: Sun, 7 Jul 2013 17:19:56 +0000
- Subject: --disable-versioning and --enable-oldest-abi
The --disable-versioning configure option has long been bitrotten (I don't
know of any glibc bug report, open or closed, for this issue). (If you
use it, you get a configure warning saying
*** WARNING: You should not compile GNU libc without versioning. Not using
*** versioning will introduce incompatibilities so that old binaries
*** will not run anymore.
*** For versioning you need recent binutils (binutils-220.127.116.11.23 or newer).
and I suspect it's been bitrotten since not long after binutils versions
of that vintage were current.)
There are some changes in EGLIBC to make this option work. Those are also
by now bitrotten (that is, --disable-versioning doesn't work there
either). <http://www.eglibc.org/archives/patches/msg00631.html> is the
first version of those changes, with analysis of the various forms of
breakage (there are of course differences from the variant now in EGLIBC).
I don't think it makes sense to keep this configure option in broken form;
we should either fix it (possibly along the lines of the changes in
EGLIBC) or remove it. Given the limited utility of the option and the
likelihood of such a deviation from default configuration breaking in
future, my inclination (for after 2.18 branches, of course) is removal.
The --enable-oldest-abi configure option, another obscure ABI-breaking
option (not even documented, unlike --disable-versioning), is also broken
(bug 6652) (a test for 32-bit x86 with --enable-oldest-abi=2.3 shows the
breakage; the cases I tried for x86_64 didn't fail the build although I've
no idea if the generated libraries worked). I'm inclined to think this
option too should be removed, although I think that wouldn't actually
bring much cleanup beyond removing the configure option (whereas there are
plenty of conditionals that could be removed if --disable-versioning is
Joseph S. Myers