blob: 20af6ed5467b96d2c6bd8f4415a9c588ae6965aa [file] [log] [blame]
Matthew Barth3cff7ed2016-07-27 14:50:51 -05001AM_DEFAULT_SOURCE_EXT = .cpp
2
William A. Kennington III194375f2018-12-14 02:14:33 -08003AM_CPPFLAGS = -I$(abs_srcdir) -I$(abs_srcdir)/include
4export AM_CPPFLAGS
5
William A. Kennington III785fb072018-12-10 15:27:20 -08006providersdir = ${libdir}/ipmid-providers
7providers_LTLIBRARIES =
8
Patrick Williams686df742016-09-02 17:52:59 -05009sbin_PROGRAMS = \
10 ipmid
Matthew Barth3cff7ed2016-07-27 14:50:51 -050011
12ipmid_SOURCES = \
Deepak Kodihalli18aa0442017-07-21 07:07:09 -050013 ipmid.cpp \
Vishwanatha Subbannaac149a92017-07-11 18:16:50 +053014 settings.cpp \
15 host-cmd-manager.cpp \
Peter Hanson4a589852017-06-07 17:40:45 -070016 utils.cpp \
17 oemrouter.cpp
Matthew Barth3cff7ed2016-07-27 14:50:51 -050018nodist_ipmid_SOURCES = ipmiwhitelist.cpp
Deepak Kodihalli18aa0442017-07-21 07:07:09 -050019
Vernon Mauery02484842018-07-24 09:15:38 -070020libipmi20_BUILT_LIST = \
Tom Josepha9fbff42018-01-22 14:59:09 +053021 sensor-gen.cpp \
Tom Josephe19540e2019-02-04 14:06:58 +053022 inventory-sensor-gen.cpp \
Jaghathiswari Rankappagounder Natarajan9c118942019-02-12 13:22:55 -080023 fru-read-gen.cpp \
24 entity-gen.cpp
Tom Josepha9fbff42018-01-22 14:59:09 +053025
Marri Devender Raoa62bacc2017-06-04 23:40:16 -050026BUILT_SOURCES = \
Patrick Venturec64f8022018-11-14 19:31:15 -080027 ipmiwhitelist.cpp \
28 $(libipmi20_BUILT_LIST)
Marri Devender Raoa62bacc2017-06-04 23:40:16 -050029
Ratan Gupta28c2e732017-03-04 08:53:52 +053030CLEANFILES = $(BUILT_SOURCES)
Patrick Williams686df742016-09-02 17:52:59 -050031
Vernon Mauery1e3455a2018-11-30 13:10:54 -080032COMMON_CXX = \
33 -flto \
34 -Wno-psabi \
35 $(SYSTEMD_CFLAGS) \
36 $(libmapper_CFLAGS) \
37 $(SDBUSPLUS_CFLAGS) \
38 $(PHOSPHOR_LOGGING_CFLAGS) \
39 $(PHOSPHOR_DBUS_INTERFACES_CFLAGS) \
Patrick Venturec64f8022018-11-14 19:31:15 -080040 -DBOOST_ERROR_CODE_HEADER_ONLY \
41 -DBOOST_SYSTEM_NO_DEPRECATED \
42 -DBOOST_ALL_NO_LIB
43
Vernon Mauery1e3455a2018-11-30 13:10:54 -080044ipmid_CXXFLAGS = $(COMMON_CXX)
William A. Kennington III194375f2018-12-14 02:14:33 -080045ipmid_LDADD = \
46 libipmid/libipmid.la \
47 libipmid-host/libipmid-host.la
Deepak Kodihalli18aa0442017-07-21 07:07:09 -050048ipmid_LDFLAGS = \
49 $(SYSTEMD_LIBS) \
50 $(libmapper_LIBS) \
51 $(LIBADD_DLOPEN) \
52 $(PHOSPHOR_LOGGING_LIBS) \
53 $(PHOSPHOR_DBUS_INTERFACES_LIBS) \
Richard Marian Thomaiyar4654d992018-04-19 05:38:37 +053054 $(CRYPTO_LIBS) \
Vernon Mauery28565ac2018-08-01 09:16:56 -070055 -lstdc++fs \
56 -pthread \
Deepak Kodihalli18aa0442017-07-21 07:07:09 -050057 -export-dynamic
Vishwanatha Subbannaac149a92017-07-11 18:16:50 +053058
Patrick Williams686df742016-09-02 17:52:59 -050059# TODO: Rather than use -export-dynamic, we should use -export-symbol to have a
60# selective list of symbols.
61
Patrick Williams686df742016-09-02 17:52:59 -050062ipmiwhitelist.cpp: ${srcdir}/generate_whitelist.sh $(WHITELIST_CONF)
Patrick Williams37af7332016-09-02 21:21:42 -050063 $(SHELL) $^ > $@
Patrick Williams686df742016-09-02 17:52:59 -050064
Ratan Gupta28c2e732017-03-04 08:53:52 +053065sensor-gen.cpp:
66 $(AM_V_GEN)@SENSORGEN@ -o $(top_builddir) generate-cpp
67
Tom Josephd5899e72017-05-05 11:20:34 +053068inventory-sensor-gen.cpp:
69 $(AM_V_GEN)@INVSENSORGEN@ -o $(top_builddir) generate-cpp
70
Marri Devender Raoa62bacc2017-06-04 23:40:16 -050071fru-read-gen.cpp:
72 $(AM_V_GEN)@FRUGEN@ -o $(top_builddir) generate-cpp
73
Jaghathiswari Rankappagounder Natarajan9c118942019-02-12 13:22:55 -080074entity-gen.cpp:
75 $(AM_V_GEN)@ENTITYGEN@ -o $(top_builddir) generate-cpp
76
William A. Kennington III785fb072018-12-10 15:27:20 -080077providers_LTLIBRARIES += libipmi20.la
Vernon Mauery02484842018-07-24 09:15:38 -070078libipmi20_la_SOURCES = \
Patrick Venture5794fcf2017-10-26 11:11:14 -070079 app/channel.cpp \
Patrick Venture5e6ac712017-10-25 12:16:19 -070080 app/watchdog.cpp \
William A. Kennington III52575252018-02-09 15:54:56 -080081 app/watchdog_service.cpp \
Matthew Barth3cff7ed2016-07-27 14:50:51 -050082 apphandler.cpp \
Xo Wang069db2f2017-08-09 15:31:33 -070083 sys_info_param.cpp \
Matthew Barth3cff7ed2016-07-27 14:50:51 -050084 sensorhandler.cpp \
85 storagehandler.cpp \
86 chassishandler.cpp \
87 dcmihandler.cpp \
88 ipmisensor.cpp \
89 storageaddsel.cpp \
90 transporthandler.cpp \
91 globalhandler.cpp \
Ratan Gupta28c2e732017-03-04 08:53:52 +053092 groupext.cpp \
Tom Josephd5899e72017-05-05 11:20:34 +053093 utils.cpp \
Marri Devender Rao7d9157e2017-07-01 16:11:40 -050094 selutility.cpp \
Marri Devender Rao0acf0572017-07-03 12:25:47 -050095 ipmi_fru_info_area.cpp \
Dhruvaraj Subhashchandrane0af7202017-07-12 06:35:20 -050096 read_fru_data.cpp \
Tom Josepha9fbff42018-01-22 14:59:09 +053097 sensordatahandler.cpp \
Vernon Mauery02484842018-07-24 09:15:38 -070098 $(libipmi20_BUILT_LIST)
Ratan Gupta28c2e732017-03-04 08:53:52 +053099
Emily Shafferc07e72c2018-06-18 10:37:31 -0700100@CODE_COVERAGE_RULES@
101
102check_PROGRAMS =
103XFAIL_TESTS =
104
105TESTS = $(check_PROGRAMS)
106
William A. Kennington III194375f2018-12-14 02:14:33 -0800107libipmi20_la_LIBADD = \
108 libipmid/libipmid.la \
Vernon Mauery997a7a02019-02-01 13:34:13 -0800109 user_channel/libchannellayer.la \
William A. Kennington III194375f2018-12-14 02:14:33 -0800110 user_channel/libuserlayer.la
Patrick Venturec64f8022018-11-14 19:31:15 -0800111libipmi20_la_LDFLAGS = \
112 $(SYSTEMD_LIBS) \
113 $(libmapper_LIBS) \
114 $(PHOSPHOR_LOGGING_LIBS) \
115 $(PHOSPHOR_DBUS_INTERFACES_LIBS) \
116 -lstdc++fs \
Patrick Venturec64f8022018-11-14 19:31:15 -0800117 -version-info 0:0:0 -shared
Vernon Mauery1e3455a2018-11-30 13:10:54 -0800118libipmi20_la_CXXFLAGS = $(COMMON_CXX)
Matthew Barth3cff7ed2016-07-27 14:50:51 -0500119
William A. Kennington III343d0612018-12-10 15:56:24 -0800120providers_LTLIBRARIES += libusercmds.la
William A. Kennington III194375f2018-12-14 02:14:33 -0800121libusercmds_la_LIBADD = \
122 libipmid/libipmid.la \
123 user_channel/libuserlayer.la
William A. Kennington III343d0612018-12-10 15:56:24 -0800124libusercmds_la_SOURCES = \
125 user_channel/usercommands.cpp \
126 user_channel/channelcommands.cpp
127libusercmds_la_LDFLAGS = \
128 $(PHOSPHOR_LOGGING_LIBS) \
129 $(LIBS) \
130 -version-info 0:0:0 -shared
131libusercmds_la_CXXFLAGS = \
132 $(PHOSPHOR_LOGGING_CFLAGS) \
133 -flto
134
William A. Kennington III785fb072018-12-10 15:27:20 -0800135providers_LTLIBRARIES += libsysintfcmds.la
William A. Kennington III194375f2018-12-14 02:14:33 -0800136libsysintfcmds_la_LIBADD = \
137 libipmid/libipmid.la \
138 libipmid-host/libipmid-host.la
Tom9e5232e2016-11-07 12:14:51 +0530139libsysintfcmds_la_SOURCES = \
Andrew Geissler12866372017-03-21 22:58:28 -0500140 systemintfcmds.cpp \
Vishwanatha Subbanna3eb117a2017-07-12 16:13:49 +0530141 host-interface.cpp
Patrick Venturec64f8022018-11-14 19:31:15 -0800142libsysintfcmds_la_LDFLAGS = \
143 $(SYSTEMD_LIBS) \
144 $(libmapper_LIBS) \
145 $(PHOSPHOR_DBUS_INTERFACES_LIBS) \
146 $(PHOSPHOR_LOGGING_LIBS) \
147 $(SDBUSPLUS_LIBS) \
148 -version-info 0:0:0 -shared
Vernon Mauery1e3455a2018-11-30 13:10:54 -0800149libsysintfcmds_la_CXXFLAGS = $(COMMON_CXX)
Andrew Geisslerdd2c6fd2017-03-16 15:53:20 -0500150
Patrick Williams37af7332016-09-02 21:21:42 -0500151nobase_include_HEADERS = \
AppaRao Puli071f3f22018-05-24 16:45:30 +0530152 user_channel/channel_layer.hpp \
William A. Kennington III194375f2018-12-14 02:14:33 -0800153 user_channel/user_layer.hpp
Matthew Barth3cff7ed2016-07-27 14:50:51 -0500154
Vishwanatha Subbanna506aa0f2017-01-24 14:58:25 +0530155# Forcing the build of self and then subdir
William A. Kennington III194375f2018-12-14 02:14:33 -0800156SUBDIRS = include libipmid libipmid-host user_channel . test softoff