rspamd/utils/gen-modules.sh
Vsevolod Stakhov 2300ff7346 * Add issue to cmake to make perl module as well
* Fix some portability issues (to FreeBSD mainly)
* Add script to make modules list
2009-02-17 15:04:24 +03:00

30 行
883 B
Bash
可执行文件

#!/bin/sh
#
# This script generate modules.c and modules.h for rspamd
# Used by build system
echo "#ifndef MODULES_H" > modules.h
echo "#include \"config.h\"" >> modules.h
echo "#include \"modules.h\"" > modules.c
echo "module_t modules[] = {" >> modules.c;
for arg in $@ ; do
IFS=/
for comp in ${arg} ; do
echo $comp | egrep '^[^/]+.c$' > /dev/null 2>&1
if [ $? -eq 0 ] ; then
mod=`echo $comp | sed -e 's/.c$//'`
fi
done
if [ "F${mod}" != "F" ] ; then
echo "{\"${mod}\", ${mod}_module_init, ${mod}_module_config, ${mod}_module_reconfig}," >> modules.c
echo "int ${mod}_module_init(struct config_file *cfg, struct module_ctx **ctx);" >> modules.h
echo "int ${mod}_module_config(struct config_file *cfg);" >> modules.h
echo "int ${mod}_module_reconfig(struct config_file *cfg);" >> modules.h
fi
IFS=" "
done
echo "};" >> modules.c
echo "#endif" >> modules.h