mirror of
https://github.com/openbsd/ports.git
synced 2026-06-18 07:24:23 +02:00
bf5b2cd548
OpenBSD 5.4 to prevent picking up ports libreadline if installed during build, but this was fixed differently in the libreadline port after 5.5 instead (by moving the headers to a directory which is not usually picked up by default). Found while investigating why readline is broken in the Python 3.10 port (but doesn't fix that issue). Also changes to the build in py3.10 mean that this patching no longer worked for the original issue. ok kmos@
99 lines
4.4 KiB
Plaintext
99 lines
4.4 KiB
Plaintext
Index: setup.py
|
|
--- setup.py.orig
|
|
+++ setup.py
|
|
@@ -35,6 +35,11 @@ COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig
|
|
# This global variable is used to hold the list of modules to be disabled.
|
|
disabled_module_list = []
|
|
|
|
+def usrlocal(p):
|
|
+ return os.path.join(os.environ['LOCALBASE'], p)
|
|
+def usrx11r6(p):
|
|
+ return os.path.join(os.environ['X11BASE'], p)
|
|
+
|
|
def add_dir_to_list(dirlist, dir):
|
|
"""Add the directory 'dir' to the list 'dirlist' (at the front) if
|
|
1) 'dir' is not already in 'dirlist'
|
|
@@ -502,8 +507,8 @@ class PyBuildExt(build_ext):
|
|
def detect_modules(self):
|
|
# Ensure that /usr/local is always used
|
|
if not cross_compiling:
|
|
- add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib')
|
|
- add_dir_to_list(self.compiler.include_dirs, '/usr/local/include')
|
|
+ add_dir_to_list(self.compiler.library_dirs, usrlocal('lib'))
|
|
+ add_dir_to_list(self.compiler.include_dirs, usrlocal('include'))
|
|
if cross_compiling:
|
|
self.add_gcc_paths()
|
|
self.add_multiarch_paths()
|
|
@@ -968,7 +973,7 @@ class PyBuildExt(build_ext):
|
|
# BerkeleyDB 4.6.x is not stable on many architectures.
|
|
arch = platform_machine()
|
|
if arch not in ('i386', 'i486', 'i586', 'i686',
|
|
- 'x86_64', 'ia64'):
|
|
+ 'x86_64', 'amd64', 'ia64'):
|
|
return False
|
|
return True
|
|
|
|
@@ -1038,6 +1043,7 @@ class PyBuildExt(build_ext):
|
|
std_variants.append(os.path.join(dn, "db3.%d"%x))
|
|
|
|
db_inc_paths = std_variants + db_inc_paths
|
|
+ db_inc_paths = [ usrlocal('include/db4') ]
|
|
db_inc_paths = [p for p in db_inc_paths if os.path.exists(p)]
|
|
|
|
db_ver_inc_map = {}
|
|
@@ -1101,6 +1107,7 @@ class PyBuildExt(build_ext):
|
|
db_incdir.replace("include", 'lib64'),
|
|
db_incdir.replace("include", 'lib'),
|
|
]
|
|
+ db_dirs_to_check = [usrlocal('lib/db4')]
|
|
|
|
if host_platform != 'darwin':
|
|
db_dirs_to_check = filter(os.path.isdir, db_dirs_to_check)
|
|
@@ -1123,6 +1130,7 @@ class PyBuildExt(build_ext):
|
|
# symlink to more general names?
|
|
for dblib in (('db-%d.%d' % db_ver),
|
|
('db%d%d' % db_ver),
|
|
+ ('db'),
|
|
('db%d' % db_ver[0])):
|
|
dblib_file = self.compiler.find_library_file(
|
|
db_dirs_to_check + lib_dirs, dblib )
|
|
@@ -1280,7 +1288,7 @@ class PyBuildExt(build_ext):
|
|
sysroot = macosx_sdk_root()
|
|
f = os.path.join(sysroot, f[1:])
|
|
|
|
- if os.path.exists(f) and not db_incs:
|
|
+ if os.path.exists(f):
|
|
data = open(f).read()
|
|
m = re.search(r"#s*define\s+HASHVERSION\s+2\s*", data)
|
|
if m is not None:
|
|
@@ -1881,7 +1889,7 @@ class PyBuildExt(build_ext):
|
|
# For 8.4a2, the X11 headers are not included. Rather than include a
|
|
# complicated search, this is a hard-coded path. It could bail out
|
|
# if X11 libs are not found...
|
|
- include_dirs.append('/usr/X11R6/include')
|
|
+ include_dirs.append(usrx11r6('include'))
|
|
frameworks = ['-framework', 'Tcl', '-framework', 'Tk']
|
|
|
|
# All existing framework builds of Tcl/Tk don't support 64-bit
|
|
@@ -1980,17 +1988,9 @@ class PyBuildExt(build_ext):
|
|
if host_platform == 'sunos5':
|
|
include_dirs.append('/usr/openwin/include')
|
|
added_lib_dirs.append('/usr/openwin/lib')
|
|
- elif os.path.exists('/usr/X11R6/include'):
|
|
- include_dirs.append('/usr/X11R6/include')
|
|
- added_lib_dirs.append('/usr/X11R6/lib64')
|
|
- added_lib_dirs.append('/usr/X11R6/lib')
|
|
- elif os.path.exists('/usr/X11R5/include'):
|
|
- include_dirs.append('/usr/X11R5/include')
|
|
- added_lib_dirs.append('/usr/X11R5/lib')
|
|
- else:
|
|
- # Assume default location for X11
|
|
- include_dirs.append('/usr/X11/include')
|
|
- added_lib_dirs.append('/usr/X11/lib')
|
|
+ elif True:
|
|
+ include_dirs.append(usrx11r6('include'))
|
|
+ added_lib_dirs.append(usrx11r6('lib'))
|
|
|
|
# If Cygwin, then verify that X is installed before proceeding
|
|
if host_platform == 'cygwin':
|