diff --git a/Makefile.am b/Makefile.am
deleted file mode 100755
index de39e66..0000000
--- a/Makefile.am
+++ /dev/null
@@ -1,51 +0,0 @@
-# Ignore system headers
-CODE_COVERAGE_IGNORE_PATTERN = '/include/*' '/usr/include/*' '$(includedir)/*'
-export CODE_COVERAGE_IGNORE_PATTERN
-CODE_COVERAGE_LCOV_SHOPTS = $(CODE_COVERAGE_LCOV_SHOPTS_DEFAULT)
-# Use our configuration file for lcov
-CODE_COVERAGE_LCOV_SHOPTS += --config-file $(abs_srcdir)/.lcovrc
-export CODE_COVERAGE_LCOV_SHOPTS
-CODE_COVERAGE_LCOV_OPTIONS = $(CODE_COVERAGE_LCOV_OPTIONS_DEFAULT)
-# Use our configuration file for lcov
-CODE_COVERAGE_LCOV_OPTIONS += --config-file $(abs_srcdir)/.lcovrc
-export CODE_COVERAGE_LCOV_OPTIONS
-CODE_COVERAGE_LCOV_RMOPTS = $(CODE_COVERAGE_LCOV_RMOPTS_DEFAULT)
-# Use our configuration file for lcov
-CODE_COVERAGE_LCOV_RMOPTS += --config-file $(abs_srcdir)/.lcovrc
-export CODE_COVERAGE_LCOV_RMOPTS
-CODE_COVERAGE_GENHTML_OPTIONS = $(CODE_COVERAGE_GENHTML_OPTIONS_DEFAULT)
-# Use our configuration file for genhtml
-CODE_COVERAGE_GENHTML_OPTIONS += --config-file $(abs_srcdir)/.lcovrc
-# Don't generate the absolute path for each file in the HTML output
-CODE_COVERAGE_GENHTML_OPTIONS += --prefix $(abs_srcdir) --prefix $(abs_builddir)
-export CODE_COVERAGE_GENHTML_OPTIONS
-if AUTOCONF_CODE_COVERAGE_2019_01_06
-include $(top_srcdir)/aminclude_static.am
-clean-local: code-coverage-clean
-distclean-local: code-coverage-dist-clean
-else
-@CODE_COVERAGE_RULES@
-endif
-
-SUBDIRS = libpldm libpldmresponder test tool
-
-sbin_PROGRAMS = pldmd
-pldmd_SOURCES = \
-    pldmd.cpp \
-    registration.cpp
-pldmd_LDADD = \
-        libpldmresponder/libpldmresponder.la \
-        libpldm/libpldm.la \
-	$(SDBUSPLUS_LIBS)
-pldmd_CXXFLAGS = -I$(top_builddir)/libpldm \
-	$(PHOSPHOR_LOGGING_CFLAGS) \
-	$(SDBUSPLUS_CFLAGS)
-
-if OEM_IBM
-pldmd_CXXFLAGS += \
-	-I$(top_srcdir)/oem/ibm/ \
-	-I$(top_srcdir)/libpldm
-endif
-
-ACLOCAL_AMFLAGS = -I m4
-
diff --git a/bootstrap.sh b/bootstrap.sh
deleted file mode 100755
index 50b75b7..0000000
--- a/bootstrap.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/sh
-
-AUTOCONF_FILES="Makefile.in aclocal.m4 ar-lib autom4te.cache compile \
-        config.guess config.h.in config.sub configure depcomp install-sh \
-        ltmain.sh missing *libtool test-driver"
-
-case $1 in
-    clean)
-        test -f Makefile && make maintainer-clean
-        for file in ${AUTOCONF_FILES}; do
-            find -name "$file" | xargs -r rm -rf
-        done
-        exit 0
-        ;;
-esac
-
-autoreconf -i
-echo 'Run "./configure ${CONFIGURE_FLAGS} && make"'
diff --git a/configure.ac b/configure.ac
deleted file mode 100755
index 9714f45..0000000
--- a/configure.ac
+++ /dev/null
@@ -1,90 +0,0 @@
-# Initialization
-AC_PREREQ([2.69])
-AC_INIT([pldm], [1.0],
-        [https://github.com/openbmc/pldm/issues])
-AC_LANG([C++])
-AC_CONFIG_HEADERS([config.h])
-AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign dist-xz])
-AM_SILENT_RULES([yes])
-AC_CONFIG_MACRO_DIRS([m4])
-
-# Make sure the default CFLAGS of `-O2 -g` don't override CODE_COVERAGE_CFLAGS
-# It is important that this comes before AC_PROG_C{C,XX}, as we are attempting
-# to stop them from populating default CFLAGS and CXXFLAGS.
-#AS_IF([test "x$enable_tests" = "xno"], [enable_code_coverage=no])
-AS_IF([test "x$enable_code_coverage" != "xno"], [
-    AS_IF([test "x${CXXFLAGS+set}" != "xset"], [
-        AC_SUBST(CXXFLAGS, [""])
-    ])
-    AS_IF([test "x${CFLAGS+set}" != "xset"], [
-        AC_SUBST(CFLAGS, [""])
-    ])
-])
-
-# Checks for programs.
-AC_PROG_CXX
-AC_PROG_CC
-AM_PROG_AR
-AC_PROG_INSTALL
-
-# Checks for typedefs, structures, and compiler characteristics.
-AX_CXX_COMPILE_STDCXX([17], [noext], [mandatory])
-AX_APPEND_COMPILE_FLAGS([-Wall -Werror], [CXXFLAGS])
-
-# For linking
-LT_INIT
-
-# Code coverage
-AX_CODE_COVERAGE
-AM_EXTRA_RECURSIVE_TARGETS([check-code-coverage])
-m4_ifdef([_AX_CODE_COVERAGE_RULES],
-    [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [true])],
-    [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [false])])
-AX_ADD_AM_MACRO_STATIC([])
-
-AX_PKG_CHECK_MODULES([SDBUSPLUS], [sdbusplus])
-AX_PKG_CHECK_MODULES([PHOSPHOR_LOGGING], [phosphor-logging])
-PKG_CHECK_MODULES([PHOSPHOR_DBUS_INTERFACES], [phosphor-dbus-interfaces])
-
-# Check/set gtest specific functions.
-AX_PTHREAD([GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=1"],[GTEST_CPPFLAGS="-DGTEST_HAS_PTHREAD=0"])
-AC_SUBST(GTEST_CPPFLAGS)
-AC_ARG_ENABLE([oe-sdk],
-    AS_HELP_STRING([--enable-oe-sdk], [Link testcases absolutely against OE SDK so they can be ran within it.])
-)
-AC_ARG_VAR(OECORE_TARGET_SYSROOT,
-    [Path to the OE SDK SYSROOT])
-AS_IF([test "x$enable_oe_sdk" == "xyes"],
-    AS_IF([test "x$OECORE_TARGET_SYSROOT" == "x"],
-          AC_MSG_ERROR([OECORE_TARGET_SYSROOT must be set with --enable-oe-sdk])
-    )
-    AC_MSG_NOTICE([Enabling OE-SDK at $OECORE_TARGET_SYSROOT])
-    [
-        testcase_flags="-Wl,-rpath,\${OECORE_TARGET_SYSROOT}/lib"
-        testcase_flags="${testcase_flags} -Wl,-rpath,\${OECORE_TARGET_SYSROOT}/usr/lib"
-        testcase_flags="${testcase_flags} -Wl,-dynamic-linker,`find \${OECORE_TARGET_SYSROOT}/lib/ld-*.so | sort -r -n | head -n1`"
-    ]
-    AC_SUBST([OESDK_TESTCASE_FLAGS], [$testcase_flags])
-)
-
-# Setup IBM OEM commands support for PLDM
-AC_ARG_ENABLE([oem-ibm], AS_HELP_STRING([
-	--enable-oem-ibm
-	], [
-	Enable PLDM OEM command support For IBM.
-]))
-AM_CONDITIONAL([OEM_IBM], [test "x$enable_oem_ibm" = "xyes"])
-AS_IF([test "x$enable_oem_ibm" == "xyes"], [
-    AX_APPEND_COMPILE_FLAGS([-DOEM_IBM], [CXXFLAGS])
-    AX_APPEND_COMPILE_FLAGS([-DOEM_IBM], [CFLAGS])
-    AC_DEFINE(FILE_TABLE_JSON, "/etc/default/obmc/pldm/fileTable.json", [JSON file containing file info for File I/O])
-])
-
-AC_DEFINE(BIOS_JSONS_DIR, "/etc/default/obmc/pldm/bios", [Directory housing the json files for BIOS tables])
-AC_DEFINE(BIOS_TABLES_DIR, "/var/lib/pldm/bios", [Directory housing actual BIOS tables])
-AC_DEFINE(PDR_JSONS_DIR, "/var/lib/pldm/pdr", [Directory housing platform specific PDR config])
-
-# Create configured output
-AC_CONFIG_FILES([Makefile libpldm/Makefile libpldmresponder/Makefile test/Makefile tool/Makefile])
-AC_CONFIG_FILES([libpldm/libpldm.pc])
-AC_OUTPUT
diff --git a/libpldm/Makefile.am b/libpldm/Makefile.am
deleted file mode 100644
index 3de7bf3..0000000
--- a/libpldm/Makefile.am
+++ /dev/null
@@ -1,29 +0,0 @@
-libpldm_includedir = $(includedir)/libpldm
-libpldm_include_HEADERS = \
-	base.h \
-	pldm_types.h \
-	platform.h \
-	bios.h \
-	states.h
-
-libpldm_LTLIBRARIES = libpldm.la
-libpldmdir = ${libdir}
-libpldm_la_SOURCES = \
-	base.c \
-	platform.c \
-	bios.c
-
-libpldm_la_LDFLAGS = -version-info 1:0:0 -shared
-libpldm_la_CFLAGS = $(CODE_COVERAGE_CFLAGS)
-libpldm_la_LIBADD = $(CODE_COVERAGE_LIBS)
-
-if OEM_IBM
-libpldm_include_HEADERS += \
-        $(top_builddir)/oem/ibm/libpldm/file_io.h
-libpldm_la_SOURCES += \
-        $(top_builddir)/oem/ibm/libpldm/file_io.c
-libpldm_la_CFLAGS += -I$(top_srcdir)/libpldm
-endif
-
-pkgconfiglibdir = ${libdir}/pkgconfig
-pkgconfiglib_DATA = libpldm.pc
diff --git a/libpldmresponder/Makefile.am b/libpldmresponder/Makefile.am
deleted file mode 100644
index a73252c..0000000
--- a/libpldmresponder/Makefile.am
+++ /dev/null
@@ -1,37 +0,0 @@
-libpldmresponder_LTLIBRARIES = libpldmresponder.la
-libpldmresponderdir = ${libdir}
-libpldmresponder_la_SOURCES = \
-	base.cpp \
-	utils.cpp \
-	bios_table.cpp \
-	effecters.cpp \
-	pdr.cpp \
-	bios_parser.cpp \
-	bios.cpp \
-	platform.cpp
-libpldmresponder_la_LIBADD = \
-	../libpldm/libpldm.la \
-	$(CODE_COVERAGE_LIBS)
-libpldmresponder_la_LDFLAGS = \
-	$(SDBUSPLUS_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	-lstdc++fs \
-	-version-info 1:0:0 -shared
-libpldmresponder_la_CXXFLAGS = \
-	$(CODE_COVERAGE_CXXFLAGS) \
-	$(SDBUSPLUS_CFLAGS) \
-	$(PHOSPHOR_LOGGING_CFLAGS) \
-	$(PHOSPHOR_DBUS_INTERFACES_CFLAGS)
-
-libpldmresponder_la_CPPFLAGS = \
-	$(CODE_COVERAGE_CPPFLAGS) \
-	-I$(top_srcdir)
-
-if OEM_IBM
-libpldmresponder_la_SOURCES += \
-    $(top_builddir)/oem/ibm/libpldmresponder/file_io.cpp \
-    $(top_builddir)/oem/ibm/libpldmresponder/file_table.cpp
-libpldmresponder_la_CPPFLAGS += -I$(top_srcdir)/libpldm
-endif
-
diff --git a/test/Makefile.am b/test/Makefile.am
deleted file mode 100644
index 9891a28..0000000
--- a/test/Makefile.am
+++ /dev/null
@@ -1,183 +0,0 @@
-AM_CPPFLAGS = -I$(top_srcdir) $(CODE_COVERAGE_CPPFLAGS)
-
-TESTS = $(check_PROGRAMS)
-
-check_PROGRAMS = \
-	libpldm_base_test \
-	libpldm_platform_test \
-	libpldmresponder_base_test \
-	libpldm_bios_test \
-	libpldmresponder_bios_test \
-	libpldmresponder_pdr_state_effecter_test \
-	libpldmresponder_bios_table_test \
-	libpldmresponder_platform_test
-
-if OEM_IBM
-check_PROGRAMS += \
-	libpldmoem_fileio_test \
-	libpldmoemresponder_fileio_test
-endif
-
-test_cppflags = \
-	-Igtest \
-	$(GTEST_CPPFLAGS) \
-	$(AM_CPPFLAGS)
-
-test_cxxflags = \
-	$(PTHREAD_CFLAGS) \
-	$(PHOSPHOR_LOGGING_CFLAGS) \
-	$(SDBUSPLUS_CFLAGS) \
-	$(CODE_COVERAGE_CXXFLAGS) \
-	$(PHOSPHOR_DBUS_INTERFACES_CFLAGS)
-
-test_ldflags = \
-	-lgtest_main \
-	-lgtest \
-	-lgmock \
-	-lstdc++fs \
-	$(PTHREAD_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	$(OESDK_TESTCASE_FLAGS)
-
-if OEM_IBM
-test_ldflags += \
-	-lgmock \
-	-lstdc++fs
-endif
-
-libpldm_base_test_CPPFLAGS = $(test_cppflags)
-libpldm_base_test_CXXFLAGS = $(test_cxxflags)
-libpldm_base_test_LDFLAGS = $(test_ldflags)
-libpldm_base_test_LDADD = \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(CODE_COVERAGE_LIBS)
-libpldm_base_test_SOURCES = libpldm_base_test.cpp
-
-libpldm_platform_test_CPPFLAGS = $(test_cppflags)
-libpldm_platform_test_CXXFLAGS = $(test_cxxflags)
-libpldm_platform_test_LDFLAGS = $(test_ldflags)
-libpldm_platform_test_LDADD = \
-	$(top_builddir)/libpldm/libpldm_la-platform.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(CODE_COVERAGE_LIBS)
-libpldm_platform_test_SOURCES = libpldm_platform_test.cpp
-
-libpldm_bios_test_CPPFLAGS = $(test_cppflags)
-libpldm_bios_test_CXXFLAGS = $(test_cxxflags)
-libpldm_bios_test_LDFLAGS = $(test_ldflags)
-libpldm_bios_test_LDADD = \
-	$(top_builddir)/libpldm/libpldm_la-base.o  \
-	$(top_builddir)/libpldm/libpldm_la-bios.o \
-	$(CODE_COVERAGE_LIBS)
-libpldm_bios_test_SOURCES = libpldm_bios_test.cpp
-
-libpldmresponder_bios_test_CPPFLAGS = $(test_cppflags)
-libpldmresponder_bios_test_CXXFLAGS = $(test_cxxflags)
-libpldmresponder_bios_test_LDFLAGS = \
-	$(test_ldflags) \
-	$(SDBUSPLUS_LIBS) \
-	-lstdc++fs
-libpldmresponder_bios_test_LDADD = \
-	$(top_builddir)/pldmd-registration.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-utils.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios_table.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o  \
-	$(top_builddir)/libpldm/libpldm_la-bios.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios_parser.o \
-	$(CODE_COVERAGE_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	-lstdc++fs
-libpldmresponder_bios_test_SOURCES = \
-	libpldmresponder_bios_test.cpp
-
-libpldmresponder_base_test_CPPFLAGS = $(test_cppflags)
-libpldmresponder_base_test_CXXFLAGS = $(test_cxxflags)
-libpldmresponder_base_test_LDFLAGS = $(test_ldflags)
-libpldmresponder_base_test_LDADD = \
-	$(top_builddir)/pldmd-registration.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-base.o \
-	$(CODE_COVERAGE_LIBS)
-libpldmresponder_base_test_SOURCES = libpldmresponder_base_test.cpp
-
-if OEM_IBM
-libpldmoem_fileio_test_CPPFLAGS = $(test_cppflags) \
-	-I$(top_builddir)/oem/ibm/ \
-	-I$(top_builddir)/libpldm/
-libpldmoem_fileio_test_CXXFLAGS = $(test_cxxflags)
-libpldmoem_fileio_test_LDFLAGS = $(test_ldflags)
-libpldmoem_fileio_test_LDADD = \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(top_builddir)/oem/ibm/libpldm/libpldm_la-file_io.o
-libpldmoem_fileio_test_SOURCES = $(top_builddir)/oem/ibm/test/libpldm_fileio_test.cpp
-
-libpldmoemresponder_fileio_test_CPPFLAGS = $(test_cppflags) \
-	-I$(top_builddir)/oem/ibm/ \
-	-I$(top_builddir)/libpldm/
-libpldmoemresponder_fileio_test_CXXFLAGS = $(test_cxxflags)
-libpldmoemresponder_fileio_test_LDFLAGS = $(test_ldflags)
-libpldmoemresponder_fileio_test_LDADD = \
-	$(top_builddir)/pldmd-registration.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(top_builddir)/oem/ibm/libpldm/libpldm_la-file_io.o \
-	$(top_builddir)/oem/ibm/libpldmresponder/libpldmresponder_la-file_io.o\
-	$(top_builddir)/oem/ibm/libpldmresponder/libpldmresponder_la-file_table.o
-libpldmoemresponder_fileio_test_SOURCES = $(top_builddir)/oem/ibm/test/libpldmresponder_fileio_test.cpp
-endif
-
-libpldmresponder_pdr_state_effecter_test_CPPFLAGS = $(test_cppflags)
-libpldmresponder_pdr_state_effecter_test_CXXFLAGS = $(test_cxxflags)
-libpldmresponder_pdr_state_effecter_test_LDFLAGS = $(test_ldflags)
-libpldmresponder_pdr_state_effecter_test_LDADD = \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-pdr.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-effecters.o \
-	$(CODE_COVERAGE_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	-lstdc++fs
-libpldmresponder_pdr_state_effecter_test_SOURCES = libpldmresponder_pdr_state_effecter_test.cpp
-
-libpldmresponder_bios_table_test_CPPFLAGS = $(test_cppflags)
-libpldmresponder_bios_table_test_CXXFLAGS = $(test_cxxflags)
-libpldmresponder_bios_table_test_LDFLAGS = \
-	$(test_ldflags) \
-	$(SDBUSPLUS_LIBS)
-libpldmresponder_bios_table_test_LDADD = \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios_table.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-utils.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o  \
-	$(top_builddir)/libpldm/libpldm_la-bios.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-bios_parser.o \
-	$(top_builddir)/pldmd-registration.o \
-	$(CODE_COVERAGE_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	-lstdc++fs
-libpldmresponder_bios_table_test_SOURCES = \
-        libpldmresponder_bios_table_test.cpp
-
-libpldmresponder_platform_test_CPPFLAGS = $(test_cppflags)
-libpldmresponder_platform_test_CXXFLAGS = $(test_cxxflags)
-libpldmresponder_platform_test_LDFLAGS = $(test_ldflags) $(SDBUSPLUS_LIBS)
-libpldmresponder_platform_test_LDADD = \
-	$(top_builddir)/pldmd-registration.o \
-	$(top_builddir)/libpldm/libpldm_la-base.o \
-	$(top_builddir)/libpldm/libpldm_la-platform.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-pdr.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-effecters.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-platform.o \
-	$(top_builddir)/libpldmresponder/libpldmresponder_la-utils.o
-	$(PHOSPHOR_LOGGING_LIBS) \
-	$(PHOSPHOR_DBUS_INTERFACES_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	$(CODE_COVERAGE_LIBS) \
-	-lstdc++fs
-libpldmresponder_platform_test_SOURCES = libpldmresponder_platform_test.cpp
diff --git a/tool/Makefile.am b/tool/Makefile.am
deleted file mode 100755
index 6818be8..0000000
--- a/tool/Makefile.am
+++ /dev/null
@@ -1,12 +0,0 @@
-pldmtool_SOURCES 	= \
-                          pldm_cmd_helper.cpp \
-                          pldm_base_cmd.cpp \
-                          pldmtool.cpp
-
-pldmtool_LDADD = \
-        ../libpldm/libpldm.la
-
-pldmtool_CPPFLAGS = \
-        -I$(top_srcdir)
-
-sbin_PROGRAMS		= pldmtool
