blob: 7faec806f02b1e65f9c33e4b9bc5400eb6c5fb12 [file] [log] [blame]
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +05301# Initialization
2AC_PREREQ([2.69])
3AC_INIT([phosphor-led-sysfs], [1.0], [https://github.com/openbmc/phosphor-led-sysfs/issues])
4AC_LANG([C++])
5AC_CONFIG_HEADERS([config.h])
Andrew Jefferyb6708c72019-08-01 15:54:28 +09306AM_INIT_AUTOMAKE([subdir-objects -Wall -Wno-portability -Werror foreign dist-xz])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +05307AM_SILENT_RULES([yes])
8
9# Checks for programs.
10AC_PROG_CXX
11AC_PROG_INSTALL
12AC_PROG_MAKE_SET
13
14# Checks for libraries.
15PKG_CHECK_MODULES([SYSTEMD], [libsystemd >= 221])
16
17# Checks for typedefs, structures, and compiler characteristics.
Vernon Mauerye0844ff2018-10-04 10:34:50 -070018AX_CXX_COMPILE_STDCXX_17([noext])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +053019AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CXXFLAGS])
20
Vishwanatha Subbanna179b6712017-02-17 11:20:38 +053021# For libtools
22LT_INIT
23
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +053024# Checks for header files.
Vishwanatha Subbanna7f6e8092017-03-10 15:17:12 +053025PKG_CHECK_MODULES([SDBUSPLUS], [sdbusplus],, [AC_MSG_ERROR([Could not find sdbusplus...openbmc/sdbusplus package required])])
Vishwanatha Subbannae0891732017-03-10 15:27:23 +053026PKG_CHECK_MODULES([PHOSPHOR_DBUS_INTERFACES], [phosphor-dbus-interfaces],, [AC_MSG_ERROR([Could not find phosphor-dbus-interfaces...openbmc/phosphor-dbus-interfaces package required])])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +053027
28# Check/set gtest specific functions.
Andrew Jefferya607a0d2018-05-23 16:15:26 +093029AS_IF([test "x$enable_tests" != "xno"], [
30 PKG_CHECK_MODULES([GTEST], [gtest], [], [true])
31 PKG_CHECK_MODULES([GMOCK], [gmock], [], [true])
32 AX_PTHREAD
33
34 AX_SAVE_FLAGS_WITH_PREFIX(OLD, [CPPFLAGS])
35 AX_APPEND_COMPILE_FLAGS([$GTEST_CFLAGS], [CPPFLAGS])
36 AC_LANG_PUSH([C++])
37 AC_CHECK_HEADERS([gtest/gtest.h], [
38 AS_IF([test "x$GTEST_CFLAGS" = "x"], [
39 AS_IF([test "x$PTHREAD_CFLAGS" = "x"], [
40 AX_APPEND_COMPILE_FLAGS(["-DGTEST_HAS_PTHREAD=0"], [GTEST_CFLAGS])
41 ], [
42 AX_APPEND_COMPILE_FLAGS(["-DGTEST_HAS_PTHREAD=1"], [GTEST_CFLAGS])
43 AX_APPEND_COMPILE_FLAGS([$PTHREAD_CFLAGS], [GTEST_CFLAGS])
44 ])
45 ])
46 ], [
47 AS_IF([test "x$enable_tests" = "xyes"], [
48 AC_MSG_ERROR([Testing enabled but could not find gtest/gtest.h])
49 ])
50 ])
51 AC_LANG_POP([C++])
52 AX_RESTORE_FLAGS_WITH_PREFIX(OLD, [CPPFLAGS])
53
54 AX_SAVE_FLAGS_WITH_PREFIX(OLD, [CPPFLAGS])
55 AX_APPEND_COMPILE_FLAGS([$GMOCK_CFLAGS], [CPPFLAGS])
56 AC_LANG_PUSH([C++])
57 AC_CHECK_HEADERS([gmock/gmock.h], [], [
58 AS_IF([test "x$enable_tests" = "xyes"], [
59 AC_MSG_ERROR([Testing enabled but could not find gmock/gmock.h])
60 ])
61 ])
62 AC_LANG_POP([C++])
63 AX_RESTORE_FLAGS_WITH_PREFIX(OLD, [CPPFLAGS])
64
65 AX_SAVE_FLAGS_WITH_PREFIX(OLD, [LDFLAGS])
66 AX_APPEND_COMPILE_FLAGS([$GTEST_LIBS], [LDFLAGS])
67 AC_CHECK_LIB([gtest], [main], [
68 AS_IF([test "x$GTEST_LIBS" = "x"], [
69 AX_APPEND_COMPILE_FLAGS([-lgtest], [GTEST_LIBS])
70 ])
71 ], [
72 AS_IF([test "x$enable_tests" = "xyes"], [
73 AC_MSG_ERROR([Testing enabled but couldn't find gtest libs])
74 ])
75 ])
76 AX_RESTORE_FLAGS_WITH_PREFIX(OLD, [LDFLAGS])
77
78 AX_SAVE_FLAGS_WITH_PREFIX(OLD, [LDFLAGS])
79 AX_APPEND_COMPILE_FLAGS([$GMOCK_LIBS], [LDFLAGS])
80 AC_CHECK_LIB([gmock], [main], [
81 AS_IF([test "x$GMOCK_LIBS" = "x"], [
82 AX_APPEND_COMPILE_FLAGS([-lgmock], [GMOCK_LIBS])
83 ])
84 ], [
85 AS_IF([test "x$enable_tests" = "xyes"], [
86 AC_MSG_ERROR([Testing enabled but couldn't find gmock libs])
87 ])
88 ])
89 AX_RESTORE_FLAGS_WITH_PREFIX(OLD, [LDFLAGS])
90])
91
92AX_CODE_COVERAGE
Andrew Jefferyb6708c72019-08-01 15:54:28 +093093m4_ifdef([_AX_CODE_COVERAGE_RULES],
94 [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [true])],
95 [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [false])])
96AX_ADD_AM_MACRO_STATIC([])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +053097
98AC_ARG_VAR(BUSNAME, [The Dbus busname to own])
Vishwanatha Subbanna84ade672017-02-02 15:02:23 +053099AS_IF([test "x$BUSNAME" == "x"], [BUSNAME="xyz.openbmc_project.LED.Controller"])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +0530100AC_DEFINE_UNQUOTED([BUSNAME], ["$BUSNAME"], [The Dbus busname to own])
Vishwanatha Subbanna84ade672017-02-02 15:02:23 +0530101AC_ARG_VAR(OBJPATH, [The physical LED controller Dbus root])
102AS_IF([test "x$OBJPATH" == "x"], [OBJPATH="/xyz/openbmc_project/led/physical"])
103AC_DEFINE_UNQUOTED([OBJPATH], ["$OBJPATH"], [The physical LED controller Dbus root])
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +0530104
Vishwanatha Subbannaf9de54b2017-05-25 21:06:33 +0530105# Platform device path for led subsystem.
106AC_ARG_VAR(DEVPATH, [Physical led device path])
107AS_IF([test "x$DEVPATH" == "x"], [DEVPATH="/sys/class/leds/"])
108AC_DEFINE_UNQUOTED([DEVPATH], ["$DEVPATH"], [Physical led device path])
109
Vishwanatha Subbanna835571e2016-11-30 11:29:30 +0530110# Create configured output
111AC_CONFIG_FILES([Makefile])
112AC_OUTPUT