[LLVMdev] Files to lib/System/Win32

Reid Spencer reid at x10sys.com
Mon Sep 13 22:52:59 PDT 2004


On Mon, 2004-09-13 at 22:38, Jeff Cohen wrote:
> I don't know anything about Interix.
> It may be best to defer a true Win32 port.  It's not just the time it
> would take to do it, it's the time to keep it up to date as LLVM
> evolves.  The Win32 port will constantly break, and I don't have the
> time to keep fixing it.  I've got my own time-consuming projects :)

Actually, I don't expect that the Win32 will constantly break once the
bulk of LLVM is converted over. LLVM needs precious little support from
the operating system. A few fork/exec here, a little mmap there, and
some file/path support. That's about it. It may grow overtime, but if
we're using a lot of the operating system interface (any operating
system interface), we're doing something wrong.

> That said, the architectural issues should still be addressed.  

I agree. Chris made a good point in that there shouldn't be anything
wrong with using cygwin for the build tools but compiling our libraries
so that they make use of native windows calls rather than requiring the
slow cygwin.dll. That would make our tools work much better on windows
and it would not be terribly difficult to do.
> What
> does LLVM expect to keep in /etc/llvm and where would it keep it on
> Windows?  

I expect this would just be in the Windows directory (C:\WINNT or
C:\WINDOWS). It *could* keep the configuration files for llvmc and
anything else that uses configuration files in that directory. However,
the likely place for these would be the llvm installation directory. I
might drop the notion of "special paths" in the sys::Path interface and
just replace it with "FindConfigFile" which would do the right thing on
a given platform.

> How will it handle the Windows custom of having spaces in file
> and directory names?  (GNU make hates it.)

I think this is where we use cygwin which has already been shown to work
with our makefiles. 

> Why would it need to know the user's "home" directory?  

This is to allow the user to override the installed configuration file
settings for llvm. Again, we shouldn't expose the concept of "home
directory". Instead we should expose "FindConfigFile".

> 
> I don't have cygwin or any other Unix emulator on my Windows system, so
> I couldn't do validation.  I do my Unix programming on Unix :)

Can't blame ya!


Thanks, Jeff.

Reid.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20040913/90233e25/attachment.sig>


More information about the llvm-dev mailing list