PEL: PELTool Application

PELTooL application would be used to interact with PELs. This commit has
the first functionality, where a PEL file is passed and all PEL sections
are hexdumped in a JSON object.

Signed-off-by: Aatir <aatrapps@gmail.com>
Change-Id: I155d75bb58cbd14a297b094314f7fd1f271f4f37
diff --git a/extensions/openpower-pels/openpower-pels.mk b/extensions/openpower-pels/openpower-pels.mk
index 5099168..7690af4 100644
--- a/extensions/openpower-pels/openpower-pels.mk
+++ b/extensions/openpower-pels/openpower-pels.mk
@@ -8,6 +8,7 @@
 	extensions/openpower-pels/failing_mtms.cpp \
 	extensions/openpower-pels/fru_identity.cpp \
 	extensions/openpower-pels/generic.cpp \
+        extensions/openpower-pels/hexdump.cpp \
 	extensions/openpower-pels/log_id.cpp \
 	extensions/openpower-pels/manager.cpp \
 	extensions/openpower-pels/mru.cpp \
@@ -27,3 +28,47 @@
 
 registrydir = $(datadir)/phosphor-logging/pels/
 registry_DATA = extensions/openpower-pels/registry/message_registry.json
+
+bin_PROGRAMS += peltool
+
+peltool_SOURCES = extensions/openpower-pels/tools/peltool.cpp
+
+peltool_LDADD = \
+        extensions/openpower-pels/ascii_string.o \
+        extensions/openpower-pels/bcd_time.o \
+        extensions/openpower-pels/callout.o \
+        extensions/openpower-pels/callouts.o \
+        extensions/openpower-pels/failing_mtms.o \
+        extensions/openpower-pels/fru_identity.o \
+        extensions/openpower-pels/generic.o \
+        extensions/openpower-pels/hexdump.o \
+        extensions/openpower-pels/log_id.o \
+        extensions/openpower-pels/mru.o \
+        extensions/openpower-pels/mtms.o \
+        extensions/openpower-pels/paths.o \
+        extensions/openpower-pels/pce_identity.o \
+        extensions/openpower-pels/pel.o \
+        extensions/openpower-pels/pel_values.o \
+        extensions/openpower-pels/private_header.o \
+        extensions/openpower-pels/registry.o \
+        extensions/openpower-pels/repository.o \
+        extensions/openpower-pels/src.o \
+        extensions/openpower-pels/section_factory.o \
+        extensions/openpower-pels/severity.o \
+        extensions/openpower-pels/user_data.o \
+        extensions/openpower-pels/user_header.o
+
+
+peltool_LDFLAGS = \
+        $(SYSTEMD_LIBS) \
+        $(PHOSPHOR_LOGGING_LIBS) \
+        $(SDBUSPLUS_LIBS) \
+        $(PHOSPHOR_DBUS_INTERFACES_LIBS) \
+        $(SDEVENTPLUS_LIBS) \
+        -lstdc++fs
+
+peltool_CXXFLAGS = \
+        $(SYSTEMD_CFLAGS) \
+        $(SDBUSPLUS_CFLAGS) \
+        $(SDEVENTPLUS_CFLAGS) \
+        $(PHOSPHOR_DBUS_INTERFACES_CFLAGS)