input/output charset to utf8
-Werror handle warnings as errors
add option -MM for `make` dependencies generation
untested