Question about make dependencies

171 views
Skip to first unread message

Marc Culler

unread,
Nov 14, 2023, 12:37:09 PM11/14/23
to sage-devel
For me, one of the most frustrating parts of building sage is that, whenever a build fails, the make system decides that gmp is out of date and hence I have to wait for it to recompile gmp and all of its dependencies.

Is this intentional?

Does anyone know why it happens?

Is it avoidable?

Or am I the only one who sees this?

- Marc

Marc Culler

unread,
Nov 14, 2023, 12:42:47 PM11/14/23
to sage-devel
Of course I meant that I have to wait for everything that *depends on* gmp to be recompiled.  Also, this happens when there is nothing wrong with the gmp build.  The make system decides that it is out of date even though the build was successful and the package was installed.

- Marc

Dima Pasechnik

unread,
Nov 14, 2023, 12:48:11 PM11/14/23
to sage-...@googlegroups.com
you are probably the only one who does not use a prebuilt gmp :-)

>
> - Marc
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/233fc79f-0564-4a90-aade-3c7882cec5b2n%40googlegroups.com.

Michael Orlitzky

unread,
Nov 14, 2023, 12:50:23 PM11/14/23
to sage-...@googlegroups.com
On Tue, 2023-11-14 at 09:42 -0800, Marc Culler wrote:
> Of course I meant that I have to wait for everything that *depends on* gmp
> to be recompiled. Also, this happens when there is nothing wrong with the
> gmp build. The make system decides that it is out of date even though the
> build was successful and the package was installed.

I think most of us have the system copy of gmp detected by ./configure,
so there could very well be a bug that we haven't noticed. But ideally
you should also be using the system copy of gmp.

Does ./configure say why the system copy is unsuitable?

Dima Pasechnik

unread,
Nov 14, 2023, 12:58:54 PM11/14/23
to sage-...@googlegroups.com
I imagine it might be an artifact of the design of Sage on Mac app
Marc is releasing:
vendor everything.
Is Apple's software distribution system so dumb that this is the only way?
I hope it is not, and we can get rid of "sage toolchain" kludge which
is most probably behind
this weirdness...


>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/25eeaa1d9b467afe24e61994e324a4f120c49b75.camel%40orlitzky.com.

Matthias Koeppe

unread,
Nov 14, 2023, 1:56:28 PM11/14/23
to sage-devel
I don't think this happens in normal development. When this happens in your setup, check the mtime of the timestamps in local/var/lib/sage/installed.

Marc Culler

unread,
Nov 14, 2023, 2:22:03 PM11/14/23
to sage-...@googlegroups.com
I was hesitant to send that message because I didn't want to have to go through this again.

On Tue, Nov 14, 2023 at 11:58 AM Dima Pasechnik <dim...@gmail.com> wrote:
> Does ./configure say why the system copy is unsuitable?
 
There is no system copy.

I imagine it might be an artifact of the design of Sage on Mac app
Marc is releasing:

Very likely.

vendor everything.

Vendor is a noun, not a verb.

Is Apple's software distribution system so dumb that this is the only way?

If you think that Apple's requirement that apps be notarized is dumb, then I encourage you to take it up with Apple.  Maybe Don Quixote will join you in the effort.

I am serving people who use macOS; more than 8.800 of them in the case of Sage 10.1.  I am fairly confident in claiming that the vast majority of Sage 10.1 users are using it on macOS from the Sage_macOS app.  Even homebrew users are using that app, since it is what gets installed when you run "brew install sage" , which works fine by the way.

When I started this project you were griping about how many sage-support problems were related to macOS installation.  I don't think you can claim that to be a problem any more.

- Marc

Marc Culler

unread,
Nov 14, 2023, 2:23:05 PM11/14/23
to sage-...@googlegroups.com
Thanks, Matthias.  I will try to remember to check the timestamps next time.

- Marc

--
You received this message because you are subscribed to a topic in the Google Groups "sage-devel" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/sage-devel/rBvXdVKC4nw/unsubscribe.
To unsubscribe from this group and all its topics, send an email to sage-devel+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/96d12845-208c-46cb-966b-8a991ef4a68cn%40googlegroups.com.

Dima Pasechnik

unread,
Nov 14, 2023, 2:39:52 PM11/14/23
to sage-...@googlegroups.com
On Tue, Nov 14, 2023 at 7:22 PM Marc Culler <marc....@gmail.com> wrote:
>
> I was hesitant to send that message because I didn't want to have to go through this again.
>
> On Tue, Nov 14, 2023 at 11:58 AM Dima Pasechnik <dim...@gmail.com> wrote:
>>
>> > Does ./configure say why the system copy is unsuitable?
>
>
> There is no system copy.
>
>> I imagine it might be an artifact of the design of Sage on Mac app
>> Marc is releasing:
>
>
> Very likely.
>
>> vendor everything.
>
>
> Vendor is a noun, not a verb.

It's a curse, to be precise, and it slows down the project a lot.
We have to worry about over 400 packages!!!
Bloody hell, pardon my UK French, we have more interesting problems to
work on...


>
>> Is Apple's software distribution system so dumb that this is the only way?
>
>
> If you think that Apple's requirement that apps be notarized is dumb, then I encourage you to take it up with Apple. Maybe Don Quixote will join you in the effort.

Apple sucks, but still I don't see how this is relevant here.
You need to package a number of external libraries in your bundle,
why do you need them to be built all at the same swoop?
If a commercial vendor gives you a library, without full source, then
you cannot package it in your app?
Sorry, this sounds rather improbable.
Can't you base your app on a Python.org Python bundle, instead, to begin with?

>
> I am serving people who use macOS; more than 8.800 of them in the case of Sage 10.1. I am fairly confident in claiming that the vast majority of Sage 10.1 users are using it on macOS from the Sage_macOS app. Even homebrew users are using that app, since it is what gets installed when you run "brew install sage" , which works fine by the way.

They might well be using Conda.

And Homebrew users might very well build Sage from source, as it's
relatively quick thanks to a large
number of libraries they can use.

>
> When I started this project you were griping about how many sage-support problems were related to macOS installation. I don't think you can claim that to be a problem any more.

It's still the most cursed platform we need to worry about.

>
> - Marc
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CALcZXREOLVXQemMvTbVZDgf%3DWT3zOi-tmokJV_3%3DX%3D0zDO-cXw%40mail.gmail.com.

Matthias Koeppe

unread,
Nov 14, 2023, 3:39:36 PM11/14/23
to sage-devel
On Tuesday, November 14, 2023 at 11:39:52 AM UTC-8 Dima Pasechnik wrote:
On Tue, Nov 14, 2023 at 7:22 PM Marc Culler <marc....@gmail.com> wrote:
> On Tue, Nov 14, 2023 at 11:58 AM Dima Pasechnik <dim...@gmail.com> wrote:
>> I imagine it might be an artifact of the design of Sage on Mac app
>> Marc is releasing:
>> vendor everything.
>
> Vendor is a noun, not a verb.

It's a curse, to be precise, and it slows down the project a lot.
We have to worry about over 400 packages!!!
Bloody hell, pardon my UK French, we have more interesting problems to
work on...

FWIW, I consider Marc's effort to provide a self-contained macOS app of Sage to be very valuable for the project.

Dima is indeed using the word "vendor" incorrectly. I'm not concerned about the grammar; I use it as a verb, too, in this specific context.
For source code, "vendoring" (= including a copy of the source code of a dependency, modified or not, in the source code) is problematic for various well known reasons.
But to accuse a binary distribution of "vendoring" is simply meaningless. A binary distribution is made for the benefit of users.

Dima Pasechnik

unread,
Nov 14, 2023, 4:15:07 PM11/14/23
to sage-devel
I am not accusing Marc of vendoring, I am saying that him asking to supply essentially all the components of Sage in source form is asking too much, as it saddles us with extremely heavy maintenance task, for reasons questionable.

Suppose we remove gmp from the list of packages we vendor (yes, "to vendor", i.e. "to perform vendoring", may be a verb, as we see here. As Americans make verbs out of everything, I find myself being gaslighted here by one of them.)

What then, will it make the task of making a macOS Sage app impossible, or much harder, all of a sudden?
I have trouble believing this.


--
You received this message because you are subscribed to the Google Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
Message has been deleted

John H Palmieri

unread,
Nov 14, 2023, 6:19:39 PM11/14/23
to sage-devel
Not all Americans like to verb things so profligately.

Dima Pasechnik

unread,
Nov 14, 2023, 6:45:07 PM11/14/23
to sage-devel
I have not invented the verb "to vendor", I merely picked it up from Python docs and PEPs, e.g.
(this one was written by  native English speakers, I think)

You seem to prefer to pick on my supposedly broken English, rather than read Python docs, as it's much less fun.

Get a life.



Michael Orlitzky

unread,
Nov 14, 2023, 6:56:34 PM11/14/23
to sage-...@googlegroups.com
On 2023-11-14 23:44:50, Dima Pasechnik wrote:
> I have not invented the verb "to vendor"

Don't worry, you are in good company:

https://www.gocomics.com/calvinandhobbes/1993/01/25

Dima Pasechnik

unread,
Nov 14, 2023, 7:08:23 PM11/14/23
to sage-devel
I'm only worried that I know more English words than native speakers...

--
You received this message because you are subscribed to the Google Groups "sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.

John H Palmieri

unread,
Nov 14, 2023, 11:59:12 PM11/14/23
to sage-devel
If I respond using "verb" as a verb, do you really think I'm seriously criticizing you about using "vendor" as a verb? You're telling me to get a life? Get a sense of humor.

John Cremona

unread,
Nov 15, 2023, 4:55:32 AM11/15/23
to sage-...@googlegroups.com
Please all cool it down.

John

kcrisman

unread,
Nov 16, 2023, 10:36:32 AM11/16/23
to sage-devel
To John C's point, and perhaps with the humor that John P intended: 

Dima Pasechnik

unread,
Nov 17, 2023, 3:38:20 PM11/17/23
to sage-...@googlegroups.com
yes, I language some or another


On Thu, Nov 16, 2023 at 3:36 PM kcrisman <kcri...@gmail.com> wrote:
>
> To John C's point, and perhaps with the humor that John P intended:
> https://daily.jstor.org/in-which-we-science-why-nouns-become-verbs-because-language/
>
> --
> You received this message because you are subscribed to the Google Groups "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/5d59e7dd-4691-4977-b736-185da225a7b4n%40googlegroups.com.
smarter_than_us.png

G. M.-S.

unread,
Nov 17, 2023, 4:15:17 PM11/17/23
to sage-...@googlegroups.com

Just to say that while I try to build SagMath on macOS, for everyday use I rely on Marc's app, which works perfectly.
And it is most useful for all macOS users I know, as installation is straightforward and it works "out of the box".
In fact, I wish the same was true for Windows PCs…

Guillermo

G. M.-S.

unread,
Nov 17, 2023, 4:21:41 PM11/17/23
to sage-...@googlegroups.com

Thanks for sharing this witty article, Karl-Dieter.

Disclaimer:  My knowledge of English is very limited.

Guillermo
Reply all
Reply to author
Forward
0 new messages