From 192e304b94f239de13b0f10ca01f6694fe6eea40 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Sun, 23 Sep 2012 17:55:48 +0200 Subject: Change build system to support new and old GNU automake Starting with GNU automake 1.12, the "de-ANSI-fication support" has been removed, which ngIRCd used to enable building itself on very old systems. Now the problem is, that using automake >= 1.12 isn't working because of the now unsupported M4 macros. Therefore the solution that this patch implements is to dynamically generate the automake input files with our own ./autogen.sh script: configure.ng => configure.in Makefile.ng => Makefile.am This is quite an ugly approach, but it works and enables us to: 1. use current automake >= 1.12 for development and "private builds", 2. still build distribution archives using automake 1.11.x that have "de-ANSI-fication support" enabled in the generated Makefile's. And if you are using Makefile's generated with a automake version newer than 1.11.x (without "de-ANSI-fication support"), the ./configure script warns you not to use this generated build system to generate distribution archives. Drawback of this patch: you MUST use our autogen.sh script, you can't call the autoconf/automake commands directly any more; but autoreconf should still work ... --- src/ipaddr/Makefile.ng | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 src/ipaddr/Makefile.ng (limited to 'src/ipaddr/Makefile.ng') diff --git a/src/ipaddr/Makefile.ng b/src/ipaddr/Makefile.ng new file mode 100644 index 00000000..3d5a5db9 --- /dev/null +++ b/src/ipaddr/Makefile.ng @@ -0,0 +1,19 @@ +# +# ipaddr/Makefile.am +# (c) 2008 Florian Westphal , public domain. +# + +__ng_Makefile_am_template__ + +INCLUDES = -I$(srcdir)/../portab + +noinst_LIBRARIES = libngipaddr.a + +libngipaddr_a_SOURCES = ng_ipaddr.c + +noinst_HEADERS = ng_ipaddr.h + +maintainer-clean-local: + rm -f Makefile Makefile.in + +# -eof- -- cgit 1.4.1 From 8e1beae4e7e57f5ef74fcc82532162a228e2e831 Mon Sep 17 00:00:00 2001 From: Alexander Barton Date: Mon, 24 Sep 2012 14:34:16 +0200 Subject: Include all build-system files into distribution archives --- Makefile.am | 2 ++ src/ipaddr/Makefile.ng | 2 ++ src/ngircd/Makefile.ng | 4 +++- src/portab/Makefile.ng | 15 ++++++++------- src/testsuite/Makefile.ng | 15 +++++++-------- src/tool/Makefile.ng | 2 ++ 6 files changed, 24 insertions(+), 16 deletions(-) (limited to 'src/ipaddr/Makefile.ng') diff --git a/Makefile.am b/Makefile.am index 58f202c9..53af9afd 100644 --- a/Makefile.am +++ b/Makefile.am @@ -13,6 +13,8 @@ AUTOMAKE_OPTIONS = gnu SUBDIRS = doc src man contrib +EXTRA_DIST = autogen.sh configure.ng + clean-local: rm -f build-stamp* rm -rf ngircd.dest diff --git a/src/ipaddr/Makefile.ng b/src/ipaddr/Makefile.ng index 3d5a5db9..a376e25f 100644 --- a/src/ipaddr/Makefile.ng +++ b/src/ipaddr/Makefile.ng @@ -5,6 +5,8 @@ __ng_Makefile_am_template__ +EXTRA_DIST = Makefile.ng + INCLUDES = -I$(srcdir)/../portab noinst_LIBRARIES = libngipaddr.a diff --git a/src/ngircd/Makefile.ng b/src/ngircd/Makefile.ng index db3ecfe9..8ee044d9 100644 --- a/src/ngircd/Makefile.ng +++ b/src/ngircd/Makefile.ng @@ -1,6 +1,6 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) +# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors # # 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 @@ -11,6 +11,8 @@ __ng_Makefile_am_template__ +EXTRA_DIST = Makefile.ng + INCLUDES = -I$(srcdir)/../portab -I$(srcdir)/../tool -I$(srcdir)/../ipaddr LINTARGS = -weak -warnunixlib +unixlib -booltype BOOLEAN \ diff --git a/src/portab/Makefile.ng b/src/portab/Makefile.ng index 5681a530..e27980ee 100644 --- a/src/portab/Makefile.ng +++ b/src/portab/Makefile.ng @@ -1,17 +1,18 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001,2002 by Alexander Barton (alex@barton.de) +# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors # -# 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. # __ng_Makefile_am_template__ +EXTRA_DIST = Makefile.ng + noinst_LIBRARIES = libngportab.a libngportab_a_SOURCES = strdup.c strlcpy.c strtok_r.c vsnprintf.c waitpid.c diff --git a/src/testsuite/Makefile.ng b/src/testsuite/Makefile.ng index fe642e89..40076b46 100644 --- a/src/testsuite/Makefile.ng +++ b/src/testsuite/Makefile.ng @@ -1,13 +1,12 @@ # # ngIRCd -- The Next Generation IRC Daemon -# Copyright (c)2001-2011 Alexander Barton (alex@barton.de) and Contributors. +# Copyright (c)2001-2012 Alexander Barton (alex@barton.de) and Contributors # -# 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. # __ng_Makefile_am_template__ @@ -15,7 +14,7 @@ __ng_Makefile_am_template__ INCLUDES = -I$(srcdir)/../portab EXTRA_DIST = \ - README functions.inc getpid.sh \ + Makefile.ng README functions.inc getpid.sh \ start-server.sh stop-server.sh tests.sh stress-server.sh \ test-loop.sh wait-tests.sh \ channel-test.e connect-test.e check-idle.e invite-test.e \ diff --git a/src/tool/Makefile.ng b/src/tool/Makefile.ng index 807f24bc..dc884206 100644 --- a/src/tool/Makefile.ng +++ b/src/tool/Makefile.ng @@ -11,6 +11,8 @@ __ng_Makefile_am_template__ +EXTRA_DIST = Makefile.ng + INCLUDES = -I$(srcdir)/../portab noinst_LIBRARIES = libngtool.a -- cgit 1.4.1