+if [ "$1" = "-update" -o "$2" = "-update" ] ; then
+ # They wanna update their Makefile.. good for 'em
+ # Make sure .config.cache exists
+ if [ ! -e ".config.cache" ] ; then
+ echo "You have not run ./configure before. Please do this before trying to run the update script."
+ exit 0
+ fi
+ # Right, load the cache values
+ . .config.cache
+ # Check for modules
+
+ case "$OSNAME" in
+ FreeBSD)
+ LDLIBS="-Ldl"
+ FLAGS="-fPIC -frtti $OPTIMISATI"
+ MAKEPROG="gmake"
+ ;;
+ *)
+ LDLIBS="-ldl"
+ FLAGS="-fPIC -frtti $OPTIMISATI"
+ MAKEPROG="make"
+ ;;
+ esac
+
+ MODULES=""
+ for module in src/modules/*.cpp ; do
+ mod=`echo $module | sed 's/.cpp/.so/' | sed 's/src\/modules\///'`
+ MODULES="$MODULES $mod"
+ done
+
+ # Write the new makefile.
+ for file in Makefile; do
+ echo -e "\033[0mWriting \033[1;32m$file\033[0m"
+ rm -f $file
+ sed -e "
+ s%@MAKEPROG@%$MAKEPROG%g
+ s%@FLAGS@%$FLAGS%g
+ s%@LDLIBS@%$LDLIBS%g
+ s%@CONFIG_DIR@%$CONFIG_DIR%g
+ s%@MODULE_DIR@%$MODULE_DIR%g
+ s%@BINARY_DIR@%$BINARY_DIR%g
+ s%@MODULES@%$MODULES%g
+ " .${file}.inc >> $file
+ done
+ echo -e "\033[0mWriting \033[1;32msrc/modules/Makefile\033[0m"
+ rm -f src/modules/Makefile
+
+ # Generate the Header..
+
+ echo "# (C) ChatSpike development team" >> src/modules/Makefile
+ echo "# Makefile by <Craig@ChatSpike.net>" >> src/modules/Makefile
+ echo "# Many Thanks to Andrew Church <achurch@achurch.org>" >> src/modules/Makefile
+ echo "# for assisting with making this work right." >> src/modules/Makefile
+ echo "#" >> src/modules/Makefile
+ echo "# Automatically Generated by ./configure to add a module" >> src/modules/Makefile
+ echo "# please run ./configure --update" >> src/modules/Makefile
+ echo "" >> src/modules/Makefile
+ echo "all: \$(MODULES)" >> src/modules/Makefile
+ echo "" >> src/modules/Makefile
+
+
+ for module in src/modules/*.cpp ; do
+ flags=`grep '$CompileFlags: ' $module | sed 's/\/\* $CompileFlags://' | sed 's/\*\///'`
+ mod=`echo $module | sed 's/.cpp/.so/' | sed 's/src\/modules\///'`
+ mod2=`echo $module | sed 's/src\/modules\///'`
+ echo "$mod: $mod2 ../../include/modules.h ../../include/users.h ../../include/channels.h ../../include/servers.h ../../include/base.h" >> src/modules/Makefile
+ echo " \$(CC) -I../../include \$(FLAGS) -shared$flags -o $mod $mod2" >> src/modules/Makefile
+ echo " @cp $mod \$(MODPATH)/" >> src/modules/Makefile
+ echo "" >> src/modules/Makefile
+ done
+
+
+ echo "Complete."
+ exit 1;
+fi
+
+