| 1 |
# Makefile for Services tools directory. |
| 2 |
# |
| 3 |
# IRC Services is copyright (c) 1996-2009 Andrew Church. |
| 4 |
# E-mail: <achurch@achurch.org> |
| 5 |
# Parts written by Andrew Kempe and others. |
| 6 |
# This program is free but copyrighted software; see the file GPL.txt for |
| 7 |
# details. |
| 8 |
|
| 9 |
include ../Makefile.inc |
| 10 |
TOPDIR = .. |
| 11 |
CFLAGS_CONVERT_DB = $(CFLAGS) -I$(TOPDIR) -DCONVERT_DB |
| 12 |
|
| 13 |
########################################################################### |
| 14 |
|
| 15 |
ifneq ($(VSNPRINTF_O),) |
| 16 |
CONVERT_DB_VSNPRINTF_O = $(TOPDIR)/vsnprintf.o |
| 17 |
endif |
| 18 |
|
| 19 |
# These aren't "modules" in the real sense; this is just a convenient way |
| 20 |
# to list the object files that handle each database format. |
| 21 |
CONVERT_DB_MODULES = \ |
| 22 |
convert-cygnus.o \ |
| 23 |
convert-epona.o \ |
| 24 |
convert-hybserv.o \ |
| 25 |
convert-magick.o \ |
| 26 |
convert-ptlink.o \ |
| 27 |
convert-sirv.o \ |
| 28 |
convert-trircd.o \ |
| 29 |
convert-ver8.o |
| 30 |
|
| 31 |
CONVERT_DB_OBJS = convert-db.o $(CONVERT_DB_MODULES) \ |
| 32 |
fileutil-x.o misc-x.o xml-export-x.o $(TOPDIR)/compat.o \ |
| 33 |
$(CONVERT_DB_VSNPRINTF_O) |
| 34 |
|
| 35 |
.c.o: |
| 36 |
$(CC) $(CFLAGS_CONVERT_DB) -c $< -o $@ |
| 37 |
|
| 38 |
########################################################################### |
| 39 |
|
| 40 |
.PHONY: all install clean spotless |
| 41 |
|
| 42 |
all: convert-db$(EXE_SUFFIX) $(PROGRAM)-chk |
| 43 |
|
| 44 |
install: |
| 45 |
$(INSTALL_EXE) convert-db$(EXE_SUFFIX) "$(INSTALL_PREFIX)$(DATDEST)/convert-db$(EXE_SUFFIX)" |
| 46 |
$(INSTALL_EXE) $(PROGRAM)-chk "$(INSTALL_PREFIX)$(BINDEST)/$(PROGRAM)-chk" |
| 47 |
|
| 48 |
clean: |
| 49 |
rm -f *.o convert-db$(EXE_SUFFIX) $(PROGRAM)-chk |
| 50 |
|
| 51 |
spotless: clean |
| 52 |
|
| 53 |
########################################################################### |
| 54 |
|
| 55 |
convert-db$(EXE_SUFFIX): $(CONVERT_DB_OBJS) |
| 56 |
$(CC) $(LFLAGS) $(CONVERT_DB_OBJS) $(LIBS) -o $@ |
| 57 |
|
| 58 |
$(PROGRAM)-chk: ircservices-chk.in Makefile $(TOPDIR)/Makefile.inc |
| 59 |
PROGRAM=`echo "$(PROGRAM)" | sed 's,/,\\\\/,g'` ; \ |
| 60 |
BINDEST=`echo "$(BINDEST)" | sed 's,/,\\\\/,g'` ; \ |
| 61 |
DATDEST=`echo "$(DATDEST)" | sed 's,/,\\\\/,g'` ; \ |
| 62 |
sed -e "s/@BINDEST@/$$BINDEST/g" -e "s/@DATDEST@/$$DATDEST/g" -e "s/@PROGRAM@/$$PROGRAM/g" <ircservices-chk.in >$(PROGRAM)-chk |
| 63 |
chmod a+x $(PROGRAM)-chk |
| 64 |
|
| 65 |
|
| 66 |
$(CONVERT_DB_OBJS): Makefile $(TOPDIR)/Makefile.inc convert-db.h \ |
| 67 |
$(TOPDIR)/services.h $(TOPDIR)/encrypt.h \ |
| 68 |
$(TOPDIR)/modules/database/fileutil.h \ |
| 69 |
$(TOPDIR)/modules/nickserv/nickserv.h \ |
| 70 |
$(TOPDIR)/modules/chanserv/chanserv.h \ |
| 71 |
$(TOPDIR)/modules/memoserv/memoserv.h \ |
| 72 |
$(TOPDIR)/modules/operserv/operserv.h \ |
| 73 |
$(TOPDIR)/modules/operserv/maskdata.h \ |
| 74 |
$(TOPDIR)/modules/operserv/news.h \ |
| 75 |
$(TOPDIR)/modules/statserv/statserv.h |
| 76 |
|
| 77 |
convert-db.o: convert-db.c $(TOPDIR)/language.h $(TOPDIR)/modules/misc/xml.h \ |
| 78 |
$(TOPDIR)/modules/nickserv/util.c $(TOPDIR)/modules/chanserv/util.c |
| 79 |
|
| 80 |
convert-cygnus.o: convert-cygnus.c |
| 81 |
convert-epona.o: convert-epona.c |
| 82 |
convert-magick.o: convert-magick.c |
| 83 |
convert-ptlink.o: convert-ptlink.c $(TOPDIR)/language.h |
| 84 |
convert-sirv.o: convert-sirv.c |
| 85 |
convert-trircd.o: convert-trircd.c |
| 86 |
convert-ver8.o: convert-ver8.c |
| 87 |
|
| 88 |
fileutil-x.o: $(TOPDIR)/modules/database/fileutil.c $(TOPDIR)/services.h \ |
| 89 |
$(TOPDIR)/modules/database/fileutil.h |
| 90 |
$(CC) $(CFLAGS_CONVERT_DB) -c $< -o $@ |
| 91 |
misc-x.o: $(TOPDIR)/misc.c $(TOPDIR)/services.h |
| 92 |
$(CC) $(CFLAGS_CONVERT_DB) -c $< -o $@ |
| 93 |
xml-export-x.o: $(TOPDIR)/modules/misc/xml-export.c $(TOPDIR)/services.h \ |
| 94 |
$(TOPDIR)/language.h \ |
| 95 |
$(TOPDIR)/modules/nickserv/nickserv.h \ |
| 96 |
$(TOPDIR)/modules/chanserv/chanserv.h \ |
| 97 |
$(TOPDIR)/modules/memoserv/memoserv.h \ |
| 98 |
$(TOPDIR)/modules/operserv/operserv.h \ |
| 99 |
$(TOPDIR)/modules/operserv/maskdata.h \ |
| 100 |
$(TOPDIR)/modules/operserv/news.h \ |
| 101 |
$(TOPDIR)/modules/statserv/statserv.h |
| 102 |
$(CC) $(CFLAGS_CONVERT_DB) -c $< -o $@ |
| 103 |
|
| 104 |
$(TOPDIR)/compat.o $(TOPDIR)/misc.o $(TOPDIR)/vsnprintf.o: |
| 105 |
$(MAKE) -C $(TOPDIR) $(notdir $@) |
| 106 |
|
| 107 |
########################################################################### |