blob: b1c58da50311acb35e5532a51a4340892360c139 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
# Patches for Python 3.9 on SerenityOS
## `define-have-sigset-t.patch`
Ensures `HAVE_SIGSET_T` is defined, as we *do* have `sigset_t` but it's not detected properly due to some related functions being missing.
## `include-sys-uio.patch`
Ensures `struct iovec` is defined, required by the socket module.
## `define-py-force-utf8-locale.patch`
Enforce UTF-8 as encoding by defining `_Py_FORCE_UTF8_LOCALE`.
## `fix-autoconf.patch`
As usual, make the `configure` script recognize Serenity. Also set `MACHDEP` (which is used for `sys.platform`) to a version-less `serenityos`, even when not cross-compiling.
## `http-client.patch`
Allows HTTPConnection to work without the TCP_NODELAY socket option, as this is not supported by Serenity.
## `tweak-setup-py.patch`
Make some tweaks to Python's `setup.py` files:
- Add `/usr/local/lib` / `/usr/local/include` to the system lib / include dirs, relative to the sysroot when crosscompiling. These are by default only included when not crosscompiling for some reason.
- Add `/usr/local/include/ncurses` to the curses include paths so it can build the `_curses` module. This is by default included for a bunch of extensions, but not `_curses`.
- Add `/usr/local/includes/uuid` to the uuid include paths so it can build the `_uuid` module. This is by default included for a bunch of extensions, but not `_uuid`.
## `xmlrcp_client.patch`
Fix xmlrpc.client module so it can be imported. It otherwise a call to strftime raises a ValueError that the code is not prepared to handle.
|