...once VS2017 renames a file it throws off code::blocks building. ...
So, IMHO, it sounds like it is VS who is screwing up here. Then you should ask their developers to fix it.
...if the project has "file1" it should be able to handle "File1".
I would vote against that. If feels like another potential source of problems. Not worth the trouble.
We use a shared codebase north of 2.5k files with Windows VS as well as with Linux CB. And we
do have upper- as well as lowercase letters in our filenames. The only time a compilation might
break is when we ourselves made an error while renaming.
In case of your many exisiting projects you might consider converting them once (again) and from
then on maintain some naming discipline.
Do the files cb creates while compiling and linking reside on NTFS as well or on a case sensitive linux file system?
Btw: You do know the plugin "find broken files in project", don't you?