-
-
Notifications
You must be signed in to change notification settings - Fork 503
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refactoring run_autogen [to generate wrappers] to pkgs/sagemath-standard/setup.py #33838
Comments
comment:1
I'm -1 on considering anything other than |
comment:2
|
comment:3
I was replying a bit more tongue in check to your first post when the second one came :) I agree about going with the setup.py solution and thought of my problem as an opportunity to simplify things and minimise difference between editable/non-editable. There are obviously issues there and autogen is one of them. |
comment:4
For more context, it is probably safe to say that Gorny's homegrown anti-PEP-517 scripts are an obviously misguided approach, but that's not my problem ;) |
comment:5
But I take it from your first comment that you will not have any objections to work on replacing
in |
comment:6
I think the |
comment:7
See #32874 for getting rid of our use of |
comment:8
Right, so I seem to have it all wrong. It's just that bizzare duplication of the autogen code between the two cases suggest otherwise. In that case the code in the current |
comment:9
Yes, it will be a nice simplification to get rid of the I don't think we have a need for the autogen stuff to be called in several distribution packages, so nothing is gained from having it in a reusable class. |
Commit: |
comment:11
First draft. New commits:
|
Reviewer: Matthias Koeppe |
Author: François Bissey |
comment:12
Looking good |
This comment has been minimized.
This comment has been minimized.
Changed branch from u/fbissey/wrappers_generations_build_simplification to |
Recently some changes in the build tools for PEP517 python packages in Gentoo lead to
python setup.py build
not being executed in favor ofpython setup.py build_ext
see cschwan/sage-on-gentoo#693 and https://bugs.gentoo.org/842534The Gentoo maintainer reasoning for removing
build
is that it is normally a meta target whose sole purpose is to start other phases likebuild_ext
. The over-ridding of thebuild
command in sage is an increasingly uncommon practice apparently.The
build
target does only one thing, runrun_autogen
to generate some cython code andbuild
is explicitly only called by the sage build system when it is configured without--enable-editable
https://github.com/sagemath/sage-prod/blob/develop/build/pkgs/sagelib/spkg-install#L55. In builds with that option enabled, autogeneration is called fromsetup.py
https://github.com/sagemath/sage-prod/blob/develop/src/setup.py#L78 andbuild
is not called explicitly.We take the opportunity to simplify the build system further and reduce the differences editable and non-editable build by either fully moving the autogeneration in
setup.py
.(An alternative would have been to move it to
build_ext
the strategy I followed as a quick fix in https://github.com/cschwan/sage-on-gentoo/blob/master/sci-mathematics/sage_setup/files/sage_setup-9.6-no_build.patch)CC: @mkoeppe
Component: build
Author: François Bissey
Branch/Commit:
278cc0d
Reviewer: Matthias Koeppe
Issue created by migration from https://trac.sagemath.org/ticket/33838
The text was updated successfully, but these errors were encountered: