3 # Script to generate $C_FILE
8 #MINUS_e=X`$ECHO -n -e`
9 #if [ $MINUS_e != "X" ] ; then
15 #MINUS_E=X`$ECHO -n -E`
16 #if [ $MINUS_E != "X" ] ; then
24 C_FILE="$CUR_DIR/modules_init.c"
25 H_FILE="$CUR_DIR/modules_init.h"
26 MOD_FILE="$CUR_DIR/Make_modules"
27 SRC_FILE="$CUR_DIR/Make_sources"
28 U_FILE="$CUR_DIR/modules_upgrade.c"
30 /usr/bin/printf "Scanning extension modules for entry points.\n"
33 #start of the files which inturn removes any existing file
36 # start the Makefile included file for $SERV_MODULES
40 # This file is to be included by Makefile to dynamically add modules to the build process
41 # THIS FILE WAS AUTO GENERATED BY mk_modules_init.sh DO NOT EDIT THIS FILE
46 # start the Makefile included file for $SOURCES
50 # This file is to be included by Makefile to dynamically add modules to the build process
51 # THIS FILE WAS AUTO GENERATED BY mk_modules_init.sh DO NOT EDIT THIS FILE
56 # start the upgrade file
60 * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE
71 #include <sys/types.h>
73 #include <libcitadel.h>
75 #include "modules_init.h"
76 #include "sysdep_decls.h"
77 #include "serv_extensions.h"
81 void upgrade_modules (void)
85 MODM_syslog(LOG_INFO, "Upgrade modules.\n");
93 * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE
103 #include <sys/types.h>
105 #include <libcitadel.h>
107 #include "modules_init.h"
108 #include "sysdep_decls.h"
109 #include "serv_extensions.h"
112 void LogPrintMessages(long err);
113 extern long DetailErrorFlags;
115 void initialise_modules (int threading)
121 MODM_syslog(LOG_DEBUG, "Initializing, CtdlThreads enabled.\n");
124 MODM_syslog(LOG_INFO, "Initializing. CtdlThreads not yet enabled.\n");
126 /* static server initialization: */
127 pMod = CTDL_INIT_CALL(citserver);
128 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
130 pMod = CTDL_INIT_CALL(control);
131 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
133 pMod = CTDL_INIT_CALL(euidindex);
134 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
136 pMod = CTDL_INIT_CALL(file_ops);
137 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
139 pMod = CTDL_INIT_CALL(msgbase);
140 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
142 pMod = CTDL_INIT_CALL(room_ops);
143 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
145 pMod = CTDL_INIT_CALL(user_ops);
146 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
147 /* dynamic modules: */
152 #start the header file
156 * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE
160 #ifndef MODULES_INIT_H
161 #define MODULES_INIT_H
162 #include "ctdl_module.h"
163 extern size_t nSizErrmsg;
164 void initialise_modules (int threading);
165 void upgrade_modules(void);
167 CTDL_MODULE_INIT(citserver);
168 CTDL_MODULE_INIT(control);
169 CTDL_MODULE_INIT(euidindex);
170 CTDL_MODULE_INIT(file_ops);
171 CTDL_MODULE_INIT(msgbase);
172 CTDL_MODULE_INIT(room_ops);
173 CTDL_MODULE_INIT(user_ops);
174 CTDL_MODULE_INIT(netconfig);
179 RES=X`grep CTDL_MODULE_INIT $i | cut -f2 -d\( | cut -f1 -d\)`
180 if [ $RES != "X" ] ; then
181 RES_OUT=`echo $RES | cut -b2-`
182 /usr/bin/printf "Found entry point in file $i\n"
184 pMod = CTDL_INIT_CALL($RES_OUT);
185 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
189 CTDL_MODULE_INIT($RES_OUT);
192 RES=X`grep CTDL_MODULE_UPGRADE $i | cut -f2 -d\( | cut -f1 -d\)`
193 if [ $RES != "X" ] ; then
194 RES_OUT=`echo $RES | cut -b2-`
195 /usr/bin/printf "Found upgrade point in file $i\n"
197 pMod = CTDL_UPGRADE_CALL($RES_OUT);
198 MOD_syslog(LOG_INFO, "%s\n", pMod);
202 CTDL_MODULE_UPGRADE($RES_OUT);
208 if [ -d "modules" ] ; then
216 if [ -f "$k" ] ; then
217 # Add this .c file to the Makefile included list of SOURCES
218 cat <<EOF >> $SRC_FILE
219 SOURCES += modules/$j/$k
222 # Generate a .o file name
223 O_FILE=`basename $k .c`
225 # Add this .o file to the Makefile included list of SERV_MODULES
226 cat <<EOF >> $MOD_FILE
227 SERV_MODULES += modules/$j/$O_FILE
230 RES=X`grep CTDL_MODULE_INIT $k | cut -f2 -d\( | cut -f1 -d\)`
231 if [ $RES != "X" ] ; then
232 RES_OUT=`echo $RES | cut -b2-`
233 /usr/bin/printf "Found entry point in file modules/$j/$k\n"
234 # Add this entry point to the .c file
236 pMod = CTDL_INIT_CALL($RES_OUT);
237 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
239 # Add this entry point to the .h file
241 CTDL_MODULE_INIT($RES_OUT);
244 RES=X`grep CTDL_MODULE_UPGRADE $k | cut -f2 -d\( | cut -f1 -d\)`
245 if [ $RES != "X" ] ; then
246 RES_OUT=`echo $RES | cut -b2-`
247 /usr/bin/printf "Found upgrade point in file modules/$j/$k\n"
248 # Add this entry point to the .c file
250 pMod = CTDL_UPGRADE_CALL($RES_OUT);
251 MOD_syslog(LOG_INFO, "%s\n", pMod);
253 # Add this entry point to the .h file
255 CTDL_MODULE_UPGRADE($RES_OUT);
267 if [ -d "user_modules" ] ; then
275 if [ -f "$k" ] ; then
276 # Add this .c file to the Makefile included list of SOURCES
277 cat <<EOF >> $SRC_FILE
278 SOURCES += user_modules/$j/$k
281 # Generate a .o file name
282 O_FILE=`basename $k .c`
284 # Add this .o file to the Makefile included list of SERV_MODULES
285 cat <<EOF >> $MOD_FILE
286 SERV_MODULES += user_modules/$j/$O_FILE
289 RES=X`grep CTDL_MODULE_INIT $k | cut -f2 -d\( | cut -f1 -d\)`
290 if [ $RES != "X" ] ; then
291 RES_OUT=`echo $RES | cut -b2-`
292 /usr/bin/printf "Found entry point in file user_modules/$j/$k\n"
294 pMod = CTDL_INIT_CALL($RES_OUT);
295 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
298 CTDL_MODULE_INIT($RES_OUT);
301 RES=X`grep CTDL_MODULE_UPGRADE $k | cut -f2 -d\( | cut -f1 -d\)`
302 if [ $RES != "X" ] ; then
303 RES_OUT=`echo $RES | cut -b2-`
304 /usr/bin/printf "Found upgrade point in file user_modules/$j/$k\n"
306 pMod = CTDL_UPGRADE_CALL($RES_OUT);
307 MOD_syslog(LOG_INFO, "%s\n", pMod);
310 CTDL_MODULE_UPGRADE($RES_OUT);
322 # this one has to be called last, else it will not find all hooks registered.
324 pMod = CTDL_INIT_CALL(netconfig);
325 MOD_syslog(LOG_DEBUG, "Loaded module: %s\n", pMod);
327 /usr/bin/printf "\n\n" >> $C_FILE
328 /usr/bin/printf "\tfor (filter = 1; filter != 0; filter = filter << 1)\n" >> $C_FILE
329 /usr/bin/printf "\t\tif ((filter & DetailErrorFlags) != 0)\n" >> $C_FILE
330 /usr/bin/printf "\t\t\tLogPrintMessages(filter);\n" >> $C_FILE
331 /usr/bin/printf "}\n" >> $C_FILE
333 #close the upgrade file
334 /usr/bin/printf "}\n" >> $U_FILE
336 /usr/bin/printf "\n#endif /* MODULES_INIT_H */\n" >> $H_FILE