# This is pulled in via an entry in DEPS
LayoutTests/w3c

*.Makefile
*.mk
*.mode*
*.pbxuser
*.perspective*
*.pyc
.DS_Store
.directory
autoinstall.cache.d

# Ignore auto-generated files by VS2005 and VS2010.
*.ncb
*.props
*.sln
*.suo
*.targets
*.vcproj
*.vcproj.*.user
*.vcxproj.user
*.vcxproj
*.vcxproj.filters
Source/core/make_core_generated.xml

# Ignore Eclipse project files
.project
.cproject
/.settings

# Ignore common tool auto-generated files.
.gdb_history
tags
*~
.*.sw[a-p]

# For best performance, place rules for deep paths in the parent directory.
# For example: instead of placing Source/WebKit/chromium/WebKit.xcodeproj here,
# place WebKit.xcodeproj in Source/WebKit/chromium/.gitignore
