#! /bin/sh
# by default use PG_ prefix
: "${SYMBOL_VERSION_PREFIX=PG_}"
# we started symbol versioning since v10
: "${SYMBOL_VERSION_START=9.6}"
version=$SYMBOL_VERSION_START
version_prev=
first=:
open_block ()
{
$first || echo
first=false
echo "${SYMBOL_VERSION_PREFIX}$version {"
echo "global:"
}
close_block ()
{
echo "}${version_prev:+ $SYMBOL_VERSION_PREFIX$version_prev};"
version_prev=$version
version=$1
}
open_block
while read -r symbol _ new_version
do
case $symbol in '#'*) continue ;; esac
if test -n "$new_version" && test "$new_version" != "$version"; then
close_block "$new_version"
open_block
fi
echo " $symbol;"
done
echo "local:"
echo " *;"
close_block