mirror of
https://github.com/RGBCube/serenity
synced 2025-05-31 03:18:11 +00:00
Ports: Add a patch for Python's setup.py to consider /usr/local
This makes it find more includes and libraries than by default when crosscompiling.
This commit is contained in:
parent
96331d7d87
commit
123c2f2f7f
2 changed files with 34 additions and 0 deletions
|
@ -12,6 +12,13 @@ Enforce UTF-8 as encoding by defining `_Py_FORCE_UTF8_LOCALE`.
|
||||||
|
|
||||||
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.
|
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.
|
||||||
|
|
||||||
|
## `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`.
|
||||||
|
|
||||||
## `webbrowser.patch`
|
## `webbrowser.patch`
|
||||||
|
|
||||||
Register the SerenityOS Browser in the [`webbrowser`](https://docs.python.org/3/library/webbrowser.html) module.
|
Register the SerenityOS Browser in the [`webbrowser`](https://docs.python.org/3/library/webbrowser.html) module.
|
||||||
|
|
27
Ports/python3/patches/tweak-setup-py.patch
Normal file
27
Ports/python3/patches/tweak-setup-py.patch
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
--- Python-3.9.6/setup.py.orig 2021-07-10 00:09:56.322423573 +0100
|
||||||
|
+++ Python-3.9.6/setup.py 2021-07-10 00:13:39.447453427 +0100
|
||||||
|
@@ -750,8 +750,8 @@
|
||||||
|
add_dir_to_list(self.compiler.include_dirs,
|
||||||
|
sysconfig.get_config_var("INCLUDEDIR"))
|
||||||
|
|
||||||
|
- system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib']
|
||||||
|
- system_include_dirs = ['/usr/include']
|
||||||
|
+ system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib', '/usr/local/lib']
|
||||||
|
+ system_include_dirs = ['/usr/include', '/usr/local/include']
|
||||||
|
# lib_dirs and inc_dirs are used to search for files;
|
||||||
|
# if a file is found in one of those directories, it can
|
||||||
|
# be assumed that no additional -I,-L directives are needed.
|
||||||
|
@@ -1052,7 +1052,12 @@
|
||||||
|
# Curses support, requiring the System V version of curses, often
|
||||||
|
# provided by the ncurses library.
|
||||||
|
curses_defines = []
|
||||||
|
- curses_includes = []
|
||||||
|
+ if not CROSS_COMPILING:
|
||||||
|
+ curses_includes = ['/usr/local/include/ncurses']
|
||||||
|
+ else:
|
||||||
|
+ curses_includes = sysroot_paths(
|
||||||
|
+ ('CPPFLAGS', 'CFLAGS', 'CC'), ['/usr/local/include/ncurses']
|
||||||
|
+ )
|
||||||
|
panel_library = 'panel'
|
||||||
|
if curses_library == 'ncursesw':
|
||||||
|
curses_defines.append(('HAVE_NCURSESW', '1'))
|
Loading…
Add table
Add a link
Reference in a new issue