blob: 81b100cfb4bb9ace4a555c932c8db350001e74a5 [file] [log] [blame]
Matthew Barth1febc282017-04-12 11:33:39 -05001# Initialization
2AC_PREREQ([2.69])
3AC_INIT([phosphor-dbus-monitor], [1.0], [https://github.com/openbmc/phosphor-dbus-monitor/issues])
4AC_LANG([C++])
5AC_CONFIG_HEADERS([config.h])
6AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign dist-xz])
7AM_SILENT_RULES([yes])
8
9# Checks for programs.
10AC_PROG_CXX
11AM_PROG_AR
12AC_PROG_INSTALL
13AC_PROG_MAKE_SET
14AC_PROG_AWK
Marri Devender Rao44fd7e82020-03-08 09:51:34 -050015AM_PATH_PYTHON([3],
Matthew Barthdb440d42017-04-17 15:49:37 -050016 [AC_SUBST([PYTHON], [echo "$PYTHON"])],
Marri Devender Rao44fd7e82020-03-08 09:51:34 -050017 [AC_MSG_ERROR([Could not find python-3 installed...python-3 is required])])
Matthew Barth1febc282017-04-12 11:33:39 -050018
19# Checks for libraries.
Patrick Venture50b4b442019-02-13 15:27:28 -080020PKG_CHECK_MODULES([SDBUSPLUS], [sdbusplus])
21PKG_CHECK_MODULES([SDEVENTPLUS], [sdeventplus])
22PKG_CHECK_MODULES([PHOSPHOR_DBUS_INTERFACES], [phosphor-dbus-interfaces])
23PKG_CHECK_MODULES([PHOSPHOR_LOGGING], [phosphor-logging])
24PKG_CHECK_MODULES([PHOSPHOR_SNMP], [phosphor-snmp])
Matthew Barth1febc282017-04-12 11:33:39 -050025
Ratan Guptacd227862017-10-06 21:27:13 +053026# Check for sdbus++
27AC_PATH_PROG([SDBUSPLUSPLUS], [sdbus++])
28AS_IF([test "x$SDBUSPLUSPLUS" == "x"],
29 AC_MSG_ERROR(["Requires sdbus++"]))
30
Matthew Barth1febc282017-04-12 11:33:39 -050031# Checks for typedefs, structures, and compiler characteristics.
Patrick Williams2beffa62022-04-15 10:12:01 -050032AX_CXX_COMPILE_STDCXX([20],[noext])
Matthew Barth1febc282017-04-12 11:33:39 -050033AX_APPEND_COMPILE_FLAGS([-fpic -Wall -Werror], [CXXFLAGS])
34
35# Checks for library functions.
36LT_INIT
37
38# Check/set gtest specific functions.
39AX_PTHREAD([GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=1"],[GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=0"])
40AC_SUBST(GTEST_CPPFLAGS)
41
42AC_ARG_ENABLE([oe-sdk],
43 AS_HELP_STRING([--enable-oe-sdk], [Link testcases absolutely against OE SDK so they can be ran within it.])
44)
45AC_ARG_VAR(OECORE_TARGET_SYSROOT,
46 [Path to the OE SDK SYSROOT])
47AS_IF([test "x$enable_oe_sdk" == "xyes"],
48 AS_IF([test "x$OECORE_TARGET_SYSROOT" == "x"],
49 AC_MSG_ERROR([OECORE_TARGET_SYSROOT must be set with --enable-oe-sdk])
50 )
51 AC_MSG_NOTICE([Enabling OE-SDK at $OECORE_TARGET_SYSROOT])
52 [
53 testcase_flags="-Wl,-rpath,\${OECORE_TARGET_SYSROOT}/lib"
54 testcase_flags="${testcase_flags} -Wl,-rpath,\${OECORE_TARGET_SYSROOT}/usr/lib"
55 testcase_flags="${testcase_flags} -Wl,-dynamic-linker,`find \${OECORE_TARGET_SYSROOT}/lib/ld-*.so | sort -r -n | head -n1`"
56 ]
57 AC_SUBST([OESDK_TESTCASE_FLAGS], [$testcase_flags])
58)
59
Ratan Guptacd227862017-10-06 21:27:13 +053060AC_ARG_VAR(OBJ_EVENT, [The event manager D-Bus object path])
61AS_IF([test "x$OBJ_EVENT" == "x"], [OBJ_EVENT="/xyz/openbmc_project/events"])
62AC_DEFINE_UNQUOTED([OBJ_EVENT], ["$OBJ_EVENT"], [The event manager D-Bus object path])
63
64AC_ARG_VAR(BUSNAME_EVENT, [The D-Bus busname to own])
65AS_IF([test "x$BUSNAME_EVENT" == "x"], [BUSNAME_EVENT="xyz.openbmc_project.Events"])
66AC_DEFINE_UNQUOTED([BUSNAME_EVENT], ["$BUSNAME_EVENT"], [The D-Bus busname to own])
67
Brad Bishop870c3fc2017-05-22 23:23:13 -040068AC_ARG_VAR(YAML_PATH, [The path to the yaml config files.])
Brad Bishop2d6586a2017-05-31 19:43:35 -040069AS_IF([test "x$YAML_PATH" == "x"], [YAML_PATH="\${top_srcdir}/src/example"])
Brad Bishop870c3fc2017-05-22 23:23:13 -040070
Ratan Gupta8bbf9d22017-10-06 21:45:24 +053071AC_ARG_VAR(MAX_EVENTS, [Maximum number of events.])
72AS_IF([test "x$MAX_EVENTS" == "x"], [MAX_EVENTS=20])
73AC_DEFINE_UNQUOTED([MAX_EVENTS], [$MAX_EVENTS], [Maximum number of events.])
74
Dhruvaraj Subhashchandran6524b9d2017-10-18 01:41:51 -050075AC_ARG_VAR(CLASS_VERSION, [Class version to register with Cereal])
76AS_IF([test "x$CLASS_VERSION" == "x"], [CLASS_VERSION=1])
77AC_DEFINE_UNQUOTED([CLASS_VERSION], [$CLASS_VERSION], [Class version to register with Cereal])
78
79AC_ARG_VAR(EVENTS_PERSIST_PATH, [Path of directory housing persisted events.])
80AS_IF([test "x$EVENTS_PERSIST_PATH" == "x"], \
81 [EVENTS_PERSIST_PATH="/var/lib/phosphor-dbus-monitor/events"])
82AC_DEFINE_UNQUOTED([EVENTS_PERSIST_PATH], ["$EVENTS_PERSIST_PATH"], \
83 [Path of directory housing persisted events])
84
85
Brad Bishopb1e329a2017-08-02 01:23:12 -040086AC_CONFIG_FILES([Makefile src/Makefile src/test/Makefile mslverify/Makefile])
Matthew Barth1febc282017-04-12 11:33:39 -050087AC_OUTPUT