-
Notifications
You must be signed in to change notification settings - Fork 638
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Visual C++ 2010 Express support #1375
Conversation
fixes #1338 Changes: - added project files for Visual C++ 2010 Express - resolved function calls that would otherwise be ambiguous now - solved ARRAYSIZE macro and HSPRITE type collisions with Windows.h and winsock.h includes by guarding the includes TODO: We should think about if we actually should instead link to a .h that defines / redirects the required macros, so that platform differences would be limited to a few .cpp files (meaning not including windows.h in a huge number of files as it is now), see the issue above for details.
See this as just a suggestion, I won't be sad if it gets rejected or s.th.. |
Enabled RTTI on those projects as it is in the original DSPs (ricochet and dmc don't have RTTI enabled).
Just as in the original .dsp files.
Seems as if git wants to normalize the line endings to LF However they will be converted to CRLF on checkout due to the .gitattributes file
Attention: This will cause git to normalize line endings to LF, as soon as the files a touched (use touch command i.e.). If this is not wanted, then remove the line for the .dsp files please. |
The idea I listed under "TODO" in the first post is sadly an complicated option: You would want to get the MAX_PATH macro value out of the .cpp without including windows.h in the .h. The only way to get it out would require a custom preprocessing step, so that the .h file is generated with the correct value before the actual build of the DLLs. But if you think the idea is worth trying, I would try to do such a thing? |
Looks good to me, I've not loaded the vproj's locally though. I don't know enough about GIT to understand the line ending issue, isn't your change good in that it forces CRLF on the vproj and dsp files when you sync them, which is what you want (because windows/msdev expects it)? |
Visual C++ 2010 Express support
Regarding the GIT issue (my understanding of GIT is very limited too): *.dsp text eol=crlf You can see what I mean (as long as the .dsps are not normalized yet) as follows:
(I haven't found a better solution to prevent Windows users that usually have core.autocrlf=true from converting the dsp files to LF (would affect the .zip download, since that one is checked out on a Linux system).) |
Wow, I applaud you for porting this ancient piece of software to compile with Visual C++ 2010 while still maintaining compatibilty with Visual C++ 6.0, and Valve too for actually accepting it (even though I'm somewhat dissapointed with the Steam version of the Half-Life SDK missing a lot of what is necessary to make a mod even though the ReadMe.txt file says it should be there.) |
fixes #1338
Changes:
winsock.h includes by guarding the includes
TODO:
We should think about if we actually should instead link to a .h that
defines / redirects the required macros, so that platform differences
would be limited to a few .cpp files (meaning not including windows.h in a
huge number of files as it is now), see the issue above for details.
TODO2:
Converting the many other .dsp files (the tools) too.