Re: [PATCH] VMS build update
Frediano Ziglio <[email protected]>
| Newsgroups | gmane.comp.db.tds.freetds |
|---|---|
| Message-ID | <CAHt6W4csw=yuzXKdJnycECYkUbWZy77q+eJx0f2DXMs15nWy6w@mail.gmail.com> |
2013/10/13 Craig A. Berry <[email protected]>: > Make the VMS-specific configuration and build procedures handle threads, plus admit to having some other things that we do have but weren't configuring for, such as clock_gettime(), socketpair(), getaddrinfo(), and stdio locking. > > The attached patch was created with git format-patch and should be applicable with git am. Or GNU patch -p1 for traditionalists. > What can I say. Pushed! > TODO: > > 1.) Fire up a recent port of unixODBC and see whether the ODBC portion of the build needs any attention. > > 2.) Figure out why src/dblib/t0017.c is failing. Removing the fgetc/ungetc pair added at the commit below makes it succeed, so there might be a CRTL bug on VMS with either or both of fgetc and ungetc. > > $ git blame src/dblib/bcp.c | grep -C3 fgetc > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1124) * then we've stumbled across the finish line. Tell the caller we failed to read > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1125) * anything but encountered no error. > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1126) */ > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1127) i = fgetc(hostfile); > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1128) if (i == EOF) > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1129) return _bcp_check_eof(dbproc, hostfile, 0); > 6e3afa4d (Frediano Ziglio 2013-06-05 12:47:50 +0100 1130) ungetc(i, hostfile); > Well... this patch use some stdio extension to make read faster... but fails on standard C calls ?? What a crazy world! It just try to detect if we are at end of the file without removing a character! Frediano