summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Martin Szulecki2014-10-22 02:14:52 +0200
committerGravatar Martin Szulecki2014-10-22 02:14:52 +0200
commitcc907c0f162ee84e5698b9c27ac6fb0be8bb9bc0 (patch)
treeee6873a5fda80158afdbb2c9706ace0d771e4cec
parenta2c5ec6350597ad6a84341579c9d1d1780e97a98 (diff)
downloadlibplist-cc907c0f162ee84e5698b9c27ac6fb0be8bb9bc0.tar.gz
libplist-cc907c0f162ee84e5698b9c27ac6fb0be8bb9bc0.tar.bz2
Workaround autoconf bug and ensure a C++ compiler is mandatory
If AC_PROG_CXX is used after AC_PROG_CC, it will return "g++" even if no C++ compiler is installed. However, as we need one, testing compiling a program will make configure fail if indeed no C++ compiler is installed.
-rw-r--r--configure.ac10
1 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac
index fb6b196..b9185a6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -27,6 +27,16 @@ AC_SUBST(LIBXML2_VERSION)
# Checks for programs.
AC_PROG_CC
AC_PROG_CXX
+
+# AC_PROG_CXX will return "g++" even if no c++ compiler is installed
+AC_LANG_PUSH([C++])
+AC_MSG_CHECKING([whether $CXX is available and compiles a program])
+AC_COMPILE_IFELSE([AC_LANG_PROGRAM([],[])],
+ [AC_MSG_RESULT([yes])],
+ [AC_MSG_RESULT([no])
+ AC_MSG_ERROR([C++ compiler not available or unable to compile])])
+AC_LANG_POP
+
AM_PROG_CC_C_O
AC_PROG_LIBTOOL