You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
make sharedinstall does not return failure if install commands fail #100220
If make sharedinstall fails to install some Python extensions, the make target wrongly succeeds. For example, I'm seeing:
/usr/bin/install -c -m 755 Modules/array.cpython-312-x86_64-linux-gnu.so /usr/lib/python3.12/lib-dynload/array.cpython-312-x86_64-linux-gnu.so
/usr/bin/install: cannot create regular file '/var/tmp/portage/dev-lang/python-3.12.0_alpha3/image/usr/lib/python3.12/lib-dynload/array.cpython-312-x86_64-linux-gnu.so': No such file or directory
/usr/bin/install -c -m 755 Modules/_asyncio.cpython-312-x86_64-linux-gnu.so /usr/lib/python3.12/lib-dynload/_asyncio.cpython-312-x86_64-linux-gnu.so
/usr/bin/install: cannot create regular file '/var/tmp/portage/dev-lang/python-3.12.0_alpha3/image/usr/lib/python3.12/lib-dynload/_asyncio.cpython-312-x86_64-linux-gnu.so': No such file or directory
/usr/bin/install -c -m 755 Modules/_bisect.cpython-312-x86_64-linux-gnu.so /usr/lib/python3.12/lib-dynload/_bisect.cpython-312-x86_64-linux-gnu.so
[...]
Nevertheless, make install returns successfully in this case. This causes major problems for automated builds since they end up with broken Python installs when the make target should have failed.
I need to investigate why it's failing but that's a separate issue.
changed the title [-]`make sharedinstall` no longer returns failure if install commands fail[/-][+]`make sharedinstall` does not retrn failure if install commands fail[/+]on Dec 13, 2022
changed the title [-]`make sharedinstall` does not retrn failure if install commands fail[/-][+]`make sharedinstall` does not return failure if install commands fail[/+]on Dec 13, 2022
GH-100328 merged, thanks for the report and patch!
I think we'll pass on backporting this; there haven't been reported problems in this vein before (though the recipes haven't changed much, so the underlying issue does exist in older branches), and there could be some lesser-used recipes that shouldn't use -e that we missed.
Activity
[-]`make sharedinstall` no longer returns failure if install commands fail[/-][+]`make sharedinstall` does not retrn failure if install commands fail[/+][-]`make sharedinstall` does not retrn failure if install commands fail[/-][+]`make sharedinstall` does not return failure if install commands fail[/+]pythongh-100220: Fix error handling in make rules
pythongh-100220: Fix error handling in make rules
gh-100220: Fix error handling in make rules (GH-100328)
zware commentedon Apr 7, 2023
GH-100328 merged, thanks for the report and patch!
I think we'll pass on backporting this; there haven't been reported problems in this vein before (though the recipes haven't changed much, so the underlying issue does exist in older branches), and there could be some lesser-used recipes that shouldn't use
-ethat we missed.mgorny commentedon Apr 8, 2023
Yeah, I suppose the risk is relatively small, as it affects only a few less frequently used rules.
pythongh-100220: Fix error handling in make rules (pythonGH-100328)