-
-
Notifications
You must be signed in to change notification settings - Fork 555
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
some dummy packages must be only re-installable via ./configure --with-... #27373
Comments
comment:1
We can also merely document that |
comment:2
I looked a bit into how This will require having each package An alternative might be to do this via special Makefile targets, something I am much less keen on. |
comment:3
On further reflection, it won't fly yet, as it would need to remember the exact parameters used to call An easier hack would be to set a flag in the call of |
comment:4
Scratch all the above - it's simply the matter of having spkg-install to change Does this look right? I suppose this fix should be added to #27212, not here... |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:6
Replying to @dimpase:
If you change |
comment:7
right, I realised it must be I don't get the second part of the comment - using a system package instead of Sage-supplied one might affect the environment, and the package responsible for this must take care of this, so that its "dependees" know about it. I don't see how |
Author: Dima Pasechnik |
Commit: |
Branch: u/dimpase/packages/gmp-config |
comment:9
This should do it; I wrote a short sdh_- function to use on #27212 branch and in the other places (and call it). New commits:
|
comment:10
Please review the last commit, the rest are from #27212. |
comment:11
This is of course far from ideal, as it makes the actual state of the configuration different from the one obtained after running I don't know how to reconcile them---it still seems that a better way would be to always call |
comment:12
I can see that there's a problem here, but I don't think the ticket description describes what the problem is very well, but I need to think about it more. I think ultimately what we want here is if you're changing your package selections it should be necessary to re-run Another part of the problem is that |
comment:13
How about disabling 'sage -i' for dummy packages? |
comment:14
For lack of a better answer, at the moment, I'd be fine with that. Just print an error message like "So and so has been selected to be used from your system; re-run The only problem is that for most packages we don't have the appropriate "". That's been on my to-do list for this since the beginning. It would be easy to add though, I think. Have the |
comment:15
The only try part to that is there are still some special cases like |
comment:16
It looks it might be most natural to disallow this undesired building via This would also still allow dummy packages which are OK to build via If I'm to do such a fix I'd much appreciate some pointers to where to look and what to change... |
comment:17
The current plan is to setup something like Now, for packages in Does this make sense, or do I miss something? What I don't understand at the moment is how e.g. |
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
|
comment:19
error reporting of these failing |
This comment has been minimized.
This comment has been minimized.
comment:76
See #27641 for the next bit of prerequisite work needed to fix this. I will shortly be adding another ticket with an actual attempt at a fix. |
comment:77
Tickets still needing working or clarification should be moved to the next release milestone at the soonest (please feel free to revert if you think the ticket is close to being resolved). |
comment:79
Why the change of status? Is this fixed / a non-issue now? |
comment:80
Probably this should become a task, I don't now. |
comment:81
I think it my still be an issue but I should investigate. I have heard some stray reports of people building sage with |
comment:82
I think this will just be a special case of #29113 (Reimplement |
comment:83
further work on this to continue on #29113 |
Reviewer: Dima Pasechnik |
Changed commit from |
Changed author from Dima Pasechnik to none |
Changed branch from u/dimpase/packages/gmp-config to none |
$SAGE_LOCAL/bin/sage-env-config
must get updated after, say,sage -i mpir
(or any other dummy package that sets anything in the build environment). Currently this does not happen. This is a bug introduced in #27212 that leads tosage -i mpir
breaking stuff.To deal with this, we introduce a kind of dummy packages, freezable,
which differ from dummy so that they (once frozen) cannot be re-installed via
sage -i
, but only via re-running./configire --with-...
first.Specifically, for gmp and mpir, which are the only freezable packages so far,
./configure --with-mp=system
freezes, them, and./sage -i gmp
or./sage -i mpir
errors out.To unfreeze, one needs to do first
./configure --with-mp=gmp
(or=mpir
).The branch implements this. If an attempt is made to run
./configure --with-mp=gmp
, (or any other "frozen" package) while Sage is configured with external gmp, one gets the error messageDepends on #27212
CC: @embray
Component: build
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/27373
The text was updated successfully, but these errors were encountered: