# get back config.h.in
!config.h.in

# Visual Studio
*.opensdf
*.sdf
*.suo
.vs/

# Object files
*.obj
*.exe

# Generated project files
convarch.vcxproj
convarch.vcxproj.filters
cryptotest.vcxproj
datamgrtest.vcxproj
dump.vcxproj
handlemgrtest.vcxproj
keyconv.vcxproj
keyconv.vcxproj.filters
objstoretest.vcxproj
p11test.vcxproj
sessionmgrtest.vcxproj
slotmgrtest.vcxproj
softhsm2.vcxproj
softhsm2.sln
util.vcxproj
util.vcxproj.filters

# Build files
Debug/
Release/
x64/