summaryrefslogtreecommitdiff
path: root/src/protocol
diff options
context:
space:
mode:
authorcyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2008-12-29 20:07:38 +0000
committercyberbotx <cyberbotx@5417fbe8-f217-4b02-8779-1006273d7864>2008-12-29 20:07:38 +0000
commitd6bb55476c9aa4771e2b7f24cee05325a1df4117 (patch)
treeed830d3c2c748f4c1ed6de25922461d701a805de /src/protocol
parent0bb13ddf57c968db37a997851650d768641b3528 (diff)
Revived Autotools from the grave, although it'll need some tweaking to work alongside CMake now. (In other words, don't use this commit, I committed this so I don't have to re-add these files again if I screw something up.)
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1876 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/protocol')
-rw-r--r--src/protocol/Makefile51
-rw-r--r--src/protocol/Makefile.sub32
-rw-r--r--src/protocol/Makefile.win3229
-rwxr-xr-xsrc/protocol/configure60
4 files changed, 172 insertions, 0 deletions
diff --git a/src/protocol/Makefile b/src/protocol/Makefile
new file mode 100644
index 000000000..b1db60771
--- /dev/null
+++ b/src/protocol/Makefile
@@ -0,0 +1,51 @@
+include ./Makefile.inc
+
+MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \
+ 'LDFLAGS=${LDFLAGS}' 'BINDEST=${BINDEST}' 'INSTALL=${INSTALL}' \
+ 'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \
+ 'TOUCH=${TOUCH}' 'SHELL=${SHELL}' 'DATDEST=${DATDEST}' \
+ 'RUNGROUP=${RUNGROUP}' 'MODULE_PATH=${MODULE_PATH}' \
+ 'PROFILE=${PROFILE}' 'SHARED=${SHARED}' 'MODULEFLAGS=${MODULEFLAGS}'\
+ 'MAKEBIN=${MAKEBIN}'
+
+OBJECTS= $(SRCS:.c=.o)
+OBJECTS+= $(SRCS:.cpp=.o)
+SO_FILES=$(OBJECTS:.o=.s)
+CDEFS= -rdynamic -Wall
+
+all: modules subs
+
+modules: $(OBJECTS) $(SO_FILES)
+
+install:
+ $(CP) ./*.so $(MODULE_PATH)
+
+distclean: clean spotless
+
+.c.o:
+ @$(MAKEBIN) $(CC) ${CFLAGS} ${CDEFS} ${MODULEFLAGS} -I../${INCLUDEDIR} -c $<
+
+.cpp.o:
+ @$(MAKEBIN) $(CC) ${CFLAGS} ${CDEFS} ${MODULEFLAGS} -I../${INCLUDEDIR} -c $<
+
+.o.s:
+ @$(MAKEBIN) $(CC) ${SHARED} ../mod_version.o $< -o $*.so ${PROFILE}
+ @$(TOUCH) $*.s
+
+subs:
+ @for i in $(SUBS); do \
+ echo "make all in $$i..."; \
+ (cd $$i; $(MAKE) $(MAKEARGS) all); done
+
+subs_clean:
+ @for i in $(SUBS); do \
+ echo "cleaning in $$i..."; \
+ (cd $$i; $(MAKE) clean); done
+
+clean: subs_clean
+ rm -f *.o *.s *.so *.c~ core
+
+spotless: subs_clean
+ rm -f *.o *.s *.so *.c~ core *.so Makefile.inc
+
+
diff --git a/src/protocol/Makefile.sub b/src/protocol/Makefile.sub
new file mode 100644
index 000000000..9fd25dc0c
--- /dev/null
+++ b/src/protocol/Makefile.sub
@@ -0,0 +1,32 @@
+MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \
+ 'LDFLAGS=${LDFLAGS}' 'BINDEST=${BINDEST}' 'INSTALL=${INSTALL}' \
+ 'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \
+ 'TOUCH=${TOUCH}' 'SHELL=${SHELL}' 'DATDEST=${DATDEST}' \
+ 'RUNGROUP=${RUNGROUP}' 'MODULE_PATH=${MODULE_PATH}' \
+ 'PROFILE=${PROFILE}' 'SHARED=${SHARED}' 'MODULEFLAGS=${MODULEFLAGS}'
+
+OBJECTS= $(SRCS:.c=.o)
+SO_FILES=$(OBJECTS:.o=.s)
+CDEFS= -rdynamic -Wall
+
+all: module
+
+module: $(OBJECTS) so
+
+distclean: spotless
+
+.c.o:
+ $(CC) ${CFLAGS} ${CDEFS} ${MODULEFLAGS} -I../ -I../../${INCLUDEDIR} -c $<
+
+.cpp.o:
+ $(CC) ${CFLAGS} ${CDEFS} ${MODULEFLAGS} -I../ -I../../${INCLUDEDIR} -c $<
+
+so:
+ $(CC) ${SHARED} $(OBJECTS) -o ../$(TARGET).so ${PROFILE}
+
+clean:
+ rm -f *.o *.so *.c~ core
+
+spotless: clean
+ rm -f *~ *.o *.so *.c~ core
+
diff --git a/src/protocol/Makefile.win32 b/src/protocol/Makefile.win32
new file mode 100644
index 000000000..aec850976
--- /dev/null
+++ b/src/protocol/Makefile.win32
@@ -0,0 +1,29 @@
+include ../../Makefile.inc.win32
+
+SRCS=bahamut.c inspircd11.c inspircd12.cpp \
+ ratbox.c unreal32.c
+OBJECTS=bahamut.dll inspircd11.dll inspircd12.dll ratbox.dll unreal32.dll
+
+CFLAGS=/LD /MD /D MODULE_COMPILE $(CFLAGS) /I"../../include"
+LFLAGS=/link ../anope.lib wsock32.lib $(LIBS) $(LFLAGS) $(MYSQL_LIB_PATH) /export:init_module /export:destroy_module /VERSION:$(VERSION)
+
+all: $(OBJECTS)
+
+distclean: clean spotless
+
+.c.dll:
+ $(CC) $(CFLAGS) $< ..\mod_version.c $(LFLAGS)
+
+.cpp.dll:
+ $(CC) $(CFLAGS) $< ..\mod_version.c $(LFLAGS)
+
+clean:
+ -@del *.obj
+
+spotless: clean
+ -@del *.dll *.lib *.exp *.manifest
+
+install:
+ -@mkdir ..\..\$(DATDEST)\modules
+ -@mkdir ..\..\$(DATDEST)\modules\runtime
+ -@copy *.dll ..\..\$(DATDEST)\modules
diff --git a/src/protocol/configure b/src/protocol/configure
new file mode 100755
index 000000000..63f522d38
--- /dev/null
+++ b/src/protocol/configure
@@ -0,0 +1,60 @@
+#!/bin/sh
+
+oldpath=`pwd`
+
+if [ $1 ]; then
+ cd $1
+fi
+
+echo2 () {
+ $ECHO2 "$*$ECHO2SUF" # these are defined later
+}
+
+ECHO2SUF=''
+if [ "`echo -n a ; echo -n b`" = "ab" ] ; then
+ ECHO2='echo -n'
+elif [ "`echo 'a\c' ; echo 'b\c'`" = "ab" ] ; then
+ ECHO2='echo' ; ECHO2SUF='\c'
+elif [ "`printf 'a' 2>&1 ; printf 'b' 2>&1`" = "ab" ] ; then
+ ECHO2='printf "%s"'
+else
+ # oh well...
+ ECHO2='echo'
+fi
+export ECHO2 ECHO2SUF
+
+
+echo2 "SRCS=" > ./Makefile.inc
+FIRST=1
+for oldfile in `ls -1 *.c *.cpp`
+do
+ if [ "$FIRST" = 1 ] ; then
+ echo2 " "$oldfile >> ./Makefile.inc
+ else
+ echo "\\" >> ./Makefile.inc
+ echo2 " " $oldfile >> ./Makefile.inc
+ fi
+ FIRST=0
+done
+echo "" >> ./Makefile.inc
+
+echo2 "SUBS=" >> ./Makefile.inc
+FIRST=1
+for dir in *
+do
+ if [ -d $dir ] ; then
+ if [ -f $dir/Makefile ] ; then
+ if [ "$FIRST" = 1 ] ; then
+ echo2 " "$dir >> ./Makefile.inc
+ else
+ echo "\\" >> ./Makefile.inc
+ echo2 " " $dir >> ./Makefile.inc
+ fi
+ FIRST=0
+ fi
+ fi
+done
+
+cd $oldpath
+
+exit 0