I've read with interest the threads of August about a win32 port (without cygwin), and as a joke yesterday I tried compiling LLVM on win32 with VC7.1, targeting the HowToUseJIT example...
Well, apart from obvious problems, it went pretty well.
I cannot reach the end of the process, but I'm feeling it's not too far.
So the point is:
Are you interested in taking in account the possibility that the LLVM source code could be compiled with Microsoft compiler on windows?
Most of the problems are pretty trivial... for example:
- A lot of .cpp lacked the inclusion of the <algorithm> header (I'm using the STLport-4.6.2, the Microsoft implementation of hash_map and co. is too different)
- sometimes the std:: prefix is not used for 'sort' or 'find'
- C99 style array wich are not supported by the Ms compiler...
etc etc
There's the interest for *umm* fixing that little problems?
Are you interested in taking in account the possibility that the LLVM
source code could be compiled with Microsoft compiler on windows?
If you think it's not too far off, then we'd be happy to consider patches,
insofar as they increase LLVM's C++ standards compliance.
Most of the problems are pretty trivial... for example:
- A lot of .cpp lacked the inclusion of the <algorithm> header (I'm
using the STLport-4.6.2, the Microsoft implementation of hash_map and
co. is too different)
- sometimes the std:: prefix is not used for 'sort' or 'find'
- C99 style array wich are not supported by the Ms compiler...
etc etc
There's the interest for *umm* fixing that little problems?
These do look interesting, especially the std:: thing you mentioned
above, though we'll have to do case-by-case review to be sure.
Please submit patches, and we'll be happy to review them.
In addition to Brian's comments, please note that we're currently
consolidating the platform-specific code into a single library:
lib/System. Henrik Bach has signed up to provide both the Interix and
Win32 ports of that library. However, much of LLVM has not yet been
converted to use lib/System yet. That means it will work on most Unix
variants but definitely won't with win32 native (non cygwin) interfaces.
Its of high interest to us to support native win32, its just that most
of the developers are more familiar with Unix. If you're interested in
working on this, I suggest you contact Henrik Bach
(henrik_bach_llvm@hotmail.com) and consider collaboration with him. I
will give you as much assistance as I can.