mirror of
https://github.com/panda3d/panda3d.git
synced 2025-09-27 23:34:57 -04:00
dist: Warn if picking up binary dependency from outside a wheel
This commit is contained in:
parent
8bb0de52b7
commit
adbeea33fb
16
direct/src/dist/commands.py
vendored
16
direct/src/dist/commands.py
vendored
@ -579,6 +579,7 @@ class build_apps(setuptools.Command):
|
||||
|
||||
path = sys.path[:]
|
||||
p3dwhl = None
|
||||
wheelpaths = []
|
||||
|
||||
if use_wheels:
|
||||
wheelpaths = self.download_wheels(platform)
|
||||
@ -853,6 +854,7 @@ class build_apps(setuptools.Command):
|
||||
for module, source_path in freezer_extras:
|
||||
if source_path is not None:
|
||||
# Rename panda3d/core.pyd to panda3d.core.pyd
|
||||
source_path = os.path.normpath(source_path)
|
||||
basename = os.path.basename(source_path)
|
||||
if '.' in module:
|
||||
basename = module.rsplit('.', 1)[0] + '.' + basename
|
||||
@ -863,6 +865,20 @@ class build_apps(setuptools.Command):
|
||||
if len(parts) >= 3 and '-' in parts[-2]:
|
||||
parts = parts[:-2] + parts[-1:]
|
||||
basename = '.'.join(parts)
|
||||
|
||||
# Was this not found in a wheel? Then we may have a problem,
|
||||
# since it may be for the current platform instead of the target
|
||||
# platform.
|
||||
if use_wheels:
|
||||
found_in_wheel = False
|
||||
for whl in wheelpaths:
|
||||
whl = os.path.normpath(whl)
|
||||
if source_path.lower().startswith(os.path.join(whl, '').lower()):
|
||||
found_in_wheel = True
|
||||
break
|
||||
|
||||
if not found_in_wheel:
|
||||
self.warn('{} was not found in any downloaded wheel, is a dependency missing from requirements.txt?'.format(basename))
|
||||
else:
|
||||
# Builtin module, but might not be builtin in wheel libs, so double check
|
||||
if module in whl_modules:
|
||||
|
Loading…
x
Reference in New Issue
Block a user