X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/83712b3900eb045eb14df258fd092ad54314e990..f9d04f08f7ca18e099843180edea967dd831df91:/src/scripts/source_checks diff --git a/src/scripts/source_checks b/src/scripts/source_checks new file mode 100644 index 000000000..79f9c3555 --- /dev/null +++ b/src/scripts/source_checks @@ -0,0 +1,50 @@ +#!/bin/sh + +cd src; + +# Tables with struct items +while read file table +do + : $file $table + < $file \ + perl -e '$/= undef; while (<>) { print $1 if /(?<='$table'\[\])\s*=\s*{\n(([^}].*\n)+)/m }' \ + | awk '/{ (US)?"/ {print $2}' \ + | awk -F\" '{print $2}' \ + | LANG=C sort -c \ + || exit 1 +done <<-END + readconf.c optionlist_config + globals.c optionlist_auths + globals.c debug_options + globals.c header_names + globals.c log_options + expand.c item_table + transport.c optionlist_transports + route.c optionlist_routers + transports/appendfile.c appendfile_transport_options + transports/autoreply.c autoreply_transport_options + transports/lmtp.c lmtp_transport_options + transports/pipe.c pipe_transport_options + transports/smtp.c smtp_transport_options + expand.c var_table +END + +# Tables with just string items +while read file table +do + : $file $table + < $file \ + perl -e '$/= undef; while (<>) { print $1 if /(?<='$table'\[\])\s*=\s*{\s?(([^}]*)+)}/m }' \ + | awk -F\" '/"/ {print $2}' \ + | LANG=C sort -c \ + || exit 1 + +done <<-END + expand.c item_table + expand.c op_table_underscore + expand.c op_table_main + expand.c cond_table + acl.c verbs + acl.c conditions +END +