aboutsummaryrefslogtreecommitdiff
path: root/scripts/abi-versions.awk
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2000-03-22 05:43:53 +0000
committerRoland McGrath <roland@gnu.org>2000-03-22 05:43:53 +0000
commitcb832354c37fe97500b8de9b867d2794cfb902fa (patch)
treea4f98dd228315670f2c71dbba938d4f9e601c4fb /scripts/abi-versions.awk
parent62ecda3d7c1346372d1cc69a7e726f851b0ef8a8 (diff)
downloadglibc-cb832354c37fe97500b8de9b867d2794cfb902fa.zip
glibc-cb832354c37fe97500b8de9b867d2794cfb902fa.tar.gz
glibc-cb832354c37fe97500b8de9b867d2794cfb902fa.tar.bz2
2000-03-22 Roland McGrath <roland@baalperazim.frob.com>
* include/shlib-compat.h (SHLIB_COMPAT): Take a third argument, indicating the first version set to obsolete the conditionalized code. * scripts/abi-versions.awk: For subsumed versions, make ABI_* defn's rhs be the ABI_* macro for the subsuming version. Assign increasing integer values to the ABI_* macros for supported versions.
Diffstat (limited to 'scripts/abi-versions.awk')
-rw-r--r--scripts/abi-versions.awk19
1 files changed, 12 insertions, 7 deletions
diff --git a/scripts/abi-versions.awk b/scripts/abi-versions.awk
index 0cceaad..b8994c7 100644
--- a/scripts/abi-versions.awk
+++ b/scripts/abi-versions.awk
@@ -11,6 +11,7 @@ NF == 2 && $2 == "{" {
thislib = $1;
gsub(/[^A-Za-z0-9_ ]/, "_"); libid = $1;
printf "\n/* start %s */\n", thislib;
+ n = 0;
next;
}
$1 == "}" {
@@ -19,18 +20,22 @@ $1 == "}" {
}
$2 == "=" {
- new = $3;
- gsub(/[^A-Za-z0-9_ ]/, "_"); id = $1;
- printf "#define ABI_%s_%s\t0\t/* earliest supported %s */\n", libid, id, new;
- printf "#define VERSION_%s_%s\t%s\n", libid, id, new;
+ old = $1; new = $3;
+ gsub(/[^A-Za-z0-9_ ]/, "_");
+ oldid = $1; newid = $3;
+
+ printf "#define ABI_%s_%s\tABI_%s_%s\n", libid, oldid, libid, newid;
+ printf "#define VERSION_%s_%s\t%s\n", libid, oldid, new;
next;
}
{
vers = $1;
- gsub(/[^A-Za-z0-9_ ]/, "_"); id = $1;
- printf "#define ABI_%s_%s\t1\t/* support %s */\n", libid, id, vers;
- printf "#define VERSION_%s_%s\t%s\n", libid, id, vers;
+ gsub(/[^A-Za-z0-9_ ]/, "_");
+ versid = $1;
+
+ printf "#define ABI_%s_%s\t%d\t/* support %s */\n", libid, versid, ++n, vers;
+ printf "#define VERSION_%s_%s\t%s\n", libid, versid, vers;
next;
}