# 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
*.o
/config.h
/config.h.in~
/config.log
/config.status
Makefile
.deps
.dirstamp
/lib*
.libs/
/*-libtool
/ipmid
.project
/softoff/phosphor-softpoweroff
/softoff/xyz/
/fru-read-gen.cpp
/ipmiwhitelist.cpp
/sensor-gen.cpp
/inventory-sensor-gen.cpp
/fru-read-gen.cpp
/app/*.lo
/channel-gen.cpp

# test related
/test/sample_unittest
/test/*.log
/test/*.trs
/test-suite.log
*-1.0-coverage*
test/*.gcda
test/*.gcno
softoff/test

# ignore vim swap files
.*.sw*
# failures from patch
*.orig
*.rej
# backup files from some editors
*~
.cscope/
build/
