chiark / gitweb /
Use autoconf to find -linnstorage etc., and link statically
[innduct.git] / configure.ac
index 7fd049bd3e6c631d0920a462512e504fa74071d9..4f7c559c10bcee6f4bcd653450b28aa1302ffb8b 100644 (file)
@@ -1,5 +1,56 @@
-AC_INIT(innduct, 1.0)
-AC_PREREQ(2.50)
-AC_CONFIG_SRCDIR(innduct.c)
-AC_CONFIG_HEADERS([config.h])
+#  innduct
+#  tailing reliable realtime streaming feeder for inn
+#  configure.in
+#
+#  Copyright (C) 2010 Ian Jackson <ijackson@chiark.greenend.org.uk>
+# 
+#  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 3 of the License, or
+#  (at your option) any later version.
+# 
+#  This program is distributed in the hope that it will be useful,
+#  but WITHOUT ANY WARRANTY; without even the implied warranty of
+#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+#  GNU General Public License for more details.
+# 
+#  You should have received a copy of the GNU General Public License
+#  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+#
+#  (I believe that when you compile and link this as part of the inn2
+#  build, with the Makefile runes I have provided, all the libraries
+#  and files which end up included in innduct are licence-compatible
+#  with GPLv3.  If not then please let me know.  -Ian Jackson.)
+
+AC_INIT([innduct],[1.0],[duct.c])
+AC_CONFIG_AUX_DIR(autoconf-aux)
+AM_INIT_AUTOMAKE([])
+
+AC_PROG_CC
+
+LDFLAGS="$LDFLAGS -L/usr/lib/news"
+AC_CHECK_HEADERS(sys/inotify.h)
+
+LIBS="-Wl,-Bdynamic $LIBS"
+
+AC_SEARCH_LIBS(NNTPconnect, [inn], [],[
+  AC_MSG_ERROR([failed to find libinn])
+])
+AC_SEARCH_LIBS(SMinit, [innstorage storage], [],[
+  AC_MSG_ERROR([Failed to find INN storage library (-linnstorage, -lstorage)])
+])
+
+# Possibly, we could link dynamically.  But the ABI stability of
+# the inn libraries is questionable.  On Debian only the .a files
+# are in inn2-dev.  The .so's are in inn2.deb, which isn't depended on
+# by inn2-dev, and which doesn't have a # shlibs file for them.
+# So right now we can't sensibly link dynamically.
+#
+# So we pass -Bstatic.  (Recall that LIBS is generally *prepended* to,
+# and that it is automatically included in link lines by automake
+# so nothing is needed in Makefile.am.)
+LIBS="-Wl,-Bstatic $LIBS"
+
+AM_CONFIG_HEADER(config.h)
+AC_CONFIG_FILES([Makefile])
 AC_OUTPUT