]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/Makefile.am
Introduce option to configure the maximum nick name lenth in ngircd.conf
[ngircd-alex.git] / src / ngircd / Makefile.am
index 8ef5b95320d0d2a6ee0b51829a32f8bac19321ab..46513a8a54da042e4b74fbc21ef165ed23c20b4c 100644 (file)
@@ -1,74 +1,98 @@
 #
 # ngIRCd -- The Next Generation IRC Daemon
-# Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
+# Copyright (c)2001-2003 by Alexander Barton (alex@barton.de)
 #
-# Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
-# der GNU General Public License (GPL), wie von der Free Software Foundation
-# herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
-# der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
-# Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
-# der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# Please read the file COPYING, README and AUTHORS for more information.
 #
-# $Id: Makefile.am,v 1.11 2002/02/21 17:25:16 alex Exp $
-#
-# $Log: Makefile.am,v $
-# Revision 1.11  2002/02/21 17:25:16  alex
-# - "check"-Target für "make check" und "make distcheck" begonnen ...
-#
-# Revision 1.10  2002/01/02 02:43:50  alex
-# - Copyright-Text ergaenzt bzw. aktualisiert.
-#
-# Revision 1.9  2001/12/31 02:18:51  alex
-# - viele neue Befehle (WHOIS, ISON, OPER, DIE, RESTART),
-# - neuen Header "defines.h" mit (fast) allen Konstanten.
-# - Code Cleanups und viele "kleine" Aenderungen & Bugfixes.
-#
-# Revision 1.8  2001/12/30 19:25:03  alex
-# - in "noinst_HEADERS" waren einige Dateien als .c anstelle .h aufgefuehrt.
-#
-# Revision 1.7  2001/12/27 00:37:07  alex
-# - Erkennung der "portab header" geaendert, CFLAGS werden nun anders gesetzt.
-#
-# Revision 1.6  2001/12/23 21:53:54  alex
-# - Header messages.h eingefuegt.
-#
-# Revision 1.5  2001/12/21 22:25:30  alex
-# - neues Modul "parse" eingebunden.
-#
-# Revision 1.4  2001/12/14 08:14:03  alex
-# - neue Module (irc, client, channel) aufgenommen.
-#
-# Revision 1.3  2001/12/13 02:03:33  alex
-# - beim Compilieren werden nun Informationen fuer den Debugger erzeugt.
-#
-# Revision 1.2  2001/12/12 17:20:02  alex
-# - neue Sourcefiles und Header ergaenzt.
-#
-# Revision 1.1.1.1  2001/12/11 21:53:04  alex
-# - Imported sources to CVS.
+# $Id: Makefile.am,v 1.50 2007/11/21 12:16:36 alex Exp $
 #
 
+AUTOMAKE_OPTIONS = ../portab/ansi2knr
+
+INCLUDES = -I$(srcdir)/../portab -I$(srcdir)/../tool
+
+LINTARGS = -weak -warnunixlib +unixlib -booltype BOOLEAN \
+ -varuse -retvalother -emptyret -unrecog
+
 sbin_PROGRAMS = ngircd
 
-ngircd_SOURCES = ngircd.c channel.c client.c conf.c conn.c irc.c log.c \
-       parse.c tool.c
+ngircd_SOURCES = ngircd.c array.c channel.c client.c conf.c conn.c conn-func.c \
+       conn-zip.c hash.c io.c irc.c irc-channel.c irc-info.c irc-login.c \
+       irc-mode.c irc-op.c irc-oper.c irc-server.c irc-write.c lists.c log.c \
+       match.c numeric.c parse.c rendezvous.c resolve.c
 
-noinst_HEADERS = ngircd.h channel.h client.h conf.h conn.h irc.h log.h \
-       parse.h tool.h global.h messages.h defines.h
+ngircd_LDFLAGS = -L../portab -L../tool
+
+ngircd_LDADD = -lngportab -lngtool
+
+noinst_HEADERS = ngircd.h array.h channel.h client.h conf.h conn.h conn-func.h \
+       conn-zip.h hash.h io.h irc.h irc-channel.h irc-info.h irc-login.h \
+       irc-mode.h irc-op.h irc-oper.h irc-server.h irc-write.h lists.h log.h \
+       match.h numeric.h parse.h rendezvous.h resolve.h \
+       defines.h messages.h
 
 clean-local:
-       rm -f check-version check-help
+       rm -f check-version check-help lint.out cvs-version.*
 
 maintainer-clean-local:
        rm -f Makefile Makefile.in
 
 check-version: Makefile
        echo "#!/bin/sh" > check-version
-       echo "./ngircd --version | grep version > /dev/null 2>&1" >> check-version
+       echo "./ngircd --version | grep ngircd >/dev/null 2>&1" >>check-version
+       chmod 755 check-version
 
 check-help: Makefile
        echo "#!/bin/sh" > check-help
-       echo "./ngircd --help | grep help > /dev/null 2>&1" >> check-help
+       echo "./ngircd --help | grep help >/dev/null 2>&1" >>check-help
+       chmod 755 check-help
+
+lint:
+       @splint --version >/dev/null 2>&1 \
+        || ( echo; echo "Error: \"splint\" not found!"; echo; exit 1 )
+       @echo; warnings=0; files=0; \
+       for f in *.c; do \
+        echo "checking $$f ..."; \
+        splint $$f $(LINTARGS) -I$(srcdir) -I$(srcdir)/.. \
+         $(INCLUDES) $(AM_CFLAGS) >lint.out 2>&1; \
+        grep "no warnings" lint.out > /dev/null 2>&1; \
+        if [ $$? -ne 0 ]; then \
+         waswarning=1; \
+         echo; grep -v "^Command Line: " lint.out; echo; \
+         w=$$( grep "code warning" lint.out | $(AWK) "{ print \$$4 }" ); \
+         [ "$$w" -gt 0 ] && warnings=`expr $$warnings + $$w`; \
+         files=`expr $$files + 1`; \
+        else \
+         waswarning=0; \
+        fi; \
+        rm -f lint.out; \
+       done; \
+       [ $$waswarning -eq 0 ] && echo; \
+       [ $$warnings -gt 0 ] \
+        && echo "Result: $$warnings warning(s) in $$files file(s)!" \
+        || echo "Result: no warnings found."; \
+       echo; [ $$warnings -gt 0 ] && exit 1
+
+ngircd.c: cvs-version.h
+
+irc-login.c: cvs-version.h
+
+irc-info.c: cvs-version.h
+
+cvs-version.h: cvs-date
+
+cvs-date:
+       grep VERSION ../config.h | grep "CVS" \
+        && echo "#define CVSDATE \"$$( grep "\$$Id" $(srcdir)/*.c \
+           | $(AWK) "{ print \$$9 }" | sort | tail -1 \
+           | sed -e "s/\//-/g" )\"" > cvs-version.new \
+        || echo "" > cvs-version.new
+       diff cvs-version.h cvs-version.new 2>/dev/null \
+        || cp cvs-version.new cvs-version.h
 
 TESTS = check-version check-help