diff --git a/Makefile.am b/Makefile.am
deleted file mode 100644
index 679f2fd..0000000
--- a/Makefile.am
+++ /dev/null
@@ -1,43 +0,0 @@
-BUILT_SOURCES=fru-gen.cpp extra-properties-gen.cpp
-AM_DEFAULT_SOURCE_EXT = .cpp
-
-CLEANFILES=$(BUILT_SOURCES)
-
-bin_PROGRAMS = phosphor-read-eeprom
-
-phosphor_read_eeprom_SOURCES = readeeprom.cpp
-phosphor_read_eeprom_LDFLAGS = $(SYSTEMD_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS)
-phosphor_read_eeprom_CXXFLAGS = $(SYSTEMD_CFLAGS) \
-	$(PHOSPHOR_LOGGING_CFLAGS)
-phosphor_read_eeprom_LDADD = libwritefrudata.la
-
-lib_LTLIBRARIES = libwritefrudata.la
-libwritefrudata_la_SOURCES = frup.cpp \
-	fru-gen.cpp \
-	fru_area.cpp \
-	writefrudata.cpp \
-	extra-properties-gen.cpp
-libwritefrudata_la_LDFLAGS = $(SYSTEMD_LIBS) \
-	$(SDBUSPLUS_LIBS) \
-	$(PHOSPHOR_LOGGING_LIBS) \
-	-version-info 1:0:0 -shared
-libwritefrudata_la_CXXFLAGS = $(SYSTEMD_CFLAGS) \
-	$(SDBUSPLUS_CFLAGS) \
-	$(PHOSPHOR_LOGGING_CFLAGS) \
-	$(LIBIPMID_CFLAGS)
-
-libstrgfnhandlerdir = ${libdir}/ipmid-providers
-libstrgfnhandler_LTLIBRARIES = libstrgfnhandler.la
-libstrgfnhandler_la_SOURCES = strgfnhandler.cpp
-libstrgfnhandler_la_LDFLAGS = $(PHOSPHOR_LOGGING_LIBS) \
-	$(LIBIPMID_LIBS) \
-	-version-info 1:0:0 -shared
-libstrgfnhandler_la_LIBADD = libwritefrudata.la
-libstrgfnhandler_la_CXXFLAGS = $(PHOSPHOR_LOGGING_CFLAGS) \
-	$(LIBIPMID_CFLAGS)
-
-fru-gen.cpp:
-	$(AM_V_GEN)@FRUGEN@ -o $(top_builddir) generate-cpp
-extra-properties-gen.cpp:
-	$(AM_V_GEN)@PROPGEN@
diff --git a/bootstrap.sh b/bootstrap.sh
deleted file mode 100755
index 9fdf674..0000000
--- a/bootstrap.sh
+++ /dev/null
@@ -1,19 +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" -print0 | xargs -0 -r rm -rf
-        done
-        exit 0
-        ;;
-esac
-
-autoreconf -i
-# shellcheck disable=SC2016
-echo 'Run "./configure ${CONFIGURE_FLAGS} && make"'
diff --git a/configure.ac b/configure.ac
deleted file mode 100644
index 3cacf44..0000000
--- a/configure.ac
+++ /dev/null
@@ -1,74 +0,0 @@
-# Initialization
-AC_PREREQ([2.69])
-AC_INIT([ipmi-fru-parser], [1.0], [https://github.com/openbmc/ipmi-fru-parser/issues])
-AC_CONFIG_HEADERS([config.h])
-AM_INIT_AUTOMAKE([subdir-objects -Wall -Werror foreign dist-xz])
-AM_SILENT_RULES([yes])
-AC_LANG([C++])
-
-# Checks for programs.
-AC_PROG_CXX
-AC_PROG_CC
-AM_PROG_AR
-AC_PROG_INSTALL
-AC_PROG_MAKE_SET
-AC_PROG_LN_S
-AM_PATH_PYTHON([3],
-    [AC_SUBST([PYTHON], [echo "$PYTHON"])],
-    [AC_MSG_ERROR([Could not find python-3 installed...python-3 is required])])
-
-# Checks for libraries.
-PKG_CHECK_MODULES([SYSTEMD], [libsystemd >= 221])
-PKG_CHECK_MODULES([SDBUSPLUS], [sdbusplus])
-PKG_CHECK_MODULES([PHOSPHOR_LOGGING], [phosphor-logging])
-PKG_CHECK_MODULES([LIBIPMID], [libipmid])
-# We need the header only CLI library
-AC_CHECK_HEADERS(
-    [CLI/CLI.hpp],
-    [],
-    [AC_MSG_ERROR([Could not find CLI11 CLI/CLI.hpp])]
-)
-
-# Checks for header files.
-AC_CHECK_HEADER(systemd/sd-bus.h, ,[AC_MSG_ERROR([Could not find systemd/sd-bus.h...systemd development package required])])
-
-# Checks for typedefs, structures, and compiler characteristics.
-AX_CXX_COMPILE_STDCXX([20],[noext])
-AX_APPEND_COMPILE_FLAGS([-flto -fPIC -Wall -Werror], [CXXFLAGS])
-AX_APPEND_COMPILE_FLAGS([-flto -fPIC -Wall -Werror], [CFLAGS])
-
-# Checks for library functions.
-LT_INIT([shared])
-
-# 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])
-)
-
-AS_IF([test "x$YAML_GEN" == "x"], [YAML_GEN="scripts/example.yaml"])
-FRUGEN="$PYTHON $srcdir/scripts/fru_gen.py -i $YAML_GEN"
-AC_SUBST(FRUGEN)
-AS_IF([test "x$PROP_YAML" == "x"], [PROP_YAML="scripts/extra-properties-example.yaml"])
-PROPGEN="$PYTHON $srcdir/scripts/extra-properties.py -e $PROP_YAML"
-AC_SUBST(PROPGEN)
-
-# Create configured output
-AC_CONFIG_FILES([Makefile])
-AC_OUTPUT
