Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 1 | # Initialization |
| 2 | AC_PREREQ([2.69]) |
| 3 | AC_INIT([phosphor-dbus-interfaces], [1.0], [https://github.com/openbmc/phosphor-dbus-interfaces]) |
| 4 | AC_CONFIG_HEADERS([config.h]) |
| 5 | AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign dist-xz]) |
| 6 | AM_SILENT_RULES([yes]) |
Patrick Williams | e1a8f36 | 2016-12-10 07:42:08 -0600 | [diff] [blame] | 7 | AC_LANG([C++]) |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 8 | |
| 9 | # Checks for programs. |
| 10 | AC_PROG_CXX |
| 11 | AC_PROG_CC |
| 12 | AM_PROG_AR |
| 13 | AC_PROG_INSTALL |
| 14 | AC_PROG_MAKE_SET |
| 15 | AC_PROG_SED |
| 16 | AC_CHECK_PROG([FIND], find, find) |
| 17 | AC_CHECK_PROG([BASENAME], basename, basename) |
| 18 | AC_CHECK_PROG([DIRNAME], dirname, dirname) |
| 19 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 20 | AC_ARG_ENABLE([libphosphor_dbus], |
| 21 | AS_HELP_STRING([--disable-libphosphor_dbus], [Disable libphosphor_dbus])) |
Patrick Williams | e1a8f36 | 2016-12-10 07:42:08 -0600 | [diff] [blame] | 22 | |
Matt Spinler | f7616bc | 2019-11-19 09:23:37 -0600 | [diff] [blame] | 23 | YAML_DIRS="xyz" |
| 24 | |
| 25 | AC_ARG_ENABLE([openpower_dbus_interfaces], |
| 26 | AS_HELP_STRING([--enable-openpower-dbus-interfaces], [Enable the OpenPower D-Bus interfaces])) |
| 27 | |
| 28 | AS_IF([test "x$enable_openpower_dbus_interfaces" == "xyes"], [ |
| 29 | YAML_DIRS="$YAML_DIRS org/open_power" |
| 30 | ]) |
| 31 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 32 | AM_CONDITIONAL([WANT_LIBPHOSPHOR_DBUS], [test "x$enable_libphosphor_dbus" != "xno"]) |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 33 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 34 | AS_IF([test "x$enable_libphosphor_dbus" != "xno"], [ |
| 35 | AC_PATH_PROG([SDBUSPLUSPLUS], [sdbus++]) |
| 36 | AS_IF([test "x$SDBUSPLUSPLUS" == "x"], |
| 37 | AC_MSG_ERROR([Cannot find sdbus++])) |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 38 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 39 | # Checks for libraries. |
Patrick Venture | a0b543d | 2019-02-13 15:52:27 -0800 | [diff] [blame] | 40 | AX_PKG_CHECK_MODULES([SYSTEMD], [], [libsystemd >= 221]) |
| 41 | AX_PKG_CHECK_MODULES([SDBUSPLUS], [], [sdbusplus]) |
Patrick Williams | e1a8f36 | 2016-12-10 07:42:08 -0600 | [diff] [blame] | 42 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 43 | # Checks for typedefs, structures, and compiler characteristics. |
Vernon Mauery | b6af8b6 | 2018-10-04 10:26:17 -0700 | [diff] [blame] | 44 | AX_CXX_COMPILE_STDCXX_17([noext]) |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 45 | AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CFLAGS]) |
| 46 | AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CXXFLAGS]) |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 47 | |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 48 | # Checks for header files. |
William A. Kennington III | 6be5935 | 2018-01-24 15:06:33 -0800 | [diff] [blame] | 49 | old_CPPFLAGS="$CPPFLAGS" |
| 50 | CPPFLAGS="$SDBUSPLUS_CFLAGS $CPPFLAGS" |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 51 | AC_CHECK_HEADER(sdbusplus/server.hpp, ,[AC_MSG_ERROR([Could not find sdbusplus/server.hpp...sdbusplus package required])]) |
William A. Kennington III | 6be5935 | 2018-01-24 15:06:33 -0800 | [diff] [blame] | 52 | CPPFLAGS="$old_CPPFLAGS" |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 53 | |
| 54 | # Checks for library functions. |
| 55 | LT_INIT([dlopen disable-static shared]) |
| 56 | LT_LIB_DLLOAD |
| 57 | |
| 58 | # Create configured output |
| 59 | AC_CONFIG_FILES([Makefile.interfaces], |
Matt Spinler | f7616bc | 2019-11-19 09:23:37 -0600 | [diff] [blame] | 60 | [${srcdir}/generate_makefile.sh ${srcdir} "$yamlDirs" > Makefile.interfaces], |
| 61 | [yamlDirs="$YAML_DIRS"]) |
Brad Bishop | 243cd14 | 2017-02-02 19:07:15 -0500 | [diff] [blame] | 62 | AC_CONFIG_FILES([phosphor-dbus-interfaces.pc]) |
| 63 | ]) |
Brad Bishop | d6f8a36 | 2017-02-02 11:57:39 -0500 | [diff] [blame] | 64 | AC_CONFIG_FILES([Makefile.yaml], |
Matt Spinler | f7616bc | 2019-11-19 09:23:37 -0600 | [diff] [blame] | 65 | [${srcdir}/generate_yaml_makefile.sh ${srcdir} "$yamlDirs" > Makefile.yaml], |
| 66 | [yamlDirs="$YAML_DIRS"]) |
Brad Bishop | d6f8a36 | 2017-02-02 11:57:39 -0500 | [diff] [blame] | 67 | |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 68 | AC_CONFIG_FILES([Makefile]) |
Patrick Williams | 0be05ee | 2016-12-09 14:30:45 -0600 | [diff] [blame] | 69 | AC_OUTPUT |