Skip to Content.
Sympa Menu

freetds - toward binary compatibility

freetds AT lists.ibiblio.org

Subject: FreeTDS Development Group

List archive

Chronological Thread  
  • From: James K. Lowden <jklowden AT speakeasy.org>
  • To: TDS Development Group <freetds AT franklin.oit.unc.edu>
  • Subject: toward binary compatibility
  • Date: Sat, 3 Aug 2002 15:42:48 -0400


I've discovered we're a lot closer to being binary compatible to Sybase's
dblib than I think is generally assumed.

Someone reviewing my work while I was on vacation noticed a mistake I made
that revealed something unexpected. I had recompiled and linked to
FreeTDS a homegrown utility. My utility's Makefile linked in not only
FreeTDS, but some other libraries as well, and it turned out that those
libraries were also making dblib calls. Keep in mind, those other
libraries had been compiled with Sybase's header files, anticipating
linkage to Sybase's libraries. I however blithely linked the whole mess
together, and surprisingly enough encountered just one unresolved symbol:
dbdead(). At that time, I wasn't sure what was awry, so I added a
dbdead() that called DBDEAD() and everything worked fine.

The point: the library that I was using (but hadn't recompiled) needed
exactly one function that our dblib didn't have. For the purposes of my
utility, we were one function away from being binary-compatible with
Sybase's library.

I propose to solve this by doing what Sybase does. Let's put a DBDEAD()
macro in sybdb.h that calls dbdead(), and convert the actual function to
lowercase. In fact, let's do that for all the goofy uppercase brain-dead
macros Sybase foisted on us over the years.

While I'm on the subject, I've been asked to ask: has anyone tried to use
FreeTDS as a binary replacement for Sybase's libraries? The poor soul in
question is interested in using APT Forms (remember that one?), and he's
wondering what the likelihood of success is if he just points his linker
at our stuff instead of theirs.

I said 1) the linker will answer that question better than the list will
and 2) he should convert his APT application to PHP. But I also promised
to ask, in case by some miracle there is a known way to make his idea
work.

--jkl




Archive powered by MHonArc 2.6.24.

Top of Page