You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.3 KiB
55 lines
1.3 KiB
#!/bin/bash |
|
ret=0 |
|
|
|
BLACKLIST="tests/test_setter_blacklist.txt" |
|
|
|
check(){ |
|
func=$(echo $1 | grep -oe '_\?elm_\w\+') |
|
base=${func%_set} |
|
cat $BLACKLIST | grep -q $func |
|
if [ $? == 0 ];then |
|
return |
|
fi |
|
echo $1 | grep -qe "_set(const \+[^\(char \+\*\)]" |
|
if [ $? == 0 ];then |
|
echo -e "\e[31;1mCONST\e[m\t $func" |
|
ret=1 |
|
fi |
|
echo $1 | grep -qe "EAPI \+\(void\|Eina_Bool\)" |
|
if [ $? != 0 ];then |
|
echo -e "\e[31;1mUNKNOWN RETURN\e[m\t $func" |
|
ret=1 |
|
fi |
|
echo $1 | grep -qe "\(cb_set\|all_set\)(" |
|
if [ $? != 0 ];then |
|
grep -qe "EAPI.*\<${base}_get\>" $2 |
|
if [ $? != 0 ];then |
|
echo -e "\e[31;1mMISSING GETTER\e[m\t $func" |
|
ret=1 |
|
fi |
|
echo $1 | grep -qe "\(content\|icon\|end\)_set(\w\+ \+\*obj, \w\+ \+\*\w\+);" |
|
if [ $? == 0 ];then |
|
grep -qe "EAPI.*\<${base}_unset\>" $2 |
|
if [ $? != 0 ];then |
|
echo -e "\e[31;1mMISSING UNSETTER\e[m\t $func" |
|
ret=1 |
|
fi |
|
fi |
|
fi |
|
} |
|
|
|
HEADERS="src/lib/Elementary.h.in |
|
src/lib/Elementary_Cursor.h |
|
src/lib/elm_widget.h" |
|
|
|
IFS=$'\n' |
|
|
|
for header in $HEADERS; do |
|
grep -e "^ *EAPI.*(.*)" $header | grep -e 'elm_\w\+_set' >eapi.list |
|
|
|
for i in $(cat eapi.list); do |
|
check $i $header |
|
done |
|
rm eapi.list |
|
done |
|
exit $ret
|
|
|