aboutsummaryrefslogtreecommitdiff
path: root/lib/mlibc/scripts/check-options-header-include.sh
blob: 7f951c8144bf80b6a8d400d9fa4f78bd0c91fcf8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/bash

shopt -s lastpipe

errors_found=0

find . -wholename '*include/*.h' -print0 | while read -rd $'\0' file; do
	uses=$(grep -c -E "__MLIBC_(ANSI|BSD|POSIX|LINUX|INTL|ICONV|GLIBC|CRYPT)_OPTION" "$file")
	if [ "$uses" -ne 0 ]; then
		does_include=$(grep -c "#include <mlibc-config.h>" "$file")
		if [ "$does_include" -eq 0 ]; then
			echo "'$file' does not include mlibc-config.h while it does use mlibc option macros"
			errors_found+=1
		fi
	fi
done

exit $errors_found