nobuyoshi nakada wrote:
> ===================================================================
> RCS file: /cvs/ruby/src/ruby/vms/vms.h,v retrieving revision 
> 1.3 diff -U2 -p -r1.3 vms.h
> --- vms/vms.h	26 Dec 2003 01:38:31 -0000	1.3
> +++ vms/vms.h	25 May 2005 09:05:58 -0000
> @@ -10,4 +10,7 @@ extern int vsnprintf();  extern int snprintf();
>  
> +int rb_vms_select(int, fd_set*, fd_set*, fd_set*, struct timeval*); 
> +#define select(n, r, w, e, t) rb_vms_select(n, r, w, e, t)
> +
>  #define LONG_LONG long long
>  #define SIZEOF_LONG_LONG sizeof(long long)
> 
>
The DECC man page for select() says that I need to #include <time.h>. So the above won't compile. If I include time.h here, though, every routine will have it included. Is this desirable? Or should this stuff be in a separate .h and only included where select() is actually used? Also, getsockopt needs #include <socket.h>, so vms.c needs that, too. Once I made these fixes, the patch compiled cleanly, and runs my test cases without errors. Thanks! I'm also uncertain where this stuff all properly belongs. There is a vms/vmsruby_private.c for which I see no equivalent file in other ports. There are no comments explaining what the file is for, so it is not clear what the author's intent was in designating these as "private". So, where do we go from here? We'd like for all of our work on the VMS port to date, along with this patch, to eventually be merged upstream. However, this is all new territory for us, so any general tips you can give on the process of developing a port and submitting changes would be welcome. It's too bad we've lost touch with Masamichi, or we'd have talked to him about this. But ever since he indicated he couldn't work on the project any longer, we haven't heard from him. Unfortunately this means we don't even have his latest working copy of source, from which he produced the last build listed on his site. So any changes we might have benefitted from in that last release are lost. Ben