Staging
v0.5.1
https://github.com/python/cpython
Revision 7105319ada2e663659020cbe9fdf7ff38f421ab2 authored by serge-sans-paille on 04 December 2019, 16:02:57 UTC, committed by Victor Stinner on 04 December 2019, 16:02:57 UTC
The readline module now detects if Python is linked to libedit at runtime
on all platforms.  Previously, the check was only done on macOS.

If Python is used as a library by a binary linking to libedit, the linker
resolves the rl_initialize symbol required by the readline module against
libedit instead of libreadline, which leads to a segfault.

Take advantage of the existing supporting code to have readline module being
compatible with both situations.
1 parent ac0e1c2
Raw File
Tip revision: 7105319ada2e663659020cbe9fdf7ff38f421ab2 authored by serge-sans-paille on 04 December 2019, 16:02:57 UTC
bpo-38634: Allow non-apple build to cope with libedit (GH-16986)
Tip revision: 7105319
osdefs.h
#ifndef Py_OSDEFS_H
#define Py_OSDEFS_H
#ifdef __cplusplus
extern "C" {
#endif


/* Operating system dependencies */

#ifdef MS_WINDOWS
#define SEP L'\\'
#define ALTSEP L'/'
#define MAXPATHLEN 256
#define DELIM L';'
#endif

#ifdef __VXWORKS__
#define DELIM L';'
#endif

/* Filename separator */
#ifndef SEP
#define SEP L'/'
#endif

/* Max pathname length */
#ifdef __hpux
#include <sys/param.h>
#include <limits.h>
#ifndef PATH_MAX
#define PATH_MAX MAXPATHLEN
#endif
#endif

#ifndef MAXPATHLEN
#if defined(PATH_MAX) && PATH_MAX > 1024
#define MAXPATHLEN PATH_MAX
#else
#define MAXPATHLEN 1024
#endif
#endif

/* Search path entry delimiter */
#ifndef DELIM
#define DELIM L':'
#endif

#ifdef __cplusplus
}
#endif
#endif /* !Py_OSDEFS_H */
back to top