Date: Wed, 5 Mar 2003 02:38:06 EST-10EDT,10,-1,0,7200,3,-1,0,7200,3600 Subject: [Ux2bs_Archive] No. 96 ************************************************** Tuesday 04 March 2003 Number 96 ************************************************** Subjects for today 1 Re: io.h : Pazuzues 2 Re: rsync : Dave Saville" 3 Re: rsync : John Poltorak 4 Re: rsync : Stefan.Neis at t-online.de 5 Re: rsync : John Poltorak 6 Re: rsync : John Poltorak 7 Re: rsync : Stefan.Neis at t-online.de 8 Re: rsync : Stefan.Neis at t-online.de 9 Re: rsync : John Poltorak **= Email 1 ==========================** Date: Wed, 5 Mar 2003 08:49:08 -0900 From: Pazuzues Subject: Re: io.h Awesome. Thanks a million. On Tuesday, March 4, 2003, at 05:43 PM, Henry Sobotka wrote: > Pazuzues wrote: >> >> i'm trying to port a software code that uses _findfirst _findnext, and >> _findclose that is supposed to be in included in io.h. My install of >> EMX 0.9d does not have the find functions in the io.h. Is there an >> alternative? > > os2emx.h declares DosFindFirst, DosFindNext and DosFindClose; you might > try mapping or wrapping them. > > h~ > _______________________________________________ > UX2BS mailing list > UX2BS at os2ports.com > http://os2ports.com/mailman/listinfo/ux2bs > _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 2 ==========================** Date: Wed, 05 Mar 2003 09:28:25 +0000 (GMT) From: "Dave Saville" Subject: Re: rsync Commenting out the whingy bits in compat.h leaves a few warnings about printing longs as ints and comparing signed & unsigned. Other wise it compiles OK. It wont link though it barfs on _do_symlink. Looks to me like the LINK defines are wrong. [E:\unixos2\workdir\rsync-2.5.5]grep _*LINK *.c *.h backup.c:#if SUPPORT_LINKS backup.c:#if SUPPORT_LINKS backup.c:#if SUPPORT_LINKS backup.c:#if SUPPORT_LINKS flist.c:#if SUPPORT_LINKS flist.c:#if SUPPORT_LINKS flist.c:#if SUPPORT_LINKS flist.c:#if SUPPORT_HARD_LINKS flist.c:#if SUPPORT_HARD_LINKS flist.c:#if SUPPORT_LINKS generator.c:#if SUPPORT_LINKS hlink.c:#if SUPPORT_HARD_LINKS hlink.c:#if SUPPORT_HARD_LINKS hlink.c:#if SUPPORT_HARD_LINKS hlink.c:#if SUPPORT_HARD_LINKS hlink.c:#if SUPPORT_HARD_LINKS main.c:#ifndef SUPPORT_LINKS options.c:#if SUPPORT_HARD_LINKS options.c:#if SUPPORT_LINKS options.c: OPT_COPY_UNSAFE_LINKS, OPT_SAFE_LINKS, OPT_COMPARE_DEST, options.c:#if SUPPORT_HARD_LINKS options.c:#endif /* SUPPORT_HARD_LINKS */ options.c:#if SUPPORT_LINKS rsync.c:#if SUPPORT_LINKS syscall.c:#if HAVE_LINK syscall.c:#if SUPPORT_LINKS tls.c:#if SUPPORT_LINKS tls.c:#if SUPPORT_LINKS config.h:/* #undef HAVE_LINK */ config.h:#define HAVE_READLINK 1 rsync.h:#define SUPPORT_LINKS HAVE_READLINK rsync.h:#define SUPPORT_HARD_LINKS HAVE_LINK It turns on SUPPORT_LINKS which calls do_symlink but HAVE_LINK is off so in syscall.c it is not compiled in. -- Regards Dave Saville _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 3 ==========================** Date: Wed, 5 Mar 2003 09:41:43 +0000 From: John Poltorak Subject: Re: rsync On Wed, Mar 05, 2003 at 09:28:25AM +0000, Dave Saville wrote: > Commenting out the whingy bits in compat.h leaves a few warnings > about printing longs as ints and comparing signed & unsigned. Other > wise it compiles OK. > > It wont link though it barfs on _do_symlink. Looks to me like the > LINK defines are wrong. The easiest way to compile it is by excluding Posix/2. But unfortunately it won't build until there is a syslog.a. You can use one from an old SYSLOG package, but I would like to build one from some original source, but I can't find any... It's supposed to be in FreeBSD somewhere, but I don't see it. > -- > Regards > > Dave Saville -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 4 ==========================** Date: Wed, 05 Mar 2003 11:43:13 +0100 (CET) From: Stefan.Neis at t-online.de Subject: Re: rsync Dave Saville schrieb: > config.h:/* #undef HAVE_LINK */ > config.h:#define HAVE_READLINK 1 > It turns on SUPPORT_LINKS which calls do_symlink but > HAVE_LINK is off so in syscall.c it is not compiled in. Maybe manually try to change HAVE_READLINK, e.g. to /* #undef HAVE_READLINK */ in config.h or if that makes the compiler choke try "#define HAVE_READLINK 0". Now it would be interesting to find out what makes configure believe it should turn on HAVE_READLINK. Regards, Stefan _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 5 ==========================** Date: Wed, 5 Mar 2003 12:27:14 +0000 From: John Poltorak Subject: Re: rsync On Wed, Mar 05, 2003 at 11:43:13AM +0100, Stefan.Neis at t-online.de wrote: > Maybe manually try to change HAVE_READLINK, e.g. to > /* #undef HAVE_READLINK */ in config.h or if that makes > the compiler choke try "#define HAVE_READLINK 0". > Now it would be interesting to find out what makes > configure believe it should turn on HAVE_READLINK. I have tried building RSYNC with and without Posix/2 and the HAVE_READLINK only occurs with Posix/2. I have config.log's for both builds but cant be specific about why readlink works for one but not the other. What should I look for? I can't say I am particularly familiar with all the conftest.exe compiles, but suspect if works in one instant but not in another... > Regards, > Stefan -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 6 ==========================** Date: Wed, 5 Mar 2003 14:24:01 +0000 From: John Poltorak Subject: Re: rsync On Wed, Mar 05, 2003 at 02:55:05PM +0100, Stefan.Neis at t-online.de wrote: > John Poltorak schrieb: > > On Wed, Mar 05, 2003 at 11:43:13AM +0100, > > I have tried building RSYNC with and without > > Posix/2 and the HAVE_READLINK only occurs with > > Posix/2. > > The advantage of Posix/2 is that it has the needed > syslog stuff (though it's possibly just a connection > of stubs...) So, is syslog.a built in to cExt.a ? I know there is an issue when building RSYNC that the sequence of libsyslog and libsocket is important in LIBS. > > I have config.log's for both builds but cant be > > specific about why readlink works for one but not > > the other. > > Accessing Posix/2 CVS via Web-Frontend, I found that > it does provide some stubs for both readlink and > link (returning essentially "permission denied" if > you try to use it - something even Unix programs > should be prepared to cope with.) > > Now, it's a total mystery to me, why configure finds > one of the two functions but not the other. Could it > be using p2-gcc for the readlink test and "normal" > gcc for the link test? I don't think so. The Posix/2 build prepends posix2 to PATH, LIBRARY_PATH and INCLUDE_PATH. Which function does it fail to find? > I noticed that configure is > _very_ unreliable when it comes to respecting the > environment variable "CC". What exactly do you do > for choosing the "gcc.exe" to be used? %PATH% > Up to now, I > have the impression that nothing short of renaming > the executables makes configure really happy. :-( > > The other mystery, of course, is why doesn't the > source compile/link with the settings found by > configure, but as those settings are bogus anyway, > it's probably not worth submitting a bug report to > rsync maintainers. It is possible to build RSYNC on OS/2 so I think it is a matter of us sorting out any problems which we may have introduced. > Regards, > Stefan -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 7 ==========================** Date: Wed, 05 Mar 2003 14:55:05 +0100 (CET) From: Stefan.Neis at t-online.de Subject: Re: rsync John Poltorak schrieb: > On Wed, Mar 05, 2003 at 11:43:13AM +0100, > I have tried building RSYNC with and without > Posix/2 and the HAVE_READLINK only occurs with > Posix/2. The advantage of Posix/2 is that it has the needed syslog stuff (though it's possibly just a connection of stubs...) > I have config.log's for both builds but cant be > specific about why readlink works for one but not > the other. Accessing Posix/2 CVS via Web-Frontend, I found that it does provide some stubs for both readlink and link (returning essentially "permission denied" if you try to use it - something even Unix programs should be prepared to cope with.) Now, it's a total mystery to me, why configure finds one of the two functions but not the other. Could it be using p2-gcc for the readlink test and "normal" gcc for the link test? I noticed that configure is _very_ unreliable when it comes to respecting the environment variable "CC". What exactly do you do for choosing the "gcc.exe" to be used? Up to now, I have the impression that nothing short of renaming the executables makes configure really happy. :-( The other mystery, of course, is why doesn't the source compile/link with the settings found by configure, but as those settings are bogus anyway, it's probably not worth submitting a bug report to rsync maintainers. Regards, Stefan _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 8 ==========================** Date: Wed, 05 Mar 2003 16:03:59 +0100 (CET) From: Stefan.Neis at t-online.de Subject: Re: rsync John Poltorak schrieb: > > So, is syslog.a built in to cExt.a ? Yes, those functions should be in cExt.a somewhere.. > I know there is an issue when building RSYNC that the > sequence of > libsyslog and libsocket is important in LIBS. .. and p2-gcc should handle that automatically. The question I can't answer yet is if that is a "real" syslog library or just a dummy implementation which does nothing at all. :-( Maybe asking on Posix/2 list gives you a faster answer than waiting for me to look it up... > The Posix/2 build prepends posix2 to PATH, > LIBRARY_PATH and INCLUDE_PATH. And the compiler is always named gcc.exe, just living in different paths? I see. Quite clever idea. That should work... - no wait, if you've set GCCLOAD, that might not be quite sufficient. Maybe also add "emxload -qw" to the script changing the paths, so the previously used GCC is cleared from cache. > Which function does it fail to find? link, apparently. See also Dave's post where he quotes exactly that part of config.log where it complains about missing link. > It is possible to build RSYNC on OS/2 so I think > it is a matter of us sorting out any problems > which we may have introduced. Well, we now detect more supported functions than before and the source code which checks for individual functions via configure should be prepared to handle the result. But I admit that having readlink but not link seems quite unreasonable (and it is even a wrong result, Posix/2 provides both). But then, if rsync can't handle that situation anyway, why do they test for both of them separately? Regards, Stefan _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs **= Email 9 ==========================** Date: Wed, 5 Mar 2003 16:08:32 +0000 From: John Poltorak Subject: Re: rsync On Wed, Mar 05, 2003 at 04:03:59PM +0100, Stefan.Neis at t-online.de wrote: > > Which function does it fail to find? > > link, apparently. See also Dave's post where he > quotes exactly that part of config.log where it > complains about missing link. I wonder if this is related to the OS/2 patches applied... One of the errors is in backup.o... Could this patch be related:- ? diff -urbB rsync-2.5.5.0/backup.c rsync-2.5.5/backup.c --- rsync-2.5.5.0/backup.c Mon May 7 08:59:36 2001 +++ rsync-2.5.5/backup.c Fri Jun 21 23:56:40 2002 at at -103,10 +103,18 at at /* Make the directories */ while ((p=strchr(p,'/'))) { *p = 0; +#if SUPPORT_LINKS if(do_lstat(fullpath,&st)!=0) { +#else + if(do_stat(fullpath,&st)!=0) { +#endif do_mkdir(fullpath,0777 & ~orig_umask); if(p>q) { +#if SUPPORT_LINKS if(do_lstat(q,&st)!=0) { +#else + if(do_stat(q,&st)!=0) { +#endif rprintf(FERROR,"make_bak_dir stat %s : %s\n",fullpath,strerror(errno)); } else { st2=&st; > Regards, > Stefan -- John _______________________________________________ UX2BS mailing list UX2BS at os2ports.com http://os2ports.com/mailman/listinfo/ux2bs