# Object files
*.o
*.ko
*.obj
*.elf

# Precompiled Headers
*.gch
*.pch

# Libraries
*.lib
*.a
*.la
*.lo

# Shared objects (inc. Windows DLLs)
*.dll
*.so
*.so.*
*.dylib

# Executables
*.exe
*.out
*.app
*.i*86
*.x86_64
*.hex

# Debug files
*.dSYM

# Automake and make releated stuff
Makefile
Makefile.in
.deps
.libs
/autom4te.cache
/aclocal.m4
/compile
/configure
/depcomp
/install-sh
/missing
/stamp-h1
/config.guess
/config.log
/config.status
/config.sub
/libtool
/ltmain.sh
/m4
/usrsctp.pc
.dirstamp

# binaries
programs/client
programs/daytime_server
programs/discard_server
programs/echo_server
programs/ekr_client
programs/ekr_loop
programs/ekr_loop_offload
programs/ekr_peer
programs/ekr_server
programs/http_client
programs/rtcweb
programs/tsctp
programs/test_libmgmt
programs/test_timer

# callgrind
callgrind.out*

# cmake build
/build
