R-macos / recipes

System for building static dependent libraries for CRAN packages
44 stars 17 forks source link

SQL headers clobbering #41

Closed detule closed 11 months ago

detule commented 1 year ago

Hi Simon:

I was looking into some deprecation warnings that are thrown by the ODBC API: I could be wrong about this but I think the generic ODBC API headers, for example, ../include/sql.h (and friends) are overwritten when both the sys-iodbc and unixodbc recipes are installed.

I noticed this because I think the deprecation warnings are in one set of headers (iodbc) but not in the other. Any ideas on how to resolve this?

You are not asking, but I would be happy if the unixodbc headers clobbered over the sys-iodbc rather than what looks like is the other way around. :)

Thanks again - and apologies if my intuition is way off as to why those deprecation warnings are thrown.

detule commented 1 year ago

Hi @s-u

Have you given this some thought? This is causing issues for package:odbc, which expects to link against headers provided by unixODBC ( and there are material differences between those provided by iODBC versus unixODBC ).

In particular users are reporting major issues with the binary / CRAN version of the package ( beyond just the deprecation warnings ).

I guess there are couple of options:

Let me know if there is some way I can help / test / contribute recipe changes.

Thanks!

s-u commented 1 year ago

@detule yes, this is a problem - we can't really have both at the same time. There is really no order since we shouldn't have two package overwriting each other - we don't allow alternatives. As it stands now the behavior is undefined. I don't use ODBC myself - is there any reason to NOT use unixodbc?

detule commented 1 year ago

@s-u

Not aware of any ( reasons to NOT use unixODBC ).

detule commented 11 months ago

Fixed in https://github.com/R-macos/recipes/issues/48