> Now, I have managed to get Python to load dynamically and have tested
> on Leopard/Intel and Tiger/PPC and on the former it loads 2.5, on the
> latter 2.3.  Yay!  Or not.  It turns out that there was an API change
> between 2.3 and 2.5 and this is checked via a define
> PYTHON_API_VERSION which is defined inside a Python header
> (modsupport.h).

Hehe. I could have told you that and saved you the trouble. It's come up
on one of the Vim mailing lists before. It's not solved on Windows, but
IIRC, gives even more drastic problems than it seems to on the Mac. :-\

Unless you know exactly what the API changes are, you're pretty much
stuffed. Any change in a structure Vim uses or the signature or return
type of a function Vim calls, or a constant/macro definition Vim uses,
and things will go wrong if the wrong version is dynamically loaded. In
a sense, the warning is the least of your worries.

You could ask the Python guys to try to find out exactly what the API
changes are and whether they apply to Vim or not, but this could be
difficult to ascertain--these things tend to be a bit of a haystack. On
the other hand, it could be the change is very simple and irrelevant,
and you can just somehow disable the warning--if this is a likely
scenario, the Python guys almost certainly will have provided a way to
disable it.

If it can't be ascertained whether change is irrelevant, or it can be
ascertained that it *is* relevant, it would be technically possible to
make a Vim that worked with both API versions, but you'd have to
basically duplicate if_python.c, change all the function names so there
were two versions of each, compile one against the 2.3 API and another
against the 2.5 API and then have a runtime check to decide which
version of the functions to call. It would be quite a refactoring job,
and I would say not worth the effort.

One definite solution, though not ideal, but which is easy to set up for
building, as well as easy for users to understand: have separate MacVim
builds for Tiger and Leopard. Stacks of apps do it, and Mac users are
fairly used to downloading the version appropriate to their OS version.

Ben.




--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_mac" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Reply via email to