This post originated from an RSS feed registered with Ruby Buzz
by Daniel Berger.
Original Post: Process.waitid and other stuff
Feed Title: Testing 1,2,3...
Feed URL: http://djberg96.livejournal.com/data/rss
Feed Description: A blog on Ruby and other stuff.
Now that I have a working Linux distro (which, by the way, looks much nicer after I installed the nvidia driver), I've been going back and double checking some of my C extensions to make sure they work properly on Suse 9.3 (or Linux kernel 2.6.11 if you prefer).
Sure enough, proc-wait3 died a horrible, stinkerous death. It seems that as of kernel 2.6.9 they've added support for the waitid() function. Naturally, their implementation is different from, well, every other variant of *nix, so I was forced to add a couple dozen (literally) preprocessor macro checks to get it to work. But, now it works. :)
In other news, I happened to come across a couple native path handling functions I hadn't heard of before - resolvepath() and realpath(). I think the former is Solaris specific, while the latter appears to be common across most *nix flavors. I'm surprise Ruby doesn't have a File.realpath method to wrap this. Maybe I'll submit a patch on ruby-core.
In the meantime, I've added both File.resolvepath and File.realpath to the solaris-file package. :)