If Visual Studio Express 2010 and later can be told to build against the VS2008 C runtime, then that is something that can (and probably should) be enabled in the next CPython 2.7 maintenance release (for both the main build process and for distutils extension building).

">

(original) (raw)


On 21 Nov 2013 10:33, "Antoine Pitrou" <solipsis@pitrou.net> wrote:
\>
\> On Wed, 20 Nov 2013 17:30:44 -0500
\> Barry Warsaw <barry@python.org> wrote:
\> > On Nov 20, 2013, at 09:52 PM, Christian Tismer wrote:
\> >
\> > >Many customers are forced to stick with Python 2.X because of other products,
\> > >but they require a Python 2.X version which can be compiled using Visual
\> > >Studio 2010 or better. �This is considered an improvement and not a bug fix,
\> > >where I disagree.
\> >
\> > I'm not so sure about that. �Python 2.7 can still get patches to help extend
\> > its useful life by allowing it to be built with newer compiler suites. �I
\> > believe this has already been done for various Linux compilers. �I see no
\> > non-technical reason why Python 2.7 can't be taught how to build with VS 2010
\> > or newer. �Details are subject to RM approval, IMHO.
\>
\> I think it isn't only about teaching it to build with VS 2010, but
\> providing binaries compatible with the VS 2010 runtime.
\> Otherwise, AFAIU, if extensions are built with VS 2010 but loader with
\> a VS 2008-compiled Python, there will be ABI problems.

Right, this is the problem - building with newer compilers isn't an issue, changing the Windows ABI \*is\* (which is the reason Christian is proposing a version bump to denote the ABI incompatibility).

If Visual Studio Express 2010 and later can be told to build against the VS2008 C runtime, then that is something that can (and probably should) be enabled in the next CPython 2.7 maintenance release (for both the main build process and for distutils extension building).

Doing a 2.8 release \*just\* to change the Windows ABI to a new version of the MS C runtime, on the other hand, seems impossible to do without thoroughly confusing people (regardless of whether it's CPython or Stackless making such a change).

I'd certainly want to explore all our alternatives with the Microsoft folks for getting our preferred option (new compiler, old C runtime) working in an open source friendly way before we went down the path of a 2.x ABI bump.

I've cc'ed Steve Dower directly, as he's the best person I know to ask about this kind of problem.

Cheers,
Nick.

>
\> Regards
\>
\> Antoine.
\>
\>
\> \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
\> Python-Dev mailing list
\> Python-Dev@python.org
\> https://mail.python.org/mailman/listinfo/python-dev
\> Unsubscribe: https://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com