blob: dad2319baf91eae61a914e12f5e432b8b797eb30 [file] [log] [blame]
Marri Devender Raodd508462017-09-20 04:17:58 -05001# For target build
2if !INSTALL_SCRIPTS
Andrew Geissler328889d2016-10-10 12:43:48 -05003# export these headers
Saqib Khan2bb15192017-02-13 13:19:55 -06004nobase_include_HEADERS = \
5 phosphor-logging/log.hpp \
Tom Joseph7a33ee42017-07-25 00:04:20 +05306 phosphor-logging/elog.hpp
Andrew Geissler328889d2016-10-10 12:43:48 -05007
Adriana Kobylak37734302017-03-01 12:47:38 -06008nobase_nodist_include_HEADERS = \
Adriana Kobylakebd59fa2017-02-06 20:55:39 -06009 phosphor-logging/elog-errors.hpp \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060010 xyz/openbmc_project/Logging/Internal/Manager/server.hpp
Andrew Geissler184690d2016-11-03 08:06:31 -050011
Adriana Kobylakc20dae82017-02-15 13:44:16 -060012libphosphor_logging_FILES = \
Deepak Kodihalli682326a2017-03-06 05:26:53 -060013 elog.cpp elog_meta.cpp
Adriana Kobylakc20dae82017-02-15 13:44:16 -060014libphosphor_loggingdir = ${libdir}
15libphosphor_logging_LTLIBRARIES = libphosphor_logging.la
16libphosphor_logging_la_SOURCES = $(libphosphor_logging_FILES)
17libphosphor_logging_la_LDFLAGS = \
18 $(SYSTEMD_LIBS) \
19 $(SDBUSPLUS_LIBS) \
20 -version-info 1:0:0 -shared
21libphosphor_logging_la_CXXFLAGS = \
22 $(SDBUSPLUS_CFLAGS)
23
Andrew Geissler328889d2016-10-10 12:43:48 -050024# Application test which runs in obmc env (qemu, real hardware)
Deepak Kodihalli739e9252017-03-05 23:23:50 -060025bin_PROGRAMS = logging-test callout-test
Andrew Geissler328889d2016-10-10 12:43:48 -050026logging_test_SOURCES = logging_test.cpp
Michael Tritze0eb1dd2017-02-19 20:57:46 -060027logging_test_LDADD = libphosphor_logging.la
Deepak Kodihalli739e9252017-03-05 23:23:50 -060028callout_test_SOURCES = callouts/callout_test.cpp
Adriana Kobylakf855c3e2016-09-29 20:48:08 -050029
Adriana Kobylak8f7941e2016-11-14 14:46:23 -060030sbin_PROGRAMS = phosphor-log-manager
Adriana Kobylak88d7cf82017-01-24 12:30:15 -060031
Adriana Kobylak8f7941e2016-11-14 14:46:23 -060032phosphor_log_manager_SOURCES = \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060033 xyz/openbmc_project/Logging/Internal/Manager/server.cpp \
Adriana Kobylak8f7941e2016-11-14 14:46:23 -060034 log_manager.cpp \
Adriana Kobylak88d7cf82017-01-24 12:30:15 -060035 log_manager_main.cpp \
Adriana Kobylakd722b3a2017-02-28 12:10:44 -060036 elog-lookup.cpp \
Deepak Kodihallib388da62017-02-27 00:47:12 -060037 elog_entry.cpp \
Deepak Kodihalli88826f82017-02-28 02:47:07 -060038 org.openbmc.Associations.cpp \
Deepak Kodihalli682326a2017-03-06 05:26:53 -060039 elog-process-metadata.cpp \
Deepak Kodihalli72654f12017-06-12 04:33:29 -050040 elog_meta.cpp \
41 elog_serialize.cpp
Adriana Kobylak8f7941e2016-11-14 14:46:23 -060042
Adriana Kobylak7298dc22017-01-24 12:21:50 -060043# Be sure to build needed files before compiling
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060044BUILT_SOURCES = \
Adriana Kobylakebd59fa2017-02-06 20:55:39 -060045 phosphor-logging/elog-errors.hpp \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060046 elog-lookup.cpp \
Deepak Kodihalli88826f82017-02-28 02:47:07 -060047 elog-process-metadata.cpp \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060048 xyz/openbmc_project/Logging/Internal/Manager/server.cpp \
Deepak Kodihallia3db0772017-03-02 09:15:51 -060049 xyz/openbmc_project/Logging/Internal/Manager/server.hpp \
50 callouts-gen.hpp
Andrew Geissler184690d2016-11-03 08:06:31 -050051
Adriana Kobylak7298dc22017-01-24 12:21:50 -060052CLEANFILES = \
Adriana Kobylakebd59fa2017-02-06 20:55:39 -060053 phosphor-logging/elog-errors.hpp \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060054 elog-lookup.cpp \
Deepak Kodihalli88826f82017-02-28 02:47:07 -060055 elog-process-metadata.cpp \
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060056 xyz/openbmc_project/Logging/Internal/Manager/server.cpp \
Deepak Kodihallia3db0772017-03-02 09:15:51 -060057 xyz/openbmc_project/Logging/Internal/Manager/server.hpp \
58 callouts-gen.hpp
Andrew Geissler184690d2016-11-03 08:06:31 -050059
Adriana Kobylakf855c3e2016-09-29 20:48:08 -050060# systemd required for journal interfaces
Adriana Kobylak7d0692a2016-12-06 15:13:23 -060061logging_test_LDFLAGS = $(SYSTEMD_LIBS) $(SDBUSPLUS_LIBS)
62logging_test_CXXFLAGS = $(SYSTEMD_CFLAGS) $(SDBUSPLUS_CFLAGS)
Deepak Kodihalli739e9252017-03-05 23:23:50 -060063callout_test_LDADD = libphosphor_logging.la
64callout_test_LDFLAGS = $(SDBUSPLUS_LIBS) $(PHOSPHOR_DBUS_INTERFACES_LIBS)
65callout_test_CXXFLAGS = $(SDBUSPLUS_CFLAGS) $(PHOSPHOR_DBUS_INTERFACES_CFLAGS)
Adriana Kobylak8692ac92017-02-09 13:54:59 -060066phosphor_log_manager_LDFLAGS = \
67 $(SYSTEMD_LIBS) \
68 $(SDBUSPLUS_LIBS) \
Deepak Kodihalli72654f12017-06-12 04:33:29 -050069 $(PHOSPHOR_DBUS_INTERFACES_LIBS) \
70 -lstdc++fs
Adriana Kobylak8692ac92017-02-09 13:54:59 -060071phosphor_log_manager_CXXFLAGS = \
72 $(SYSTEMD_CFLAGS) \
73 $(SDBUSPLUS_CFLAGS) \
74 $(PHOSPHOR_DBUS_INTERFACES_CFLAGS)
Adriana Kobylakf855c3e2016-09-29 20:48:08 -050075
Adriana Kobylak1a7508b2017-02-13 22:51:40 -060076xyz/openbmc_project/Logging/Internal/Manager/server.cpp: xyz/openbmc_project/Logging/Internal/Manager.interface.yaml xyz/openbmc_project/Logging/Internal/Manager/server.hpp
77 @mkdir -p `dirname $@`
78 $(SDBUSPLUSPLUS) -r $(srcdir) interface server-cpp xyz.openbmc_project.Logging.Internal.Manager > $@
79
80xyz/openbmc_project/Logging/Internal/Manager/server.hpp: xyz/openbmc_project/Logging/Internal/Manager.interface.yaml
81 @mkdir -p `dirname $@`
82 $(SDBUSPLUSPLUS) -r $(srcdir) interface server-header xyz.openbmc_project.Logging.Internal.Manager > $@
83
Andrew Geisslerf1f2cfa2016-11-21 15:16:45 -060084ELOG_MAKO ?= elog-gen-template.mako.hpp
Adriana Kobylak7298dc22017-01-24 12:21:50 -060085LOOKUP_MAKO ?= elog-lookup-template.mako.cpp
Deepak Kodihalli88826f82017-02-28 02:47:07 -060086META_MAKO ?= elog-process-metadata.mako.cpp
Deepak Kodihallia3db0772017-03-02 09:15:51 -060087CALLOUTS_MAKO ?= callouts-gen.mako.hpp
Adriana Kobylakf4690732017-02-19 09:53:34 -060088ELOG_TEMPLATE_DIR ?= ${abs_srcdir}/tools/phosphor-logging/templates/
Andrew Geisslerf1f2cfa2016-11-21 15:16:45 -060089REQ_FILES_TO_GEN ?= ${abs_srcdir}/tools/elog-gen.py\
Deepak Kodihalli88826f82017-02-28 02:47:07 -060090 ${ELOG_TEMPLATE_DIR}/$(ELOG_MAKO)\
Deepak Kodihallia3db0772017-03-02 09:15:51 -060091 ${ELOG_TEMPLATE_DIR}/$(META_MAKO)\
92 ${abs_srcdir}/callouts/callouts.py\
93 ${abs_srcdir}/callouts/$(CALLOUTS_MAKO)
Andrew Geissler184690d2016-11-03 08:06:31 -050094
95# Be sure to package up the required script, yaml, and mako template to
96# generate the header file
97EXTRA_DIST = $(REQ_FILES_TO_GEN)
98
Adriana Kobylakebd59fa2017-02-06 20:55:39 -060099phosphor-logging/elog-errors.hpp: $(REQ_FILES_TO_GEN)
100 @mkdir -p `dirname $@`
101 $(AM_V_at)$(PYTHON) ${abs_srcdir}/tools/elog-gen.py -y ${YAML_DIR} -u ${YAML_DIR_TEST} -t ${ELOG_TEMPLATE_DIR} -m $(ELOG_MAKO) -o $@
Adriana Kobylak7298dc22017-01-24 12:21:50 -0600102elog-lookup.cpp: $(REQ_FILES_TO_GEN)
Adriana Kobylakebd59fa2017-02-06 20:55:39 -0600103 $(AM_V_at)$(PYTHON) ${abs_srcdir}/tools/elog-gen.py -y ${YAML_DIR} -u ${YAML_DIR_TEST} -t ${ELOG_TEMPLATE_DIR} -m $(LOOKUP_MAKO) -o $@
Deepak Kodihalli88826f82017-02-28 02:47:07 -0600104elog-process-metadata.cpp: $(REQ_FILES_TO_GEN)
105 $(AM_V_at)$(PYTHON) ${abs_srcdir}/tools/elog-gen.py -y ${YAML_DIR} -u ${YAML_DIR_TEST} -t ${ELOG_TEMPLATE_DIR} -m $(META_MAKO) -o $@
Deepak Kodihallia3db0772017-03-02 09:15:51 -0600106callouts-gen.hpp: $(REQ_FILES_TO_GEN)
107 $(AM_V_at)$(PYTHON) ${abs_srcdir}/callouts/callouts.py -i ${CALLOUTS_YAML}
Andrew Geissler184690d2016-11-03 08:06:31 -0500108
Brad Bishop9316b9a2017-02-10 14:21:37 -0500109pkgconfiglibdir = ${libdir}/pkgconfig
110pkgconfiglib_DATA = phosphor-logging.pc
111
Andrew Geisslerf1f2cfa2016-11-21 15:16:45 -0600112SUBDIRS = test
Marri Devender Raodd508462017-09-20 04:17:58 -0500113else
114# For native build
115# Export elog-gen parser and mako script
116elogdir = ${datadir}/phosphor-logging/elog
117nobase_elog_DATA = \
118 tools/elog-gen.py \
119 tools/phosphor-logging/templates/elog-gen-template.mako.hpp
120endif