summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--configure.ac11
-rwxr-xr-xgenerate_makefile.sh4
2 files changed, 10 insertions, 5 deletions
diff --git a/configure.ac b/configure.ac
index 67d7130..770637c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,6 +4,7 @@ AC_INIT([phosphor-dbus-interfaces], [1.0], [https://github.com/openbmc/phosphor-
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign dist-xz])
AM_SILENT_RULES([yes])
+AC_LANG([C++])
# Checks for programs.
AC_PROG_CXX
@@ -16,18 +17,22 @@ AC_CHECK_PROG([FIND], find, find)
AC_CHECK_PROG([BASENAME], basename, basename)
AC_CHECK_PROG([DIRNAME], dirname, dirname)
+AC_PATH_PROG([SDBUSPLUSPLUS], [sdbus++])
+AS_IF([test "x$SDBUSPLUSPLUS" == "x"],
+ AC_MSG_ERROR([Cannot find sdbus++]))
+
# Checks for libraries.
PKG_CHECK_MODULES([SYSTEMD], [libsystemd >= 221],,
[AC_MSG_ERROR(["systemd required and not found."])])
-# TODO: Add sdbusplus.
-
-# Checks for header files.
# Checks for typedefs, structures, and compiler characteristics.
AX_CXX_COMPILE_STDCXX_14([noext])
AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CFLAGS])
AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CXXFLAGS])
+# Checks for header files.
+AC_CHECK_HEADER(sdbusplus/server.hpp, ,[AC_MSG_ERROR([Could not find sdbusplus/server.hpp...sdbusplus package required])])
+
# Checks for library functions.
LT_INIT([dlopen disable-static shared])
LT_LIB_DLLOAD
diff --git a/generate_makefile.sh b/generate_makefile.sh
index 4816919..4c103f3 100755
--- a/generate_makefile.sh
+++ b/generate_makefile.sh
@@ -13,11 +13,11 @@ do
${i%.interface.yaml}/server.cpp: ${i} ${i%.interface.yaml}/server.hpp
@mkdir -p \`dirname \$@\`
- sdbus++ -r \$(srcdir) interface server-cpp ${iface} > \$@
+ \$(SDBUSPLUSPLUS) -r \$(srcdir) interface server-cpp ${iface} > \$@
${i%.interface.yaml}/server.hpp: ${i}
@mkdir -p \`dirname \$@\`
- sdbus++ -r \$(srcdir) interface server-header ${iface} > \$@
+ \$(SDBUSPLUSPLUS) -r \$(srcdir) interface server-header ${iface} > \$@
MAKEFILE
OpenPOWER on IntegriCloud