# Normalize every text file to LF in the repository.
# The build runs under Linux/MinGW containers, so LF is also used in the
# working tree; Windows editors and toolchains handle LF fine.
* text=auto eol=lf

# Windows-only files that must keep CRLF in the working tree.
*.bat        text eol=crlf
*.cmd        text eol=crlf
*.sln        text eol=crlf
*.vcproj     text eol=crlf
*.vcxproj    text eol=crlf
*.props      text eol=crlf
*.filters    text eol=crlf

# Files that must keep LF even if a Windows editor rewrites them.
*.sh         text eol=lf
*.in         text eol=lf
*.cmake      text eol=lf
*.mk         text eol=lf
Makefile     text eol=lf
Dockerfile   text eol=lf

# Binary files - never touch the contents.
*.bin        binary
*.ico        binary
*.ttf        binary
*.otf        binary
*.png        binary
*.jpg        binary
*.jpeg       binary
*.gif        binary
*.bmp        binary
*.zip        binary
*.7z         binary
*.gz         binary
*.dll        binary
*.exe        binary
*.lib        binary
*.a          binary
*.o          binary
*.obj        binary
*.pdb        binary

# Vendored code is stored and checked out byte-for-byte as upstream ships it,
# so re-importing a library never produces line-ending-only diffs.
src/spice2x/external/** -text
