Serenity Operating System
at master 47 lines 2.1 kB view raw
1From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 2From: Linus Groh <mail@linusgroh.de> 3Date: Fri, 14 Jan 2022 23:36:52 +0330 4Subject: [PATCH] Tweak `setup.py` 5 6Make some tweaks to Python's `setup.py`: 7 8- Add `/usr/local/lib` and `/usr/local/include` to the system lib and 9 include dirs respectively, relative to the sysroot when 10 crosscompiling. These are by default only included when not 11 crosscompiling for some reason. 12- Add `/usr/local/include/ncurses` to the curses include paths so it can 13 build the `_curses` module. This is by default included for a bunch of 14 extensions, but not `_curses`. 15--- 16 setup.py | 11 ++++++++--- 17 1 file changed, 8 insertions(+), 3 deletions(-) 18 19diff --git a/setup.py b/setup.py 20index 15d0d4576a4772e9920ac2d7c1a9dee75c29b341..e651ac7627e8b796f8b9b4d60f592bc9261b6540 100644 21--- a/setup.py 22+++ b/setup.py 23@@ -868,8 +868,8 @@ class PyBuildExt(build_ext): 24 add_dir_to_list(self.compiler.include_dirs, 25 sysconfig.get_config_var("INCLUDEDIR")) 26 27- system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib'] 28- system_include_dirs = ['/usr/include'] 29+ system_lib_dirs = ['/lib64', '/usr/lib64', '/lib', '/usr/lib', '/usr/local/lib'] 30+ system_include_dirs = ['/usr/include', '/usr/local/include'] 31 # lib_dirs and inc_dirs are used to search for files; 32 # if a file is found in one of those directories, it can 33 # be assumed that no additional -I,-L directives are needed. 34@@ -1117,7 +1117,12 @@ class PyBuildExt(build_ext): 35 # Curses support, requiring the System V version of curses, often 36 # provided by the ncurses library. 37 curses_defines = [] 38- curses_includes = [] 39+ if not CROSS_COMPILING: 40+ curses_includes = ['/usr/local/include/ncurses'] 41+ else: 42+ curses_includes = sysroot_paths( 43+ ('CPPFLAGS', 'CFLAGS', 'CC'), ['/usr/local/include/ncurses'] 44+ ) 45 panel_library = 'panel' 46 if curses_library == 'ncursesw': 47 curses_defines.append(('HAVE_NCURSESW', '1'))