[New-bugs-announce] [issue10615] Trivial mingw compile fixes

Johann Hanne report at bugs.python.org
Fri Dec 3 13:46:02 CET 2010

New submission from Johann Hanne <python at jf.hanne.name>:

Some C files fail to compile with mingw, mostly due to missing preprocessor statements:
- Modules/_ctypes/callproc.c
When using the bundled non-msvc libffi, ffi_call has no return value, so only use it when compiled with msvc.
- Modules/_pickle.c
There are Windows data types FLOAT, INT, LONG which the pickle code conflicts with.
- Modules/posixmodule.c
Some "#ifdef _MSC_VER" paragraphs apply for __MINGW32__ as well; for MinGW, wincrypt.h must be explicitely included (the "original" Windows headers include them in windows.h)
- Modules/signalmodule.c
On case-sensitive filesystems, windows.h must be all-lowercase
- Modules/socketmodule.h
MinGW does not define SIO_KEEPALIVE_VALS, so do it here if required
- PC/msvcrtmodule.c
MinGW does not have crtdbg.h
- PC/winreg.c
MinGW does not define REG_LEGAL_CHANGE_FILTER, so do it here if required
- Python/dynload_win.c
strcasecmp is already defined with MinGW, so use a private name
- Python/pythonrun.c
MinGW has locale.h, but not langinfo.h

This patch fixes all the mentioned problems.

components: Build
files: Python-3.1.3.fix_mingw_compile.diff
keywords: patch
messages: 123236
nosy: jonny
priority: normal
severity: normal
status: open
title: Trivial mingw compile fixes
type: compile error
versions: Python 3.1
Added file: http://bugs.python.org/file19924/Python-3.1.3.fix_mingw_compile.diff

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list