AC_CHECK_PROG(VAR_GETOPT_BINARY, getopt, true, false)
AM_CONDITIONAL(HAVE_GETOPT_BINARY, $VAR_GETOPT_BINARY)
+AC_CHECK_PROGS(PKG_CONFIG, [pkgconf, pkg-config], false)
+AM_CONDITIONAL(HAVE_PKG_CONFIG, test x$PKG_CONFIG != xfalse)
+
AC_CHECK_PROG(VAR_SSH_BINARY, ssh, true, false)
AM_CONDITIONAL(HAVE_SSH_BINARY, $VAR_SSH_BINARY)
-AM_CONDITIONAL(HAVE_SSH_KEY, ssh -D 12345 -o "BatchMode yes" -o "UserKnownHostsFile /tmp/gnunet_test_cosks_ssh_garbage" -o "StrictHostKeyChecking no" 127.0.0.1 echo -n)
-rm -f /tmp/gnunet_test_cosks_ssh_garbage
+AC_MSG_CHECKING(for SSH key)
+ AM_CONDITIONAL(HAVE_SSH_KEY, ssh -D 12345 -o "BatchMode yes" -o "UserKnownHostsFile /tmp/gnunet_test_cosks_ssh_garbage" -o "StrictHostKeyChecking no" 127.0.0.1 echo -n)
+ if test -f /tmp/gnunet_test_cosks_ssh_garbage; then
+ rm -f /tmp/gnunet_test_cosks_ssh_garbage
+ fi
+
# autotools' m4 for python has no maximum version!
# python3.4 - python3.8 for tests (3.8 unchecked)
[AC_MSG_WARN([warning: 'upnpc' binary not found.])])
+# checkbashisms
+AC_CHECK_PROGS(CHECKBASHISMS_BINARY, [checkbashisms checkbashisms.pl], false)
+AM_CONDITIONAL(HAVE_CHECKBASHISMS, test x$CHECKBASHISMS_BINARY != xfalse)
+
# uncrustify
# TODO: maybe add flag to pass location
AC_CHECK_PROG(UNCRUSTIFY_BINARY, uncrustify, true)
[0],
[Not building section 7 mdoc output])])
+# test for texi2mdoc (the binary, not the script distributed
+# with autogen)
+# TODO: refactor this and the check above.
+AC_MSG_CHECKING(for texi2mdoc binary)
+AC_CHECK_PROGS(TEXI2MDOC_BINARY, [texi2mdoc], false)
+AM_CONDITIONAL(HAVE_TEXI2MDOC, test x$TEXI2MDOC_BINARY != xfalse)
+
+# test for mandoc
+AC_MSG_CHECKING(for mandoc binary)
+AC_CHECK_PROGS(MANDOC_BINARY, [mandoc], false)
+AM_CONDITIONAL(HAVE_MANDOC, test x$MANDOC_BINARY != xfalse)
+
# should the build process be building only the documentation?
AC_MSG_CHECKING(whether to build only documentation)
AC_ARG_ENABLE([documentation-only],
[AC_DEFINE([HAVE_LIBBLUETOOTH],[0],[Lacking bluetooth library])])
# check for zbar library
+# TODO: Add checks for: -lSM, -lICE, -lX11, -lXv and -ljpeg
+# TODO: if zbar exists.
zbar=0
AC_MSG_CHECKING(for libzbar)
AC_ARG_WITH(zbar,
[
AC_MSG_RESULT([libltdl found])
],[
- AC_MSG_ERROR([GNUnet requires libltdl (from GNU libtool), try installing libltdl-dev])
+ AC_MSG_ERROR([GNUnet requires libltdl (from GNU libtool).])
])
# restore LIBS
LIBS=$SAVE_LIBS
[Define to 1 if you have 'libidn2' (-lidn2).])],
[MISSING_DEPS="${MISSING_DEPS}${MISSING_SEP}libidn2"
MISSING_SEP=", "])])
-AM_CONDITIONAL(HAVE_LIBIDN2,
- test x$working_libidn2 = x1)
+AM_CONDITIONAL(HAVE_LIBIDN2, test x$working_libidn2 = x1)
AS_IF([test x$working_libidn2 = x0],
[AS_IF([test x$my_with_libidn = x1],
[AC_MSG_NOTICE([Checking for libidn])
LDFLAGS=$SAVE_LDFLAGS
CPPFLAGS=$SAVE_CPPFLAGS
-# test for postgres
+# test for postgres:
postgres=false
-# even running the check for postgres breaks emscripten ...
+# even running the check for postgres breaks emscripten
AS_IF([test "$taler_only" != yes],
[AX_LIB_POSTGRESQL([9.5],
[CPPFLAGS="$CPPFLAGS $POSTGRESQL_CPPFLAGS"
postgres=true)
],
[AC_MSG_RESULT([no postgres])])])
-AM_CONDITIONAL(HAVE_POSTGRESQL, test x$postgres = xtrue)
+AM_CONDITIONAL(HAVE_POSTGRESQL, test x$postgres = xtrue)
+AS_IF([test "x$postgres" = xtrue],
+ [AC_DEFINE([HAVE_POSTGRESQL],[1],[Have PostgreSQL])],
+ [AC_DEFINE([HAVE_POSTGRESQL],[0],[Lacking PostgreSQL])])
LDFLAGS=$SAVE_LDFLAGS
CPPFLAGS=$SAVE_CPPFLAGS
doc/doxygen/Makefile
doc/handbook/Makefile
doc/tutorial/Makefile
-lint/Makefile
m4/Makefile
po/Makefile.in
src/Makefile
#### but for now let's keep it here.
####
+# TODO: We use "WARNING" too often, we need to clarify what
+# TODO: constitutes a WARNING, an ERROR, and a NOTICE, and
+# TODO: other message levels.
+
# -- print message regarding enabled experimental features
AS_IF([test "x$enable_experimental" = "xyes"],
[experimental_msg="experimental features enabled"])
# -- libidn 1
AS_IF([test "x$working_libidn1" = x1],
[libidn1_msg="libidn1"])
+# -- texi2mdoc-generation
+AS_IF([test "x$texi2mdoc_generation" = "xyes"],
+ [mdocml_msg="yes"],
+ [mdocml_msg="no"])
# -- texi2mdoc
-AS_IF([test "x$texi2mdoc_generation" = x1],
- [mdoc_msg="yes"],
- [mdoc_msg="no"])
+AS_IF([test "x$TEXI2MDOC_BINARY" = "false"],
+ [AC_MSG_NOTICE([WARNING: optional texi2mdoc binary not found])
+ texi2mdoc_msg="no (optional)"],
+ [texi2mdoc_msg="yes"])
+# -- mandoc
+AS_IF([test "x$MANDOC_BINARY" = "false"],
+ [AC_MSG_NOTICE([WARNING: optional mandoc binary not found])
+ mandoc_msg="no"],
+ [mandoc_msg="yes"])
# -- texinfo
AS_IF([test "x$makeinfo" != "x1"],
[texinfo_msg="no"],
# -- conversation
AS_IF([test "x$conversation_backend" = "xnone"],
[AS_IF([test "x$pulse" != "x1"],
- [AC_MSG_NOTICE([WARNING: libpulse(audio) not found, conversation will not be built.])
+ [AC_MSG_NOTICE([WARNING: libpulse(audio) not found (required to build conversation against it).])
libpulse_msg="no"],
[libpulse_msg="yes"])
AS_IF([test "x$opus" != "x1"],
- [AC_MSG_NOTICE([WARNING: libopus not found, conversation will not be built.])
+ [AC_MSG_NOTICE([WARNING: libopus not found (conversation)])
libopus_msg="no"],
[libopus_msg="yes"])
AS_IF([test "x$gst" != "x1"],
- [AC_MSG_NOTICE([WARNING: GStreamer not found, conversation will not be built.])
+ [AC_MSG_NOTICE([WARNING: GStreamer not found (required to build conversation against it).])
gstreamer_msg="no"],
[gstreamer_msg="yes"])],
[features_msg="$features_msg conversation"])
[jansson_msg="yes"])
# -- libextractor
AS_IF([test "$extractor" != 1],
- [AC_MSG_WARN([ERROR: libextractor not found, but various file-sharing functions require it])],
+ [AC_MSG_WARN([WARNING: libextractor not found, but various file-sharing functions require it])],
[libextractor_msg="yes"])
# -- libzbar
AS_IF([test "x$zbar" = "x1"],
# The summary
-# TODO: reduce the length of the last message block ("the message")
+# TODO: reduce the length of the last message block, following "IMPORTANT".
AC_MSG_NOTICE([
GNUnet Configuration
gstreamer: ${gstreamer_msg}
libpulse: ${libpulse_msg}
libextractor: ${libextractor_msg}
+texi2mdoc: ${texi2mdoc_msg}
+mandoc: ${mandoc_msg}
texinfo manual: ${texinfo_msg}
-transpiled mdoc manual: ${mdoc_msg}
+transpiled mdocml manual: ${mdocml_msg}
features: ${features_msg}
experimental: ${experimental_msg}