I built myodbc on OS 10.3 with the calls to GetPrivateProfileString removed for Mac OS X and replaced with SQLGetPrivateProfileString.  This allows it to run under Tiger with the version of iodbc that Apple ships.  So far in my testing it seems to work fine on Mac OS 10.4 and 10.3.  I am not concerned with 10.2 compatibility since we generally support only two versions of the OS, and you are also providing a separate driver for 10.2.  My guess is that GetPrivateProfileString was necessary in 10.2 and before, but is no longer needed and SQLGetPrivateProfileString now works.

I used the 3.51.11 source distribution from dev.mysql.com and linking it to the 4.1.11 binaries.  (Thank you to Peter Harvey for his very useful instructions in README.osx.)

I also built myodbc on 10.4, but I had to use the iodbc headers from my 10.3 system because the new ones are incompatible - they use SQLLEN vs. SQLINTEGER in SQLPutData and other similar incompatibilities (that don't seem to change the length or signedness except for 64 bit Windows).

When I attempt to run the automated tests in the test directory I get failures, however, they do not seem to be related to the driver, but are problems with the tests themselves.

- my_col_length.c drops a table that doesn't exist, then expects the error to be success.
- my_keys.c retrieves rows and does the tests for values in the wrong order
- my_dyn_cursor.c deletes a table before it's finished with it
...?

Are these fixed in a more recent version of the source?

My patches are enclosed.  These are really simple changes that remove the special #ifdefs and comments for Mac OS related to GetPrivateProfileString.

<<myodbcinst.patch>> <<util.patch>>

Brooks R. Brown
Software Engineer
Extensis, Inc.
<http://www.extensis.com/>
phone: 503.274.2020 x130
email: bbrown@extensis.com

Empowering digital assets