Hm yes I do have these strange things with svn diff utility from time to time (I notice it quite often on my own svn Project. seems to be something with trailing spaces or so)
OK I'll try it.
Installing the compilerI had Visual C++ installed and the Win Partition is mounted in my Linux Filesystem.
Create the folder .wine/drive_c/vc8/ for the copied executeables.
After that copy the folders bin, lib and include from WinPartition/Program Files/Microsoft Visual Studio 8/vc/ to .wine/drive_c/vc8.
Copy from WinPartition/Program Files/Microsoft Visual Studio 8/Common7/IDE to VS8DIR/VC/Bin the following dlls:
> msobj80.dll
> mspdb80.dll
> mspdbcore.dll
> mspdbsrv.exe
calling wine C:/vc8/bin/cl.exe should already start the compiler complaining that there is no file to compile.
After that I created 2 Scripts in /usr/local/bin:
link.sh
#!/bin/sh
wine "c:/vc8/bin/link.exe" /LIBPATH:"c:/vc8/lib" $@
cl.sh
#!/bin/sh
wine "c:/vc8/bin/cl.exe" /I"c:/vc8/include" $@
and made both executeable (chmod +x)
one can now try to compile from comandline using cl.sh (and link.sh).
Integrating into Codeblocks.You need to compile libcompiler because MSVC8 is normaly not included. There are at least the files compilerMSVC8.cpp compilerMSVC8.h and compilergcc.cpp.
Move the MSVC8 out of the #ifdef __WXMSW__ (on MSVC8 header and source Commenting the ifdef and endif out is the easyest I think). I think the patch should be fine as well.
Move the new libcompiler.so (and perhapes the .la too) in the plugins-folder (there should already be one to overwrite). After starting Codeblocks there should be an new compiler detected. I changed the toolchain executeables from cl.exe to cl.sh (one can of course name the script in /usr/local/bin cl.exe, might be an nice Idea).
Problems- One can not use Debug mode (some errors, maybe there is a way around I'll investigate here
- One must specify the .exe Suffix and disable the automated addition of suffixes for the produced executeable to be of use
- I did not try nmake, cdb or the resource-Compiler by now they may or may not work