7737c17d52
Done with ad hoc scripting hacks processing unused imports found by pyflakes: for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Logs.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^import waflib.Logs as Logs,/import/g' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/import waflib.Options as Options, /import /g' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^from waflib import Options,/from waflib import/g' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep ' imported but unused$' | sed "s/^\([^:]*\):[0-9]*:[0-9]* '\(.*\)'.*/\1 \2/g" | while read f lib; do sed -i "/^import $lib$/d" $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import Options$/d' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.TaskGen.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import TaskGen$/d' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Task.Task.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Task import Task$/d' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Tools.winres.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Tools import winres$/d' $f; done for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Utils.* but unused' | cut -d: -f1 | while read f; do sed -i '/^import waflib.Utils as Utils$/d' $f; done |
||
---|---|---|
.. | ||
abicheck.c | ||
Makefile | ||
README | ||
wscript |
g++5 ABI test tool ================== This is a simple tool to test a system for g++5's glibmm at runtime. GCC5.1 introduced a new ABI for the C++ standard library. The old 3.4 .. 5.0 ABI is not compatible. By default gcc provides a dual ABI, so testing libstc++ itself is not sufficient. Some GNU/Linux distributions systems switched to the new ABI already and compile *plugins* with the new gcc. If a plugin uses a c++ library that is also shipped with ardour-bundles, the ABI of that library must match. Currently known cases: gtkmm, glibmm. e.g. Ingen or eq10q provided by a distro compiled with gcc5 will not load in Ardour from ardour.org compiled with gcc4 because ardour ships an incompatible gtkmm, glibmm, cairomm, ... Likewise Ardour gcc5-compiled binaries will fail to load plugins that are compiled with gcc4. This simiple tool `gcc-glibmm-abi-check` checks for gcc4/gcc5 specific symbols in libglibmm (a common denominator C++ lib), it is intended to be run when deploying ardour binaries. References ---------- https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html https://wiki.debian.org/GCC5 https://mail.gnome.org/archives/gtkmm-list/2015-June/thread.html