#
# NOTE! Please use 'git ls-files -i --exclude-standard'
# command after changing this file, to see if there are
# any tracked files which get ignored after the change.
#

# Temp files (e.g. editors).
*~
*.sw[op]

# Compiled objects.
*.a
*.o
*.l[ao]
*.so
*.exe

*.d
!**/tmpfiles.d
!crosh/dev.d
*.depends
.deps
.libs

*.gch
*.gcda
*.gcno
lcov.info

# Common output files.
*.dump
*.out
*.test

# Protobuf files.
*.pb.cc
*.pb.h

# Python files.
*.pyc

# Debug (e.g. gdb).
.gdb_history
.gdbinit

*.core
cscope.*
tags
tags_sorted_by_file

# Patch files.
*.diff
*.patch
*.orig
*.rej

# Nested git repos.
/glbench/images/

# Cargo lock file.
Cargo.lock

# Define rust files.
*.rs.bk

# Cargo build directories.
target/

# VSCode source dirs
.vscode/

# Intellij project dirs
.idea

# clangd cache dir
.clangd
.cache

# Created when building with USE=compilation_database
compile_commands.json
