Fix bundled wxWidgets build on OpenSUSE
Some checks failed
ci-build / build-source-dist (push) Has been cancelled
ci-build / Build wxPython documentation (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, macos-13, 3.9) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, ubuntu-22.04, 3.9) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.10) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.11) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.12) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.13) (push) Has been cancelled
ci-build / build-wheels (x64, windows-2022, 3.9) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.10) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.11) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.12) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.13) (push) Has been cancelled
ci-build / build-wheels (x86, windows-2022, 3.9) (push) Has been cancelled
ci-build / Publish Python distribution to PyPI (push) Has been cancelled
ci-build / Create GitHub Release and upload source (push) Has been cancelled
ci-build / Upload wheels to snapshot-builds on wxpython.org (push) Has been cancelled

OpenSUSE has defined its libdir to be 'lib64', which is mismatched with
wxWidgets' in-place wx-config, which expects 'lib.'  Work around this by
unsetting the CONFIG_SITE envvar (which enables the OpenSUSE customizations)
when configuring wxWidgets.

Fixes: https://github.com/wxWidgets/Phoenix/issues/558
Fixes: https://github.com/wxWidgets/Phoenix/issues/1067
Fixes: https://github.com/wxWidgets/Phoenix/issues/2422
Fixes: https://github.com/wxWidgets/Phoenix/issues/2532
This commit is contained in:
Scott Talbert
2025-02-01 19:33:50 -05:00
parent e93b55882d
commit 5abeba2f5d
2 changed files with 10 additions and 4 deletions

View File

@@ -370,13 +370,19 @@ def main(wxDir, args):
if os.path.exists(frameworkRootDir):
shutil.rmtree(frameworkRootDir)
# Workaround OpenSUSE libdir issue by unsetting CONFIG_SITE envvar
env = None
if "CONFIG_SITE" in os.environ:
env = dict(os.environ)
del env["CONFIG_SITE"]
print("Configure options: " + repr(configure_opts))
wxBuilder = builder.AutoconfBuilder()
if not options.no_config and not options.clean:
olddir = os.getcwd()
if buildDir:
os.chdir(buildDir)
exitIfError(wxBuilder.configure(dir=wxRootDir, options=configure_opts),
exitIfError(wxBuilder.configure(dir=wxRootDir, options=configure_opts, env=env),
"Error running configure")
os.chdir(olddir)

View File

@@ -165,7 +165,7 @@ class AutoconfBuilder(GNUMakeBuilder):
def __init__(self, formatName="autoconf"):
GNUMakeBuilder.__init__(self, formatName=formatName)
def configure(self, dir=None, options=None):
def configure(self, dir=None, options=None, env=None):
#olddir = os.getcwd()
#os.chdir(dir)
@@ -193,9 +193,9 @@ class AutoconfBuilder(GNUMakeBuilder):
optionsStr = " ".join(options) if options else ""
command = "%s %s" % (configure_cmd, optionsStr)
print(command)
result = os.system(command)
result = subprocess.run(command, shell=True, env=env)
#os.chdir(olddir)
return result
return result.returncode
class MSVCBuilder(Builder):