Files
2022-01-05 18:31:30 +03:00

32 lines
746 B
Bash
Executable File

#!/bin/sh
# Copyright 2020-2022 Yury Gribov
#
# Use of this source code is governed by MIT license that can be
# found in the LICENSE.txt file.
#
# Wrapper for ld which automatically calls implib-gen.
# To enable, add it to PATH.
# Flags are passed via env variable IMPLIBSO_LD_OPTIONS.
# Runs implib-gen on all installed libraries
set -eu
if test "${1:-}" != noscan; then
rm -f libs.txt
for lib in $(find /lib /usr/lib /usr/local/lib -name \*.so\*); do
if file $lib | grep -q 'ELF .* LSB shared object'; then
echo $lib >> libs.txt
fi
done
fi
for lib in $(cat libs.txt); do
echo "Checking $lib..."
./implib-gen.py -q --vtables $lib
name=$(basename $lib)
gcc -Wall -Wextra -Werror -c $name*.[cS]
rm $name*
done