# Template from
# https://github.com/github/gitignore/blob/master/Autotools.gitignore

# http://www.gnu.org/software/automake

Makefile.in
/ar-lib
/mdate-sh
/py-compile
/test-driver
/ylwrap

# http://www.gnu.org/software/autoconf

/autom4te.cache
/autoscan.log
/autoscan-*.log
/aclocal.m4
/compile
/config.guess
/config.h.in
/config.sub
/configure
/configure.scan
/depcomp
/install-sh
/missing
/stamp-h1

# https://www.gnu.org/software/libtool/

/ltmain.sh

# http://www.gnu.org/software/texinfo

/texinfo.tex

# Repo specific items
*.a
*.o
*.lo
*.la
*.pc
*.so*
/config.h
/config.h.in~
/config.log
/config.status
Makefile
.deps
.dirstamp
.libs/
/libtool
/*-libtool
.project

# test related
/test/*.log
/test/*.trs
/test-suite.log
/test/*.gcda
/test/*.gcno
/test/libpldm_base_test
/test/libpldmresponder_base_test

