about summary refs log tree commit diff
path: root/src/portab/Makefile.ng
diff options
context:
space:
mode:
authorAlexander Barton <alex@barton.de>2012-09-23 17:55:48 +0200
committerAlexander Barton <alex@barton.de>2012-09-23 18:13:55 +0200
commit192e304b94f239de13b0f10ca01f6694fe6eea40 (patch)
tree02174f2d76a042c4abcfa63ef65e58b5841661e4 /src/portab/Makefile.ng
parent1413a4886ffa120e82d4963368e82b4d5ec6eb2d (diff)
downloadngircd-192e304b94f239de13b0f10ca01f6694fe6eea40.tar.gz
ngircd-192e304b94f239de13b0f10ca01f6694fe6eea40.zip
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 ...
Diffstat (limited to 'src/portab/Makefile.ng')
-rw-r--r--src/portab/Makefile.ng34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/portab/Makefile.ng b/src/portab/Makefile.ng
new file mode 100644
index 00000000..5681a530
--- /dev/null
+++ b/src/portab/Makefile.ng
@@ -0,0 +1,34 @@
+#
+# ngIRCd -- The Next Generation IRC Daemon
+# Copyright (c)2001,2002 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.
+#
+
+__ng_Makefile_am_template__
+
+noinst_LIBRARIES = libngportab.a
+
+libngportab_a_SOURCES = strdup.c strlcpy.c strtok_r.c vsnprintf.c waitpid.c
+
+check_PROGRAMS = portabtest
+
+portabtest_SOURCES = portabtest.c
+
+portabtest_LDFLAGS = -L.
+
+portabtest_LDADD = -lngportab
+
+noinst_HEADERS = imp.h exp.h portab.h splint.h
+
+maintainer-clean-local:
+	rm -f Makefile Makefile.in
+
+TESTS = portabtest
+
+# -eof-