* use AC_CHECK_FUNCS to check for flock()
[citadel.git] / citadel / mk_module_init.sh
index 775013aa0c39e2bac526187b5e82eb448a6e83f3..71d37c4add543b9f398f65e1b45cf87201e52ffd 100755 (executable)
@@ -3,59 +3,94 @@
 # Script to generate $C_FILE
 #
 
+ECHO=/usr/bin/printf
+
+#MINUS_e=X`$ECHO -n -e`
+#if [ $MINUS_e != "X" ] ; then
+#      MINUS_e=""
+#else
+#      MINUS_e="-e"
+#fi
+
+#MINUS_E=X`$ECHO -n -E`
+#if [ $MINUS_E != "X" ] ; then
+#      MINUS_E=""
+#else
+#      MINUS_E="-E"
+#fi
 
 
 CUR_DIR=`pwd`
 C_FILE="$CUR_DIR/modules_init.c"
 H_FILE="$CUR_DIR/modules_init.h"
 
-echo -e "Scanning extension modules for entry points."
+/usr/bin/printf "Scanning extension modules for entry points.\n"
+/usr/bin/printf "This version of echo $ECHO supports $MINUS_e $MINUS_E.\n"
 
 
-#start ofs the files which inturn removes any existing file
+#start of the files which inturn removes any existing file
 #
-echo -e "/*" > $C_FILE
-echo -e " * $C_FILE" >> $C_FILE
-echo -e " * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE" >> $C_FILE
-echo -e " */\n\n\n" >> $C_FILE
-
-#echo -e "#include \"sysdep.h\"\n" >> $C_FILE
-echo -e "#include <stdlib.h>\n" >> $C_FILE
-#echo -e "#include <ctype.h>\n" >> $C_FILE
-#echo -e "#include \"citadel.h\"\n" >> $C_FILE
-echo -e "#include \"modules_init.h\"\n" >> $C_FILE
-echo -e "#include \"sysdep_decls.h\"\n" >> $C_FILE
-echo -e "\n\n\n" >> $C_FILE
-echo -e "void LogPrintMessages(long err);" >> $C_FILE
-echo -e "static long DetailErrorFlags;" >> $C_FILE
-echo -e "\n\n\n" >> $C_FILE
-
-echo -e "void initialise_modules (void)" >> $C_FILE
-echo -e "{" >> $C_FILE
-echo -e "\tlong filter;\n\n" >> $C_FILE
-echo -e -n "\t" >> $C_FILE
-echo -E "lprintf(CTDL_INFO, \"New citadel module init proceedure.\n\");" >> $C_FILE
+cat <<EOF  >$C_FILE
+/*
+ * $C_FILE
+ * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE
+ */
+
+
+
+#include "sysdep.h"
+#include <stdlib.h>
+#include <time.h>
+#include <ctype.h>
+#include <stdio.h>
+#include "citadel.h"
+#include "modules_init.h"
+#include "sysdep_decls.h"
+
+
+void LogPrintMessages(long err);
+extern long DetailErrorFlags;
+
+
+
+void initialise_modules (void)
+{
+    long filter;
+    nSizErrmsg = 0;
+
+    lprintf (CTDL_INFO, "New citadel module init proceedure.\n");
+EOF
+
 
 #start the header file
-echo -e "/*" > $H_FILE
-echo -e " * $H_FILE" >> $H_FILE
-echo -e " * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE" >> $H_FILE
-echo -e " */\n\n\n" >> $H_FILE
-echo -e "#ifndef MODULES_INIT_H" >> $H_FILE
-echo -e "#define MODULES_INIT_H\n" >> $H_FILE
-echo -e "#include \"ctdl_module.h\"\n" >> $H_FILE
-echo -e "void initialise_modules (void) ;\n" >> $H_FILE
+cat <<EOF > $H_FILE
+/* 
+ * $H_FILE
+ * Auto generated by mk_modules_init.sh DO NOT EDIT THIS FILE
+ */
+
+
+#ifndef MODULES_INIT_H
+#define MODULES_INIT_H
+#include "ctdl_module.h"
+extern size_t nSizErrmsg;
+void initialise_modules (void);
 
+EOF
 
 for i in serv_*.c
 do
        RES=X`grep CTDL_MODULE_INIT $i | cut -f2 -d\( | cut -f1 -d\)`
        if [ $RES != "X" ] ; then
                RES_OUT=`echo $RES | cut -b2-`
-               echo -e "Found entry point in file $i"
-               echo -e -n "\t" >> $C_FILE
-               echo -E "lprintf (CTDL_INFO, \"%s\n\", CTDL_INIT_CALL($RES_OUT));" >> $C_FILE
-               echo -E "CTDL_MODULE_INIT($RES_OUT) ;" >> $H_FILE
+               /usr/bin/printf "Found entry point in file $i\n"
+cat <<EOF  >> $C_FILE
+       lprintf (CTDL_INFO, "%%s\n", CTDL_INIT_CALL($RES_OUT));
+
+EOF
+cat <<EOF >>$H_FILE
+CTDL_MODULE_INIT($RES_OUT);
+EOF
        fi
 done
 
@@ -72,10 +107,13 @@ if [ -d "modules" ] ; then
                                        RES=X`grep CTDL_MODULE_INIT $k | cut -f2 -d\( | cut -f1 -d\)`
                                        if [ $RES != "X" ] ; then
                                                RES_OUT=`echo $RES | cut -b2-`
-                                               echo -e "Found entry point in file modules/$j/$k"
-                                               echo -e -n "\t" >> $C_FILE
-                                               echo -E "lprintf (CTDL_INFO, \"%s\n\", CTDL_INIT_CALL($RES_OUT));" >> $C_FILE
-                                               echo -E "CTDL_MODULE_INIT($RES_OUT) ;" >> $H_FILE
+                                               /usr/bin/printf "Found entry point in file modules/$j/$k\n"
+cat <<EOF >> $C_FILE
+       lprintf (CTDL_INFO, "%s\n", CTDL_INIT_CALL($RES_OUT));
+EOF
+cat <<EOF >> $H_FILE
+       CTDL_MODULE_INIT($RES_OUT);
+EOF
                                        fi
                                fi
                        done
@@ -98,10 +136,13 @@ if [ -d "user_modules" ] ; then
                                        RES=X`grep CTDL_MODULE_INIT $k | cut -f2 -d\( | cut -f1 -d\)`
                                        if [ $RES != "X" ] ; then
                                                RES_OUT=`echo $RES | cut -b2-`
-                                               echo -e "Found entry point in file user_modules/$j/$k"
-                                               echo -e -n "\t" >> $C_FILE
-                                               echo -E "lprintf (CTDL_INFO, \"%s\n\", CTDL_INIT_CALL($RES_OUT));" >> $C_FILE
-                                               echo -E "CTDL_MODULE_INIT($RES_OUT) ;" >> $H_FILE
+                                               /usr/bin/printf "Found entry point in file user_modules/$j/$k\n"
+cat <<EOF >> $C_FILE
+       lprintf (CTDL_INFO, "%s\n", CTDL_INIT_CALL($RES_OUT));
+EOF
+cat <<EOF >> $H_FILE
+CTDL_MODULE_INIT($RES_OUT);
+EOF
                                        fi
                                fi
                        done
@@ -112,11 +153,11 @@ fi
 
 cd $CUR_DIR
 
-echo -e "\n\n" >> $C_FILE
-echo -e "\tfor (filter = 1; filter != 0; filter = filter << 1)" >> $C_FILE
-echo -e "\t\tif ((filter & DetailErrorFlags) != 0)" >> $C_FILE
-echo -e "\t\t\tLogPrintMessages(filter);" >> $C_FILE
-echo -e "}" >> $C_FILE
+/usr/bin/printf "\n\n" >> $C_FILE
+/usr/bin/printf "\tfor (filter = 1; filter != 0; filter = filter << 1)\n" >> $C_FILE
+/usr/bin/printf "\t\tif ((filter & DetailErrorFlags) != 0)\n" >> $C_FILE
+/usr/bin/printf "\t\t\tLogPrintMessages(filter);\n" >> $C_FILE
+/usr/bin/printf "}\n" >> $C_FILE
 
 
-echo -e "\n#endif /* MODULES_INIT_H */" >> $H_FILE
+/usr/bin/printf "\n#endif /* MODULES_INIT_H */\n" >> $H_FILE