]> git.saurik.com Git - apt.git/blobdiff - prepare-release
support dpkg debug mode in APT::StateChanges
[apt.git] / prepare-release
index 89d5feae9b3c66d7e6da1015994bae442c3d9fd0..18fd3af94d787024b3f6f3ac047f49a1fa7fbea4 100755 (executable)
@@ -21,7 +21,7 @@ librarysymbolsfromfile() {
        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
+       grep '^+ ' "$1" | grep -v '^+ (c++' | cut -d' ' -f 2 | cut -d'@' -f 1 | c++filt | while read line; do
                echo " (c++)\"${line}@${SYMVER}\" $VERSION"
        done | sort -u
 }
@@ -127,9 +127,14 @@ elif [ "$1" = 'post-build' ]; then
 
 elif [ "$1" = 'library' ]; then
        librarysymbols() {
-               echo "Checking $1 in version $2"
+               local buildlib="build/bin/${1}.so.${2}"
+               if [ ! -r "$buildlib" ]; then
+                       echo "ERROR: The library ${1} has to be built before symbols can be checked!"
+                       return
+               fi
+               echo "Checking $1 in version $2 build at $(stat -L -c '%y' "$buildlib")"
                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
+               dpkg-gensymbols -p${1}${2} -e${buildlib} -Idebian/${1}${2}.symbols -O/dev/null 2> /dev/null > $tmpfile || true
                librarysymbolsfromfile "$tmpfile" "$(echo "${1}" | cut -c 4- | tr -d '-' | tr 'a-z' 'A-Z')_${2}"
                rm -f $tmpfile
        }
@@ -142,7 +147,7 @@ elif [ "$1" = 'buildlog' ]; then
                shift
        done
 elif [ "$1" = 'travis-ci' ]; then
-       apt-get install -qy --no-install-recommends $(sed -n -e '/^Build-Depends: /,/^Build-Depends-Indep: / {p}' debian/control | sed -e 's#([^)]*)##g' -e 's#^Build-Depends\(-Indep\)\?: ##' | tr -d ',')
+       apt-get install -qy --no-install-recommends $(sed -n -e '/^Build-Depends: /,/^Build-Depends-Indep: / {p}' debian/control | sed -e 's#([^)]*)##g' -e 's#^Build-Depends\(-Indep\)\?: ##' -e 's#<.*>##g' | tr -d ',')
        apt-get install -qy --no-install-recommends $(sed -n 's#^Depends: .*@, \(.*\)$#\1#p' debian/tests/control | tr -d ',')
 elif [ "$1" = 'coverage' ]; then
        DIR="${2:-./coverage}"