Ver código fonte

* Removed most of the dependancy on modconfig
Still need to make configure add -lresolv to Makefile.in
And to generate dns.mod/Makefile


svn: 645

Bryan Drewery 22 anos atrás
pai
commit
cc4022a84c
6 arquivos alterados com 93 adições e 242 exclusões
  1. 10 35
      Makefile.in
  2. 0 195
      misc/modconfig
  3. 14 2
      src/Makefile.in
  4. 26 9
      src/mod/Makefile.in
  5. 0 1
      src/mod/dns.mod/Makefile.in
  6. 43 0
      src/mod/static.h

+ 10 - 35
Makefile.in

@@ -31,12 +31,10 @@ STRIP = @STRIP@
 
 
 # stuff for Tcl
 # stuff for Tcl
 XREQS = @TCL_REQS@
 XREQS = @TCL_REQS@
-XLIBS = @TCL_LIBS@ @LIBS@ @ZLIB@ @SSL@
+XLIBS = @TCL_LIBS@ @LIBS@ @ZLIB@ @SSL@  -lresolv
 TCLLIB = @TCLLIB@
 TCLLIB = @TCLLIB@
 TCLLIBFN = @TCLLIBFN@
 TCLLIBFN = @TCLLIBFN@
 
 
-modconf = $(top_srcdir)/misc/modconfig --top_srcdir=$(top_srcdir)
-
 DEBCFLAGS = -DDEBUG_ASSERT -DDEBUG_MEM -g3 -ggdb3
 DEBCFLAGS = -DDEBUG_ASSERT -DDEBUG_MEM -g3 -ggdb3
 CFLGS = -fno-strict-aliasing
 CFLGS = -fno-strict-aliasing
 MAKEFLAGS = -s -j4
 MAKEFLAGS = -s -j4
@@ -45,27 +43,25 @@ MAKE_LEAF = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS) -DLEAF' \
 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS) -DLEAF' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' \
-'XLIBS=$(XLIBS)' 'EGGEXEC=$(LEAFEXEC)' 'EGGBUILD=(leaf)' \
-'MODOBJS=mod/*.o' 
+'XLIBS=$(XLIBS)' 'EGGEXEC=$(LEAFEXEC)' 'EGGBUILD=(leaf)'
 
 
 MAKE_DLEAF = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'LD=$(LDDEBUG) -g' \
 MAKE_DLEAF = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'LD=$(LDDEBUG) -g' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'STRIP=touch' 'CFLGS=$(DEBCFLAGS) -DLEAF $(CFLGS)' \
 'STRIP=touch' 'CFLGS=$(DEBCFLAGS) -DLEAF $(CFLGS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' \
-'EGGEXEC=$(LEAFEXEC)' 'EGGBUILD=(debug leaf)' 'MODOBJS=mod/*.o'
+'EGGEXEC=$(LEAFEXEC)' 'EGGBUILD=(debug leaf)' 
 
 
 MAKE_HUB = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \
 MAKE_HUB = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS) -DHUB' \
 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS) -DHUB' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' \
-'XLIBS=$(XLIBS)' 'EGGEXEC=$(HUBEXEC)' 'EGGBUILD=(hub)' \
-'MODOBJS=mod/*.o'
+'XLIBS=$(XLIBS)' 'EGGEXEC=$(HUBEXEC)' 'EGGBUILD=(hub)' 
 
 
 MAKE_DHUB = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'LD=$(LDDEBUG) -g' \
 MAKE_DHUB = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'LD=$(LDDEBUG) -g' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'STRIP=touch' 'CFLGS=$(DEBCFLAGS) -DHUB $(CFLGS)' \
 'STRIP=touch' 'CFLGS=$(DEBCFLAGS) -DHUB $(CFLGS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' \
 'TCLLIB=$(TCLLIB)' 'TCLLIBFN=$(TCLLIBFN)' 'XREQS=$(XREQS)' 'XLIBS=$(XLIBS)' \
-'EGGEXEC=$(HUBEXEC)' 'EGGBUILD=(debug hub)' 'MODOBJS=mod/*.o'
+'EGGEXEC=$(HUBEXEC)' 'EGGBUILD=(debug hub)'
 
 
 MAKE_UTILS = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'STRIP=touch' \
 MAKE_UTILS = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CCDEBUG)' 'STRIP=touch' \
 'CCDEPMODE=$(CCDEPMODE)' \
 'CCDEPMODE=$(CCDEPMODE)' \
@@ -90,17 +86,17 @@ clean:  cleanutils
 	+@cd src && $(MAKE) clean
 	+@cd src && $(MAKE) clean
 	+@cd src/compat && $(MAKE) clean
 	+@cd src/compat && $(MAKE) clean
 	+@cd src/mod && $(MAKE) distclean
 	+@cd src/mod && $(MAKE) distclean
-	@rm -f $(HUBEXEC) $(LEAFEXEC) *.stamp core DEBUG *~ src/*~ key configure.temp .mangled
+	@rm -f $(HUBEXEC) $(LEAFEXEC) *.stamp *~ src/*~ configure.temp .mangled
 	@rm -f $(HUBEXEC).* $(LEAFEXEC).* src/settings.c src/salt.h src/help.h utctime
 	@rm -f $(HUBEXEC).* $(LEAFEXEC).* src/settings.c src/salt.h src/help.h utctime
 
 
-distclean: clean clean-modconfig
+distclean: clean
 	@rm -f Makefile src/Makefile src/compat/Makefile src/mod/Makefile
 	@rm -f Makefile src/Makefile src/compat/Makefile src/mod/Makefile
 	@rm -f config.cache config.log config.status config.h lush.h stamp.*
 	@rm -f config.cache config.log config.status config.h lush.h stamp.*
 	@rm -rf *-$(VERSION)/ autom4te.cache/ autoscan.log configure.scan src/salt.h.tmp
 	@rm -rf *-$(VERSION)/ autom4te.cache/ autoscan.log configure.scan src/salt.h.tmp
 	@rm -rf src/.deps/ src/compat/.deps/ src/mod/*.mod/.deps/
 	@rm -rf src/.deps/ src/compat/.deps/ src/mod/*.mod/.deps/
 
 
 
 
-distrib: clean clean-modconfig
+distrib: clean
 	@rm -rf $(DISTRIB)/
 	@rm -rf $(DISTRIB)/
 	@mkdir $(DISTRIB) && cp -r $(DISTROFILES) $(DISTRIB)
 	@mkdir $(DISTRIB) && cp -r $(DISTROFILES) $(DISTRIB)
 	@rm -f `find $(DISTRIB)/ \( -name '*~' -o -name '*#' -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \) -print`
 	@rm -f `find $(DISTRIB)/ \( -name '*~' -o -name '*#' -o -name '*.orig' -o -name '*.rej' -o -name '*.bak' \) -print`
@@ -121,9 +117,6 @@ tar: distrib
 #	rm -rf $(DISTRIB)/
 #	rm -rf $(DISTRIB)/
 #	cd ../ && rm -rf distrib/
 #	cd ../ && rm -rf distrib/
 
 
-eggautoconf:
-	@$(modconf) eggautoconf
-
 packconf: makesettings pack/pack.cfg
 packconf: makesettings pack/pack.cfg
 	@src/makesettings pack/pack.cfg src/settings.c~
 	@src/makesettings pack/pack.cfg src/settings.c~
 	@(if [ ! -f src/settings.c ]; then \
 	@(if [ ! -f src/settings.c ]; then \
@@ -165,20 +158,6 @@ help: packconf makehelp stringfix
 	cp -f src/help.h~ src/help.h; \
 	cp -f src/help.h~ src/help.h; \
 	fi)
 	fi)
 
 
-config:
-	@$(modconf) modules-still-exist
-	@$(modconf) detect-modules
-	@$(modconf) update-depends
-	@$(modconf) Makefile
-	+@cd src/mod && $(MAKE_CONFIG) config
-	@$(modconf) Makefile
-
-clean-modconfig:
-	@rm -f .modules .known_modules
-
-reconfig: clean-modconfig config
-
-
 stringfix: packconf src/stringfix.c pack/pack.cfg
 stringfix: packconf src/stringfix.c pack/pack.cfg
 	+@cd src && ${MAKE_UTILS} stringfix
 	+@cd src && ${MAKE_UTILS} stringfix
 
 
@@ -196,13 +175,13 @@ utils: makesettings stringfix makehelp
 dostrings: stringfix
 dostrings: stringfix
 	@misc/dostrings
 	@misc/dostrings
 
 
-general: makesettings packconf salt help dostrings config
+general: makesettings packconf salt help dostrings
+	+@cd src/mod && $(MAKE_CONFIG) config
 
 
 leaf:	general
 leaf:	general
 	@echo ""
 	@echo ""
 	@echo "Making leaf"
 	@echo "Making leaf"
 	@echo ""
 	@echo ""
-	@rm -f src/mod/mod.xlibs
 	@./misc/maketype leaf
 	@./misc/maketype leaf
 	@echo ""
 	@echo ""
 	+@cd src/mod && $(MAKE_LEAF) static
 	+@cd src/mod && $(MAKE_LEAF) static
@@ -214,7 +193,6 @@ dleaf:  general
 	@echo ""
 	@echo ""
 	@echo "Making debug leaf"
 	@echo "Making debug leaf"
 	@echo ""
 	@echo ""
-	@rm -f src/mod/mod.xlibs
 	@./misc/maketype leaf
 	@./misc/maketype leaf
 	@echo ""
 	@echo ""
 	+@cd src/mod && $(MAKE_DLEAF) static
 	+@cd src/mod && $(MAKE_DLEAF) static
@@ -226,8 +204,6 @@ hub:	general
 	@echo ""
 	@echo ""
 	@echo "Making hub"
 	@echo "Making hub"
 	@echo ""
 	@echo ""
-	@rm -f src/mod/mod.xlibs
-	@rm -f src/mod/mod.xlibs
 	@./misc/maketype hub
 	@./misc/maketype hub
 	@echo ""
 	@echo ""
 	+@cd src/mod && $(MAKE_HUB) static
 	+@cd src/mod && $(MAKE_HUB) static
@@ -239,7 +215,6 @@ dhub:   general
 	@echo ""
 	@echo ""
 	@echo "Making debug hub"
 	@echo "Making debug hub"
 	@echo ""
 	@echo ""
-	@rm -f src/mod/mod.xlibs
 	@./misc/maketype hub
 	@./misc/maketype hub
 	@echo ""
 	@echo ""
 	+@cd src/mod && $(MAKE_DHUB) static
 	+@cd src/mod && $(MAKE_DHUB) static

+ 0 - 195
misc/modconfig

@@ -164,12 +164,9 @@ Commands:
     add                  Add a module to the list of active eggdrop modules.
     add                  Add a module to the list of active eggdrop modules.
     del                  Remove a module from that list.
     del                  Remove a module from that list.
     clear                Clear the list.
     clear                Clear the list.
-    static.h             Create \`src/mod/static.h'.
-    Makefile             Create \`src/mod/Makefile'.
     configure            Interactively select modules.
     configure            Interactively select modules.
     is-configured        Exits 0/1 depending on wether modules where
     is-configured        Exits 0/1 depending on wether modules where
                            configured or not.
                            configured or not.
-    update-depends       Check all module dependencies and add modules missing.
     help                 Displays this information.
     help                 Displays this information.
     detect-modules       Find all available modules.
     detect-modules       Find all available modules.
     modules-still-exist  Check wether all known modules still exist.
     modules-still-exist  Check wether all known modules still exist.
@@ -283,107 +280,6 @@ xdetect-modules)
 
 
 	echo " done." >&6
 	echo " done." >&6
 ;;
 ;;
-xMakefile)
-#
-#  Build `src/mod/Makefile'
-#
-
-	echo ${mc_n} "building ${mc_fMakefile}... ${mc_c}" 1>&6
-
-	#  Check for selected modules
-	if test -r ${mc_fmodules}; then
-		#  Convert newlines to spaces.
-		mc_sel_modules=`cat ${mc_fmodules} | \
-					awk '{ printf("%s ", $0); }'`
-	else
-		echo "${mc_pn}: error: no modules selected. You did not run \`make config' yet." 1>&2;
-		exit 1
-	fi
-
-	mc_mod_objs=`echo ${mc_sel_modules} | sed -e 's/\.mod/.mod_o/g'`
-
-	if test ! -f ${mc_fMakefile}; then
-		echo "failed." 1>&6
-		echo "${mc_pn}: error: make file template not found." 1>&2
-		exit 1
-	fi
-
-	#  The following sed expression modifies src/mod/Makefile to
-	#  hold the new module names.
-	if (cat "${mc_fMakefile}" | \
-	    sed -e "s/^\(mods =\).*$/\1 ${mc_sel_modules}/g"  \
-		-e "s/^\(mod_objs =\).*$/\1 ${mc_mod_objs}/g" \
-	    1> "${mc_fMakefile}_new"); then
-		mv "${mc_fMakefile}_new" "${mc_fMakefile}"
-	else
-		echo "failed." 1>&6
-		echo "${mc_pn}: sed failed to build ${mc_fMakefile}." 1>&2
-		exit 1
-	fi
-
-	echo "done." 1>&6
-;;
-xstatic.h)
-#
-#  Build `static.h'
-#
-
-	echo ${mc_n} "building static.h..." 1>&6
-
-	#  Check for selected modules
-	if test ! -r ${mc_fmodules}; then
-		echo " failed." 1>&6
-		echo "${mc_pn}: error: no modules selected. You did not run \`make config' yet." 1>&2;
-		exit 1
-	fi
-	mc_sel_modules=`cat ${mc_fmodules} | sed -e 's/\.mod//g'`
-
-
-	#  Note:  All data is written to `src/mod/static.h' which is
-	#         later included into `src/main.c'.
-
-	#  Remove old static.h
-	rm -f ${mc_fstatic_h}
-
-	#  Header
-	cat 1>> ${mc_fstatic_h} << EOF
-/* src/mod/static.h -- header file for static compiles.
- *
- * NOTE: Do not edit directly. Instead, re-run \`make config'.
- */
-
-#ifndef _EGG_MOD_STATIC_H
-#define _EGG_MOD_STATIC_H
-
-EOF
-
-	#  Create declarations for module _start functions
-	for mc_mod in ${mc_sel_modules}; do
-		echo ${mc_n} ".${mc_c}" 1>&6
-if test ${mc_mod} = "server" || test ${mc_mod} = "irc";then echo "#ifdef LEAF" 1>> ${mc_fstatic_h};fi
-		echo "char *${mc_mod}_start();" 1>> ${mc_fstatic_h}
-if test ${mc_mod} = "server" || test ${mc_mod} = "irc";then echo "#endif" 1>> ${mc_fstatic_h};fi
-
-	done
-	echo 1>> ${mc_fstatic_h}
-
-	#  The link_statics() function ...
-	echo "static void link_statics()" 1>> ${mc_fstatic_h}
-	echo "{" 1>> ${mc_fstatic_h}
-	for mc_mod in ${mc_sel_modules}; do
-if test ${mc_mod} = "server" || test ${mc_mod} = "irc";then echo "#ifdef LEAF" 1>> ${mc_fstatic_h};fi
-		echo "  check_static(\"${mc_mod}\", ${mc_mod}_start);" 1>> ${mc_fstatic_h}
-if test ${mc_mod} = "server" || test ${mc_mod} = "irc";then echo "#endif" 1>> ${mc_fstatic_h};fi
-
-	done
-	cat 1>> ${mc_fstatic_h} << EOF
-}
-
-#endif /* _EGG_MOD_STATIC_H */
-EOF
-
-	echo " done." 1>&6
-;;
 xdel)
 xdel)
 #
 #
 #  Remove a module from the list
 #  Remove a module from the list
@@ -490,97 +386,6 @@ xclear)
 	rm -f ${mc_fmodules}
 	rm -f ${mc_fmodules}
 	touch ${mc_fmodules}
 	touch ${mc_fmodules}
 ;;
 ;;
-xupdate-depends)
-#
-#  Check the dependencies and add modules which are depended on, but
-#  aren't enabled.
-#
-
-	mc_all_depends=
-	mc_missing=
-
-	echo ${mc_n} "calculating dependencies...${mc_c}" 1>&6
-
-	#  Check for selected modules
-	if test ! -r ${mc_fmodules}; then
-		echo " failed." 1>&6
-		echo "${mc_pn}: error: no modules selected. You did not run configure yet." 1>&2
-		exit 1
-	fi
-	mc_sel_modules=`cat ${mc_fmodules}`
-
-	mc_new_mods="${mc_sel_modules}"
-	while (test "x${mc_new_mods}" != x); do
-		mc_mod_list="${mc_new_mods}"
-		mc_new_mods=
-
-		#  Go through every module in the list
-		for mc_mod in ${mc_mod_list}; do
-			echo ${mc_n} ".${mc_c}" 1>&6
-
-			#  We have an info file, don't we?
-			if (test ! -f ${mc_mod_dir}/${mc_mod}/modinfo); then
-				continue
-			fi
-
-			#  Figure out the module's dependencies
-			mc_mod_depends=`grep "^DEPENDS:" ${mc_mod_dir}/${mc_mod}/modinfo | sed -e 's/^DEPENDS://'`
-
-			#  Check wether the dependencies are fulfilled
-			for mc_m_depend in ${mc_mod_depends}; do
-				if (echo ${mc_sel_modules} | \
-					grep " ${mc_m_depend}" 1>&7 2>&7) || \
-				    (echo ${mc_sel_modules} | \
-					grep "^${mc_m_depend}" 1>&7 2>&7)
-				then
-					:
-				else
-					#  Does the module actually exist?
-					if test ! -d ${mc_mod_dir}/${mc_m_depend}.mod
-					then
-						mc_missing="${mc_missing} ${mc_m_depend}"
-						continue
-					fi
-
-					#  This one is missing. Add it to the
-					#  list.
-					mc_all_depends="${mc_all_depends} ${mc_m_depend}"
-					mc_sel_modules="${mc_sel_modules} ${mc_m_depend}"
-
-					#  Add to list of modules to check in
-					#  next dependency cycle.
-					mc_new_mods="${mc_new_mods} ${mc_m_depend}.mod"
-				fi
-			done
-		done
-	done
-	echo " done." 1>&6
-
-	#  Warn about missing modules.
-	if test "x${mc_missing}" != x; then
-		cat 1>&2 <<EOF
-${mc_pn}: warning:
-
-   The following modules were not found but are needed:
-
-      `echo ${mc_missing} | sed -e 's/ /, /g'`
-
-EOF
-		echo ${mc_n} "Press enter to continue... ${mc_c}"
-		read mc_ask_response
-	fi
-
-	if test "x${mc_all_depends}" != x; then
-		echo ${mc_n} "adding modules needed to match dependencies... ${mc_c}" 1>&6
-		echo ${mc_all_depends} | sed -e 's/ /, /g' 1>&6
-
-		#  Add the modules
-		${mc_self_call} -q add ${mc_all_depends}
-
-		#  Update the makefile
-		${mc_self_call} -q Makefile
-	fi
-;;
 xconfigure)
 xconfigure)
 #
 #
 #  Interactive module selection
 #  Interactive module selection

+ 14 - 2
src/Makefile.in

@@ -43,6 +43,19 @@ OBJS = auth.o \
 	userrec.o \
 	userrec.o \
 	users.o
 	users.o
 
 
+MODOBJS = mod/channels.o \
+        mod/compress.o \
+        mod/console.o \
+        mod/ctcp.o \
+        mod/dns.o \
+        mod/irc.o \
+        mod/notes.o \
+        mod/server.o \
+        mod/share.o \
+        mod/transfer.o \
+        mod/update.o
+
+
 MAKE_GENERIC = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS)' 'CCDEPMODE=$(CCDEPMODE)'
 MAKE_GENERIC = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' 'STRIP=$(STRIP)' 'CFLGS=$(CFLGS)' 'CCDEPMODE=$(CCDEPMODE)'
 
 
 blah:
 blah:
@@ -74,8 +87,7 @@ stringfix: stringfix.c common.h ../config.h ../pack/pack.cfg eggdrop.h
 	@echo ""
 	@echo ""
 	@echo "Linking wraith... $(EGGBUILD)"
 	@echo "Linking wraith... $(EGGBUILD)"
 	@echo ""
 	@echo ""
-	@touch mod/mod.xlibs
-	@$(LD) -o ../$(EGGEXEC) $(OBJS) $(MODOBJS) $(XLIBS) compat/*.o `cat mod/mod.xlibs`
+	@$(LD) -o ../$(EGGEXEC) $(OBJS) $(MODOBJS) $(XLIBS) compat/*.o
 	@$(STRIP) ../$(EGGEXEC)
 	@$(STRIP) ../$(EGGEXEC)
 	@echo "Successful compile: $(EGGEXEC)"
 	@echo "Successful compile: $(EGGEXEC)"
 	@echo ""
 	@echo ""

+ 26 - 9
src/mod/Makefile.in

@@ -18,13 +18,31 @@ MOD_CFLAGS = @CFLAGS@ -I. -I../../.. -I$(MOD_UPDIR)$(top_srcdir) \
 MOD_CPPFLAGS = @CPPFLAGS@
 MOD_CPPFLAGS = @CPPFLAGS@
 XLIBS = @XLIBS@
 XLIBS = @XLIBS@
 
 
-# Note: The following three lines are automatically adjusted by
-#       misc/modconfig. They have to be present here.
-mods =
-mod_objs =
+mods = channels.mod \
+	compress.mod \
+	console.mod \
+	ctcp.mod \
+	dns.mod \
+	irc.mod \
+	notes.mod \
+	server.mod \
+	share.mod \
+	transfer.mod \
+	update.mod
+
+mod_objs = channels.mod_o \
+	compress.mod_o \
+	console.mod_o \
+	ctcp.mod_o \
+	dns.mod_o \
+	irc.mod_o \
+	notes.mod_o \
+	server.mod_o \
+	share.mod_o \
+	transfer.mod_o \
+	update.mod_o
+
 
 
-modconfig = $(top_srcdir)/misc/modconfig --bindir=../.. \
-  --top_srcdir=$(top_srcdir)
 egg_ac_parameters = @egg_ac_parameters@
 egg_ac_parameters = @egg_ac_parameters@
 
 
 MAKE_MOD = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \
 MAKE_MOD = $(MAKE) 'MAKE=$(MAKE)' 'CC=$(CC)' 'LD=$(LD)' \
@@ -40,7 +58,6 @@ doofus:
 	@cd ../.. && $(MAKE)
 	@cd ../.. && $(MAKE)
 
 
 static: build_msg $(mod_objs)
 static: build_msg $(mod_objs)
-	@$(modconfig) static.h
 
 
 build_msg:
 build_msg:
 	@echo "[*] Building modules"
 	@echo "[*] Building modules"
@@ -69,7 +86,7 @@ config:
 	echo ""
 	echo ""
 
 
 clean:
 clean:
-	@rm -f *.o *~ static.h mod.xlibs
+	@rm -f *.o *~
 	@for i in *.mod; do \
 	@for i in *.mod; do \
 		if test ! -d $$i; then mkdir $$i; fi; \
 		if test ! -d $$i; then mkdir $$i; fi; \
 		if (test ! -r $$i/Makefile) && \
 		if (test ! -r $$i/Makefile) && \
@@ -82,7 +99,7 @@ clean:
 	done
 	done
 
 
 distclean:
 distclean:
-	@rm -f *.o *~ static.h mod.xlibs
+	@rm -f *.o *~
 	@for i in *.mod; do \
 	@for i in *.mod; do \
 		if test ! -d $$i; then mkdir $$i; fi; \
 		if test ! -d $$i; then mkdir $$i; fi; \
 		if (test ! -r $$i/Makefile) && \
 		if (test ! -r $$i/Makefile) && \

+ 0 - 1
src/mod/dns.mod/Makefile.in

@@ -17,7 +17,6 @@ doofus:
 	@cd ../../../ && make
 	@cd ../../../ && make
 
 
 static: ../dns.o
 static: ../dns.o
-	@echo "$(RESLIB)" >> ../mod.xlibs
 
 
 ../dns.o:
 ../dns.o:
 	@echo -e "Compiling: \033[1mdns\033[0m"
 	@echo -e "Compiling: \033[1mdns\033[0m"

+ 43 - 0
src/mod/static.h

@@ -0,0 +1,43 @@
+/* src/mod/static.h -- header file for static compiles.
+ *
+ */
+
+#ifndef _EGG_MOD_STATIC_H
+#define _EGG_MOD_STATIC_H
+
+char *channels_start();
+char *compress_start();
+char *console_start();
+char *ctcp_start();
+char *dns_start();
+#ifdef LEAF
+char *irc_start();
+#endif
+char *notes_start();
+#ifdef LEAF
+char *server_start();
+#endif
+char *share_start();
+char *transfer_start();
+char *update_start();
+
+static void link_statics()
+{
+  check_static("channels", channels_start);
+  check_static("compress", compress_start);
+  check_static("console", console_start);
+  check_static("ctcp", ctcp_start);
+  check_static("dns", dns_start);
+#ifdef LEAF
+  check_static("irc", irc_start);
+#endif
+  check_static("notes", notes_start);
+#ifdef LEAF
+  check_static("server", server_start);
+#endif
+  check_static("share", share_start);
+  check_static("transfer", transfer_start);
+  check_static("update", update_start);
+}
+
+#endif /* _EGG_MOD_STATIC_H */