diff options
author | Peter Breitenlohner <peb@mppmu.mpg.de> | 2015-09-02 06:57:51 +0000 |
---|---|---|
committer | Peter Breitenlohner <peb@mppmu.mpg.de> | 2015-09-02 06:57:51 +0000 |
commit | d67729aa4d5897be113d62b655d4b63173a918fa (patch) | |
tree | 820d15f96ef722d1b1ad79c2962d27cbc6befd17 /Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh | |
parent | d2b12940352e1761a74d89bdd3c8eebee49b1d04 (diff) |
harfbuzz 1.0.3
git-svn-id: svn://tug.org/texlive/trunk@38273 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh')
-rwxr-xr-x | Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh b/Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh new file mode 100755 index 00000000000..1446fa73405 --- /dev/null +++ b/Build/source/libs/harfbuzz/harfbuzz-1.0.3/src/check-static-inits.sh @@ -0,0 +1,39 @@ +#!/bin/sh + +LC_ALL=C +export LC_ALL + +test -z "$srcdir" && srcdir=. +stat=0 + + +if which objdump 2>/dev/null >/dev/null; then + : +else + echo "check-static-inits.sh: 'objdump' not found; skipping test" + exit 77 +fi + +OBJS=.libs/*.o +if test "x`echo $OBJS`" = "x$OBJS" 2>/dev/null >/dev/null; then + echo "check-static-inits.sh: object files not found; skipping test" + exit 77 +fi + +echo "Checking that no object file has static initializers" +for obj in $OBJS; do + if objdump -t "$obj" | grep '[.][cd]tors' | grep -v '\<00*\>'; then + echo "Ouch, $obj has static initializers/finalizers" + stat=1 + fi +done + +echo "Checking that no object file has lazy static C++ constructors/destructors or other such stuff" +for obj in $OBJS; do + if objdump -t "$obj" | grep '__cxa_'; then + echo "Ouch, $obj has lazy static C++ constructors/destructors or other such stuff" + stat=1 + fi +done + +exit $stat |