-
-
Notifications
You must be signed in to change notification settings - Fork 648
Use meson in sage-the-distro #39030
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
base: develop
Are you sure you want to change the base?
Use meson in sage-the-distro #39030
Conversation
Sure, I'm ready to help as much as I can. Could you share an outline of how this is meant to work? I imagine it is an adaptation to the Sage's venv (which is a more or less standard venv, no?) of what one can get e.g. with a standard venv on Gentoo Linux, or another environment where all the dependencies are available. Would this approach also work for a Conda-based environment? |
As a first step, I would not change how sage-the-distro works. So leave all the dependency installation (python and non-python deps) untouched for now. (We can discuss later how to transfer the configure checks to meson, and perhaps even completely replace the install scripts by mesons wrap files) So, basically the only required change would be |
running
|
that's cause
|
I think these requirements files can be safely deleted. At least I'm not aware of any usage of them. |
these are for building all these sagemath-* pseudo-packages. By the way, can you resolve the git conflict? |
You are right, these are actually used. Does ae33069 works for you? (I cannot test it atm on linux) |
something in your branch broke the build system, with recursive make running wild. Not much fun to debug.
|
by the way, can this be based on the grayskull branch - this would make working a bit faster, as |
the recursion (I ran
So the problem is that |
in the output of ./configure. It needs, and always needed, the following fix: --- a/configure.ac
+++ b/configure.ac
@@ -431,7 +431,7 @@ AS_IF([test "x$enable_download_from_upstream_url" = "xyes"], [
])
AC_SUBST([SAGE_SPKG_OPTIONS])
-AC_ARG_ENABLE([sagelib],
+AC_ARG_ENABLE([sage_conf],
AS_HELP_STRING([--disable-sage_conf],
[disable build of the sage_conf package]), [
for pkg in sage_conf; do |
your fix for VERSION.txt didn't work:
|
To unblock this, one needs to fix
? After these changes, |
with changes as above,
the ERROR comes from Indeed, there is no One way or another, With --- a/build/pkgs/sagelib/spkg-install.in
+++ b/build/pkgs/sagelib/spkg-install.in
@@ -1,7 +1,7 @@
if [ "$SAGE_EDITABLE" = yes ]; then
- cd ../../..
+ cd $SAGE_ROOT
else
- cd ../../..
+ cd $SAGE_ROOT
# Issue #34181: Do not allow scripts with shebang lines from old
# venvs leak into new venvs. (Changes only seem to be necessary
# for non-editable builds.) one gets to
where the log says
So |
@@ -128,7 +128,6 @@ build-requires = [ | |||
host-requires = [ | |||
"virtual:interface/blas", | |||
"virtual:compiler/fortran", | |||
"pkg:generic/boost", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why is boost removed? Are we there yet qua removal of boost spkg? Without boost one cannot build some standard parts of sagelib, no?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I took liberty to fix it
The buildbot repo includes the worker secrets, not super secret but you could in principle use it to submit incorrect build reports. |
sagemathgh-39030: Use meson in sage-the-distro <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> Replace the old setuptools-based build by the new meson-based one in sage-the-distro. Delete most of the old stuff that is no longer needed now. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies - sagemath#40133 - sagemath#39973 - sagemath#40071 <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#39030 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
sagemathgh-39030: Use meson in sage-the-distro <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> Replace the old setuptools-based build by the new meson-based one in sage-the-distro. Delete most of the old stuff that is no longer needed now. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies - sagemath#40133 - sagemath#39973 - sagemath#40071 <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#39030 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
@vbraun I've noticed that the build bot fails with a similar error also on another file (http://build.sagemath.org/?#/builders/32/builds/26/steps/10/logs/sagelib). This should be fixed in 46a3e78. |
Apologies for interjecting in this thread. I have a working sage-on-gentoo ebuild that uses meson for some time now, but I have not figured out how you are supposed to build the doc in the meson model. |
Apologies for the closing as well, my finger slipped and I_was_shocked_to_have_that_power. |
I'm getting a bunch of build failures on macos: http://build.sagemath.org/?#/builders/24/builds/1/steps/11/logs/stdio |
sagemathgh-39030: Use meson in sage-the-distro <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> Replace the old setuptools-based build by the new meson-based one in sage-the-distro. Delete most of the old stuff that is no longer needed now. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies - sagemath#40133 - sagemath#39973 - sagemath#40071 <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#39030 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
do you really have to build gmp on the buildbot? |
I only see
and that should be fixed in the latest commit 46a3e78. Are there other errors? |
You can run |
OK, from where do I run this command? And do you mean to say I need to have both sage installed and the tree I used to compile it? Will a clean source tree suffice? |
Replace the old setuptools-based build by the new meson-based one in sage-the-distro. Delete most of the old stuff that is no longer needed now.
📝 Checklist
⌛ Dependencies