diff options
author | David Kalnischkies <david@kalnischkies.de> | 2015-08-10 11:08:35 +0200 |
---|---|---|
committer | David Kalnischkies <david@kalnischkies.de> | 2015-08-10 17:27:59 +0200 |
commit | ae97af1fdf726a0e7e553b2fb5734b6e09a088d0 (patch) | |
tree | 82eb2c8a5ed74335119c13d4844e1d2ee9f7145c /prepare-release | |
parent | 628e7405052dd5b758ad1480a103971b3ea34c4b (diff) | |
download | apt-ae97af1fdf726a0e7e553b2fb5734b6e09a088d0.tar.gz |
change to libapt-pkg abi 5.0 with versioned symbols
We changed an aweful lot of stuff, so 5.0 is properly better than 4.X as
a semantic version and as we are at it lets add some trivial symbol
versioning as well: We just mark all exported symbols with the same
version for now. This isn't really the proper thing to do as if we add
symbols in later versions (with the same abi) they will get the same
symbols version, but our .symbols file will protect us from the problems
arising from this as it will ensure that a package acutally depends on a
version of the abi high enough to include the symbol.
Diffstat (limited to 'prepare-release')
-rwxr-xr-x | prepare-release | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/prepare-release b/prepare-release index 8a3743ad7..734dc5f32 100755 --- a/prepare-release +++ b/prepare-release @@ -15,13 +15,14 @@ LIBAPTINSTVERSION="$(egrep '^MAJOR=' apt-inst/makefile |cut -d '=' -f 2)" librarysymbolsfromfile() { local MISSING="$(grep '^+#MISSING' "$1")" + local SYMVER="$2" echo '=== Missing optional symbols:' echo -n "$MISSING" | grep '|optional=' || true echo '=== Missing required symbols:' echo -n "$MISSING" | grep -v '|optional=' || true echo '=== New symbols:' grep '^+ ' "$1" | cut -d' ' -f 2 | cut -d'@' -f 1 | c++filt | while read line; do - echo " (c++)\"${line}@Base\" $VERSION" + echo " (c++)\"${line}@${SYMVER}\" $VERSION" done | sort -u } @@ -109,7 +110,7 @@ elif [ "$1" = 'library' ]; then echo "Checking $1 in version $2" local tmpfile=$(mktemp) dpkg-gensymbols -p${1}${2} -ebuild/bin/${1}.so.${2} -Idebian/${1}${2}.symbols -O/dev/null 2> /dev/null > $tmpfile || true - librarysymbolsfromfile "$tmpfile" + librarysymbolsfromfile "$tmpfile" "$(echo "${1}" | cut -c 4- | tr -d '-' | tr 'a-z' 'A-Z')_${2}" rm -f $tmpfile } librarysymbols 'libapt-pkg' "${LIBAPTPKGVERSION}" @@ -117,7 +118,7 @@ elif [ "$1" = 'library' ]; then librarysymbols 'libapt-inst' "${LIBAPTINSTVERSION}" elif [ "$1" = 'buildlog' ]; then while [ -n "$2" ]; do - librarysymbolsfromfile "$2" + librarysymbolsfromfile "$2" 'UNKNOWN' shift done elif [ "$1" = 'travis-ci' ]; then |