From: Eli Green Date: 2001-10-02T08:21:03+09:00 Subject: [ruby-talk:21902] Re: Let's work on Windows support from Sean Chittenden on 2001-10-02 at 01:32:16: > > Longer term, I suspect we need to be looking at moving away from > > reliance on third party tools to give us the support we need. I don't > > know what would be involved. Is it right to try to emulate the Unix > > process model under Windows? Should there be a Ruby version for > > Windows with a totally different set of libraries. Should we see if we > > can work with ActiveState to produce a port? We can discuss all this > > under http://www.rubygarden.org/ruby?FutureWindows > > Possibly apr from Apache? > > http://apr.apache.org/ > > Ruby on every system that apr runs on would be cool... -sc Well, I think the merits of this idea aren't being properly investigated. Dozens of people are very quick to rally behind the open source flag, and still make a ton of unnecessary duplicate code. So I had a peek at APR, and here's what it can do: - Threads (mmm ... portable native threaded ruby ... delicious) - I/O, Files, Sockets, etc. - MMAP routines (does ruby even use mmap? all signs point to no) - Portable DSO - File Locking - Shared Memory (again, I don't think ruby uses it...) - safe snprintf & family I think leveraging off Apache's work is a great idea (since we all know how much Apache sucks ... :) I would be more than happy to roll up my sleeves on a port of ruby to APR, but the most important question about an effort like this is how people feel about it. And when I say "people", I mean "Matz", because it's still his language. APR isn't in a state where it's recommended for use as a shared library yet, so static linking would be the way to go for the time being. So while we'd be adding a dependency to APR, we'd be getting rid of the dependency of Cygwin, and it could be bundled as one InstallShield executable. This should allow people to build it with either MingW or VC++, although for sanity's sake, VC++ is probably the way to go when building the binary installer. Does mkmf work under Windows? That would be another nice step, so that things like this would work: ruby extconf.rb nmake