#!/bin/sh
# This script checks for Byte Order Marks in source files
# which in some places may break compilation/runtime of eSpeak NG
# Look for more at: https://en.wikipedia.org/wiki/Byte_order_mark

echo -n "testing for Byte Order Marks in source files ... "

# TODO checking for other encodings (e.g. UTF-16, UTF-32, UTF-7) needs more elaborate search,
# otherwise it shows many false positives

cd $(dirname $0)/..
grep -ErlI $'\xEF\xBB\xBF' * | grep -v '^build/' | tee tests/bom.check >/dev/null # UTF-8

if [ -s tests/bom.check ] ; then
	echo "found:"
	cat tests/bom.check
	false
else
	rm tests/bom.check
	echo "none found"
	true
fi
